< Home

Example for Configuring Intra-AS Seamless MPLS

Networking Requirements

In Figure 1, the access, aggregation, and core layers belong to one AS. To enable the base station NodeB to communicate with the MME/SGW and provide the VPN service to the MME/SGW, the customer wants to use MPLS at the access layer, so that a complete LSP can be set up over the three layers. To provide an end-to-end service and simplify service configuration and network management, intra-AS seamless MPLS can be configured on the network.

Figure 1 Networking for configuring intra-AS seamless MPLS

Configuration Roadmap

The configuration roadmap is as follows:

  1. Configure IGP protocols at the access, aggregation, and core layers to implement network connectivity at each layer.

  2. Configure MPLS and MPLS LDP on each device and establish an MPLS LSP.

  3. Establish IBGP peer relationships at each layer and enable devices to exchange labeled routes.

  4. Configure each AGG and Core_ABR as RRs to help the CSG and MASG obtain the route destined for each other's loopback interface.

  5. Configure a routing policy to control label distribution for a BGP LSP to be established on each device. The ingress node on the BGP LSP needs to distribute an MPLS label to the route advertised to a downstream node. If a transit node on the BGP LSP receives a labeled IPv4 route from its upstream node, the transit node must re-distribute an MPLS label to the labeled IPv4 route before advertising the route to a downstream node.

  6. Establish an MP-IBGP peer relationship between a CSG and MASG for VPNv4 route information exchange.

  7. Configure a VPN instance on each CSG and MASG.

