一、ARP --- 地址解析协议
1、工作在 数据链路层,局域网(LAN),将 IP地址 转换为 MAC(物理)地址。
2、ARP 数据报 格式:
注:ARP 帧类型:0x0806
硬件类型:链路层网络类型,1 以太网 【0x0001】
协议类型:要转换的地址类型,0x0800为IP地址,后面两个地址长度对于以太网地址(6字节)和IP地址(4字节)
op字段:1 ARP请求 ,2 ARP应答
3、实例:
(1)请求帧(每行的前面加了字节计数,每行16个字节):
以太网首部(14字节)
0000: ff ff ff ff ff ff 00 05 5d 61 58 a8 08 06
ARP帧(28字节)
0000: 00 01
0010: 08 00 06 04 00 01 00 05 5d 61 58 a8 c0 a8 00 37
0020: 00 00 00 00 00 00 c0 a8 00 02
填充位(18字节)
0020: 00 77 31 d2 50 10
0030: fd 78 41 d3 00 00 00 00 00 00 00 00
ARP帧: 硬件类型 0x0001【以太网】;
协议类型【0x0800】:IP协议,硬件地址(MAC地址)长度为6,协议地址(IP地址)长度为4;
op【0x0001】:请求目的主机的MAC地址(arp);
源主机MAC地址为 【00:05:5d:61:58:a8】, 源主机IP地址为【 c0 a8 00 37(192.168.0.55)】;
目的主机MAC地址【全0】待填写,目的主机IP地址为【c0 a8 00 02(192.168.0.2)】。
由于以太网规定最小数据长度为46字节,ARP帧长度只有28字节,因此有18字节填充位,填充位的内容没有定义,与具体实现相关。
(2)应答帧:
以太网首部(14字节)
0000: 00 05 5d 61 58 a8 00 05 5d a1 b8 40 08 06
ARP帧(28字节)
0000: 00 01
0010: 08 00 06 04 00 02 00 05 5d a1 b8 40 c0 a8 00 02
0020: 00 05 5d 61 58 a8 c0 a8 00 37
填充位(18字节)
0020: 00 77 31 d2 50 10
0030: fd 78 41 d3 00 00 00 00 00 00 00 00
ARP帧: 硬件类型【0x0001】:1 以太网;
协议类型【0x0800】:IP协议,硬件地址(MAC地址)长度为6,协议地址(IP地址)长度为4;
op【0x0002】:应答;
源主机MAC地址【00:05:5d:a1:b8:40】,源主机IP地址【c0 a8 00 02(192.168.0.2)】;
目的主机MAC地址【00:05:5d:61:58:a8】,目的主机IP地址【c0 a8 00 37(192.168.0.55)】。