第1关:抓取Ethernet包
任务描述
本关任务:在 Wireshark 下抓取 Ethernet 包。
相关知识
为了完成本关任务,你需要掌握:
- Ethernet 帧结构;
- 学会抓取一组以太帧结构。
以太帧类型
以太帧有很多种类型。不同类型的帧具有不同的格式和 MTU 值。但在同种物理媒体上都可同时存在。
- 以太网第二版或者称之为 Ethernet II 帧,DIX 帧,是最常见的帧类型。并通常直接被 IP 协议使用;
- Novell 的非标准 IEEE 802.3 帧变种;
- IEEE 802.2 逻辑链路控制(LLC) 帧;
- 子网接入协议(SNAP)帧。
Ethernet帧格式
以太网中大多数的数据帧使用的是 Ethernet II 格式:

Ethernet II 类型以太网帧的最小长度为 64 字节(6+6+2+46+4),最大长度为 1518 字节(6+6+2+1500+4)。其中: (1)前 12 字节分别标识出发送数据帧的源节点 MAC 地址和接收数据帧的目标节点 MAC 地址; (2)接下来的 2 个字节标识出以太网帧所携带的上层数据类型,如 16 进制数
IEEE 802.3 帧格式:

各字段说明如下: (1)D-MAC && S-Mac:分别表示标识目标地址和源地址。它们均为 6 个字节长。如果传输出去的目标地址第一位是 0,则表示这是一个普通地址;如果是 1, 则表示这是一个组地址。 (2)Length / Type :通常这个字段用于指定报文头后所接的数据类型。通常使用的值包括:IPv4(
IEEE 802.2 LLC的头构成: (a)DSAP 目的服务访问字段,1 字节长,指明帧的目的上层协议类型; (b) ASAP 源服务访问字段,1 字节长,指明帧的源上层协议类型; (c) control 控制 1 字节或者 2 字节,长度要看被封装的 LLC 数据类型,是 LLC 数据报(类型1)1 字节,LLC 对话的一部分(类型2)2 字节。
类型1 表明是无连接的,不可靠的 LLC 数据报,控制字段用
IEEE 802.3 SNAP
虽然 IEEE 802.3 是标准,但没有被业界采用。以太网 II 已成事实标准。于是 IEEE 802.3 扩展产生 IEEE 802.3 SNAP 来兼容以太网网头部协议,在 IEEE 802.2 LLC 头部后插入了 SNAP 头部。 SNAP 头部字段构成: (1)组织代码 3 字节长,指明维护接下来 2 字节意义的组织,对 IP 和 ARP,该字段被设置为
捕获以太帧
确保浏览器的缓存为空(清除浏览器缓存:请选择工具—>清除最近历史记录),然后启动 Wireshark 数据包嗅探器。 打开 URL

帧类型

本实验是关于以太网和 ARP,不需要高层协议,所以我们更改 Wireshark 的“捕获数据包列表”窗口,以便它仅显示有关 IP 以下协议的信息。请选择 Analyze-> Enabled Protocols(分析-启用的协议)。 然后取消选中 IP 框并选择确定。结果的截图如下:

操作要求
双击打开桌面上的工作区文件夹
测试说明
平台会对你操作的结果进行测试,如果所有操作都正确,将顺利通过本关。
开始你的任务吧,祝你成功!

第2关:Ethernet包分析
任务描述
相关知识
为了完成本关任务,你需要掌握:
- Ethernet 包详细介绍;
- wireshark 下分析 Ethernet 包分析。
Ethernrt 包
Ethernet?II?类型以太网的帧结构:

展开数据包的详细信息
点击 Protocol?Version 4 可以观察 Protocol?Version 4 的内容,我们可以看到 IP 的源地址和目的地址,以及 IP 的版本是 4,并且其头的长度为 20 个字节。

User?Datagram?Protocol?可以观察 User?Datagram?Protocol?的内容,显示了源端口号,还有目的端口号,以及 UDP 协议的长度,和包头检验和的结果(checksum)。 Data 可以观察 Data 的内容,可以看出 Data 的长度为 49: 计算字节: 例如计算从以太帧的开始,一直到“GET”中的 ASCII
操作要求
双击打开桌面上的工作区文件夹
测试说明
平台会对你操作的结果进行测试,如果所有操作都正确,将顺利通过本关。
开始你的任务吧,祝你成功!

第3关:抓取ARP命令的包
任务描述
本关任务:抓取 ARP 命令的包。
相关知识
为了完成本关任务,你需要掌握:
- ARP 协议;
- ARP 命令。
由于 ARP 命令和 ARP 协议具有相同的名称,因此很容易混淆它们。但它们是不同的:ARP 命令用于查看和操作 ARP 缓存内容,而 ARP 协议定义了发送和接收的消息的格式和含义,并定义了对消息传输和接收所采取的操作。
ARP缓存
-
查看您计算机上 ARP 缓存的内容,在 Windows 下运行 CMD 窗口,输入命令
arp ,其详细指令如下图所示。
-
执行指令
arp -a ,如下图所示。
-
为了观察您的计算机发送和接收 ARP 消息,我们需要清除 ARP 缓存,否则您的计算机很可能在其缓存中找到所需的 IP-Ethernet 地址转换关系,因此不会发送 ARP 消息。执行删除命令后,再查看缓存内容,如下图所示。

抓取ARP消息
清除 ARP 表的缓存,清除浏览器的缓存,启动 Wireshark 捕捉封包。打开 URL:

操作要求
双击打开桌面上的工作区文件夹
测试说明
平台会对你操作的结果进行测试,如果所有操作都正确,将顺利通过本关。
开始你的任务吧,祝你成功!

第4关:ARP协议分析
任务描述
本关任务:对 ARP 协议进行分析。
相关知识
为了完成本关任务,你需要掌握:
- 如何抓取 ARP 命令的包;
- 协议的简单分析。
ARP报文
报文格式

抓取APR命令的包
在任务三的基础上,清除你的 ARP 缓存,接下来,确保浏览器的缓存是空的。打开URL:

简单的ARP协议分析
在 ARP 中发送了 2 种不同的报文,分别是,从源到目的地和从目的地到源。发送方是发送报文,目标方是接收报文。发送方和目标方的身份对每个报文都不一样,根据具体的情况而定:
-
对发送方来说:
请求 :发送方是源,目标方是目的地回答 :发送方是目的地,目标方是源发送方硬件地址 :ARP 报文中发送方的第 2 层地址发送方协议地址 :ARP 报文中发送方的第 3 层地址 -
对目标方来说:
请求 :目标方是源,发送方是目的地回答 :目标方是目的地,发送方是源目标方的硬件地址 :ARP 报文中目标方的第 2 层地址目标方的协议地址 :ARP 报文中目标方的第 3 层地址
展开 Etnernet 的头部,我们可以看到包含 ARP 请求消息的以太网帧中源地址和目标地址的十六进制:

太网帧上层协议: 找到 ARP 的操作码(Opcode)我们可以看到操作码字段的值是 1,也可计算出 ARP 操作码字段开始从以太网帧的最开始有
而 ARP 消息包含发送方的 IP 地址:

操作要求
双击打开桌面上的工作区文件夹
测试说明
平台会对你操作的结果进行测试,如果所有操作都正确,将顺利通过本关。
开始你的任务吧,祝你成功!