Procedure

  1. On the devices, create a VLAN and a VLANIF interface, assign an IP address to the VLANIF interface, and add a physical interface to the VLAN.

    # Configure the CSG. The configurations of the AGG, Core_ABR, and MASG are similar to that of the CSG, and are not mentioned here.

    <HUAWEI> system-view
    [HUAWEI] sysname CSG
    [CSG] interface loopback 1
    [CSG-LoopBack1] ip address 1.1.1.9 32
    [CSG-LoopBack1] quit
    [CSG] vlan batch 100 400
    [CSG] interface vlanif 100
    [CSG-Vlanif100] ip address 172.1.1.1 24
    [CSG-Vlanif100] quit
    [CSG] interface vlanif 400
    [CSG-Vlanif400] ip address 10.1.1.1 24
    [CSG-Vlanif400] quit
    [CSG] interface gigabitethernet0/0/1
    [CSG-GigabitEthernet0/0/1] port link-type trunk
    [CSG-GigabitEthernet0/0/1] port trunk allow-pass vlan 100
    [CSG-GigabitEthernet0/0/1] quit
    [CSG] interface gigabitethernet0/0/2
    [CSG-GigabitEthernet0/0/2] port link-type trunk
    [CSG-GigabitEthernet0/0/2] port trunk allow-pass vlan 400
    [CSG-GigabitEthernet0/0/2] quit

  2. Enable OSPF or IS-IS to advertise routes on network segments where each node locates and routes represented by LSR IDs.

    # Configure the CSG.

    [CSG] ospf 1
    [CSG-ospf-1] area 0
    [CSG-ospf-1-area-0.0.0.0] network 1.1.1.9 0.0.0.0
    [CSG-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255
    [CSG-ospf-1-area-0.0.0.0] quit
    [CSG-ospf-1] quit

    # Configure the AGG.

    [AGG] ospf 1
    [AGG-ospf-1] area 0
    [AGG-ospf-1-area-0.0.0.0] network 2.2.2.9 0.0.0.0
    [AGG-ospf-1-area-0.0.0.0] network 172.1.1.0 0.0.0.255
    [AGG-ospf-1-area-0.0.0.0] quit
    [AGG-ospf-1] quit
    [AGG] isis 1
    [AGG-isis-1] network-entity 10.0000.0000.0000.0010.00
    [AGG-isis-1] quit
    [AGG] interface vlanif 200
    [AGG-Vlanif200] isis enable 1
    [AGG-Vlanif200] quit
    [AGG] interface loopback 1
    [AGG-LoopBack1] isis enable 1
    [AGG-LoopBack1] quit

    # Configure the Core_ABR.

    [Core_ABR] ospf 2
    [Core_ABR-ospf-2] area 0
    [Core_ABR-ospf-2-area-0.0.0.0] network 3.3.3.9 0.0.0.0
    [Core_ABR-ospf-2-area-0.0.0.0] network 172.3.1.0 0.0.0.255
    [Core_ABR-ospf-2-area-0.0.0.0] quit
    [Core_ABR-ospf-2] quit
    [Core_ABR] isis 1
    [Core_ABR-isis-1] network-entity 10.0000.0000.0000.0020.00
    [Core_ABR-isis-1] quit
    [Core_ABR] interface vlanif 200
    [Core_ABR-Vlanif200] isis enable 1
    [Core_ABR-Vlanif200] quit
    [Core_ABR] interface loopback 1
    [Core_ABR-LoopBack1] isis enable 1
    [Core_ABR-LoopBack1] quit

    # Configure the MASG.

    [MASG] ospf 2
    [MASG-ospf-2] area 0
    [MASG-ospf-2-area-0.0.0.0] network 4.4.4.9 0.0.0.0
    [MASG-ospf-2-area-0.0.0.0] network 172.3.1.0 0.0.0.255
    [MASG-ospf-2-area-0.0.0.0] quit
    [MASG-ospf-2] quit

  3. Enable MPLS and MPLS LDP globally on each device.

    # Configure the CSG. The configurations of the AGG, Core_ABR, and MASG are similar to that of the CSG, and are not mentioned here.

    [CSG] mpls lsr-id 1.1.1.9
    [CSG] mpls
    [CSG-mpls] quit
    [CSG] mpls ldp
    [CSG-mpls-ldp] quit
    [CSG] interface vlanif 100
    [CSG-Vlanif100] mpls
    [CSG-Vlanif100] mpls ldp
    [CSG-Vlanif100] quit

  4. Establish IBGP peer relationships at each layer and enable devices to exchange labeled routes.

    # Configure the CSG.

    [CSG] bgp 100
    [CSG-bgp] peer 2.2.2.9 as-number 100
    [CSG-bgp] peer 2.2.2.9 connect-interface LoopBack 1
    [CSG-bgp] peer 2.2.2.9 label-route-capability
    [CSG-bgp] network 1.1.1.9 32
    [CSG-bgp] quit

    # Configure the AGG.

    [AGG] bgp 100
    [AGG-bgp] peer 1.1.1.9 as-number 100
    [AGG-bgp] peer 1.1.1.9 connect-interface LoopBack 1
    [AGG-bgp] peer 1.1.1.9 label-route-capability
    [AGG-bgp] peer 3.3.3.9 as-number 100
    [AGG-bgp] peer 3.3.3.9 connect-interface LoopBack 1
    [AGG-bgp] peer 3.3.3.9 label-route-capability
    [AGG-bgp] quit

    # Configure the Core_ABR.

    [Core_ABR] bgp 100
    [Core_ABR-bgp] peer 2.2.2.9 as-number 100
    [Core_ABR-bgp] peer 2.2.2.9 connect-interface LoopBack 1
    [Core_ABR-bgp] peer 2.2.2.9 label-route-capability
    [Core_ABR-bgp] peer 4.4.4.9 as-number 100
    [Core_ABR-bgp] peer 4.4.4.9 connect-interface LoopBack 1
    [Core_ABR-bgp] peer 4.4.4.9 label-route-capability
    [Core_ABR-bgp] quit

    # Configure the MASG.

    [MASG] bgp 100
    [MASG-bgp] peer 3.3.3.9 as-number 100
    [MASG-bgp] peer 3.3.3.9 connect-interface LoopBack 1
    [MASG-bgp] peer 3.3.3.9 label-route-capability
    [MASG-bgp] network 4.4.4.9 32
    [MASG-bgp] quit

  5. Configure the AGG and Core_ABR as RRs to enable the CSG and MASG to obtain loopback routes from each other through route reflection.

    # Configure the AGG.

    [AGG] bgp 100
    [AGG-bgp] peer 1.1.1.9 reflect-client
    [AGG-bgp] peer 1.1.1.9 next-hop-local
    [AGG-bgp] peer 3.3.3.9 reflect-client
    [AGG-bgp] peer 3.3.3.9 next-hop-local
    [AGG-bgp] quit

    # Configure the Core_ABR.

    [Core_ABR] bgp 100
    [Core_ABR-bgp] peer 2.2.2.9 reflect-client
    [Core_ABR-bgp] peer 2.2.2.9 next-hop-local
    [Core_ABR-bgp] peer 4.4.4.9 reflect-client
    [Core_ABR-bgp] peer 4.4.4.9 next-hop-local
    [Core_ABR-bgp] quit

  6. Configure a routing policy on each device to establish BGP LSPs.

    # Create a routing policy on the CSG and apply the routing policy to its peer.

    [CSG] route-policy policy1 permit node 1
    [CSG-route-policy] apply mpls-label
    [CSG-route-policy] quit
    [CSG] bgp 100
    [CSG-bgp] peer 2.2.2.9 route-policy policy1 export
    [CSG-bgp] quit

    # Create a routing policy on the MASG and apply the routing policy to its peer.

    [MASG] route-policy policy1 permit node 1
    [MASG-route-policy] apply mpls-label
    [MASG-route-policy] quit
    [MASG] bgp 100
    [MASG-bgp] peer 3.3.3.9 route-policy policy1 export
    [MASG-bgp] quit

    # Create a routing policy on the AGG and apply the routing policy to its peer.

    [AGG] route-policy policy1 permit node 1
    [AGG-route-policy] if-match mpls-label
    [AGG-route-policy] apply mpls-label
    [AGG-route-policy] quit
    [AGG] bgp 100
    [AGG-bgp] peer 1.1.1.9 route-policy policy1 export
    [AGG-bgp] peer 3.3.3.9 route-policy policy1 export
    [AGG-bgp] quit

    # Create a routing policy on the Core_ABR and apply the routing policy to its peer.

    [Core_ABR] route-policy policy1 permit node 1
    [Core_ABR-route-policy] if-match mpls-label
    [Core_ABR-route-policy] apply mpls-label
    [Core_ABR-route-policy] quit
    [Core_ABR] bgp 100
    [Core_ABR-bgp] peer 2.2.2.9 route-policy policy1 export
    [Core_ABR-bgp] peer 4.4.4.9 route-policy policy1 export
    [Core_ABR-bgp] quit

  7. Establish an MP-IBGP peer relationship between a CSG and MASG for VPNv4 route information exchange.

    # Configure the CSG.

    [CSG] bgp 100
    [CSG-bgp] peer 4.4.4.9 as-number 100
    [CSG-bgp] peer 4.4.4.9 connect-interface LoopBack 1
    [CSG-bgp] ipv4-family vpnv4
    [CSG-bgp-af-vpnv4] peer 4.4.4.9 enable
    [CSG-bgp-af-vpnv4] quit
    [CSG-bgp] quit

    # Configure the MASG.

    [MASG] bgp 100
    [MASG-bgp] peer 1.1.1.9 as-number 100
    [MASG-bgp] peer 1.1.1.9 connect-interface LoopBack 1
    [MASG-bgp] ipv4-family vpnv4
    [MASG-bgp-af-vpnv4] peer 1.1.1.9 enable
    [MASG-bgp-af-vpnv4] quit
    [MASG-bgp] quit

  8. Configure a VPN instance on each CSG and MASG.

    # Configure the CSG. The configurations of the MASG are similar to that of the CSG, and are not mentioned here.

    [CSG] ip vpn-instance vpn1
    [CSG-vpn-instance-vpn1] ipv4-family
    [CSG-vpn-instance-vpn1-af-ipv4] route-distinguisher 100:1
    [CSG-vpn-instance-vpn1-af-ipv4] vpn-target 1:1
    [CSG-vpn-instance-vpn1-af-ipv4] quit
    [CSG-vpn-instance-vpn1] quit
    [CSG] interface vlanif 400
    [CSG-Vlanif400] ip binding vpn-instance vpn1
    [CSG-Vlanif400] quit
    [CSG] bgp 100
    [CSG-bgp] ipv4-family vpn-instance vpn1
    [CSG-bgp-vpn1] import-route direct
    [CSG-bgp-vpn1] quit
    [CSG-bgp] quit

  9. Verify the configuration.

    After the configuration is complete, run the display ip routing-table command on the CSG or MASG. You can view routes to the loopback address of each other.

    The display on the CSG is used as an example.

    [CSG] display ip routing-table
    Route Flags: R - relay, D - download to fib, T - to vpn-instance
    ------------------------------------------------------------------------------
    Routing Tables: Public
             Destinations : 7        Routes : 7
    
    Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface
    
            1.1.1.9/32  Direct  0    0           D   127.0.0.1       LoopBack1
            2.2.2.9/32  OSPF    10   1           D   172.1.1.2       Vlanif100
            4.4.4.9/32  IBGP    255  0          RD   2.2.2.9         Vlanif100
          127.0.0.0/8   Direct  0    0           D   127.0.0.1       InLoopBack0
          127.0.0.1/32  Direct  0    0           D   127.0.0.1       InLoopBack0
          172.1.1.0/24  Direct  0    0           D   172.1.1.1       Vlanif100
          172.1.1.1/32  Direct  0    0           D   127.0.0.1       Vlanif100
    

    Run the display mpls lsp command on the CSG or MASG to check the LSP configuration.

    The display on the CSG is used as an example.

    [CSG] display mpls lsp
    -------------------------------------------------------------------------------
                     LSP Information: BGP  LSP
    -------------------------------------------------------------------------------
    FEC                In/Out Label  In/Out IF                      Vrf Name
    1.1.1.9/32         1025/NULL     -/-
    4.4.4.9/32         NULL/1027     -/-
    -/32               1026/NULL     -/-                            vpn1
    
    Flag after Out IF: (I) - LSP Is Only Iterated by RLFA
    -------------------------------------------------------------------------------
                     LSP Information: LDP LSP
    -------------------------------------------------------------------------------
    FEC                In/Out Label  In/Out IF                      Vrf Name
    1.1.1.9/32         3/NULL        -/-
    2.2.2.9/32         NULL/3        -/Vlanif100
    2.2.2.9/32         1024/3        -/Vlanif100

Configuration Files

  • CSG configuration file

    #
    sysname CSG
    #
    vlan batch 100 400
    #
    ip vpn-instance vpn1
     ipv4-family
      route-distinguisher 100:1
      vpn-target 1:1 export-extcommunity
      vpn-target 1:1 import-extcommunity
    #
    mpls lsr-id 1.1.1.9
    mpls
    #
    mpls ldp
    #
    interface Vlanif100
     ip address 172.1.1.1 255.255.255.0
     mpls
     mpls ldp
    #
    interface Vlanif400
     ip binding vpn-instance vpn1
     ip address 10.1.1.1 255.255.255.0
    #
    interface GigabitEthernet0/0/1
     port link-type trunk  
     port trunk allow-pass vlan 100 
    #
    interface GigabitEthernet0/0/2
     port link-type trunk  
     port trunk allow-pass vlan 400 
    #
    interface LoopBack1
     ip address 1.1.1.9 255.255.255.255
    #
    bgp 100
     peer 2.2.2.9 as-number 100
     peer 2.2.2.9 connect-interface LoopBack1
     peer 4.4.4.9 as-number 100
     peer 4.4.4.9 connect-interface LoopBack1
     #
     ipv4-family unicast
      undo synchronization
      network 1.1.1.9 255.255.255.255
      peer 2.2.2.9 enable
      peer 2.2.2.9 route-policy policy1 export
      peer 2.2.2.9 label-route-capability
      peer 4.4.4.9 enable
     #
     ipv4-family vpnv4
      policy vpn-target
      peer 4.4.4.9 enable
     #
     ipv4-family vpn-instance vpn1
      import-route direct
    #
    ospf 1
     area 0.0.0.0
      network 1.1.1.9 0.0.0.0
      network 172.1.1.0 0.0.0.255
    #
    route-policy policy1 permit node 1
     apply mpls-label
    #
    return
  • AGG configuration file

    #
    sysname AGG
    #
    vlan batch 100 200
    #
    mpls lsr-id 2.2.2.9
    mpls
    #
    mpls ldp
    #
    isis 1
     network-entity 10.0000.0000.0000.0010.00
    #
    interface Vlanif100
     ip address 172.1.1.2 255.255.255.0
     mpls
     mpls ldp
    #
    interface Vlanif200
     ip address 172.2.1.1 255.255.255.0
     isis enable 1
     mpls
     mpls ldp
    #
    interface GigabitEthernet0/0/1
     port link-type trunk  
     port trunk allow-pass vlan 100 
    #
    interface GigabitEthernet0/0/2
     port link-type trunk  
     port trunk allow-pass vlan 200 
    #
    interface LoopBack1
     ip address 2.2.2.9 255.255.255.255
     isis enable 1
    #
    bgp 100
     peer 1.1.1.9 as-number 100
     peer 1.1.1.9 connect-interface LoopBack1
     peer 3.3.3.9 as-number 100
     peer 3.3.3.9 connect-interface LoopBack1
     #
     ipv4-family unicast
      undo synchronization
      peer 1.1.1.9 enable
      peer 1.1.1.9 route-policy policy1 export
      peer 1.1.1.9 reflect-client
      peer 1.1.1.9 next-hop-local
      peer 1.1.1.9 label-route-capability
      peer 3.3.3.9 enable
      peer 3.3.3.9 route-policy policy1 export
      peer 3.3.3.9 reflect-client
      peer 3.3.3.9 next-hop-local
      peer 3.3.3.9 label-route-capability
    #
    ospf 1
     area 0.0.0.0
      network 2.2.2.9 0.0.0.0
      network 172.1.1.0 0.0.0.255
    #
    route-policy policy1 permit node 1
     if-match mpls-label
     apply mpls-label
    #
    return
  • Core_ABR configuration file

    #
    sysname Core_ABR
    #
    vlan batch 200 300
    #
    mpls lsr-id 3.3.3.9
    mpls
    #
    mpls ldp
    #
    isis 1
     network-entity 10.0000.0000.0000.0020.00
    #
    interface Vlanif200
     ip address 172.2.1.2 255.255.255.0
     isis enable 1
     mpls
     mpls ldp
    #
    interface Vlanif300
     ip address 172.3.1.1 255.255.255.0
     mpls
     mpls ldp
    #
    interface GigabitEthernet0/0/1
     port link-type trunk  
     port trunk allow-pass vlan 200 
    #
    interface GigabitEthernet0/0/2
     port link-type trunk
     port trunk allow-pass vlan 300 
    #
    interface LoopBack1
     ip address 3.3.3.9 255.255.255.255
     isis enable 1
    #
    bgp 100
     peer 2.2.2.9 as-number 100
     peer 2.2.2.9 connect-interface LoopBack1
     peer 4.4.4.9 as-number 100
     peer 4.4.4.9 connect-interface LoopBack1
     #
     ipv4-family unicast
      undo synchronization
      peer 2.2.2.9 enable
      peer 2.2.2.9 route-policy policy1 export
      peer 2.2.2.9 reflect-client
      peer 2.2.2.9 next-hop-local
      peer 2.2.2.9 label-route-capability
      peer 4.4.4.9 enable
      peer 4.4.4.9 route-policy policy1 export
      peer 4.4.4.9 reflect-client
      peer 4.4.4.9 next-hop-local
      peer 4.4.4.9 label-route-capability
    #
    ospf 2
     area 0.0.0.0
      network 3.3.3.9 0.0.0.0
      network 172.3.1.0 0.0.0.255
    #
    route-policy policy1 permit node 1
     if-match mpls-label
     apply mpls-label
    #
    return
  • MASG configurations file

    #
    sysname MASG
    #
    vlan batch 300 500
    #
    ip vpn-instance vpn1
     ipv4-family
      route-distinguisher 1:1
      vpn-target 1:1 export-extcommunity
      vpn-target 1:1 import-extcommunity
    #
    mpls lsr-id 4.4.4.9
    mpls
    #
    mpls ldp
    #
    interface Vlanif300
     ip address 172.3.1.2 255.255.255.0
     mpls
     mpls ldp
    #
    interface Vlanif500
     ip binding vpn-instance vpn1
     ip address 10.2.1.1 255.255.255.0
    #
    interface GigabitEthernet0/0/1
     port link-type trunk  
     port trunk allow-pass vlan 300 
    #
    interface GigabitEthernet0/0/2
     port link-type trunk  
     port trunk allow-pass vlan 500 
    #
    interface LoopBack1
     ip address 4.4.4.9 255.255.255.255
    #
    bgp 100
     peer 1.1.1.9 as-number 100
     peer 1.1.1.9 connect-interface LoopBack1
     peer 3.3.3.9 as-number 100
     peer 3.3.3.9 connect-interface LoopBack1
     #
     ipv4-family unicast
      undo synchronization
      network 4.4.4.9 255.255.255.255
      peer 1.1.1.9 enable
      peer 3.3.3.9 enable
      peer 3.3.3.9 route-policy policy1 export
      peer 3.3.3.9 label-route-capability
     #
     ipv4-family vpnv4
      policy vpn-target
      peer 1.1.1.9 enable
     #
     ipv4-family vpn-instance vpn1
      import-route direct
    #
    ospf 2
     area 0.0.0.0
      network 4.4.4.9 0.0.0.0
      network 172.3.1.0 0.0.0.255
    #
    route-policy policy1 permit node 1
     apply mpls-label
    #
    return
Copyright © Huawei Technologies Co., Ltd.
Copyright © Huawei Technologies Co., Ltd.
Next topic >