MPLS LDP VRF-Aware Static Labels

This document explains how to configure the MPLS LDP VRF-Aware Static Labels feature and Multiprotocol Label Switching (MPLS) static labels. Virtual Private Network routing and forwarding (VRF)-aware static labels can be used at the edge of an MPLS Virtual Private Network (VPN), whereas MPLS static labels can be used only in the MPLS VPN provider core.

Finding Feature Information

Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/​go/​cfn. An account on Cisco.com is not required.

Information About MPLS LDP VRF-Aware Static Labels

Overview of MPLS Static Labels and MPLS LDP VRF-Aware Static Labels

Label switch routers (LSRs) dynamically learn the labels they should use to label-switch packets by means of the following label distribution protocols:

  • Label Distribution Protocol (LDP), the Internet Engineering Task Force (IETF) standard used to bind labels to network addresses

  • Resource Reservation Protocol (RSVP) used to distribute labels for traffic engineering (TE)

  • Border Gateway Protocol (BGP) used to distribute labels for Multiprotocol Label Switching (MPLS) virtual private networks (VPNs)

The LSR installs the dynamically learned label into its Label Forwarding Information Base (LFIB).

You can configure static labels for the following purposes:

  • To bind labels to IPv4 prefixes to support MPLS hop-by-hop forwarding through neighbor devices that do not implement LDP label distribution. MPLS static labels allow you to configure entries in the MPLS forwarding table and assign label values to forwarding equivalence classes (FECs) learned by LDP. You can manually configure an LSP without running an LDP between the endpoints.

  • To create static cross connects to support MPLS label switched path (LSP) midpoints when neighbor devices do not implement the LDP or RSVP label distribution, but do implement an MPLS forwarding path.

  • To statically bind a virtual routing and forwarding (VRF)-aware label on a provider edge (PE) device to a customer network prefix (VPN IPv4 prefix). VRF-aware static labels can be used with nonglobal VRF tables, so the labels can be used at the VPN edge. For example, with the Carrier Supporting Carrier (CSC) feature, the backbone carrier can assign specific labels to FECs it advertises to the edge devices of customer carriers. Then, backbone carrier can monitor backbone traffic coming from particular customer carriers for billing or other purposes. Depending on how you configure VRF-aware static labels, they are advertised one of the following ways:
    • By LDP between PE and customer edge (CE) devices within a VRF instance
    • In VPNv4 BGP in the service provider’s backbone

Labels Reserved for Static Assignment

Before you can manually assign labels, you must reserve a range of labels to be used for the manual assignment. Reserving the labels ensures that the labels are not dynamically assigned.

How to Configure MPLS LDP VRF-Aware Static Labels

Reserving Labels to Use for MPLS Static Labels and MPLS LDP VRF-Aware Static Labels

To reserve the labels that are to be statically assigned so that the labels are not dynamically assigned, perform the following task.

SUMMARY STEPS

    1.    enable

    2.    configure terminal

    3.    mpls label range minimum-value maximum-value [static minimum-static-value maximum-static-value]

    4.    exit

    5.    show mpls label range


