Description

EVPN/VXLAN Fabric Behavior During Host Mobility

This deployment consists of an EVPN/VXLAN-based fabric with the following characteristics:

  • Leaf switches operate as EVPN Provider Edge (PE) devices
  • BGP EVPN is used for control-plane signaling, with Route Reflectors providing route distribution
  • Hosts are dual-homed in an active/standby configuration without Ethernet Segment Identifier (non-ESI)
  • The infrastructure is built on Junos-based platforms

Observed Behavior

In this EVPN environment, when a host moves from one leaf switch to another, the following behavior is observed:

  • The host MAC address is correctly learned on the new leaf switch
  • A local EVPN Type-2 (MAC/IP) route is generated on the new leaf
  • However, this route is not immediately advertised into the BGP EVPN routing table (bgp.evpn.0)

The route is only advertised after one of the following conditions occurs:

  • The MAC entry ages out on the previous leaf switch
  • The MAC entry is explicitly withdrawn from the previous leaf

 

Symptoms

EVPN MAC Table – Problem State

root@JTAC-QFX5120> show evpn mac-table
MAC flags (S - static MAC, D - dynamic MAC, L - locally learned, P - Persistent static, C - Control MAC
SE - statistics enabled, NM - non configured MAC, R - remote PE MAC, O - ovsdb MAC
GBP - group based policy)

Ethernet switching table : 2 entries, 2 learned
Routing instance : EVPN

Vlan MAC address MAC flags Age GBP Logical interface NH RTR
name address flags Tag interface Index ID
__EVPN__ aa:bb:cc:dd:ee:ff DRC - ge-0/0/7.0 0 0
__EVPN__ aa:bb:cc:dd:ee:ff DC - 302112 302112
 

EVPN MAC Table – Extensive View

root@JTAC-QFX5120> show evpn mac-table extensive | match aa:bb:cc:dd:ee:ff
MAC address: aa:bb:cc:dd:ee:ff
Logical interface: ge-0/0/7.0
Status: Active
Source: Local
Mobility sequence number: 1
MAC advertisement route status: Created

MAC address: aa:bb:cc:dd:ee:ff
Status: Inactive
Source: Remote
Remote PE: 2607:f8b0:8092:aa::aa
Mobility sequence number: 0
 

EVPN Route Table – Problem State

root@JTAC-QFX5120> show route table bgp.evpn.0 match-prefix *aa:bb:cc:dd:ee:ff*
bgp.evpn.0: 216 destinations, 216 routes (216 active, 0 holddown, 0 hidden)
+ = Active Route, - = Last Active, * = Both

2:100:1::10051::aa:bb:cc:dd:ee:ff/304 MAC/IP
*[EVPN/170] 00:10:21
Indirect
Next hop: 2607:f8b0:8092:aa::aa

2:100:1::10051::aa:bb:cc:dd:ee:ff::10.10.60.10/304 MAC/IP
*[EVPN/170] 00:10:21
Indirect
Next hop: 2607:f8b0:8092:c4::a3
 

EVPN Route Table – Extensive (Local Path Inactive)

root@JTAC-QFX5120> show route table bgp.evpn.0 extensive | match aa:bb:cc:dd:ee:ff
Route Distinguisher: 100:1
EVPN route: aa:bb:cc:dd:ee:ff
Source: Remote
Next hop: 2607:f8b0:8092:aa::aa
State: Active

EVPN route: aa:bb:cc:dd:ee:ff
Source: Local
Next hop: Self
State: Inactive
Inactive reason: Route Preference / RT Source tie-break
 

Route Advertisement State

root@JTAC-QFX5120> show route table bgp.evpn.0 summary
bgp.evpn.0: 2 entries, 0 announced
 

Observations

  • MAC is learned locally
  • EVPN Type-2 route is created
  • Local route is present but inactive
  • Remote stale route remains active
  • Route is not advertised

 

Solution

Both PEs are configured with the same Route Distinguisher (RD).

This causes:

Local and remote EVPN Type-2 routes to have the same NLRI (RD + MAC/IP)

BGP treats them as competing paths for the same route

Path selection uses tie-breakers (e.g., rt_source, router ID)

 

Result:

Stale remote path remains Active

New local path remains Inactive

Advertisement is suppressed until remote path is withdrawn

Modification History

2026-03-27 : Article Created