定义
- 地址解析协议 ARP(Address Resolution Protocol) 是用来将 IP 地址解析为 MAC 地址的协议。
- 反向地址解析协议 RARP(Reverse Address Resolution Protocol) 是用来将 MAC 地址解析为 IP 地址的协议。
- ARP 属于三层(网络层) 协议
基本原理
1、ARP报文格式
![技术分享图片](http://image1.bubuko.com/info/202102/20210219234922643376.png)
硬件类型(Hardware Type):表示硬件地址的类型。对于以太网,该类型的值为“1”。
协议地址类型(Protocol Type): 映射的协议地址类型。 对于 IP 地址, 该值为 0x0800。
硬件地址长度(Hardware Length): 硬件地址长度。 对于 ARP 请求或应答来说, 该值为 6。
协议地址长度(Protocol Length): 对于 ARP 请求或应答来说, 该值为 4。
操作码(OP):
- 1 ARP请求
- 2 ARP应答
- 3 RARP请求
- 4 RARP应答
2、ARP 地址解析过程(动态 ARP)
3、老化机制
高速缓存
- 减少广播
- 提高网络运行效率:因为减少了广播
- 存放ip到mac地址的映射
老化超时时间
- 设置定时器。当定时器到达老化超时时间时,会进行探测。探测失败,删除该条目;成功,保留
- 因为存在时延,所以地址解析错误的问题并没有完全消除
老化探测次数
在将一条动态 ARP 表项老化之前, 系统先进行探测, 如果超过设置的探测次数后探测的目标主机仍没有应答, 则此 ARP 表项将被删除
老化探测模式
- ARP 表项老化之前, 接口会发送 ARP 老化探测报文。 老化探测报文可以是单播报文, 也可以是广播报文。 设备只在最后一次发送 ARP 老化探测报文是广播模式, 其余均为单播模式发送。
- 当对端设备的 IP 地址不变化而 MAC 地址频繁更新时, 建议使用广播模式发送 ARP 老化探测报文。
- 当对端设备 MAC 地址不变, 当前网络带宽资源特别紧缺, 且 ARP 表项的老化时间设置的比较小时, 建议使用单播模式发送 ARP 老化探测报文。
- 当其他厂商设备与华为设备互联时, 其他厂商设备接收到目的 MAC 地址为广播地址的 ARP 老化探测报文后, 若 ARP 表项中已存在华为设备的 IP 地址与 MAC 地址映射, 则丢弃该广播 ARP 老化探测报文。 华为设备由于收不到该探测报文的应答报文, 而删除对应的 ARP 表项, 导致网络侧过来的流量不通。 这种特殊情况下华为设备需要配置成以单播方式发送 ARP老化探测报文, 其他厂商设备需要配置成可以响应该单播探测报文。
ARP协议
原文:https://www.cnblogs.com/zhengyuanoung/p/14416913.html