什么是ARP?
ARP:地址解析协议
就是主机发送数据帧之前将目的IP地址转换成目的MAC地址的过程
ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址以保证通信的顺利进行。
注解:简单地说,ARP协议主要负责将局域网中的32为IP地址转换为对应的48位物理地址,整个转换过程是一台主机先向目标主机发送包含IP地址信息的广播数据包,即ARP请求,然后目标主机向该主机发送一个含有IP地址和MAC地址数据包,通过MAC地址两个主机就可以实现数据传输了。
无故ARP
主机偶尔以自己的IP作为目标地址发送ARP请求。这种ARP请求称为无故ARP
作用:
- 用于检测网络中的重复的地址
- 通告一个新的MAC地址。如果设备的高速缓存中已经有了发送方的IP地址,那么就会将该IP地址对应的MAC记录下来。
- 更新主备路由器
反向ARP
就是知道MAC地址不知道IP地址,发出请求,请求自己的IP地址。
代理ARP
代理ARP又称混杂ARP,被路由器作为向主机表明自身可用的一种手段。如主机A需要向主机B,但它们都没有设置缺省网关,因而也就不知道如何到达路由器。
这是A可以向B发送一个ARP请求,本地路由器收到这一请求,并且知道如何到达主机B所在的网络,因此路由器将回复以上请求,并把自己的MAC地址作为ARP回复数据包中的硬件地址,本地路由器X让主机A认为X的接口就是B主机网段的接口,最终所有发往B主机网段的数据包都被送往路由器X。