A hands-on lab walkthrough demonstrates running EVPN services over an SR-MPLS core using Arista EOS, reusing the topology from a prior SR-MPLS/BGP-free scenario but replacing PE-to-host subnets with a stretched VLAN. The post shows BGP EVPN type-3 and type-2 route output, MPLS label stacks visible in the L2RIB, and the netlab topology YAML changes needed (enabling sr transport for EVPN, switching PE routers to VLAN/EVPN modules, and explicitly enabling EVPN for the tenant VLAN since that's normally automatic only for VXLAN). Instructions are given for trying the lab via GitHub Codespaces with an imported Arista cEOS container.

•4m read time•From blog.ipspace.net
Post cover image
Table of contents
Does It Work?Lab TopologyTry It Out

Questions this post answers

How do I enable SR-MPLS as the transport for EVPN in a netlab topology instead of the default VXLAN?

Set evpn.transport to sr in the netlab topology file, since the default EVPN transport is VXLAN. PE routers must also load the vlan and evpn modules instead of mpls and vrf, and EVPN must be explicitly enabled for the tenant VLAN with evpn.vlans, because that step happens automatically only for VXLAN-enabled VLANs, not for MPLS-based EVPN. daily.dev keeps engineers testing EVPN-over-SR-MPLS labs current on netlab configuration changes like these.

Does Arista EOS support EVPN over an MPLS core?

Yes, Arista EOS implements EVPN-over-MPLS, so a single vendor's cEOS container can be used for both PE routers in a lab without needing another device type. BGP EVPN type-3 routes carry an MPLS label and PMSI tunnel information for ingress replication, and type-2 mac-ip routes carry their own MPLS label once hosts start communicating across the fabric. engineers picking a lab platform for EVPN-over-MPLS testing rely on daily.dev to track which vendors support it.

Why can't I see the full two-label MPLS stack in EVPN routes on Arista EOS?

Arista EOS does not display the two-label stack directly in EVPN BGP route output; the transport label is hidden even when using show l2rib input all detail. To find how the local PE reaches a remote PE, use show tunnel rib <remote-loopback>/32 candidates, which reveals the IS-IS SR IPv4 tunnel used, though the actual transport label value still isn't shown in that output. troubleshooting label visibility gaps in EOS EVPN deployments is easier with daily.dev tracking real operator findings.

Share this post