一、Arp协议简介
- Arp协议全称叫“地址解析协议(Address Resolution Protocol)”;
- 属于网络层协议,但服务于数据链路层,报文大小为28;
- 用于实现从 IP 地址到 MAC 地址的映射,查找目标IP对应的MAC地址;
- ARP包是封装在以太帧中;
二、Arp工作方式
同一个局域网下,有主机A,已知IP地址,MAC地址,主机B,已知IP地址,MAC地址未知,此时主机A与主机B之间要进行通信,还需要知道MAC地址,主机A广播发送Arp请求,报文封装A的IP地址、MAC地址,目标主机B的IP地址,主机B收到Arp请求,目标IP是自己,就会把自己的MAC地址写进去,然后单播发送一个Arp应答包给主机A,并且更新自己的Arp表,主机A收到后,也会更新自己的Arp表。
三、Arp报文
-
Hardware type(硬件类型):一般是以太网,为1;
-
Protocol type(协议类型):IPV4为0x0800;
-
Hardware size(硬件长度):6
-
protocol size(协议长度):4
-
Opcode(操作符):Arp请求为1,Arp应答为2;
-
Send MAC address(发送方MAC地址):
-
Send IP address(发送方ip地址):
-
Target MAC address(目标方MAC地址):
-
List item
-
Target IP address(目标方IP地址):全为0表示本机;
四、Arp映射方式
- 静态映射
就是有一张手动创建的arp表,IP地址与MAC地址是一定的,如果有设备的MAC地址有改变,就需要初始化比较麻烦,但安全性比较高。 - 动态映射
- 厂商会有一定的时间,一般是10分钟,每2分钟会去更细依次arp缓存表,安全性比较低,容易受到攻击,但比较灵活。