This bug is seen In topologies where the Contrail control node is peering with 2 gateway routers (such as MX), and each gateway router advertises a default route into the tenant VRF/VN. The tenant VN, if it has a RT configured, would import routes from both the gateway routers and as a result will have an ECMP default route. The dhclient script on the CentOS VM, after obtaining an IP via DHCP, runs a duplicate address detection procedure wherein it does an arping with the sender IP zero’d out. The vRouter upon receiving this arping, does a reverse route lookup (on sender IP of 0.0.0.0), matches the default route, and because its an ECMP route, returns the VRRP MAC. This in-turn caused the dhclient in the VM to think that a dup IP exists and so it declined the offered IP address.
The fix changes the vRouter behavior by having it not respond to such ARP probes.
This bug is seen In topologies where the Contrail control node is peering with 2 gateway routers (such as MX), and each gateway router advertises a default route into the tenant VRF/VN. The tenant VN, if it has a RT configured, would import routes from both the gateway routers and as a result will have an ECMP default route. The dhclient script on the CentOS VM, after obtaining an IP via DHCP, runs a duplicate address detection procedure wherein it does an arping with the sender IP zero’d out. The vRouter upon receiving this arping, does a reverse route lookup (on sender IP of 0.0.0.0), matches the default route, and because its an ECMP route, returns the VRRP MAC. This in-turn caused the dhclient in the VM to think that a dup IP exists and so it declined the offered IP address.
The fix changes the vRouter behavior by having it not respond to such ARP probes.