An example is illustrated in Figure 1. This is the expected behavior based on the configuration described in EVPN host mobility configuration.
Host-1 moves from PE1 to PE2 and issues a GARP with 10.1-M1.
Upon receiving the GARP, PE2 updates its FDB and ARP table.
The route-table entry for 10.1/32 changes from EVPN to type arp-nd (based on populate dynamic), therefore, PE2 advertises a RT5 with 10.1/32. Also, M1 is now learned in FDB and ARP as local, therefore, MAC/IP routes with a higher sequence number are advertised (one MAC/IP route with M1 only and another one with 10.1-M1).
Upon receiving the routes, PE1:
Updates its FDB and withdraws its RT2(M1) based on the higher SEQ number.
Updates its ARP entry 10.1-M1 from dynamic to type evpn.
Because the populate dynamic, removes its arp-nd host from the route-table and withdraws its RT5 for 10.1/32.
The move of 10.1-M1 from dynamic to evpn triggers an ARP request from PE1 asking for 10.1. The no flood-garp-and-unknown-req command prevents PE1 from flooding the ARP request to PE2.
After step 5, no one replies to PE1’s ARP request and the procedure is over. If a host replied to the ARP for 10.1, the process starts again.