ARP (地址解析协议) 请求2025年3月17日 | 阅读 3 分钟 ARP 是地址解析协议的缩写。该协议用于查找与 IP 地址相对应的设备的 MAC 地址。该协议旨在通过提供另一设备的 MAC 地址,在局域网 (以太网) 上建立两个设备之间的通信。为了在两个设备之间建立通信,源设备需要生成 ARP 请求消息。 ARP请求- 当两个设备(例如,源和目标)要在局域网 (以太网) 中相互通信时。源设备知道目标设备的 IP 地址,但不知道目标设备的 MAC 地址。为了知道 MAC 地址,源设备会查找 ARP 缓存 (表)。如果设备的 MAC 地址存储在 ARP 缓存中,则源设备将使用该地址并开始通信。
- 如果目标设备的 MAC 地址未存储在 ARP 缓存中,则源设备会生成 ARP 请求消息。这个 ARP 请求包含源设备和目标设备的 IP 和 MAC 地址。目标设备的 MAC 地址字段留空。
- ARP 请求消息会在局域网 (以太网) 上广播。网络上的所有设备都会接收 ARP 请求消息,并将其 IP 地址与源设备的 IP 地址进行比较。当源设备的 IP 地址与局域网上的任何设备匹配时,该设备将生成 ARP 回复消息。如果源设备的 IP 地址与局域网上的任何设备都不匹配,则设备会自动丢弃数据包。
- 然后将 ARP 回复消息发送给源设备。ARP 回复消息包含目标设备的 MAC 地址。
- 当源设备收到 ARP 回复消息时,ARP 回复消息中获得的 MAC 地址将与其 IP 地址一起更新到 ARP 缓存中。
- 维护 ARP 表的原因是,当源设备想要与之前通信过的设备通信时,源设备无需再次广播 ARP 请求消息。信息已存储在 ARP 缓存中,直到系统重新启动。源设备需要查找 ARP 缓存并从中获取设备的 MAC 地址。
与 ARP 请求相关的一些重要要点如下: - ARP 请求是广播性质的,而 ARP 回复是单播的。
- 设备的 MAC 地址保持为空,因为源设备正在请求它。
- ARP 缓存的内存存储较少。因此,它会定期删除其条目以释放空间。
- 如果设备不知道其 IP 地址,则它会使用 RARP (反向地址解析协议) 而不是 ARP,并广播 RARP 请求。
ARP 请求的必要性当设备想要知道源设备想要通信的目标设备的 MAC 地址时,就需要 ARP 请求。双方设备都需要知道彼此的 IP 和 MAC 地址。网络中的每个设备都知道其他设备的 IP 地址,但不知道 MAC 地址。因此,源设备会生成 ARP 请求来获取目标设备的 MAC 地址。 注意:ARP 请求仅为存在于源设备所在同一网络中的设备生成。如果目标设备存在于另一个网络中,则不会生成 ARP 请求。
|