免费 ARP 请求 - 相同的目标和源 IP 地址,GARP 的使用

网络工程 arp
2021-07-23 19:21:27
  1. 我假设源IP地址和目标IP地址相同,所以如果网络上有另一台使用相同IP的主机会回复,计算机就会知道IP地址有冲突。这是一个正确的假设吗?
  2. 我不明白 GARP 的其他用途 - 何时可以在发起 GARP 广播以更新 arp 表的网络上发生 MAC 地址的更改?
1个回答
  1. RFC 5227定义了使用 ARP 对 IPv4 进行重复地址检测。如果您在 Windows 主机上启动数据包捕获,然后配置新的 IP 地址,您将在捕获中看到:

主机发送 3 个 ARP请求这些请求将询问其自己的 IP(正如您正确假设的那样),但会将自己显示为 0.0.0.0,因此其他主机尚未记录其 IP 地址如果在这 3 个请求之后没有回复,它将发送一个 GARP 数据包,有效地更新网络中的其他人*。

  1. 一个 GARP 数据包从您的 MAC 地址发送到广播 (ff:ff:ff:ff:ff:ff),说明哪个是您的 IP 地址。这就是其他主机如何了解您的 MAC 地址。根据操作系统的不同,某些设备会将这些信息缓存几分钟,因此如果您因任何原因碰巧更改了 IP,您将希望发送 GARP 以立即更新该信息。发送 GARP 的一个非常常见的原因是主动/被动 HA 对中存在故障转移。特别是如果该 HA 对是一对防火墙和您的网络网关。新的防火墙将处于活动状态,它需要告诉每个人现在将数据包发送到哪里。这只是实现高可用性的几种方法之一,其他供应商伪造一个公共 MAC 地址,因此不涉及 GARP 数据包。

出于安全原因,并非每个设备都接受来自网络的网关 IP 地址的 GARP(如果它们已经有一个条目)。根据我的经验,Cisco IP 电话就是这种情况。他们和一对运行 ClusterXL 的 Checkpoint 防火墙很难相处。