Wireshark - 观察 ARP 地址解析过程
下面使用 Wireshark 分析 ARP 的工作过程。试验的机器:发送者机器(IP 地址:10.21.28.47,MAC 地址:68:f7:28:0f:32:2e)下文称为 HOSTA;目标机器(IP 地址:10.21.28.110,MAC 地址:54:ee:75:25:33:fd),下文称为 HOSTB。
1. 使用 "arp and eth.addr == 68:f7:28:0f:32:2e" 过滤规则定位数据封包。观察编号为 2370 的数据帧,MAC 地址为 68:f7:28:0f:32:2e 广播了一个 ARP 请求帧,询问 “Who has 10.21.28.110? Tell 10.21.28.47”。
2. 观察 No.2370 的 Ethernet II 数据帧的内容。源 MAC 地址为 68:f7:28:0f:32:2e,目的 MAC 地址为 ff:ff:ff:ff:ff:ff(广播),数据包类型 ARP(0x0806)。
3. 观察 No.2370 的 ARP 数据包的内容。Opcode 的值为 1,表示这是一个 ARP 请求。源 MAC 地址为 68:f7:28:0f:32:2e,源 IP 地址为 10.21.28.47,目标 IP 地址为 10.21.28.110。这就像是 HOSTA 向网段里的其他主机发出询问 “你们好,我的 MAC 地址是 68:f7:28:0f:32:2e,IP 地址是 10.21.28.47,IP 地址为 10.21.28.110 的主机,请问你的 MAC 地址是多少啊,可以站出来跟我说一下吗?”。
4. 观察编号为 2371 的数据帧,MAC 地址 54:ee:75:25:33:fd 主机回应了 68:f7:28:0f:32:2e:“10.21.28.110 is at 54:ee:75:25:33:fd”。
5. 观察 No.2371 的 ARP 数据包的内容。Opcode 的值为 2,表示这是一个 ARP 应答。源 MAC 地址为 54:ee:75:25:33:fd,源 IP 地址为 10.21.28.110,目标 MAC 地址为 68:f7:28:0f:32:2e,目标 IP 地址为 10.21.28.47。HOSTB 收到 HOSTA 的 ARP 请求后,发现 HOSTA 询问的 IP 地址 10.21.28.110 正是自己的 IP 地址。就回应 HOSTA 说 “10.21.28.110 是我的 IP 地址,我的 MAC 地址是 54:ee:75:25:33:fd。”
6. HOSTA 接收到 HOSTB 的应答后,就可以更新 HOSTA 的 ARP Cache 了。
More