NX-OS to NVUE EVPN Configuration

Cumulus Linux version 4.4 introduces a new CLI called NVUE; a complete object model for Cumulus Linux. NVUE makes translating configurations from one vendor to another much more reliable the first time you use Cumulus Linux and across Cumulus Linux versions.

This KB article describes how to take a basic NX-OS configuration for EVPN and translate it to NVUE. The example confiuration derives from this Cisco Configuration Example.

NX-OS CommandNVUE CommandComments
nv overlay evpnnoneCumulus Linux does not require features to be explicitly enabled.
feature ospfnone
feature bgpnone
feature pimnone
feature interface-vlannone
feature vn-segment-vlan-basednone
feature lacpnone
feature vpcnone
feature nv overlaynone
fabric forwarding anycast-gateway-mac 0001.0001.0001nv set system global anycast-mac 44:38:39:BE:EF:AA
ip pim rp-address 192.168.9.9 group-list 224.0.0.0/4noneNVIDIA recommends you use Head End Replication for EVPN, removing the need for PIM. Scale-out deployments support PIM Replication.
ip pim ssm range 232.0.0.0/8none
vlan 1,10,20,30,40nv set bridge domain br_default vlan 30,40Ethernet Bridging
vlan 10noneThe layer 3 VNI does not require a unique VLAN interface.
name L3-VNI-VLAN-10none
vn-segment 10000010none
vlan 30nv set bridge domain br_default vlan 30 vni 10000030
vn-segment 10000030noneA single command with NVUE defines the vn-segment and vlan.
vlan 40nv set bridge domain br_default vlan 40 vni 10000040
vn-segment 10000040none
vpc domain 2nv set mlag backup 10.197.204.103Cumulus Linux Multi-Chassis Link Aggregation - MLAG uses remote and local peering to ensure uptime.
peer-keepalive destination 10.197.204.103nv set mlag peer-ip linklocalYou can determine the local peer IP automatically with link-local addresses.
interface Vlan10noneThe layer 3 VNI does not require a unique VLAN interface.
no shutdownnone
vrf member EVPN-L3-VNI-VLAN-10none
ip forwardnone
interface Vlan30
no shutdownnoneInterfaces are no shut by default.
vrf member EVPN-L3-VNI-VLAN-10nv set interface vlan30 ip vrf EVPN-L3-VNI-VLAN-10
ip address 172.16.30.1/24nv set interface vlan30 ip address 172.16.30.1/24
fabric forwarding mode anycast-gatewaynoneYou do not speceify an explicit command for this setting in NVUE.
interface Vlan40 
no shutdownnone
vrf member EVPN-L3-VNI-VLAN-10nv set interface vlan40 ip vrf EVPN-L3-VNI-VLAN-10
ip address 172.16.40.1/24nv set interface vlan40 ip address 172.16.40.1/24
fabric forwarding mode anycast-gatewaynone
interface port-channel2 nv set interface bond2 bond member swp1This example uses swp1 instead of NX-OS port e1/13.
switchport mode trunknv set interface bond2 bridge domain br_default vlan allbr_default is the name of the default bridge.
vpc 2nv set interface bond2 bond mlag id 2
interface port-channel34nv set interface peerlink bond member swp49This example uses swp49 instead of NX-OS port e1/1.
switchport mode trunknoneThe peerlink is a trunk port by default.
spanning-tree port type networknoneEnabled by default.
vpc peer-linknoneYou do this with the name peerlink.
interface nve1noneNVUE does not have an explicit interface.
no shutdownnone
source-interface loopback2nv set nve vxlan source address 192.168.33.33You configure NVUE interface settings globally with nv set nve vxlan commands.
host-reachability protocol bgpnone
member vni 10000010 associate-vrfnv set vrf EVPN-L3-VNI-VLAN-10 evpn vni 10000010
member vni 10000030noneYou only need to associate the VRF VNI.
suppress-arpnv set nve vxlan arp-nd-suppress on
mcast-group 239.1.1.10noneNVIDIA recommends you use Head end Replication.
member vni 10000040none
suppress-arpnone
mcast-group 239.1.1.20none
interface Ethernet1/1none
switchport mode trunknoneYou defined the interface when you created the bond earlier.
channel-group 34 mode activenone
interface Ethernet1/2none
no switchportnoneInterfaces are layer 3 by default.
ip address 192.168.39.3/24noneNVIDIA recommends BGP Unnumbered for the underlay, removing the need for an IP address.
ip router ospf UNDERLAY area 0.0.0.0noneNVIDIA recommends BGP Unnumbered.
ip pim sparse-modenoneNVIDIA recommends Head End Replication.
no shutdownnone
interface Ethernet1/13noneThis example uses port swp1 instead of e1/13.
switchport mode trunknonePort configuration is part of the bond definition.
channel-group 2 mode activenone
interface loopback2nv set interface lo ip address 192.168.33.33/32Cumulus Linux uses a single loopback lo.
ip address 192.168.33.33/32noneDefined with the creation of the loopback interface.
ip address 192.168.33.34/32 secondarynv set nve vxlan mlag shared-address 192.168.33.34
ip router ospf UNDERLAY area 0.0.0.0noneNVIDIA recommends using BGP for both the underlay and overlay.
router bgp 65000nv set router bgp autonomous-system 65000
address-family ipv4 unicastnone
address-family l2vpn evpnnone
neighbor 192.168.9.9 remote-as 100nv set vrf default router bgp neighbor swp51 remote-as externalThis command uses eBGP unnumbered instead of IP based peering.
remote-as 65000noneThis command combines with the peer command above.
update-source loopback2noneBGP unnumbered uses the interface instead of a loopback source.
address-family ipv4 unicastnone
address-family l2vpn evpnnv set vrf default router bgp neighbor swp51 address-family l2vpn-evpn enable on
send-community extendednoneEnabled by default.
vrf EVPN-L3-VNI-VLAN-10noneYou manage this through an earlier nv set vrf command.
address-family ipv4 unicastnone
advertise l2vpn evpnnone
evpnnone
vni 10000030 l2none
rd autonone
route-target import autonone
route-target export autonone
vni 10000040 l2none
rd autonone
route-target import autonone
route-target export auto none
Complete NVUE Configuration
nv set system global anycast-mac 44:38:39:BE:EF:AA
nv set bridge domain br_default vlan 30,40
nv set bridge domain br_default vlan 30 vni 10000030
nv set bridge domain br_default vlan 40 vni 10000040
nv set mlag backup 10.197.204.103
nv set mlag peer-ip linklocal
nv set interface vlan30 ip vrf EVPN-L3-VNI-VLAN-10
nv set interface vlan30 ip address 172.16.30.1/24
nv set interface vlan40 ip vrf EVPN-L3-VNI-VLAN-10
nv set interface vlan40 ip address 172.16.40.1/24
nv set interface bond2 bond member swp1
nv set interface bond2 bridge domain br_default vlan all
nv set interface bond2 bond mlag id 2
nv set interface peerlink bond member swp49
nv set nve vxlan source address 192.168.33.33
nv set vrf EVPN-L3-VNI-VLAN-10 evpn vni 10000010
nv set nve vxlan arp-nd-suppress on
nv set interface lo ip address 192.168.33.33/32
nv set nve vxlan mlag shared-address 192.168.33.34
nv set router bgp autonomous-system 65000
nv set vrf default router bgp neighbor swp51 remote-as external
nv set vrf default router bgp neighbor swp51 address-family l2vpn-evpn enable on