
ARP请求报文格式如下:
- 硬件类型(HTYPE,2字节):表示数据链路层协议类型,对于以太网,此值为1。
- 协议类型(PTYPE,2字节):表示网络层协议类型,对于IPv4,此值为0x0800。
- 硬件地址长度(HLEN,1字节):表示数据链路层地址长度,对于以太网MAC地址,此值为6。
- 协议地址长度(PLEN,1字节):表示网络层地址长度,对于IPv4,此值为4。
- 操作码(OPER,2字节):表示ARP报文类型,对于ARP请求,此值为1。
- 发送者硬件地址(SHA,6字节):表示发送者的MAC地址。
- 发送者协议地址(SPA,4字节):表示发送者的IP地址。
- 目标硬件地址(THA,6字节):对于ARP请求,此值为全0(即00-00-00-00-00-00)。
- 目标协议地址(TPA,4字节):表示目标IP地址。
ARP响应报文格式与ARP请求报文类似,不同之处在于:
- 操作码(OPER,2字节):对于ARP响应,此值为2。
- 目标硬件地址(THA,6字节):表示目标MAC地址。
ARP响应报文主要用于将目标IP地址解析为对应的MAC地址,并发送给请求方。当主机收到ARP响应后,就可以将目标主机的IP地址和MAC地址存入自己的ARP缓存,以便后续直接使用。