Consider we are using 1.1.1.1
as our VIP which is the IP address of the load balancer. I'm aware that I should disable ARP replies on loop back interfaces of back end servers. However another issue confuses me with this topology:
- Router sends ARP request to find MAC address of
1.1.1.1
- Load balancer replies back with its own mac address. (Lets say
AA:AA:AA:AA:AA:AA
) - Router caches this information (mapping of
1.1.1.1
toAA:AA:AA:AA:AA:AA
) - Router forwards packet to load balancer
- Load balancer changes destination MAC address from
AA:AA:AA:AA:AA:AA
to MAC address of back end server which isBB:BB:BB:BB:BB:BB
. - Back end server replies back to the client directly which means it sends reply packet with source IP of
1.1.1.1
(VIP) and source MAC address ofBB:BB:BB:BB:BB:BB
(This is the MAC address of back end server) - Packet arrives at router. Router will notice that
1.1.1.1
should have MAC address ofAA:AA:AA:AA:AA:AA
(MAC address of load balancer) but now current packet says1.1.1.1
has a MAC address ofBB:BB:BB:BB:BB:BB
which is conflicting with router ARP cache)
Now the question is what is the behavior of the router in this scenario?