BGP EVPN / VXLAN — Cisco IOS-XE (Catalyst 9000)
Generate a VXLAN BGP EVPN configuration for Cisco Catalyst 9300/9500 (IOS-XE 16.11+). Supports symmetric IRB, distributed anycast gateway, ingress replication, and per-tenant VRF routing. Designed for campus DC pods and branch aggregation.
What is it?
Cisco IOS-XE on Catalyst 9000 series (9300, 9500) supports VXLAN BGP EVPN as of IOS-XE 16.11 (Catalyst 9300) and IOS-XE 17.x (Catalyst 9500). The syntax differs significantly from NX-OS: IOS-XE uses 'l2vpn evpn instance' with 'vlan configuration' to map VLANs to VNIs, and 'vrf definition' instead of NX-OS 'vrf context'. The BGP EVPN control plane is identical in function — Type-2 MAC/IP routes, Type-3 BUM via ingress replication, Type-5 external prefixes — but Catalyst 9000 is designed for campus data center pods and branch DC aggregation rather than hyperscale DC fabrics. It supports symmetric IRB, distributed anycast gateway (via per-SVI mac-address), and ingress replication. Catalyst 9000 does not support vPC — it uses port-channel with LACP for dual-homing.
When to use
- ·Campus data center pods (IDF/MDF) requiring VXLAN segmentation across a small number of switches
- ·Branch DC aggregation with 2-8 leaf switches needing multi-tenant isolation
- ·Environments already running Catalyst 9000 wanting to modernize from VLAN-based to VXLAN overlay
- ·Migrations from traditional campus networks to a lightweight spine-leaf design using existing Catalyst hardware
- ·Environments requiring IOS-XE feature parity (QoS, NetFlow, NBAR) alongside VXLAN overlay
When NOT to use
- ·Large hyperscale DC fabrics (>20 leaves) — use Nexus 9000 with NX-OS for production DC scale
- ·Environments requiring vPC for dual-homing — Catalyst 9000 does not support vPC
- ·Deployments needing NX-OS-specific features (VXLAN OAM, Multisite BGW, NVE fabric peering)
- ·Teams expecting NX-OS syntax — Catalyst 9000 VXLAN config is structurally different and cannot be copy-pasted from NX-OS templates
How it compares
Prerequisites
- →Cisco Catalyst 9300 (IOS-XE 16.11.1 or later) or Catalyst 9500 (IOS-XE 17.3.1 or later)
- →DNA Advantage license required for VXLAN BGP EVPN on Catalyst 9000
- →MTU 9100 minimum on all fabric links (VXLAN adds 50 bytes overhead)
- →Loopback0 (router-ID) and Loopback1 (VTEP source) must be routable across the underlay
- →BGP and OSPF/IS-IS knowledge required — Catalyst 9000 VXLAN uses same BGP EVPN control plane as NX-OS
- →IOS-XE syntax differs from NX-OS — review l2vpn evpn and vlan configuration commands before deployment
Config Generator
iBGP AS — same across all fabric nodes
Loopback0 IP — used as BGP router-ID and OSPF router-ID
Loopback1 IP — used as source-interface for NVE (VTEP)
Ingress replication (unicast head-end replication) is simplest. Multicast requires PIM in the underlay.
IGP for loopback reachability. OSPF is most common for campus DC.
Verification commands
show l2vpn evpn peers vxlanVTEP peer state on IOS-XE
ExpectedShows all remote VTEPs with their state. Up = functional VXLAN tunnel.
show bgp l2vpn evpn summaryBGP EVPN session state to spines/RRs
ExpectedState/PfxRcd column shows a number (received prefixes), not Idle/Active/Connect.
show l2vpn evpn evi detailEVPN instance (EVI) state per L2 VNI
ExpectedEach EVI should show State: Established and list remote VTEPs.
show nve peersNVE peer table
ExpectedShows remote VTEP IPs and their state. Works on both NX-OS and IOS-XE.
show bgp l2vpn evpn route-type 2MAC/IP host routes (Type-2) from all VTEPs
ExpectedShould see MAC+IP entries for all remote hosts, with VTEP next-hop.
show ip route vrf TENANT-APer-VRF routing table
ExpectedRemote subnets should appear via VXLAN next-hop. Directly connected subnets from SVIs should also be present.
Debug commands
show l2vpn evpn eviList all EVPN instances and their VLAN/VNI mapping
WarningVerify each EVI has the correct VNI and is associated with the right VLAN.
show bgp l2vpn evpn neighbors X.X.X.X routesRoutes received from specific BGP EVPN neighbor
WarningUse to verify RR is sending Type-2 and Type-3 routes from remote VTEPs.
debug l2vpn evpn errorLive EVPN error debugging
WarningUse with caution in production. Logs EVPN errors to console. Disable with undebug all.
Common mistakes & fixes
Further learning
Recommended books to go deeper on this topic.
Building Data Centers with VXLAN BGP EVPN
Lukas Krattiger, Shyam Kapadia, David Jansen · Cisco Press · Clos fabric design with VXLAN EVPN: route types, symmetric IRB, multihoming, multi-site
BGP Design and Implementation
Randy Zhang & Micah Bartell · Cisco Press · BGP fundamentals needed before EVPN — attributes, route reflection, policy
NX-OS and Cisco Nexus Switching: Next-Generation Data Center Architectures
Ron Fuller, David Jansen, Matthew McPherson · Cisco Press · VXLAN BGP EVPN on NX-OS — overlay design and configuration