1. 抓取的数据包
ffffffffffff b083fe769065 0806 0001 0800 06 04 0001 b083fe769065 0a0a0ce7 000000000000 0a0a0cc9 000000000000000000000000000000000000
2. ARP包解析
从网络底层看来,一个ARP包是分为两个部分的,前面一个是物理帧头,后面一个才是ARP帧。
2.1 物理帧头:
字段 | 长度 | 默认值 | 备注 |
---|---|---|---|
接收方mac | 6 | 广播时为ff-ff-ff-ff-ff-ff | |
发送方mac | 6 | ||
Ethertype | 2 | 0x0806 | 0x0806是ARP帧的类型值 |
在上面的示例ARP包数据中:
- 以太网数据包发送的目的地[6个字节]:ff:ff:ff:ff:ff:ff
- 以太网数据包发送的源地址[6个字节]:b0:83:fe:76:90:65
- 以太网数据包数据包内容类型:0806
2.2 ARP帧头:
字段 | 长度 | 默认值 | 备注 |
---|---|---|---|
ARP数据包类型 | 2 | 0x0001 | Requset |
上层协议类型 | 2 | 0x0800 | 上层协议为ip |
以太网MAC地址长度 | 1 | 0x06 | 以太网MAC地址长度为 6 |
IP地址长度 | 1 | 0x04 | IP地址长度为 4 |
操作码 | 2 | 0x1表示ARP请求包,0x2表示应答包 | |
发送方MAC | 6 | ||
发送方IP | 4 | ||
接收方MAC | 6 | ||
接收方IP | 4 | ||
填充数据 | 18 | 因为物理帧最小长度为64字节前面的42字节再加上4个CRC校验字节,还差18个字节 |
在上面的示例ARP包数据中:
- ARP数据包类型:00 01(Request)
- 上层协议类型:08 00 (IP)
- 以太网MAC地址长度为:06
- IP地址长度为:04
- 操作码:0001
- 发送方MAC:b0:83:fe:76:90:65
- 发送方IP:0a 0a 0c e7 10.10.12.231
- 接收方MAC:00 00 00 00 00 00
- 接收方IP:0a 0a 0c c9 10.10.12.201
- 填充数据:00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00