ARP
ARP 是“Address Resolution Protocol”的缩写,译为“地址解析协议”,它是根据 IP 地址获取物理地址的一个 TCP/IP 协议。
ARP 协议通过 IP 地址向 MAC 地址的转换,解决网际层和网络访问层的衔接问题。
在网络访问层中,同一局域网中的一台主机要和另一台主机进行通信,需要通过 MAC 地址进行定位,然后才能进行数据包的发送。而在网络层和传输层中,计算机之间是通过 IP 地址定位目标主机,对应的数据报文只包含目标主机的 IP 地址,而没有 MAC 地址。由于 IP 地址和 MAC 地址定位方式不同,ARP 协议成为数据传输的必备协议。主机发送信息前,必须通过 ARP 协议获取目标 IP 地址对应的 MAC 地址,才能正确地发送数据包。
工作过程:request+reply
- 先在本机ARP缓存中查找
- 主机广播发送ARP请求 #思考 如何在wireshark中查看是广播方式
- 同一链路中的所有设备收到请求后,拆包比对自身IP
- 发现IP一致的远端设备,添加本机MAC地址到其ARP缓存,并发送ARP响应给对端主机;不一致的设备,丢弃
- 本机收到ARP回复后,更新本机ARP缓存,并过期自动清除
抓包
请求和响应包相差不大,Opcode不同,Sender/Target相反
ARP请求
ARP响应
查看ARP缓存
arp -a
RARP
根据MAC地址获取其IP地址,常见如打印机等小型嵌入设备接入网络
工作过程
- 架设RARP服务器,并注册设备(如打印机)的MAC和IP地址映射表
- 设备接入网路后,发送RARP请求(带MAC地址)
- RARP服务器返回RARP响应(带IP地址)
定义
作用
工作原理(流程)
- 客户端广播发送请求给局域网所有主机
- 目的IP的主机收到请求后返回响应
- 客户机将IP与MAC地址的映射保存到ARP表中
报文格式
查看ARP表
每台主机都有一张ARP表(缓存),存放在
由驱动程序和操作系统完成。
arp -a
其他
RARP
(4条消息) ARP协议详解_沉默的鹏先生-CSDN博客_arp协议
彻底搞懂系列之:ARP协议 - 知乎 (zhihu.com)