考虑我们使用1.1.1.1
负载均衡器的 IP 地址作为我们的 VIP。我知道我应该禁用后端服务器环回接口上的 ARP 回复。然而,另一个问题让我对这个拓扑感到困惑:
- 路由器发送 ARP 请求查找 MAC 地址
1.1.1.1
- 负载均衡器用自己的 mac 地址回复。(让我们说
AA:AA:AA:AA:AA:AA
) - 路由器缓存此信息(映射
1.1.1.1
到AA:AA:AA:AA:AA:AA
) - 路由器将数据包转发到负载均衡器
- 负载均衡器将目标 MAC 地址从更改
AA:AA:AA:AA:AA:AA
为后端服务器的 MAC 地址,即BB:BB:BB:BB:BB:BB
. - 后端服务器直接回复客户端,即发送回复包,源IP为
1.1.1.1
(VIP),源MAC地址为BB:BB:BB:BB:BB:BB
(这是后端服务器的MAC地址) - 数据包到达路由器。路由器会注意到
1.1.1.1
应该具有AA:AA:AA:AA:AA:AA
(负载均衡器的 MAC 地址)的 MAC 地址,但现在当前数据包1.1.1.1
显示其 MAC 地址BB:BB:BB:BB:BB:BB
与路由器 ARP 缓存冲突)
现在的问题是在这种情况下路由器的行为是什么?