DETAILED STEPS
     Command or ActionPurpose
    Step 1 enable


    Example:
    Device> enable
     

    Enables privileged EXEC mode.

    • Enter your password if prompted.

     
    Step 2 configure terminal


    Example:
    Device# configure terminal 
     

    Enters global configuration mode.

     
    Step 3 mpls label range minimum-value maximum-value [static minimum-static-value maximum-static-value]


    Example:
    Device(config)# mpls label range 200 100000 static 16 199
     

    Reserves a range of labels for static labels assignment. The default is that no labels are reserved for static assignment.

    Note   

    You might need to reload the device for the range of labels you reserve to take effect.

     
    Step 4 exit


    Example:
    Device(config)# exit
     

    Returns to privileged EXEC mode.

     
    Step 5 show mpls label range


    Example:
    Device# show mpls label range
     

    Displays information about the range of values for local labels, including those available for static assignment.

     

    Configuring MPLS Static Labels in the MPLS VPN Provider Core

    Before You Begin
    • Globally enable Multiprotocol Label Switching (MPLS) on each label switch router (LSR).

    • Enable Cisco Express Forwarding on each LSR.

    To configure MPLS static labels in the MPLS virtual private network (VPN) provider core, perform the following task.

    MPLS static labels allow you to configure entries in the MPLS forwarding table and assign label values to forwarding equivalence classes (FECs) learned by the Label Distribution Protocol (LDP). You can manually configure a label switched path (LSP) without running a label distribution protocol between the endpoints. In MPLS VPN networks, static labels can be used only in the MPLS VPN provider core.


    Note


    When static MPLS labels are used, LDP must be enabled on the interfaces, even though there is no need to establish an LDP session between devices.


    SUMMARY STEPS

      1.    enable

      2.    configure terminal

      3.    mpls static binding ipv4 prefix mask {label | input label | output nexthop {explicit-null | implicit-null | label}}

      4.    exit

      5.    show mpls static binding ipv4

      6.    show mpls forwarding-table


    DETAILED STEPS
       Command or ActionPurpose
      Step 1 enable


      Example:
      Device> enable
       

      Enables privileged EXEC mode.

      • Enter your password if prompted.

       
      Step 2 configure terminal


      Example:
      Device# configure terminal 
       

      Enters global configuration mode.

       
      Step 3 mpls static binding ipv4 prefix mask {label | input label | output nexthop {explicit-null | implicit-null | label}}


      Example:
      Device(config)# mpls static binding ipv4 10.2.2.0 255.255.255.255 input 17
       

      Specifies static binding of labels to IPv4 prefixes.

      • Specified bindings are installed automatically in the MPLS forwarding table as routing demands.

       
      Step 4 exit


      Example:
      Device(config)# exit
       

      Returns to privileged EXEC mode.

       
      Step 5 show mpls static binding ipv4


      Example:
      Device# show mpls static binding ipv4
       

      Displays the configured static labels.

       
      Step 6 show mpls forwarding-table


      Example:
      Device# show mpls forwarding-table
       

      Displays the static labels used for MPLS forwarding.

       

      Configuring MPLS Static Cross Connects

      You can configure MPLS static cross connects to support MPLS LSP midpoints when neighbor devices do not implement either the Label Distribution Protocol (LDP) or Resource Reservation Protocol (RSVP) label distribution, but do implement an MPLS forwarding path.

      Before You Begin
      • Globally enable Multiprotocol Label Switching (MPLS) on each label switch router (LSR).

      • Enable Cisco Express Forwarding on each LSR.


      Note


      • MPLS static cross-connect labels remain in the Label Forwarding Information Base (LFIB) even if the device to which the entry points goes down.
      • MPLS static cross-connect mappings remain in effect even with topology changes.

      SUMMARY STEPS

        1.    enable

        2.    configure terminal

        3.    mpls static crossconnect inlabel out-interface nexthop {outlabel | explicit-null | implicit-null}

        4.    end

        5.    show mpls static crossconnect


      DETAILED STEPS
         Command or ActionPurpose
        Step 1 enable


        Example:
        Device> enable
         

        Enables privileged EXEC mode.

        • Enter your password if prompted.

         
        Step 2 configure terminal


        Example:
        Device# configure terminal 
         

        Enters global configuration mode.

         
        Step 3 mpls static crossconnect inlabel out-interface nexthop {outlabel | explicit-null | implicit-null}


        Example:
        Device(config)# mpls static crossconnect 45 pos5/0 45 explicit-null
         

        Specifies static cross connects.

        Note   

        The nexthop argument is required for multiaccess interfaces.

         
        Step 4 end


        Example:
        Device(config)# end
         

        Returns to privileged EXEC mode.

         
        Step 5 show mpls static crossconnect


        Example:
        Device# show mpls static crossconnect
         

        Displays the configured static cross connects.

         

        Configuring MPLS LDP VRF-Aware Static Labels at the Edge of the VPN

        You can statically bind a virtual routing and forwarding (VRF)-aware label on a provider edge (PE) device to a customer network prefix (VPN IPv4 prefix). VRF-aware static labels can be used with nonglobal VRF tables, so the labels can be used at the VPN edge.

        Before You Begin
        • Globally enable Multiprotocol Label Switching (MPLS) on each label switch router (LSR).

        • Enable Cisco Express Forwarding on each LSR.

        • Ensure the MPLS virtual private network (VPN) is configured.

        • Ensure that the provider network has the MPLS Label Distribution Protocol (LDP) installed and running.


        Note


        The MPLS LDP VRF-Aware Static Labels feature is supported only with MPLS VPN Carrier Supporting Carrier networks that use MPLS LDP.


        SUMMARY STEPS

          1.    enable

          2.    configure terminal

          3.    mpls static binding ipv4 vrf vpn-name prefix mask {input label | label}

          4.    exit

          5.    show mpls static binding ipv4 vrf vpn-name


        DETAILED STEPS
           Command or ActionPurpose
          Step 1 enable


          Example:
          Device> enable
           

          Enables privileged EXEC mode.

          • Enter your password if prompted.

           
          Step 2 configure terminal


          Example:
          Device# configure terminal 
           

          Enters global configuration mode.

           
          Step 3 mpls static binding ipv4 vrf vpn-name prefix mask {input label | label}


          Example:
          Device(config)# mpls static binding ipv4 vrf vpn100 10.2.0.0 255.255.0.0 input 17
           

          Binds a prefix to a local label.

          • Specified bindings are installed automatically in the MPLS forwarding table as routing demands.

          Note   

          You must configure the MPLS VPN and VRFs before creating VRF-aware static labels.

           
          Step 4 exit


          Example:
          Device(config)# exit
           

          Returns to privileged EXEC mode.

           
          Step 5 show mpls static binding ipv4 vrf vpn-name


          Example:
          Device(config)# show mpls static binding ipv4 vrf vpn100
           

          Displays the configured MPLS static bindings.

           

          Troubleshooting Tips

          To display information related to static binding events, use the debug mpls static binding vrf command.

          Configuration Examples for MPLS LDP VRF-Aware Static Labels

          Example: Reserving Labels to Use for MPLS Static Labels and MPLS LDP VRF-Aware Static Labels

          In the following example, the mpls label range command reserves a generic range of labels from 200 to 100000 and configures a static label range of 16 to 199:

          Device(config)# mpls label range 200 100000 static 16 199
          % Label range changes take effect at the next reload.

          In this example, the output from the show mpls label range command indicates that the new label ranges do not take effect until a reload occurs:

          Device# show mpls label range
           
          Downstream label pool: Min/Max label: 16/100000
             [Configured range for next reload: Min/Max label: 200/100000]
          Range for static labels: Min/Max/Number: 16/199

          In the following output, the show mpls label range command, executed after a reload, indicates that the new label ranges are in effect:

          Device# show mpls label range
           
          Downstream label pool: Min/Max label: 200/100000
          Range for static labels: Min/Max/Number: 16/199

          Example: Configuring MPLS Static Labels in the MPLS VPN Provider Core

          The following example configures input and output labels for several prefixes:

          Device(config)# mpls static binding ipv4 10.0.0.0 255.0.0.0 55
          Device(config)# mpls static binding ipv4 10.0.0.0 255.0.0.0 output 10.0.0.66 167
          Device(config)# mpls static binding ipv4 10.66.0.0 255.255.0.0 input 17
          Device(config)# mpls static binding ipv4 10.66.0.0 255.255.0.0 output 10.13.0.8 explicit-null
          

          The show mpls static binding ipv4 command displays the configured static labels:

          Device# show mpls static binding ipv4
           
          10.0.0.0/8: Incoming label: 55 
            Outgoing labels:
                10.0.0.66   167
          10.66.0.0/24: Incoming label: 17
            Outgoing labels:
               10.13.0.8  explicit-null

          Example: Configuring MPLS LDP VRF-Aware Static Labels at the VPN Edge

          In the following example, the mpls static binding ipv4 vrf command configures static label bindings. They also configure input (local) labels for various prefixes.

          Device(config)# mpls static binding ipv4 vrf vpn100 10.0.0.0 10.0.0.0 55
          Device(config)# mpls static binding ipv4 vrf vpn100 10.66.0.0 255.255.0.0 input 17
          

          In the following output, the show mpls static binding ipv4 vrf command displays the configured VRF-aware static bindings:

          Device# show mpls static binding ipv4 vrf vpn100
           10.0.0.0/8:   (vrf: vpn100)  Incoming label: 55
            Outgoing labels:  None
          10.66.0.0/16:   (vrf: vpn100)  Incoming label: 17
            Outgoing labels:  None

          Additional References

          Related Documents

          Related Topic

          Document Title

          Cisco IOS commands

          Cisco IOS Master Command List, All Releases

          MPLS commands

          Cisco IOS Multiprotocol Label Switching Command Reference

          MPLS VPN CSC with LDP and IGP

          “MPLS VPN Carrier Supporting Carrier Using LDP and IGP” module in the MPLS Layer 3 VPNs Inter-AS and CSC Configuration Guide

          Technical Assistance

          Description

          Link

          The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password.

          http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

          Feature Information for MPLS LDP VRF-Aware Static Labels

          The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

          Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/​go/​cfn. An account on Cisco.com is not required.
          Table 1 Feature Information for MPLS LDP VRF-Aware Static Labels

          Feature Name

          Releases

          Feature Information

          MPLS LDP VRF-Aware Static Labels

          12.0(23)S

          12.0(26)S

          12.2(33)SRA

          12.2(33)SXH

          12.2(33)SB

          12.3(14)T

          Cisco IOS XE Release 2.1

          Cisco IOS XE Release 3.5S

          The MPLS LDP VRF-Aware Static Labels feature explains how to configure the MPLS LDP VRF-Aware Static Labels feature and MPLS static labels. VRF-aware static labels can be used at the edge of an MPLS VPN, whereas MPLS static labels can be used only in the MPLS VPN provider core.

          In 12.0(23)S, MPLS static labels were introduced, but they supported only global routing tables. The MPLS static cross connect functionality is supported in Cisco IOS Releases 12.0(23)S, 12.3(14)T, and later releases. It is not supported in Cisco IOS Release 12.4(20)T.

          In 12.0(26)S, the MPLS LDP VRF-Aware Static Labels feature was introduced, allowing MPLS static labels to be used for VRF traffic at the VPN edge.

          In 12.3(14)T, this feature was integrated.

          In 12.2(33)SRA, this feature was integrated.

          In 12.2(33)SXH, this feature was integrated.

          In 12.2(33)SB, support was added for the Cisco 10000 series router.

          In Cisco IOS XE Release 2.1, this feature was implemented on the Cisco ASR 1000 Series Aggregation Services Routers.

          In Cisco IOS XE Release 3.5S, support was added for the Cisco ASR 903 Router.

          The following commands were introduced or modified: debug mpls static binding, mpls label range, mpls static binding ipv4, mpls static binding ipv4 vrf, show mpls label range, show mpls static binding ipv4, show mpls static binding ipv4 vrf.