CUMULUS NETWORKS WHITEPAPER — VXLAN ROUTING WITH EVPN VXLAN routing with EVPN The VXLAN routing architectures, operations, and standard configurations for modern data center networks Contents Introduction 2 VXLAN routing overview 3 VXLAN routing architectures 4 Centralized architecture 4 Distributed architecture 5 VXLAN routing with EVPN overview 6 EVPN route types for VXLAN routing 6 EVPN integrated routing and bridging (IRB) models 9 Asymmetric IRB model Symmetric IRB model 9 10 Cumulus EVPN VXLAN routing deployment scenarios and configurations 12 Centralized VXLAN routing with bridging using EVPN 15 Distributed VXLAN routing with the asymmetric IRB model 23 Distributed VXLAN routing with the symmetric IRB model 27 NetQ for EVPN operations 32 Conclusion EVPN: Introduction Introduction Modern day data centers are moving from layer 2 to layer 3 architectures to take advantage of a vast array of benefits. A layer 3 infrastructure provides smaller failure domains, less spanning tree troubleshooting, fewer proprietary protocols such as MLAG, as well as increased redundancy and resilience over a strict layer 2 data center. However, some distributed applications, load balancers, and storage appliances still require layer 2 connectivity to communicate. Therefore, VXLAN was born to run as an overlay on a robust layer 3 data center to offer the best of both worlds: maintaining layer 2 connectivity between racks while deploying a layer 3 infrastructure. VXLAN also offers additional benefits over layer 2 VLANs such as scale and flexibility. To provide the layer 2 connectivity, VLANs are bridged into VXLAN tunnels, which run over the IP infrastructure. Since these packets are bridged, they cannot reach outside the same VLAN/VXLAN without performing some type of routing. However, many server applications require both layer 2 connectivity to the same VLAN on a different rack and layer 3 connectivity to other VXLANs/VLANs within in the data center in a different rack (or even outside the data center altogether). For example, in Figure 1 below, the green application only communicates via layer 2, while the orange application needs access to the Internet or other VLANs. Without static configuration, the front-end server cannot reach the Internet without some type of VXLAN routing. Internet Layer 3 IP Fabric VLAN 10 VLAN 10 Front-end Server Back-end Database Figure 1 - VXLAN routing example In order to reach each other or the Internet, these individual tunnels must be integrated with the larger routing fabric. Older ASICs in many data center switches, such as the Broadcom Trident II, cannot support dual lookup routing — routing first on the outer header IP address and then again on the decapsulated packet. Therefore, data centers with an external 2 CUMULUS NETWORKS — WHITE PAPER EVPN: VXLAN routing overview reachability requirement deployed external routing via a separate router/firewall or a hyperloop cable to perform routing between the VXLAN tunnels and the Internet, usually from a centralized location. The newer ASICs, such as the Broadcom Trident II+, Maverick, Tomahawk (via internal loopback), and the Mellanox Spectrum can route directly on the ASIC, which opens the door to more efficient VXLAN routing design options using BGP with the Ethernet Virtual Private Network (EVPN) address family as the routing protocol. This paper is meant as an addendum to the paper, BGP EVPN for VXLAN, which describes using EVPN for VLAN/VXLAN bridging. Deploying BGP EVPN also as a layer 3 routing protocol for VXLAN dramatically simplifies the VXLAN routing deployment by using the same protocol, BGP, for the underlay, for bridging between VLANs/VXLANs, and for routing between VXLAN tunnels and to outside the data center. This paper provides a VXLAN routing overview, describes some of the architectures and aspects of VXLAN routing with EVPN, and provides some typical design examples along with configuration snippets. VXLAN routing overview VXLAN is an effective way to tunnel layer 2 frames over a layer 3 infrastructure, and EVPN can be used to provide a resilient control plane for VXLAN tunnels. However, routing is also needed for communication between VXLAN tunnels or between a VXLAN tunnel and the Internet. In the past, customers with older generation silicon performed VXLAN routing using an external router and/or a hyperloop. Newer generation ASICs such as the Broadcom Trident II+, Trident III, Tomahawk1 , and Mellanox Spectrum support VXLAN routing directly on the switch. For example, Figure 2 shows Host A on VLAN A communicating with a host on VLAN B located on a different rack. Routing vni Send to host C on VLAN B on a different rack Bridge vni swp1 swp2 Host A VLAN A Host B VLAN B Figure 2 - Internal silicon-based VXLAN routing example VXLAN routing internal to the switch allows for much more efficient architectures in a network. You can efficiently deploy one of two different architectures to route across VXLAN boundaries while still supporting VXLAN bridging when applicable. The two architectures are discussed in the next section. 1 Tomahawk provides internal VXLAN routing via an internal loopback CUMULUS NETWORKS — WHITE PAPER 3 EVPN: VXLAN routing architectures VXLAN routing architectures VXLAN routing is primarily deployed using two architectures: either centralized or distributed. A centralized architecture involves using a centralized router (or pair of routers) to route between all the local VXLAN tunnels and between a VXLAN tunnel and the outside. A centralized architecture does not use EVPN for layer 3 routing; all the routing happens on a centralized switch but EVPN routes are leveraged for VXLAN bridging and features such as ARP suppression and mobility. A distributed architecture involves distributing EVPN routes that are used for both routing and bridging VXLAN tunnels to each top of rack leaf switch. A distributed architecture provides routing closest to the hosts. CENTRALIZED ARCHITECTURE In a centralized architecture, only one or a pair of routers provide access between VXLANs. All inter-VLAN traffic or traffic intended for outside the local data center needs to be VXLAN tunneled to the centralized router and back to the destination. This "tromboning" of traffic means additional east-west traffic will occur in the data center to support VXLAN routing. For each VLAN/VXLAN pair in the local network, the centralized router must have a VNI and a switch virtual interface (SVI) that is used as the VLAN's default gateway. The default gateway IP and MAC are advertised via BGP EVPN extended community to all the leaf switches. See Figure 3. Internet Layer 3 Network Spine01 Leaf01 eBGP Peering (ipv4 unicast) Spine02 Leaf02 VTEP Bridging only VTEP VTEP Bridging only Centralized Router SVI B (default gtwy) VLAN A VLAN B Server01 Server02 VLAN A Server03 VLAN B SVI A (default gtwy) Server04 VXLAN Tunnel, VNI A VXLAN Tunnel, VNI B Figure 3 - Centralized routing architecture For example, Server01 on VLAN A wants to communicate with Server04 on VLAN B. Traffic exits Server01 and enters Leaf01 with a destination IP/MAC of the SVI on the centralized router (the default gateway). Leaf01 bridges and encapsulates the traffic in a VXLAN tunnel 4 CUMULUS NETWORKS — WHITE PAPER EVPN: VXLAN routing architectures headed for the default gateway. The centralized router decapsulates the packet and routes the packet to SVI B, which is seen as a connected route. The router then encapsulates the packet in a new VXLAN header and sends it to Leaf02 on the destination VXLAN. Leaf02 decapsulates and bridges the packet to Server04. DISTRIBUTED ARCHITECTURE A distributed architecture involves configuring an SVI and thus enabling VXLAN routing on each top of rack (ToR) leaf switch. Therefore, the VXLAN routing occurs closest to the host, keeping traffic local which provides more efficient routing and lower latency than the centralized architecture. Typically, an anycast gateway is configured with a distributed architecture. Using an anycast gateway, every leaf's SVI is configured with the same IP address per VLAN. For example, looking at Figure 4 below, Leaf01 SVI A and Leaf02 SVI A would be configured with the same IP address and subnet mask. Since all hosts within a VLAN are configured with the same IP default gateway address, all hosts or VMs can be easily moved throughout the data center without changing their configuration. Internet Layer 3 Network Spine01 Leaf01 Leaf02 VTEP Anycast gateway SVI A VLAN A eBGP Peering (ipv4 unicast) Spine02 SVI B VLAN B Server01 Server02 SVI A VLAN A Server03 VTEP VTEP SVI B Exit01 VLAN B Server04 VXLAN Tunnel, VNI A VXLAN Tunnel, VNI B Figure 4 - Distributed architecture Using Figure 4 as an example, Server01 on VLAN A wants to communicate with Server04 on VLAN B. Traffic would exit Server01 with a destination MAC address of Leaf01, its default gateway. Leaf01 would recognize its own MAC address, perform a lookup, add the correct VXLAN header and route the packet directly towards Leaf02. The Exit01 router is only used for traffic to/from the local data center/POD to outside the data center/POD. CUMULUS NETWORKS — WHITE PAPER 5 EVPN: VXLAN routing with EVPN overview VXLAN routing with EVPN overview It is helpful to understand several aspects of EVPN that are specific to VXLAN routing. We cover some of them in the next section to introduce the topics before moving into deployment scenarios and configuration. EVPN ROUTE TYPES FOR VXLAN ROUTING BGP consists of multiple address families. Each address family exchanges a different type of route. For example, the IPv4 address family exchanges IPv4 routes, and the IPv6 address family exchanges IPv6 routes. EVPN also has its own BGP address family which exchanges EVPN routes. Several different types of EVPN routes exist within the BGP EVPN address family. This paper covers the two route types directly used for VXLAN routing, type 2 and type 5. Cumulus Linux also supports type 3, which is used for VTEP discovery. Type 2 EVPN routes A type 2 EVPN route is generally used for communication within a data center, although it could used for "stretching" VXLAN tunnels between data centers. It consists of the following fields: BGP EVPN Type 2 Route Route Distinguisher Ethernet Segment Identifier Ethernet Tag ID MAC Address Length MAC Address IP Address Length IP Address Label 1 (L2VNI) Label 2 (L3VNI) Figure 5 - BGP EVPN type 2 route As seen in Figure 5, a type 2 route includes both an IP address and MAC address coupled together. The MAC address in the advertisement enables all leafs to know the location of every host and enables layer 2 reachability while eliminating data plane learning. Adding the IP address onto the advertisement for each MAC address allows each leaf switch to route as well as perform ARP suppression, which reduces broadcast traffic in the network. 6 CUMULUS NETWORKS — WHITE PAPER EVPN: VXLAN routing with EVPN overview A type 2 route is used for: ●● All VLAN/VXLAN bridging ●● Intra-data center or intra-POD VXLAN routing ●● Inter data center routing with stretched VXLAN tunnels (VXLAN tunnels between data centers or PODs) If external layer 3 connectivity is required, a separate route type, type 5, is used. Type 5 is discussed below. Type 5 EVPN routes The type 5 EVPN route, IP prefix route, includes the following fields: BGP EVPN Type 5 Route Route Distinguisher Ethernet Segment Identifier Ethernet Tag ID IP Prefix Length IP Prefix GW IP address Label (L3VNI) Figure 6 - Type 5 EVPN route As is seen above in Figure 6, the route advertisement contains the IP address and IP prefix length, but no MAC address. The type 5 route is used with a distributed architecture to advertise external, inter-data center and/or inter-POD routes to all local leafs within a VRF and can only be used with an L3VNI. More information about the L3VNI can be found in the Symmetric IRB Model section of this paper. Figure 7 depicts a setup where type 5 EVPN routes are used for external routing. In this case, we are advertising the 172.16.0.0/16 route from the Internet router towards the border leafs in the BGP IPv4 address family. It is inserted into vrf1 and sent to all the VTEPs in the network via a type 5 EVPN route. A type 5 route may also be used for inter-POD or interdata center routing. CUMULUS NETWORKS — WHITE PAPER 7 EVPN: VXLAN routing with EVPN overview Layer 3 Network AS65020 AS65020 Internet Advertise 172.16.0.0/16 eBGP Peering (ipv4 unicast) L2 VNI L3 VNI Leaf01 VRF1 L2 VNI L3 VNI Leaf02 VRF1 AS65011 Host A VLAN A Border Leaf VRF1 AS65012 AS65041 Host A VLAN A Rack 1 Rack 2 VXLAN Tunnel, L2 VNI (Type 2 routes) VXLAN Tunnel, L3 VNI (Type 2/5 routes) Figure 7 - Using Type 5 routes for external routing cumulus@leaf01:mgmt-vrf:~$ net show bgp evpn route BGP table version is 23, local router ID is 10.0.0.11 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete EVPN type-2 prefix: [2]:[ESI]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP] EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP] EVPN type-5 prefix: [5]:[ESI}[EthTag]:[Iplen]:[IP]:[GW} Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 10.0.0.11:2 *> [2]:[0]:[0]:[48]:[44:38:39:00:00:15] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:00:15]:[32]:[10.2.4.102] 10.0.0.112 32768 I <snip> Route Distinguisher: 10.0.0.41:2 * [5]:[0]:[0][16]:[172.16.0.0] 10.0.0.41 0 65020 65041 i *> [5]:[0]:[0][16]:[172.16.0.0] 10.0.0.41 0 65020 65041 i A type 5 EVPN route is used for: ●● All traffic destined to the Internet ●● 8 Inter-data center or inter-POD VXLAN routing CUMULUS NETWORKS — WHITE PAPER EVPN: VXLAN routing with EVPN overview EVPN INTEGRATED ROUTING AND BRIDGING (IRB) MODELS The IETF integrated routing and bridging in EVPN draft identifies two possible distributed IRB models for use with distributed EVPN: asymmetric and symmetric. Cumulus Linux supports both models. Each model is useful in certain situations and has unique characteristics. While some vendors support either one model or the other, a Cumulus Linux EVPN with VXLAN routing implementation can support either model. Supporting both provides interoperability with various other vendors as well as a choice for which model is best for your data center. This section discusses the benefits and operation of each model used for VXLAN integrated routing and bridging. ASYMMETRIC IRB MODEL The asymmetric IRB model is considered asymmetric as routed traffic between two hosts travels on different VNIs (always the destination VNI). Traffic entering the VNI is bridged from the VLAN and may be routed to a different VNI, whereas traffic exiting the VNI is always bridged. Layer 3 Network Orange VNI Leaf01 Green VNI Routing on ingress Bridging on egress Orange VNI Leaf02 Green VNI Routing on ingress Host A VLAN A Host B VLAN B Host D VLAN B Host C VLAN A Bridging on egress VXLAN Tunnel, Orange VNI VXLAN Tunnel, Green VNI Figure 8 - Asymmetric IRB model Consider the scenario in Figure 8. Host A on VLAN A wants to communicate with Host C on VLAN A. Host A knows Host C is on its same subnet (using the destination address and its own IP address and mask to determine) so it initiates the communication by ARPing for Host C. Since Host C has already sent a frame in the past, Leaf02 learned its MAC address and previously communicated it to Leaf01. Leaf01 responds to Host A's ARP request, telling Host A Host C's MAC address. Host A then sends its packets directly to Host C, bridging across the orange VXLAN tunnel. CUMULUS NETWORKS — WHITE PAPER 9 EVPN: VXLAN routing with EVPN overview Host A wants to now communicate with Host B, which is located on a different VLAN and thus reachable via a different VNI. Since the destination is a different subnet from Host A, Host A sends the frame to its default gateway, which is Leaf01. The Leaf01 southbound interface towards Host A is configured with an anycast IP address, which is discussed more deeply in the architectures section. Leaf01 recognizes that the destination MAC address is itself and uses the routing table to route the packet to the Green VNI. Leaf01 then tunnels the frame in the Green VNI to Leaf02. Leaf02 removes the VXLAN header from the frame, and bridges the frame to Host B. The return traffic behaves similarly. Host B sends a frame to Leaf02, which recognizes its own destination MAC address and routes the packet to the Orange VNI. The packet is tunneled within the Orange VNI to Leaf01. Leaf01 removes the VXLAN header from the frame and bridges it to Host A. With the asymmetric model, all the required source and destination VNIs (that is, Orange and Green) must be present on each leaf, even if that leaf doesn't have a host in that associated VLAN in its rack. In many instances, this is needed for VM mobility anyway. As a result, all leafs would be required to hold all routes and all MAC addresses that communicate with each other. Deploying an asymmetric model is a simple solution as no additional VNIs need to be configured and fewer routing hops occur to communicate between VXLANs. However, it does not scale as well as the symmetric model covered below. In the case of multitenancy, each set of VLANs can be placed into separate VRFs and routed between them. Use the asymmetric model if: ●● You plan to deploy all VNIs on all leaf switches anyway ●● You have a small number of VNIs in your data center or POD ●● Your data center can be broken into PODs, with the VLANs/subnets contained in each POD SYMMETRIC IRB MODEL Routed VXLAN traffic within the symmetric IRB model travels across the same "transit" VNI in both directions. The "transit" VNI must also have an associated VLAN to accommodate traffic to be routed between VXLAN tunnels. We call the new transit VNI "L3VNI". All traffic that needs to be routed is bridged onto the associated VLAN and then routed onto the L3VNI. The ingress traffic is routed on ingress to the L3VNI, tunneled across the layer 3 infrastructure, and then routed again on egress off the L3VNI to the associated VLAN and ultimately bridged to the destination host. 10 CUMULUS NETWORKS — WHITE PAPER EVPN: VXLAN routing with EVPN overview Layer 3 Network To Leaf03 Leaf01 Leaf02 VNI 24 Routing & bridging on ingress & egress L3VNI Routing & bridging on ingress & egress Host A VLAN 24 VNI 24 VNI 13 L3VNI Host B VLAN 13 Host C VLAN 24 Rack 1 Rack 2 VXLAN Tunnel, Orange VNI 24 (Layer 2 communication only) VXLAN Tunnel, Green VNI 13 (Layer 2 communication only (e.g. to Rack 3)) VXLAN Tunnel, L3VNI (Layer 3 communication only) cumulus@leaf02:mgmt-vrf:~$ net show bgp evpn vni Advertise Gateway Macip: Disabled Advertise All VNI flag: Enabled Number of L2 VNIs: 2 Number of L3 VNIs: 1 Flags: * - Kernel VNI Type RD Import RT * 24 L2 10.0.0.12:2 65012:24 * 13 L2 10.0.0.12:3 65012:13 * 104001 L3 10.2.4.12:4 65012:104001 Export RT 65012:13 5012:13 65012:104001 Tenant VRF vrf1 vrf1 vrf1 Figure 9 - Symmetric IRB model Using Figure 9 as an example, Host A on VLAN 24 needs to communicate with Host B on VLAN 13. Since the destination is a different subnet from Host A, Host A sends the frame to its default gateway, Leaf01. Leaf01 recognizes that the destination MAC address is itself and uses the routing table to route the packet to the egress leaf (Leaf02) over the L3VNI. The MAC address of Leaf02 is communicated to Leaf01 via a BGP extended community. The VXLAN-encapsulated packet has the egress leaf's MAC as the destination MAC address and the L3VNI as the VNI. Leaf02 performs VXLAN decapsulation and recognizes that the destination MAC address is itself and routes the packet to the destination VLAN to reach the destination host. The return traffic is routed similarly over the same L3VNI. Routing and bridging happens on both the ingress leaf and the egress leaf. CUMULUS NETWORKS — WHITE PAPER 11 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations With the symmetric model, the leaf switches only need to host the VNIs/VLANs that are located on their rack, as well as the L3VNI and its associated VLAN, since the ingress leaf switch doesn't route directly to the destination VNI. The ability to host only the local VNIs (plus one extra) provides additional scale over the asymmetric model. However, the data plane traffic is more complex as an extra routing hop occurs and an extra VXLAN tunnel and VLAN in your network is required. Multitenancy requires one L3VNI per VRF, and all switches participating in that VRF must be configured with the same L3VNI. Use the symmetric model if: ●● Your VLANs/subnets/VNIs are widely dispersed ●● Your VLANs/subnets/VNIs are provisioned on the fly ●● You need external routing with Cumulus Linux 3.5 Cumulus EVPN VXLAN routing deployment scenarios and configurations VXLAN routing can be deployed in either a centralized or distributed architecture. Centralized architecture involves bridging on the leaf switches and routing between VXLANs on a centralized switch, usually a border switch. A distributed architecture can be deployed in either the asymmetric or the symmetric IRB model. This section discusses deployment scenarios for each model and includes configuration snippets for each element of the design. More information on configuring VXLAN routing with EVPN can be found in the Cumulus Linux User Guide. The three solutions of this section use the Cumulus Linux Reference Architecture, as discussed in each section. Although the examples are shown with the default, or one data plane VRF, the same procedure as shown here could be used with multiple VRFs as well. Although not depicted in the diagrams, all switches and hosts are connected to an outof-band management network. Management VRF is configured on the switches and eth0 (connected to the out-of-band management network) is located in the management VRF. Although an out-of-band management network connected to the switch via the management VRF is always recommended, it is not required to deploy these solutions. We set up an eBGP unnumbered underlay between the leafs, the spine and the exit leafs in all models outlined in this paper. Using eBGP as the underlay routing protocol provides a robust scalable infrastructure for the layer 2 overlay and sets the stage to also use BGP EVPN as the overlay routing protocol. We configure VXLAN tunnels as the overlay — providing layer 2 connectivity over the layer 3 infrastructure. BGP EVPN is used as the VXLAN routing and bridging control plane and provides routing between VXLAN tunnels on the local, directly-connected leaf. All hosts are 12 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations advertised as type 2 EVPN routes in all scenarios. For each of these examples, we deploy four servers, two in VLAN13 and two in VLAN24. We run MLAG on the leaf switches to provide redundancy to the hosts. We deploy a border leaf connected to an Internet router. For purposes of these examples, the following addresses are used. Note that not all the addresses depicted in Table 1 below apply to all scenarios. Table 1 - Addresses ADDRESSES SWITCH LOOPBACK SVIs VNIs VLANs BGP AS Internet 10.0.0.253/32 N/A N/A N/A 25253 Exit01 10.0.0.41/32 N/A 104001 (L3VNI) 4001 (mapped to L3VNI) 65041 Exit02 10.0.0.42/32 N/A 104001 (L3VNI) 4001 (mapped to L3VNI) 65042 Spine01 10.0.0.21/32 N/A N/A N/A 65020 Spine02 10.0.0.22/32 N/A N/A N/A 65020 10.1.3.11 10.1.3.1 (anycast gtwy) 13 (data) 13 10.2.4.11 10.2.4.1 (anycast gtwy) 24 (data) 24 N/A 104001 (L3VNI) 4001 10.1.3.12/24 10.1.3.1/24 (anycast gtwy) 13 (data) 13 10.2.4.12/24 10.2.4.1/24 (anycast gtwy) 24(data) 24 N/A 104001 (L3VNI) 4001 10.1.3.13/24 10.1.3.1/24 13 (data) 13 10.2.4.13/24 10.2.4.1/24 (anycast gtwy) 24(data) 24 N/A 104001 (L3VNI) 4001 Leaf01 Leaf02 Leaf03 10.0.0.11/32 10.0.0.12/32 10.0.0.13/32 CUMULUS NETWORKS — WHITE PAPER 65011 65012 65013 13 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations Leaf04 10.0.0.14/32 10.1.3.14/24 10.1.3.1/24 (anycast gtwy) 13 (data) 13 10.2.4.14/24 10.1.3.1/24 (anycast gtwy) 24(data) 24 N/A 104001 (L3VNI) 4001 65014 In all scenarios the spine switches are configured the same. They are configured with eBGP unnumbered with the EVPN address family, peering with each leaf and any border/exit routers. A sample configuration is show below in Figure 10 where the loopback is 10.0.0.21 and the BGP AS is 65020. Switch ports 1-4 connect to each leaf switch, respectively, and swp29 and 30 connect to the exit switches. router bgp 65020 bgp router-id 10.0.0.21 coalesce-time 1300 bgp bestpath as-path multipath-relax neighbor swp1 interface remote-as external neighbor swp2 interfac remote-as external neighbor swp3 interface remote-as external neighbor swp4 interface remote-as external neighbor swp29 interface remote-as external neighbor swp30 interface remote-as external address-family ipv4 unicast network 10.0.0.21/32 address-family l2vpn evpn neighbor swp1 activate neighbor swp2 activate neighbor swp3 activate neighbor swp4 activate neighbor swp29 activate neighbor swp30 activate Figure 10 - Spine switch configuration snippet CENTRALIZED VXLAN ROUTING WITH BRIDGING USING EVPN An architecture describing a centralized routing scenario is depicted below in Figure 11. Internet Layer 3 Network eBGP Peering Spines Swp1-4, 29-30 Swp44 Swp51-52 Swp51-52 Leafs VTEP VTEP Swp1-2 Swp1-2 VTEP Swp1-2 Swp1-2 Exit Routers SVI 24 (default gtwy) SVI 13 (default gtwy) 10.1.3.101 10.2.4.102 VLAN 13 Server01 VLAN 24 Server02 10.1.3.103 VLAN 13 Server03 10.2.4.104 VLAN 24 Server04 VXLAN Tunnel, VNI 13 VXLAN Tunnel, VNI 24 Figure 11 - Centralized architecture 14 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations Each of the two racks hosts two servers and two leaf switches. The servers on a rack are on separate VLANs from each other. One server is in VLAN 13 and the other server is in VLAN 24. The leaf switches are configured with MLAG and each server is configured with a bond interface. However, each member of the bond is connected to a different leaf switch in the same rack. Two VNIs and an anycast VTEP exist on each leaf switch, VNI 13 and VNI 24. An anycast address is used for the VTEP to allow for VXLAN redundancy with the MLAG. Only bridging occurs on the leaf switches in this design. Each leaf is connected to each spine. The spines are configured for eBGP unnumbered as the underlay routing protocol, and with BGP EVPN for the overlay. The spines are connected to the centralized routers. The centralized (exit) routers also have the same VNIs configured as the leafs and an anycast VTEP. Since it hosts the SVI and thus is the default gateway for all the VNIs, the centralized routers also advertises themselves as the default gateway by using a BGP extended community with a type 2 EVPN route. Since we are running MLAG with VRR between the centralized routers, the virtual IP and MAC addresses are advertised as well as the physical addresses. The centralized routers peer to the spines for the underlay with the IPv4 address family, and peer to the spines with the L2VPN EVPN address family. They also peer with the Internet router with the IPv4 unicast address family. This design can be expanded to accommodate many more servers and racks. A sample configuration snippet for a leaf switch is shown in Figure 12. The MLAG, peerlink and bond interface towards the servers are left off for brevity. CUMULUS NETWORKS — WHITE PAPER 15 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface lo address 10.0.0.11/32 clagd-vxlan-anycast-ip 10.0.0.112 interface vlan13 vlan-id 13 vlan-raw-device bridge interface bridge bridge-ports bond01 bond02 peerlink vni13 vni24 bridge-pvid 1 bridge-vids 13 24 bridge-vlan-aware yes interface vlan24 vlan-id 24 vlan-raw-device bridge interface vni13 bridge-access 13 bridge-learning off bridge-arp-nd-suppress on mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 13 vxlan-local-tunnelip 10.0.0.11 interface vni24 bridge-access 24 bridge-arp-nd-suppress on bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 24 vxlan-local-tunnelip 10.0.0.11 router bgp 65011 bgp router-id 10.0.0.11 bgp bestpath as-path multipath-relax neighbor swp51 interface remote-as external neighbor swp52 interface remote-as external address-family ipv4 unicast network 10.0.0.11/32 network 10.0.0.112/32 address-family l2vpn evpn neighbor swp51 activate neighbor swp52 activate advertise-all-vni # pointing to spine01 # pointing to spine02 Figure 12 - Centralized architecture leaf switch configuration snippet The centralized switches are configured with a VTEP and all the same VNIs. An SVI is also configured on each VLAN on the centralized switches. BGP EVPN is configured to send out the default gateway community to all the leaf switches, as highlighted below. The tenant VLANS are advertised via the BGP network command, and a route-map is used to send only the tenant VLAN subnets to the Internet router. Alternatively, redistribute connected could also be used with a route map. A route-map is also used to send only the loopback and VTEP anycast addresses of the exit routers to the underlay. The MLAG configurations were left off for brevity. Figure 13 shows a configuration snippet on a centralized router. 16 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface lo address 10.0.0.41/32 clagd-vxlan-anycast-ip 10.0.0.142 interface bridge bridge-ports peerlink vni13 vni24 bridge-pvid 1 bridge-vids 13 24 bridge-vlan-aware yes interface vni13 bridge-access 13 bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 13 vxlan-local-tunnelip 10.0.0.41 interface vni24 bridge-access 24 bridge-arp-nd-suppress on bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 24 vxlan-local-tunnelip 10.0.0.41 interface vlan13 address 10.1.3.13/24 address-virtual 44:39:39:ff:00:13 10.1.3.1/24 vlan-id 13 vlan-raw-device bridge interface vlan24 address 10.2.4.13/24 address-virtual 44:39:39:ff:00:24 10.2.4.1/24 vlan-id 24 vlan-raw-device bridge router bgp 65041 bgp router-id 10.0.0.41 coalesce-time 1100 bgp bestpath as-path multipath-relax neighbor swp44 interface remote-as external neighbor swp51 interface remote-as external neighbor swp52 interface remote-as external address-family ipv4 unicast Network 10.0.0.142/32 network 10.0.0.41/32 network 10.1.3.0/24 network 10.2.4.0/24 neighbor swp44 route-map TENANT _ VLANS out neighbor swp51 route-map NO _ TENANT _ VLANS _ UNDERLAY out neighbor swp52 route-map NO _ TENANT _ VLANS _ UNDERLAY out address-family l2vpn evpn neighbor swp51 activate neighbor swp52 activate advertise-all-vni advertise-default-gw ip prefix-list TENANT _ VLANS seq 5 permit 10.2.4.0/24 ip prefix-list TENANT _ VLANS seq 10 permit 10.1.3.0/24 ip prefix-list NO _ TENANT _ VLANS seq 5 permit 10.0.0.41/32 ip prefix-list NO _ TENANT _ VLANS seq 10 permit 10.0.0.142/32 route-map TENANT _ VLANS permit 10 match ip address prefix-list TENANT _ VLANS route-map NO _ TENANT _ VLANS _ UNDERLAY permit 10 match ip address prefix-list NO _ TENANT _ VLANS Figure 13 - Centralized switch configuration snippet The configuration from the Internet router is very basic: we configure BGP unnumbered, and advertise the loopback (BGP router ID) and the default route. Figure 14 shows the configuration snippet. The management VRF was left off for brevity. CUMULUS NETWORKS — WHITE PAPER 17 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface lo address 10.0.0.253/32 interface eth0 address 192.168.0.253/24 interface swp1 ipv6 nd ra-interval 10 no ipv6 nd suppress-ra router bgp 25253 bgp router-id 10.0.0.253 coalesce-time 1000 bgp bestpath as-path multipath-relax neighbor swp1 interface remote-as external neighbor swp2 interface remote-as external address-family ipv4 unicast network 10.0.0.253/32 neighbor swp1 default-originate neighbor swp2 default-originate line vty Figure 14 - Internet router configuration Moving back to the leaf, we can examine the EVPN route table. We see the addresses to the virtual default gateways — 10.1.3.1 and 10.2.4.1— are installed as type 2 routes as expected; each has two ECMP routes, one through each spine switch. The addresses to the physical interfaces are displayed as well. Since the centralized architecture bridges at the ToRs, EVPN sends only type 2 and 3 routes to the leafs. The EVPN routes in this case are used for bridging only and are shown in Figure 15. Some routes to the other hosts were left off for brevity. 18 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@leaf01:mgmt-vrf:~$ net show bgp evpn route BGP table version is 7, local router ID is 10.0.0.11 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete EVPN type-2 prefix: [2]:[ESI]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP] EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP] EVPN type-5 prefix: [5]:[ESI]:[EthTag]:[IPlen]:[IP] <snip> Route Distinguisher: 10.0.0.41:2 * [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[128]:[fe80::4639:39ff:feff:13] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[128]:[fe80::4639:39ff:feff:13] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[32]:[10.1.3.13] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[32]:[10.1.3.13] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[128]:[fe80::68eb:f2ff:feb0:f3f6] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[128]:[fe80::68eb:f2ff:feb0:f3f6] 10.0.0.142 0 65020 65041 i * [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 65041 i *> [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 65041 i Route Distinguisher: 10.0.0.41:3 * [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[32]:[10.2.4.1] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[32]:[10.2.4.1] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[128]:[fe80::4639:39ff:feff:24] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[128]:[fe80::4639:39ff:feff:24] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[32]:[10.2.4.13] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[32]:[10.2.4.13] 10.0.0.142 0 65020 65041 i * [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[128]:[fe80::68eb:f2ff:feb0:f3f6] 10.0.0.142 0 65020 65041 i *> [2]:[0]:[0]:[48]:[6a:eb:f2:b0:f3:f6]:[128]:[fe80::68eb:f2ff:feb0:f3f6] 10.0.0.142 0 65020 65041 i * [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 65041 i *> [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 65041 i Route Distinguisher: 10.0.0.42:3 * [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[32]:[10.1.3.12] 10.0.0.142 0 65020 65042 i *> [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[32]:[10.1.3.12] 10.0.0.142 0 65020 65042 i * [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[128]:[fe80::38ba:74ff:febb:6f17] 10.0.0.142 0 65020 65042 i *> [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[128]:[fe80::38ba:74ff:febb:6f17] 10.0.0.142 0 65020 65042 i * [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] 10.0.0.142 0 65020 65042 i *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] 10.0.0.142 0 65020 65042 i Figure 15 - Leaf EVPN routing table with centralized architecture CUMULUS NETWORKS — WHITE PAPER 19 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations * [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[128]:[fe80::4639:39ff:feff:13] 10.0.0.142 0 65020 *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[128]:[fe80::4639:39ff:feff:13] 10.0.0.142 0 65020 * [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 *> [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 Route Distinguisher: 10.0.0.42:4 * [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[32]:[10.2.4.12] 10.0.0.142 0 65020 *> [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[32]:[10.2.4.12] 10.0.0.142 0 65020 * [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[128]:[fe80::38ba:74ff:febb:6f17] 10.0.0.142 0 65020 *> [2]:[0]:[0]:[48]:[3a:ba:74:bb:6f:17]:[128]:[fe80::38ba:74ff:febb:6f17] 10.0.0.142 0 65020 * [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[32]:[10.2.4.1] 10.0.0.142 0 65020 *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[32]:[10.2.4.1] 10.0.0.142 0 65020 * [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[128]:[fe80::4639:39ff:feff:24] 10.0.0.142 0 65020 *> [2]:[0]:[0]:[48]:[44:39:39:ff:00:24]:[128]:[fe80::4639:39ff:feff:24] 10.0.0.142 0 65020 * [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 *> [3]:[0]:[32]:[10.0.0.142] 10.0.0.142 0 65020 Displayed 52 prefixes (94 paths) 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i 65042 i Figure 15 - Leaf EVPN routing table with centralized architecture (continued) We can see the default gateway community for the route distinguisher by using the net show bgp l2vpn evpn route rd <rd> command, as shown below in Figure 16. Some of the output has been snipped for brevity. 20 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@leaf01:mgmt-vrf:~$ net show bgp l2vpn evpn route rd 10.0.0.41:2 EVPN type-2 prefix: [2]:[ESI]:[EthTag]:[MAClen]:[MAC] EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP] EVPN type-5 prefix: [5]:[ESI]:[EthTag]:[IPlen]:[IP] <snip> BGP routing table entry for 10.0.0.41:2:[2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] Paths: (1 available, best #1) Advertised to non peer-group peers: spine02(swp52) Route [2]:[0]:[0]:[48]:[44:39:39:ff:00:13]:[32]:[10.1.3.1] VNI 13 65020 65041 10.0.0.142 from spine02(swp52) (10.0.0.22) Origin IGP, localpref 100, valid, external, bestpath-from-AS 65020, best Extended Community: RT:65041:13 ET:8 Default Gateway AddPath ID: RX 0, TX 30 Last update: Thu Mar 8 19:58:56 2018 <snip> Figure 16 - Default gateway community Looking at the routing table on the leaf, we see only layer 3 routes to the loopbacks of the switches; all the routing between VXLAN subnets is happening on the centralized switch. Figure 17 depicts the output. CUMULUS NETWORKS — WHITE PAPER 21 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@leaf01:mgmt-vrf:~$ net show route show ip route ============= Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - IS-IS, B - BGP, P - PIM, E - EIGRP, N - NHRP, T - Table, v - VNC, V - VNC-Direct, A - Babel, D - SHARP, > - selected route, * - FIB route C>* 10.0.0.11/32 is directly connected, lo, 02:39:46 B>* 10.0.0.12/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:38:03 * via fe80::4638:39ff:fe00:25, swp52, 02:38:03 B>* 10.0.0.13/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 * via fe80::4638:39ff:fe00:25, swp52, 02:39:43 B>* 10.0.0.14/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 * via fe80::4638:39ff:fe00:25, swp52, 02:39:43 B>* 10.0.0.21/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 B>* 10.0.0.22/32 [20/0] via fe80::4638:39ff:fe00:25, swp52, 02:39:43 B>* 10.0.0.41/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 * via fe80::4638:39ff:fe00:25, swp52, 02:39:43 B>* 10.0.0.42/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 * via fe80::4638:39ff:fe00:25, swp52, 02:39:43 C>* 10.0.0.112/32 is directly connected, lo, 02:39:35 B>* 10.0.0.134/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 02:39:43 * via fe80::4638:39ff:fe00:25, swp52, 02:39:43 B>* 10.0.0.142/32 [20/0] via fe80::4638:39ff:fe00:54, swp51, 00:43:58 * via fe80::4638:39ff:fe00:25, swp52, 00:43:58 C>* 169.254.1.0/30 is directly connected, peerlink.4094, 02:38:04 Figure 17 - Leaf routing table The routing table on the centralized switch is as expected, shown in Figure 18, where we see the VLAN subnets as directly connected and the default pointing to the internet router: 22 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@exit01:mgmt-vrf:~$ net show route show ip route ============= Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - IS-IS, B - BGP, P - PIM, E - EIGRP, N - NHRP, T - Table, v - VNC, V - VNC-Direct, A - Babel, D - SHARP, > - selected route, * - FIB route B>* 0.0.0.0/0 [20/0] via fe80::4638:39ff:fe00:7, swp44, 18:06:20 B>* 10.0.0.11/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 02:40:33 * via fe80::4638:39ff:fe00:5b, swp52, 02:40:33 B>* 10.0.0.12/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 02:38:52 * via fe80::4638:39ff:fe00:5b, swp52, 02:38:52 B>* 10.0.0.13/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 19:15:53 * via fe80::4638:39ff:fe00:5b, swp52, 19:15:53 B>* 10.0.0.14/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 19:15:53 * via fe80::4638:39ff:fe00:5b, swp52, 19:15:53 B>* 10.0.0.21/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 19:15:53 B>* 10.0.0.22/32 [20/0] via fe80::4638:39ff:fe00:5b, swp52, 19:15:53 C>* 10.0.0.41/32 is directly connected, lo, 19:15:56 B>* 10.0.0.42/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 05:29:47 * via fe80::4638:39ff:fe00:5b, swp52, 05:29:47 B>* 10.0.0.112/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 02:39:11 * via fe80::4638:39ff:fe00:5b, swp52, 02:39:11 B>* 10.0.0.134/32 [20/0] via fe80::4638:39ff:fe00:a, swp51, 19:15:53 * via fe80::4638:39ff:fe00:5b, swp52, 19:15:53 C>* 10.0.0.142/32 is directly connected, lo, 18:17:39 B>* 10.0.0.253/32 [20/0] via fe80::4638:39ff:fe00:7, swp44, 18:06:20 C * 10.1.3.0/24 is directly connected, vlan13-v0, 18:17:43 C>* 10.1.3.0/24 is directly connected, vlan13, 18:17:43 C * 10.2.4.0/24 is directly connected, vlan24-v0, 05:27:17 C>* 10.2.4.0/24 is directly connected, vlan24, 18:17:43 C>* 169.254.1.0/30 is directly connected, peerlink.4094, 18:17:47 <snip> Figure 18 - Centralized routing table This setup is available virtually on Cumulus Networks GitHub site and all the full configurations are depicted. DISTRIBUTED VXLAN ROUTING WITH THE ASYMMETRIC IRB MODEL An architecture outlining an asymmetric model is depicted below in Figure 19. This design can be also expanded to accommodate many more racks. CUMULUS NETWORKS — WHITE PAPER 23 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations Layer 3 Network Leaf01 Leaf02 VRF1 VTEP VRF1 SVIs Anycast gateway SVI A 10.1.3.101 VRF1 VTEP Server02 VRF1 SVIs 10.1.3.101 VLAN 13 Server01 Leaf04 SVIs 10.2.4.102 VLAN 24 Leaf03 VLAN 24 Server03 SVIs 10.2.4.102 VLAN 13 Server04 VXLAN Tunnel, VNI 24 VXLAN Tunnel, VNI 13 Figure 19 - Architecture using asymmetric IRB model Two servers are located in VLAN 24 and two servers are located in VLAN 13. The servers are dual connected via MLAG to the leaf switches. Asymmetric VXLAN routing with EVPN is deployed to provide inter-VLAN connectivity. No special additional leaf (ToR) configuration is needed for VXLAN routing in the asymmetric scenario. It is enabled by default when the associated VLAN is configured with an SVI. However, to provide routing to a destination VLAN, the local switch must have a local VNI and VLAN configured for that destination VLAN, even if no hosts on that same destination VLAN exist on the rack. A sample leaf switch configuration (leaf01) is shown in Figure 20. Each leaf is configured similarly. The MLAG/bond configuration and the peerlink were left off for brevity. Note the SVI is configured on each VLAN, along with Virtual Router Redundancy (VRR). For example, a server on VLAN 13 would use 10.1.3.1 as its default gateway. 24 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface lo address 10.0.0.11/32 alias loopback interface clagd-vxlan-anycast-ip 10.0.0.112 interface bridge bridge-ports bond01 bond02 peerlink vni13 vni24 bridge-pvid 1 bridge-vids 13 24 bridge-vlan-aware yes interface vni13 bridge-access 13 bridge-arp-nd-suppress on bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 13 vxlan-local-tunnelip 10.0.0.11 interface vni24 bridge-access 24 bridge-arp-nd-suppress on bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 24 vxlan-local-tunnelip 10.0.0.11 interface vlan13 address 10.1.3.11/24 address-virtual 44:39:39:ff:00:13 10.1.3.1/24 vlan-id 13 vlan-raw-device bridge interface vlan24 address 10.2.4.11/24 address-virtual 44:39:39:ff:00:24 10.2.4.1/24 vlan-id 24 vlan-raw-device bridge router bgp 65011 bgp router-id 10.0.0.11 bgp bestpath as-path multipath-relax neighbor swp51 interface remote-as external neighbor swp52 interface remote-as external address-family ipv4 unicast network 10.0.0.11/32 network 10.0.0.112/32 address-family l2vpn evpn neighbor swp51 activate neighbor swp52 activate advertise-all-vni Figure 20 - Asymmetrical model Leaf01 switch configuration snippet VRFs may be added for multitenancy, and routing between VXLANs happens only within a VRF. Looking at the EVPN routing table shown in Figure 21, the four server IP addresses along with their MAC addresses appear in the table as type 2 routes: 10.1.3.101, 10.2.4.102, 10.1.3.103 and 10.2.4.104: CUMULUS NETWORKS — WHITE PAPER 25 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@leaf01:mgmt-vrf:~$ net show bgp evpn route BGP table version is 6, local router ID is 10.0.0.11 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete EVPN type-2 prefix: [2]:[ESI]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP] EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP] EVPN type-5 prefix: [5]:[ESI]:[EthTag]:[IPlen]:[IP] Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 10.0.0.11:2 *> [2]:[0]:[0]:[48]:[44:38:39:00:08:01] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:08:01]:[32]:[10.1.3.101] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:08:01]:[128]:[fe80::4638:39ff:fe00:801] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[46:38:39:00:08:01] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[46:38:39:00:08:02] 10.0.0.112 32768 i *> [3]:[0]:[32]:[10.0.0.112] 10.0.0.112 32768 i Route Distinguisher: 10.0.0.11:3 *> [2]:[0]:[0]:[48]:[44:38:39:00:09:01] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:09:01]:[32]:[10.2.4.102] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:09:01]:[128]:[fe80::4638:39ff:fe00:901] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[46:38:39:00:09:01] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[46:38:39:00:09:02] 10.0.0.112 32768 i *> [3]:[0]:[32]:[10.0.0.112] 10.0.0.112 32768 i Route Distinguisher: 10.0.0.13:2 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01]:[32]:[10.1.3.103] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01]:[128]:[fe80::4638:39ff:fe00:a01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0a:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0a:02] 10.0.0.134 0 65020 *> [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 Route Distinguisher: 10.0.0.13:3 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01]:[32]:[10.2.4.104] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01]:[128]:[fe80::4638:39ff:fe00:b01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0b:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0b:02] 10.0.0.134 0 65020 *> [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i 65013 i Figure 21 - EVPN routing table with asymmetric IRB model 26 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations Route Distinguisher: 10.0.0.14:2 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01]:[32]:[10.1.3.103] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0a:01]:[128]:[fe80::4638:39ff:fe00:a01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0a:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0a:02] 10.0.0.134 0 65020 *> [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 Route Distinguisher: 10.0.0.14:3 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01]:[32]:[10.2.4.104] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:0b:01]:[128]:[fe80::4638:39ff:fe00:b01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0b:01] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:0b:02] 10.0.0.134 0 65020 *> [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 Displayed 36 prefixes (36 paths) 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i Figure 21 - EVPN routing table with asymmetric IRB model (continued) Looking at the kernel routing table, we can see that to get to either subnet, we access it directly on the same leaf switch as shown in Figure 22. cumulus@leaf01:mgmt-vrf:~$ net show route show ip route ============= Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF, I - IS-IS, B - BGP, P - PIM, E - EIGRP, N - NHRP, T - Table, v - VNC, V - VNC-Direct, A - Babel, > - selected route, * - FIB route C>* 10.0.0.11/32 is directly connected, lo, 00:00:53 B>* 10.0.0.12/32 [20/0] via fe80::4638:39ff:fe00:701, swp52, 00:00:47 * via fe80::4638:39ff:fe00:601, swp51, 00:00:47 B>* 10.0.0.13/32 [20/0] via fe80::4638:39ff:fe00:701, swp52, 00:00:47 * via fe80::4638:39ff:fe00:601, swp51, 00:00:47 B>* 10.0.0.14/32 [20/0] via fe80::4638:39ff:fe00:701, swp52, 00:00:47 * via fe80::4638:39ff:fe00:601, swp51, 00:00:47 B>* 10.0.0.21/32 [20/0] via fe80::4638:39ff:fe00:601, swp51, 00:00:47 B>* 10.0.0.22/32 [20/0] via fe80::4638:39ff:fe00:701, swp52, 00:00:47 C>* 10.0.0.112/32 is directly connected, lo, 00:00:42 B>* 10.0.0.134/32 [20/0] via fe80::4638:39ff:fe00:601, swp51, 00:00:40 * via fe80::4638:39ff:fe00:701, swp52, 00:00:40 C * 10.1.3.0/24 is directly connected, vlan13-v0, 00:00:44 C>* 10.1.3.0/24 is directly connected, vlan13, 00:00:44 C * 10.2.4.0/24 is directly connected, vlan24-v0, 00:00:44 C>* 10.2.4.0/24 is directly connected, vlan24, 00:00:44 C>* 169.254.1.0/30 is directly connected, peerlink.4094, 00:00:49 <snip> Figure 22 - Leaf routing table with asymmetric IRB model CUMULUS NETWORKS — WHITE PAPER 27 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations This setup is available on Cumulus Network GitHub site. DISTRIBUTED VXLAN ROUTING WITH THE SYMMETRIC IRB MODEL An architecture using the symmetric model is depicted below in Figure 23. Internet Lo=172.16.1.1 Layer 3 Network (BGP unnumbered underlay) 0.0.0.0/0 Spine01 Spine02 Leaf01 Leaf02 VRF1 Anycast gateway VTEP SVIs Leaf04 VRF1 SVIs 10.1.3.101 10.2.4.102 VLAN 24 Leaf03 VRF1 VLAN 13 Server01 Server02 VTEP VRF1 SVIs SVIs 10.1.3.103 VLAN 24 Server03 VRF1 VRF1 VTEP VTEP Exit 01 Exit 02 10.2.4.104 VLAN 13 Server04 VXLAN Tunnel, VNI 24 VXLAN T VXLAN Tunnel, VNI 104001, L3VNI Figure 23 - VXLAN routing with a symmetric IRB model architecture For purposes of this example, we deploy four servers and two VLANs. The servers use MLAG to connect to the leaf switches for redundancy and are configured with an anycast default gateway. The same virtual anycast IP address is configured on each switch's southbound SVI, using VRR, towards the servers. Each of the four leafs host two SVIs, one terminating with VLAN 13 and one with VLAN 24. VXLAN distributed routing occurs on these leafs. Each leaf switch also has VNIs 13 and 24 configured for the VXLAN tunnels to layer 2 transport both VLAN 13 and VLAN 24 respectively. Specifically for the symmetric routing model, each leaf and exit switch also hosts VLAN 4001 (the transport VLAN) and VNI 104001 (the L3VNI). All leaf switches host vrf1, and all servers are located in vrf1. Since we are using EVPN, there is no need to configure vrf1 on the spine switches. This design has no hosts attached to border leafs, but attaching hosts to the border leafs as well is fully supported. For this design, we generate a default route (0.0.0.0/0) from the Internet router and advertise that default route to the exit leafs via the BGP IPv4 address family. A sample snippet configuration for peering and generating a default route via eBGP unnumbered is shown in Figure 24: 28 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface swp1 ipv6 nd ra-interval 10 no ipv6 nd suppress-ra interface swp2 ipv6 nd ra-interval 10 no ipv6 nd suppress-ra router bgp 25253 bgp router-id 10.0.0.253 bgp bestpath as-path multipath-relax neighbor swp1 interface remote-as external neighbor swp2 interface remote-as external ! address-family ipv4 unicast network 10.0.0.253/32 neighbor swp1 default-originate neighbor swp2 default-originate exit-address-family Figure 24 - Internet router configuration snippet The exit leaf's interface that peers with the Internet router (swp44) is placed in vrf1, which also places the default route in vrf1. The Exit01 router injects vrf1's default route into vrf1's EVPN address family as a type 5 route with the command advertise ipv4 unicast, as highlighted below. EVPN then advertises this route via the local VLAN4001, which is also in vrf1, across the L3VNI (VNI 104001) to all other leafs in the network that participate in vrf1. The local leafs inject the type 5 default route into its vrf1 routing table. No other VNIs are configured on the exit leafs since no hosts are directly connected to the exit leafs. A sample configuration snippet from Exit01 is shown in Figure 25. Note the advertise ipv4 unicast command is only needed on routers where you want to redistribute IPv4 address family routes into L2VPN EVPN address family routes, which is generally on the border/ exit leafs. We advertise the VXLAN subnets to the Internet router. Also, in this case we need only the L3VNI on the exit leaf as there are no hosts attached to that leaf. If hosts were attached to those leafs, we would also need the VNIs/SVIs configured here as well, as shown in the leaf snippet. CUMULUS NETWORKS — WHITE PAPER 29 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface bridge bridge-ports vxlan4001 bridge-vlan-aware yes router bgp 65041 bgp router-id 10.0.0.41 coalesce-time 1100 bgp bestpath as-path multipath-relax neighbor swp51 interface remote-as external neighbor swp52 interface remote-as external interface vlan4001 vlan-id 4001 vlan-raw-device bridge vrf vrf1 address-family ipv4 unicast network 10.0.0.41/32 interface swp44 vrf vrf1 interface vxlan4001 bridge-access 4001 bridge-learning off vxlan-id 104001 vxlan-local-tunnelip 10.0.0.41 vrf vrf1 vni 104001 interface swp44 vrf vrf1 ipv6 nd ra-interval 10 no ipv6 nd suppress-ra address-family l2vpn evpn neighbor swp51 activate neighbor swp52 activate advertise-all-vni router bgp 65041 vrf vrf1 bgp router-id 10.0.0.41 network 10.1.3.0/24 # advertise VLAN to Internet network 10.2.4.0/24 # advertise VLAN to Internet coalesce-time 1050 neighbor swp44 interface remote-as external address-family l2vpn evpn advertise ipv4 unicast # sends Type 5 routes Figure 25 - Exit01 configuration snippet The Exit02 switch is configured similarly to Exit01. The spine switches are configured for both the IPv4 unicast address family as well as the EVPN address family, which is fairly straightforward, as shown below. A snippet from Spine01 is shown below. Interfaces swp1-4 connect to the leaf switches, and swp29-30 connect to the exit switches. Spine02 is configured similarly. In a distributed architecture, VXLAN routing is done on the leaf switches. A snippet of a sample configuration from a leaf switch is in Figure 26. 30 CUMULUS NETWORKS — WHITE PAPER EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations interface bridge bridge-ports bond01 bond02 peerlink vni13 vni24 vxlan4001 bridge-pvid 1 bridge-vids 13 24 bridge-vlan-aware yes interface vni13 bridge-access 13 bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 13 vxlan-local-tunnelip 10.0.0.11 interface vni24 bridge-access 24 bridge-arp-nd-suppress on bridge-learning off mstpctl-bpduguard yes mstpctl-portbpdufilter yes mtu 9000 vxlan-id 24 vxlan-local-tunnelip 10.0.0.11 interface vxlan4001 bridge-access 4001 bridge-learning off vxlan-id 104001 vxlan-local-tunnelip 10.0.0.11 interface vrf1 vrf-table auto interface vlan13 address 10.1.3.11/24 address-virtual 44:39:39:ff:00:13 10.1.3.1/24 vlan-id 13 vlan-raw-device bridge vrf vrf1 interface vlan13 address 10.1.3.11/24 address-virtual 44:39:39:ff:00:13 10.1.3.1/24 vlan-id 13 vlan-raw-device bridge vrf vrf1 interface vlan24 address 10.2.4.11/24 address-virtual 44:39:39:ff:00:24 10.2.4.1/24 vlan-id 24 vlan-raw-device bridge vrf vrf1 interface vlan4001 hwaddress 44:39:39:FF:40:94 vlan-id 4001 vlan-raw-device bridge vrf vrf1 vrf vrf1 vni 104001 router bgp 65011 bgp router-id 10.0.0.11 bgp bestpath as-path multipath-relax neighbor swp51 interface remote-as external neighbor swp52 interface remote-as external address-family ipv4 unicast network 10.0.0.11/32 address-family l2vpn evpn neighbor swp51 activate neighbor swp52 activate advertise-all-vni Figure 26 - Leaf01 switch configuration snippet for symmetric IRB model Although not depicted above for brevity, the leaf's southbound ports are placed in vrf1 and a tenant VLAN. Each tenant VLAN is mapped to a VNI that provides the layer 2 VXLAN tunneling. In addition, VNI 104001 (associated with interface vxlan4001) and VLAN 4001 are configured to create the L3VNI. This provides the hop between the local VLANs and the L3VNI. Finally, let's look at the leaf's EVPN routing table in Figure 27, showing both type 2 and type 5 routes (the type 3 routes provide VTEP discovery). We can see the type 2 routes to the servers in the data center, as well as the type 5 routes to reach outside the data center. Part of the routing table has been left off for brevity. CUMULUS NETWORKS — WHITE PAPER 31 EVPN: Cumulus EVPN VXLAN routing deployment scenarios and configurations cumulus@leaf01:mgmt-vrf:~$ net show bgp evpn route BGP table version is 10, local router ID is 10.0.0.11 Status codes: s suppressed, d damped, h history, * valid, > best, i - internal Origin codes: i - IGP, e - EGP, ? - incomplete EVPN type-2 prefix: [2]:[ESI]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP] EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP] EVPN type-5 prefix: [5]:[ESI]:[EthTag]:[IPlen]:[IP] Network Next Hop Metric LocPrf Weight Path Route Distinguisher: 10.0.0.11:2 *> [2]:[0]:[0]:[48]:[44:38:39:00:00:17] 10.0.0.112 32768 i *> [2]:[0]:[0]:[48]:[44:38:39:00:00:17]:[32]:[10.1.3.101] 10.0.0.112 32768 i * [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 <snip> Route Distinguisher: 10.0.0.14:3 * [2]:[0]:[0]:[48]:[44:38:39:00:00:32] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:00:32] 10.0.0.134 0 65020 * [2]:[0]:[0]:[48]:[44:38:39:00:00:32]:[32]:[10.2.4.104] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:00:32]:[32]:[10.2.4.104] 10.0.0.134 0 65020 * [2]:[0]:[0]:[48]:[44:38:39:00:00:32]:[128]:[fe80::4638:39ff:fe00:32] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[44:38:39:00:00:32]:[128]:[fe80::4638:39ff:fe00:32] 10.0.0.134 0 65020 * [2]:[0]:[0]:[48]:[46:38:39:00:00:23] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:00:23] 10.0.0.134 0 65020 *> [2]:[0]:[0]:[48]:[46:38:39:00:00:32] 10.0.0.134 0 65020 * [2]:[0]:[0]:[48]:[46:38:39:00:00:32] 10.0.0.134 0 65020 *> [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 * [3]:[0]:[32]:[10.0.0.134] 10.0.0.134 0 65020 Route Distinguisher: 10.0.0.41:2 * [5]:[0]:[0]:[0.0.0.0] 10.0.0.41 0 65020 *> [5]:[0]:[0]:[0.0.0.0] 10.0.0.41 0 65020 Route Distinguisher: 10.0.0.42:2 * [5]:[0]:[0]:[0]:[0.0.0.0] 10.0.0.42 0 65020 *> [5]:[0]:[0]:[0]:[0.0.0.0] 10.0.0.42 0 65020 Displayed 36 prefixes (61 paths) 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65014 i 65041 25253 i 65041 25253 i 65042 25253 i 65042 25253 i Figure 27 - EVPN routing table with symmetric IRB model Looking in the leaf's routing table in Figure 28, we can see all the routes are available in vrf1 as well as the default route that is reachable over vlan4001, which is attached to the L3VNI: 32 CUMULUS NETWORKS — WHITE PAPER EVPN: NetQ for EVPN operations cumulus@leaf01:mgmt-vrf:~$ net show route vrf vrf1 show ip route vrf vrf1 ======================= Codes: K - kernel route, C O - OSPF, I - IS-IS, T - Table, v - VNC, > - selected route, VRF B>* * K * B>* * C * C>* B>* C * C>* B>* B V * connected, S - static, R - RIP, - BGP, P - PIM, E - EIGRP, N - NHRP, - VNC-Direct, A - Babel, D - SHARP, - FIB route vrf1: 0.0.0.0/0 [20/0] via 10.0.0.41, vlan4001 onlink, 00:05:53 #Type 5 with L3VNI via 10.0.0.42, vlan4001 onlink, 00:05:53 0.0.0.0/0 [255/8192] unreachable (ICMP unreachable), 00:10:03 10.0.0.253/32 [20/0] via 10.0.0.41, vlan4001 onlink, 00:05:53 via 10.0.0.42, vlan4001 onlink, 00:05:53 10.1.3.0/24 is directly connected, vlan13-v0, 00:10:03 10.1.3.0/24 is directly connected, vlan13, 00:10:03 10.1.3.103/32 [20/0] via 10.0.0.134, vlan4001 onlink, 00:04:56 #Type 2 with L3VNI 10.2.4.0/24 is directly connected, vlan24-v0, 00:10:03 10.2.4.0/24 is directly connected, vlan24, 00:10:03 10.2.4.104/32 [20/0] via 10.0.0.134, vlan4001 onlink, 00:04:16 #Type 2 with L3VNI Figure 28 - Symmetric routing table A virtual setup with this topology is available at Cumulus Linux GitHub site. NetQ for EVPN operations Cumulus NetQ greatly simplifies EVPN deployment and operations. NetQ provides configuration checks and simplifies troubleshooting EVPN in a network from one location anywhere in the network. Upon initial setup, it is wise to check the configurations to be sure nothing is missing and all VNIs are configured — NetQ can accomplish this in simply one step, as shown in Figure 29 below. cumulus@oob-mgmt-server:~$ netq check evpn Total Nodes: 10, Failed Nodes: 1, Total Sessions: 8 , Failed Sessions: 1, Total VNIs: 2 Hostname Peer Name Peer Hostname Error Last Changed --------- ----------------------- -----------------------------------leaf04 swp51 spine01 AFI/SAFI evpn not activated on peer 1m:35.655s Figure 29 - NetQ `check evpn` In this example, we are missing activating the L2VPN EVPN address family on spine01. We can also check BGP and it will tell us the same information as shown in Figure 30. CUMULUS NETWORKS — WHITE PAPER 33 EVPN: NetQ for EVPN operations cumulus@oob-mgmt-server:~$ netq check bgp Total Nodes: 10, Failed Nodes: 2, Total Sessions: 16 , Failed Sessions: 2, Hostname Peer Name Peer Hostname Reason Last Changed ---------- ---------- ------------- --------------------------------------------- --------leaf04 swp51 spine01 evpn address families not activated on peer 34.140580s spine01 swp4 leaf04 evpn address families not activated on node 33.140629s Figure 30 - NetQ `check bgp` After this is fixed, all will look good, as shown in Figure 31 below. cumulus@oob-mgmt-server:~$ netq check evpn Total Nodes: 10, Failed Nodes: 0, Total Sessions: 8, Failed Sessions: 0, Total VNIs: 2 cumulus@oob-mgmt-server:~$ netq check bgp Total Nodes: 10, Failed Nodes: 0, Total Sessions: 16, Failed Sessions: 0 Figure 31 - Good EVPN and BGP configurations NetQ also displays all the VNIs in the entire network in one simple command, to check and be sure the correct VNIs are where they belong, as shown in Figure 32: cumulus@oob-mgmt-server:~$ netq Matching evpn records: Hostname VNI VTEP IP ------------ ------------leaf01 13 10.0.0.112 leaf02 13 10.0.0.112 leaf03 13 10.0.0.134 leaf04 13 10.0.0.134 show evpn vni 13 In Kernel --------yes yes yes yes Export RT ---------65011:13 65012:13 65013:13 65014:13 Import RT ----------65011:13 65012:13 65013:13 65014:13 Last Changed -------------15m:57.782s 16m:0.939s 15m:56.334s 15m:57.467s Figure 32 - Showing all VNIs on a node We can also easily display all VNIs per node, as shown in Figure 33: cumulus@oob-mgmt-server:~$ netq leaf01 show evpn Matching evpn records: Hostname VNI VTEP IP In Kernel Export RT ---------------------------------------leaf01 13 10.0.0.112 yes 65011:13 leaf01 24 10.0.0.112 yes 65011:24 Import RT ---------65011:13 65011:24 Last Changed -----------17m:37.430s 17m:37.430s Figure 33 - NetQ displays all VNIs on a node This is just a few examples of how NetQ can help with operations in a EVPN environment. There are many more features available. Visit our NetQ User's Guide for more information. 34 CUMULUS NETWORKS — WHITE PAPER EVPN: Conclusion Conclusion Modern data centers deploy layer 3 with the BGP routing protocol in order to scale and provide a robust, easy to troubleshoot infrastructure that also supports a multi-vendor environment. However, since some applications still require layer 2 connectivity, VXLAN tunnels, deployed over a layer 3 fabric, have become a popular way to achieve layer 2 connectivity between racks. In order for the VXLAN tunnels to reach each other or the outside world, VXLAN routing must be enabled. Newer merchant silicon supports this functionality directly in the ASIC, thereby making a cost effective and simple deployment. EVPN, which is already popular for VXLAN bridging, now integrates with VXLAN routing, unifying the control plane and streamlining deployment. Cumulus Linux EVPN is the ideal control plane solution for VXLAN routing. It uses the same routing protocol preferred for data center infrastructures — BGP — for both VXLAN bridging and routing. Additionally, it has inherent support for multitenancy. Try it out for yourself on this ready-to-go demo using Cumulus VX with NetQ and Vagrant or try it out in Cumulus in the Cloud. ABOUT CUMULUS NETWORKS® Cumulus Networks is leading the transformation of bringing web-scale networking to enterprise cloud. Its network switch, Cumulus Linux, is the only solution that allows you to affordably build and efficiently operate your network like the world’s largest data center operators, unlocking vertical network stacks. By allowing operators to use standard hardware components, Cumulus Linux offers unprecedented operational speed and agility, at the industry’s most competitive cost. Cumulus Networks has received venture funding from Andreessen Horowitz, Battery Ventures, Capital, Peter Wagner and four of the original VMware founders. For more information visit cumulusnetworks.com or follow @cumulusnetworks. ©2018 Cumulus Networks. All rights reserved. CUMULUS, the Cumulus Logo, CUMULUS NETWORKS, and the Rocket Turtle Logo (the “Marks”) are trademarks and service marks of Cumulus Networks, Inc. in the U.S. and other countries. You are not permitted to use the Marks without the prior written consent of Cumulus Networks. The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a worldwide basis. All other marks are used under fair use or license from their respective owners. 04032018 CUMULUS NETWORKS — WHITE PAPER 35