Configuring Seamless Integration of EVPN with L3VPN (MPLS LDP)

This chapter contains these sections:

Information About Configuring Seamless Integration of EVPN with L3VPN (MPLS LDP)

Data center deployments have adopted VXLAN EVPN for its benefits like EVPN control-plane learning, multitenancy, seamless mobility, redundancy, and easier POD additions. Similarly, the Core is either an LDP-based MPLS L3VPN network or transitioning from a traditional MPLS L3VPN LDP-based underlay to a more sophisticated solution like segment routing (SR). Segment routing is adopted for its benefits like unified IGP and MPLS control planes, simpler traffic engineering methods, easier configuration, and SDN adoption.

  • EVPN control-plane learning

  • Multitenancy, seamless mobility, redundancy

  • Easier POD additions

Handoff from VXLAN to MPLS-based Core at DCI Nodes

With two different technologies, a Border Leaf or a Shared PE router acting as the DCI Nodes within the data centers, it is natural to hand off from VXLAN to an MPLS-based core at the Border Leaf. These nodes sit on the edge of the DC domain, interfacing with the Core edge router.

Guidelines and Limitations for Configuring Seamless Integration of EVPN with L3VPN (MPLS LDP)

Supported Features

The following features are supported:

  • Cisco Nexus 9504 and 9508 switches with -R and -RX line cards.

  • Layer 3 orphans

  • 256 peers or nodes within a VXLAN DC domain

  • 24,000 ECMP routes are supported on -RX line cards.


    Note


    If you enter the no hardware profile mpls extended-ecmp command, the mode switches to 4K ECMP routes. This applies only when the line card is -RX and the ECMP group has exactly two paths.


  • The Egress RACL (e-RACL) TCAM and MPLS Extended ECMP features are mutually exclusive. To enable MPLS Extended ECMP (hardware profile mpls extended-ecmp ) on the Cisco Nexus N9K-X9636C-RX line card, set the e-RACL TCAM carving to 0.

  • Beginning with Cisco NX-OS Release 10.3(3)F, Type-6 encryption for MPLS LDP user password is supported on Cisco NX-OS switches.

  • When configuring MPLS LDP, it is strongly recommended to use the router-id force command. Specify the router ID with a loopback interface to ensure consistent LDP operation and avoid issues with the order of interface initialization.

Unsupported Features

The following features are not supported:

  • Subnet stretches across the DC domain

  • vPC

  • SVI or subinterfaces

Configuring Seamless Integration of EVPN with L3VPN (MPLS LDP)

These configuration steps are required on a Border Leaf switch to import and re-originate the routes from a VXLAN domain to an MPLS domain and back to a VXLAN domain.

Procedure


Step 1

configure terminal

Example:

switch# configure terminal

Enters global configuration mode.

  1. [no] install feature-set mpls

    Example:

    switch# install feature-set mpls

    Installs the MPLS feature set.

    The no form of this command uninstalls the MPLS feature set.

  2. [no] feature-set mpls

    Example:

    switch# feature-set mpls

    Installs the MPLS feature set.

    The no form of this command uninstalls the MPLS feature set.

Step 2

feature mpls l3vpn

Example:

switch# feature mpls l3vpn

Enables the MPLS Layer 3 VPN feature.

  1. feature mpls ldp

    Example:

    switch# feature mpls ldp

    Enables the MPLS Label Distribution Protocol (LDP).

  2. mpls ip

    Example:

    switch# interface Ethernet1/1
    switch(config-if)# mpls ip

    Enables MPLS on the specified interfaces that are MPLS links.

Step 3

nv overlay evpn

Example:

switch(config)# nv overlay evpn

Enables the EVPN control plane for VXLAN.

Step 4

router bgp number

Example:

switch(config)# router bgp 100

Configures BGP. The value of the number argument is from 1 to 4294967295.

  1. address-family ipv4 unicast

    Example:

    switch(config-router)# address-family ipv4 unicast

    Configures the address family for IPv4.

  2. redistribute direct route-map route-map-name

    Example:

    switch(config-router-af)# redistribute direct route-map passall

    Configures the directly connected route map.

  3. exit

    Example:

    switch(config-router-af)# exit

    Exits command mode.

  4. address-family l2vpn evpn

    Example:

    switch(config-router)# address-family l2vpn evpn

    Configures the L2VPN address family.

  5. exit

    Example:

    switch(config-router-af)# exit

    Exits command mode.

Step 5

neighbor address remote-as number

Example:

switch(config-router)# neighbor 108.108.108.108 remote-as 22    

Configures a BGP neighbor. The range of the number argument is from 1 to 65535.

  1. update-source type/id

    Example:

    switch(config-router-neighbor)# update-source loopback100

    Specifies the source of the BGP session and updates.

  2. ebgp-multihop ttl-value

    Example:

    switch(config-router-neighbor)# ebgp-multihop 10

    Specifies the multihop TTL for the remote peer. The range of ttl-value is from 2 to 255.

  3. address-family ipv4 unicast

    Example:

    switch(config-router-neighbor)# address-family ipv4 unicast

    Configures the unicast sub-address family.

  4. send-community extended

    Example:

    switch(config-router-neighbor-af)# send-community extended

    Configures the community attribute for this neighbor.

  5. exit

    Example:

    switch(config-router-neighbor-af)# exit

    Exits command mode.

  6. address-family ipv4 labeled-unicast

    Example:

    switch(config-router-neighbor)# address-family ipv4 labeled-unicast

    Advertises the labeled IPv4 unicast routes as specified in RFC 3107.

  7. send-community extended

    Example:

    switch(config-router-neighbor-af)# send-community extended

    Sends the extended community attribute.

  8. exit

    Example:

    switch(config-router-neighbor-af)# exit

    Exits command mode.

Step 6

address-family vpnv4 unicast

Example:

switch(config-router-neighbor)# address-family vpnv4 unicast

Configures the address family for IPv4.

  1. send-community extended

    Example:

    switch(config-router)# send-community extended

    Sends the extended community attribute.

  2. import l2vpn evpn reoriginate

    Example:

    switch(config-router)# import l2vpn evpn reoriginate

    Reoriginates the route with a new RT.

Step 7

neighbor address remote-as number

Example:

switch(config-router)# neighbor 175.175.175.2 remote-as 1    

Defines the neighbor.

  1. address-family ipv4 unicast

    Example:

    switch(config-router)# address-family ipv4 unicast

    Configures the address family for IPv4.

  2. send-community extended

    Example:

    switch(config-router)# send-community extended

    Configures the community for BGP neighbors.

Step 8

address-family ipv6 unicast

Example:

switch(config-router)# address-family ipv6 unicast

Configures the IPv6 unicast address family. This is required for IPv6 over VXLAN with an IPv4 underlay.

  1. send-community extended

    Example:

    switch(config-router)# send-community extended

    Configures the community for BGP neighbors.

  2. address-family l2vpn evpn

    Example:

    switch(config-router)# address-family l2vpn evpn

    Configures the L2VPN address family.

  3. send-community extended

    Example:

    switch(config-router)# send-community extended

    Configures the community for BGP neighbors.

Step 9

import vpn unicast reoriginate

Example:

switch(config-router)# import vpn unicast reoriginate

Reoriginates the route with a new RT.