LDP Configuration
This chapter contains LDP (Label Distribution Protocol) configuration examples.
Label Distribution Protocol Overview
The Label Distribution Protocol (LDP) is a routing protocol used in MPLS technology. The LDP daemon (ldpd) uses NSM services to obtain routing information. Routers send Hello packets to establish Hello Adjacencies with other nearby routers. This opens the way for sessions between routers to be established during which routers exchange labels in preparation for forwarding packets.
LDP generates labels for and exchanges labels between peer routers. It works in with other routing protocols (RIP, OSPF and BGP) to create label-switched paths (LSP) used when forwarding packets. A label-switched path is the path taken by all packets that belong to the Forwarding Equivalence Class (FEC) corresponding to that LSP. This is analogous to establishing a virtual circuit in ATM (Asynchronous Transfer Mechanism). In this way, OcNOS LDP assigns labels to every destination address and destination prefix provided by OcNOS. The LDP interface to the MPLS forwarder adds labels to, and deletes labels from, the forwarding tables.
LDP  Adjacencies 
LDP defines a mechanism for discovering adjacent, LDP capable Label Switching Routers (LSR) that participate in label switching (adjacencies). Whenever a new router comes up it sends out a hello packet to a specified, multicast address announcing itself to the network. Every router directly connected to the network receives the packet. Receipt of a hello packet from another LSR creates a Hello Adjacency with that LSR. To create a Hello Adjacency with an LSR that cannot send/receive multicast packets, LDP allows a router to be manually configured to send unicast Hello packets to non-multicast LSRs . This non-multicast LSR is a targeted peer. Adjacencies are maintained by sending out periodic Hello packets to the multicast group and to all targeted peers. Hello packets are sent using UDP.
LDP Session
LDP capable LSRs establish a session before exchanging label information. All the session messages are sent using TCP to ensure reliable delivery. After the LSRs establish a session and negotiate options, a given pair of routers may exchange label information. The labels exchanged over a session are valid only during the lifetime of the session and routers release them when session is closed. 
Forwarding Equivalence Class 
A Forwarding Equivalence Class (FEC) section defines a set of packets that are forwarded on the same path by the MPLS network. Two common methods to define FEC are by advertising the IPv4 routes using:
•	Host Address The LSR uses the address of the destination host to create this FEC. This means that all the packets going to this destination will take the same LSP.
•	Prefix The LSR uses destination prefix to create this FEC. This means that all the packets take the LSP corresponding to the longest matching prefix.
Label Generation 
An LDP Label is a 20-bit number the LSR uses to forward a packet to its destination. When an LSR creates a new FEC, the router generates new labels and distributes them to its peers. A router keeps both incoming and outgoing labels in its database. 
Label Distribution Modes
The OcNOS LDP implementation supports two label distribution modes:
•	Downstream Unsolicited In this mode, next hop LSRs distribute labels to peers without waiting for a label request.
•	Downstream on Demand In this mode, a LSR distributes a label to a peer only if there is a pending label request from the peer.
Label Retention Mode 
The OcNOS LDP implementation supports two label retention modes:
•	Liberal Retention Mode In this mode, the LSR retains all labels received from all sources. This mode helps in fast LSP setup in case of a change in next hop.
•	Conservative Retention Mode In this mode, the LSR retains only those labels received from peers that are the next hop for a given FEC. This mode is used by LSRs that have a constraint on the number of labels that it can retain at any given time.
LSP Control
LSPs can be set up in the following two ways:
•	Ordered Control In this mode, an LSR distributes a label for a FEC to its peer only if it has a corresponding label from its next hop or it is the egress node.
•	Independent Control In this mode, an LSR may distribute a label to its peers without waiting for a corresponding label from its next hop.
Loop Detection
Loop detection can be enabled to detect routing loops in LSPs. There are two methods supported for the loop detection mechanism:
•	Hop Count During setup of an LSP, the LSP passes hop count with the LSP setup messages. This hop count is incriminated by each node router participating in LSP establishment. If the hop count exceeds the maximum configured value, the LSP setup process is stopped and a notification message is passed back to the message originator.
•	Path Vector A path vector contains a list of LSR identifiers. This is passed as a part of LSP setup messages. Each LSR participating in the LSP establishment adds its own LSR identifier to the path vector. If an LSR finds its own identifier in the path vector, it drops the message and sends a message back to the originator.
The use of these messages ensures that a loop is detected while establishing a label switched path and before any data is passed over that LSP.
Configure LDP
The enable-ldp ipv4 command are used to enable LDP for IPv4, on a specified interface, as follows:
•	enable-ldp ipv4 enables only IPv4 on the interface
For the examples covered in this section, the command enable-ldp ipv4 is used.
Enable Label Switching
Running LDP on a system requires the following tasks:
1.	Enabling label-switching on the interface on NSM.
2.	Enabling LDP on an interface in the LDP daemon.
3.	Running an IGP (Internal Gateway Protocol), for example, OSPF, to distribute reachability information within the MPLS cloud.
4.	Configuring the transport address. 
Basic LDP Topology
R1
NSM
 
| #configure terminal | Enter configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 192.168.0.1/32 | Set the IP address of the loopback interface to 192.168.0.1/32. | 
LDP
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)#router-id 192.168.0.1 | Set the router ID to IP address 192.168.0.1. | 
| (config-router)#transport-address ipv4 192.168.0.1 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter “ipv6” if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on eth1. | 
| (config-if)#exit | Exit interface mode. | 
OSPF
 
| (config)#router ospf 100 | Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#network 10.10.10.0/24 area 0 (config-router)#network 192.168.0.1/32 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
R2
NSM
 
| #configure terminal | Enter configure mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 192.168.0.2/32 | Set the IP address of the loopback interface to 192.168.0.2/32. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface eth2 | Specify the interface (eth2) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth2. | 
| (config-if)#exit | Exit interface mode. | 
LDP
 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#router-id 192.168.0.2 | Set the router ID to IP address 192.168.0.2. | 
| (config-router)#transport-address ipv4 192.168.0.2 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter “ipv6” if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit Router mode and return to Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on a specified interface (eth1). | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface eth2 | Specify the interface (eth2) to be configured. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on a specified interface (eth2). | 
| (config-if)#exit | Exit interface mode. | 
OSPF
 
| (config)#router ospf 100 | Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#network 10.10.10.0/24 area 0 (config-router)#network 10.10.11.0/24 area 0 (config-router)#network 192.168.0.2/32 area 0 | Define the interfaces on which OSPF runs and associate the area ID (0) with them.  | 
R3
NSM
 
| #configure terminal | Enter configure mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 192.168.0.3/32 | Set the IP address of the loopback interface to 192.168.0.3/32. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface eth2 | Specify the interface (eth2) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth2. | 
| (config-if)#exit | Exit interface mode. | 
LDP
 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#router-id 192.168.0.3 | Set the router ID for IP address 192.168.0.3. | 
| (config-router)#transport-address ipv4 192.168.0.3 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter “ipv6” if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth2 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on eth2. | 
| (config-if)#exit | Exit interface mode. | 
OSPF
 
| (config)#router ospf 100 | Configure the routing process and specify the Process ID (100). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#network 10.10.11.0/24 area 0 (config-router)#network 192.168.0.3/32 area 0 | Define the interfaces on which OSPF runs and associate the area ID (0) with them.  | 
LDP MD5 Authentication
LDP MD5 configuration enables LDP MD5 password authentication on a per-peer basis.
Direct LDP Session
In this example, MD5 authentication is configured for a direct LDP session.
Topology for Direct Session MD5 
R1
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#neighbor 10.10.10.2 auth md5 password 0 pwd1 | Configure the MD5 authentication and password, pwd1, for the neighbor, 10.10.10.2. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
R2
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#neighbor 10.10.10.1 auth md5 password 0 pwd1 | Configure the MD5 authentication and password, pwd1, for the neighbor, 10.10.10.1. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
Configure LDP MD5 for Targeted LDP Session
In this example, MD5 authentication is configured for the targeted LDP session established between R1 and R3.
Topology for Targeted Session MD5
R1
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#neighbor 10.10.10.2 auth md5 password 0 pwd1 | Configure the MD5 authentication and password, pwd1, for the neighbor, 10.10.10.2. | 
| (config-router)#targeted-peer ipv4 3.3.3.3 | Configure the targeted peer IP address (R3 loopback address). | 
| (config-router-targeted-peer)#exit | Exit targeted peer mode. | 
| (config-router)#neighbor 3.3.3.3 auth md5 password 0 pwd2 | Configure the MD5 authentication and password, pwd2, for the targeted peer, 3.3.3.3. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
R2
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode to enable LDP. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface eth2 | Specify the interface (eth2) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth2. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth2. | 
| (config-if)#exit | Exit interface mode. | 
R3
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#targeted-peer ipv4 1.1.1.1 | Configure the targeted peer IP address (R1 loopback address). | 
| (config-router-targeted-peer)#exit | Exit targeted peer mode. | 
| (config-router)#neighbor 1.1.1.1 auth md5 password 0 pwd2 | Configure the MD5 authentication and password, pwd2, for the targeted peer, 1.1.1.1. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface eth1 | Specify the interface (eth1) to be configured. | 
| (config-if)#label-switching | Enable label switching on interface eth1. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on interface eth1. | 
| (config-if)#exit | Exit interface mode. | 
Removing MD5 Authentication for LDP Session
This example shows removing the MD5 authentication configuration from an LDP session.
LDP Session Topology
R1
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#no neighbor 10.10.10.2 auth md5 password 0 | Remove MD5 authentication for the neighbor, 10.10.10.2. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
R2
 
| #configure terminal | Enter configure mode. | 
| (config)#router ldp | Enter Router mode. | 
| (config-router)#no neighbor 10.10.10.1 auth md5 password 0 | Remove MD5 authentication for the neighbor, 10.10.10.1. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
Validation for LDP Session Count
This example shows the number of configured LDP basic neighbors and targeted neighbors count.
 #show ldp session count
--------------------------------------------
 Multicast Peers      : 1          [UP: 1]
 Targeted Peers       : 1          [UP: 1]
 Total Sessions       : 2          [UP: 2]
--------------------------------------------
 
 #show ldp targeted-peer count
 -------------------------------------------------
 Num Targeted Peers: 500          [UP: 500]
 -------------------------------------------------
Validation for FTN, SWAP, and POP Entries
This example shows forwarding table entries, SWAP entries and POP entries for IPV4 and IPV6 prefixes.
#show mpls forwarding-table count
---------------------------------------------
Num FTNs         : 3          [UP: 3, INSTALLED: 3]
  Primary FTNs   : 3          [UP: 3, INSTALLED: 3]
  Secondary FTNs : 0          [UP: 0, INSTALLED: 0]
---------------------------------------------
---------------------------------------------
Num IPV6 FTNs         : 0          [UP: 0, INSTALLED: 0]
  Primary IPV6 FTNs   : 0          [UP: 0, INSTALLED: 0]
  Secondary IPV6 FTNs : 0          [UP: 0, INSTALLED: 0]
---------------------------------------------
 
#show mpls ilm-table count
--------------------------------------------
Num ILMs         : 3          [UP: 3, INSTALL: 3]
  Swap Entries   : 3          [UP: 3, INSTALL: 3]
  Pop Entries    : 0          [UP: 0, INSTALL: 0]
  VC Pop Entries : 0          [UP: 0]
--------------------------------------------
 
MPLS LDP PING and TRACEROUTE
This example shows MPLS ping and trace route for LDP
#show ip ospf neighbor
Total number of full neighbors: 1
OSPF process 0 VRF(default):
Neighbor ID     Pri   State            Dead Time   Address         Interface           Instance ID
43.43.43.43       1   Full/DR          00:00:33    21.21.21.43     xe21                    0
RTR-29#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive
43.43.43.43               xe21       Passive   OPERATIONAL   30
 
#show mpls  forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN, O - SR-OSPF FTN, i - SR-ISIS FTN, k - SR-CLI FTN
 
Code    FEC                 FTN-ID    Tunnel-id   Pri   LSP-Type        Out-Label    Out-Intf       Nexthop
L>      43.43.43.43/32      19        0           Yes   LSP_DEFAULT     0            xe21          21.21.21.43
 
#ping mpls ldp 43.43.43.43/32 detail
Sending 5 MPLS Echos to 43.43.43.43, timeout is 5 seconds
 
Codes:
'!' - Success, 'Q' - request not sent, '.' - timeout,
'x' - Retcode 0, 'M' - Malformed Request, 'm' - Errored TLV,
'N' - LBL Mapping Err, 'D' - DS Mismatch,
'U' - Unknown Interface, 'R' - Transit (LBL Switched),
'B' - IP Forwarded, 'F' No FEC Found, 'f' - FEC Mismatch,
'P' - Protocol Error, 'X' - Unknown code,
'Z' - Reverse FEC Validation Failed
 
Type 'Ctrl+C' to abort
! seq_num = 1 43.43.43.43 1.73 ms
! seq_num = 2 43.43.43.43 1.46 ms
! seq_num = 3 43.43.43.43 0.64 ms
! seq_num = 4 43.43.43.43 0.65 ms
! seq_num = 5 43.43.43.43 0.62 ms
 
Success Rate is 100.00 percent (5/5)
round-trip min/avg/max = 0.62/1.18/1.73
 
#trace mpls ldp 43.43.43.43/32 detail
Tracing MPLS Label Switched Path to 43.43.43.43, timeout is 5 seconds
Codes:
'!' - Success, 'Q' - request not sent, '.' - timeout,
'x' - Retcode 0, 'M' - Malformed Request, 'm' - Errored TLV,
'N' - LBL Mapping Err, 'D' - DS Mismatch,
'U' - Unknown Interface, 'R' - Transit (LBL Switched),
'B' - IP Forwarded, 'F' No FEC Found, 'f' - FEC Mismatch,
'P' - Protocol Error, 'X' - Unknown code,
'Z' - Reverse FEC Validation Failed
Type 'Ctrl+C' to abort
  0 21.21.21.29 [Labels:  0]
! 1 43.43.43.43 0.69 ms
 
#ping mpls ldp 43.43.43.43/32 detail interval 5000 rep
reply-mode  repeat
#ping mpls ldp 43.43.43.43/32 detail interval 5000 repeat 50
Sending 50 MPLS Echos to 43.43.43.43, timeout is 5 seconds
 
Codes:
'!' - Success, 'Q' - request not sent, '.' - timeout,
'x' - Retcode 0, 'M' - Malformed Request, 'm' - Errored TLV,
'N' - LBL Mapping Err, 'D' - DS Mismatch,
'U' - Unknown Interface, 'R' - Transit (LBL Switched),
'B' - IP Forwarded, 'F' No FEC Found, 'f' - FEC Mismatch,
'P' - Protocol Error, 'X' - Unknown code,
'Z' - Reverse FEC Validation Failed
 
Type 'Ctrl+C' to abort
 
! seq_num = 1 43.43.43.43 0.70 ms
! seq_num = 2 43.43.43.43 0.73 ms
! seq_num = 3 43.43.43.43 0.71 ms
Success Rate is 100.00 percent (3/3)
round-trip min/avg/max = 0.70/0.71/0.73
LDP Session Protection
LDP Session Protection is an optimization feature. It is used when directly connected LDP peer sessions (via mul-ticast) become unavailable but still have IP reachability over a different path. LDP bindings are kept in the LIB to save time from full synchronization when the direct connections comes back up.
There are two types of LDP connections:
•	Direct LDP Session - directly connected LSR, one hop away.
•		Targeted LDP Session - not directly connected LSR, multiple hops away.
By default if the directly connected LDP session loses connectivity to its peer, all bindings are flushed from the LIB. When interfaces come up and LDP sessions are re-established, LDP has to synchronize its label bindings.
LDP Session Protection is an optimization, when enabled, will not flush the LIB when direct LDP sessions go down. As long as there exists another path to the LDP Peer, it will maintain the LIB synchronized using Targeted LDP Session. IGP will cause a reroute, but the label bindings will still be present from the old peer. When interfaces come back up, LDP will not need to synchronize since it maintains the state using the targeted sessions.
1.	Running LDP Session Protection on a system requires the following tasks:
2.		Enabling label-switching on the interface on NSM.
3.	Enabling LDP on an interface in the LDP daemon.
4.	Running an IGP (Internal Gateway Protocol), for example, OSPF, to distribute reachability information within the MPLS cloud.
5.	Configuring the transport address. 
6.	Configuring LDP Session Protection.
Basic LDP Topology
PE1
NSM:
 
| #configure terminal | Enter configure mode. | 
| (config)#interface xe6 | Specify the interface (xe6) to be configured. | 
| (config-if)#ip address 10.10.10.1/24  | Configure IPv4 address for xe6 | 
| (config-if)#label-switching | Enable label switching on interface xe6. | 
| (config)#interface xe12 | Specify the interface (xe12) to be configured. | 
| (config-if)#ip address 30.30.30.1/24  | Configure IPv4 address for xe12 | 
| (config-if)#label-switching | Enable label switching on interface xe12. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 1.1.1.1/32 | Set the IP address of the loopback interface to 1.1.1.1/32. | 
| (config-if)#commit | Commit the transaction. | 
LDP:
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)#router-id 1.1.1.1 | Set the router ID to IP address 1.1.1.1 | 
| (config-router)#transport-address ipv4 1.1.1.1 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter "ipv6" if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface xe6 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe6. | 
| (config)#interface xe12 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe12. | 
| (config-if)#commit | Commit the transaction. | 
OSPF:
 
| (config)#router ospf 1 | Configure the routing process and specify the Process ID (1). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#ospf router-id 1.1.1.1 | Configure Router ID | 
| (config-router)#network 1.1.1.1/32 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 10.10.10.1/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 30.30.30.1/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#commit | Commit the transaction. | 
P1
NSM:
 
| #configure terminal | Enter configure mode. | 
| (config)#interface xe47 | Specify the interface (xe47) to be configured. | 
| (config-if)#ip address 10.10.10.2/24  | Configure IPv4 address for xe47 | 
| (config-if)#label-switching | Enable label switching on interface xe47. | 
| (config)#interface xe48 | Specify the interface (xe48) to be configured. | 
| (config-if)#ip address 20.20.20.1/24  | Configure IPv4 address for xe48 | 
| (config-if)#label-switching | Enable label switching on interface xe48. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 2.2.2.2/32 | Set the IP address of the loopback interface to 2.2.2.2/32. | 
| (config-if)#commit | Commit the transaction. | 
LDP:
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)#router-id 2.2.2.2 | Set the router ID to IP address 2.2.2.2 | 
| (config-router)#transport-address ipv4 2.2.2.2 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter "ipv6" if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface xe47 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe47. | 
| (config)#interface xe48 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe48. | 
| (config-if)#commit | Commit the transaction. | 
OSPF:
 
| (config)#router ospf 1 | Configure the routing process and specify the Process ID (1). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#ospf router-id 2.2.2.2 | Configure Router ID   | 
| (config-router)#network 2.2.2.2/32 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 10.10.10.2/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 20.20.20.1/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#commit | Commit the transaction. | 
P2
NSM:
 
| #configure terminal | Enter configure mode. | 
| (config)#interface xe48 | Specify the interface (xe48) to be configured. | 
| (config-if)#ip address 30.30.30.2/24  | Configure IPv4 address for xe48 | 
| (config-if)#label-switching | Enable label switching on interface xe48. | 
| (config)#interface xe5 | Specify the interface (xe5) to be configured. | 
| (config-if)#ip address 40.40.40.1/24  | Configure IPv4 address for xe5 | 
| (config-if)#label-switching | Enable label switching on interface xe5. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 4.4.4.4/32 | Set the IP address of the loopback interface to 4.4.4.4/32. | 
| (config-if)#commit | Commit the transaction. | 
LDP:
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)#router-id 4.4.4.4 | Set the router ID to IP address 4.4.4.4 | 
| (config-router)#transport-address ipv4 4.4.4.4 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter "ipv6" if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface xe48 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe48. | 
| (config)#interface xe5 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe5. | 
| (config-if)#commit | Commit the transaction. | 
OSPF:
 
| (config)#router ospf 1 | Configure the routing process and specify the Process ID (1). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#ospf router-id 4.4.4.4 | Configure Router ID   | 
| (config-router)#network 4.4.4.4/32 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 20.20.20.2/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#network 30.30.30.1/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface.  | 
| (config-router)#commit | Commit the transaction. | 
PE2
NSM:
 
| #configure terminal | Enter configure mode. | 
| (config)#interface xe10 | Specify the interface (xe10) to be configured. | 
| (config-if)#ip address 20.20.20.2/24  | Configure IPv4 address for xe10 | 
| (config-if)#label-switching | Enable label switching on interface xe10. | 
| (config)#interface xe5 | Specify the interface (xe5) to be configured. | 
| (config-if)#ip address 40.40.40.2/24  | Configure IPv4 address for xe5 | 
| (config-if)#label-switching | Enable label switching on interface xe5. | 
| (config-if)#exit | Exit interface mode. | 
| (config)#interface lo | Specify the loopback (lo) interface to be configured. | 
| (config-if)#ip address 3.3.3.3/32 | Set the IP address of the loopback interface to 3.3.3.3/32. | 
| (config-if)#commit | Commit the transaction. | 
LDP:
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)#router-id 3.3.3.3 | Set the router ID to IP address 3.3.3.3 | 
| (config-router)#transport-address ipv4 3.3.3.3 | Configure the transport address to be used for a TCP session over which LDP will run on an IPv4 interface. Note: It is preferable to use the loopback address as transport address. In addition, use the parameter "ipv6" if you are configuring an IPv6 interface. | 
| (config-router)#exit | Exit the Router mode and return to the Configure mode. | 
| (config)#interface xe10 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe10. | 
| (config)#interface xe5 | Enter interface mode. | 
| (config-if)#enable-ldp ipv4 | Enable LDP on xe5. | 
| (config-if)#commit | Commit the transaction. | 
OSPF:
 
| (config)#router ospf 1 | Configure the routing process and specify the Process ID (1). The Process ID should be a unique positive integer identifying the routing process. | 
| (config-router)#ospf router-id 3.3.3.3 | Configure Router ID | 
| (config-router)#network 3.3.3.3/32 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface. | 
| (config-router)#network 20.20.20.2/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface. | 
| (config-router)#network 40.40.40.2/24 area 0 | Define the interface on which OSPF runs and associate the area ID (0) with the interface. | 
| (config-router)#commit | Commit the transaction. | 
Validation 
Without session protection Enabled
Verify that session protection status is not shown when session protection not enabled.
 
PE1#show ip route
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2,
       ia - IS-IS inter area, E - EVPN,
       v - vrf leaked
       * - candidate default
 
IP Route Table for VRF "default"
C            1.1.1.1/32 is directly connected, lo, 00:04:22
O            2.2.2.2/32 [110/2] via 10.10.10.2, xe12, 00:03:03
O            3.3.3.3/32 [110/3] via 10.10.10.2, xe12, 00:02:49
O            4.4.4.4/32 [110/31] via 30.30.30.2, xe6, 00:02:17
C            10.10.10.0/24 is directly connected, xe12, 00:03:48
O            20.20.20.0/24 [110/2] via 10.10.10.2, xe12, 00:03:03
C            30.30.30.0/24 is directly connected, xe6, 00:03:02
O            40.40.40.0/24 [110/31] via 30.30.30.2, xe6, 00:02:17
C            127.0.0.0/8 is directly connected, lo, 00:04:22
 
Gateway of last resort is not set
 
PE1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
4.4.4.4                   xe6        Passive   OPERATIONAL   30    00:02:25
2.2.2.2                   xe12       Passive   OPERATIONAL   30    00:03:11
PE1#show ldp targeted-peers
PE1#show ldp session 2.2.2.2
Session state         : OPERATIONAL
Session role          : Passive
TCP Connection        : Established
IP Address for TCP    : 2.2.2.2
Interface being used  : xe12
Peer LDP ID           : 2.2.2.2:0
Peer LDP Password     : Not Set
Adjacencies           : 10.10.10.2
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Address List received : 2.2.2.2
                        10.10.10.2
                        20.20.20.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:3.3.3.3/32         52480           24963
                IPV4:20.20.20.0/24      impl-null       24964
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:2.2.2.2/32         impl-null       24962
Sent Labels :   Fec                     Label           Maps To
                IPV4:40.40.40.0/24      24961           impl-null
                IPV4:4.4.4.4/32         24960           impl-null
                IPV4:30.30.30.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       none
PE1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel, P - SR Policy FTN,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN, O - SR-OSPF FTN, i - SR-ISIS FTN, k - SR-CLI FTN
(m) - FTN mapped over multipath transport
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   2.2.2.2/32          1         2         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   3.3.3.3/32          3         5         -           Yes   LSP_DEFAULT  52480        xe12        No    10.10.10.2
   L>   4.4.4.4/32          4         7         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
   L>   20.20.20.0/24       2         3         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   40.40.40.0/24       5         8         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
 
PE1#show mpls ftn-table
 Primary FTN entry with FEC: 2.2.2.2/32, id: 1, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 3, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 2, in intf: - in label: 0 out-segment ix: 4
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 4, owner: LDP, Stale: NO, out intf: xe12, out label: 52480
    Nexthop addr: 10.10.10.2        cross connect ix: 2, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 4, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
 Primary FTN entry with FEC: 20.20.20.0/24, id: 2, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 5, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
PE1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       O - OSPF/OSPF6 SR, i - ISIS SR, k - SR CLI
       P - SR Policy, U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   3.3.3.3/32         4           24963       52480       N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   40.40.40.0/24      2           24961       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   4.4.4.4/32         1           24960       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   2.2.2.2/32         3           24962       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   20.20.20.0/24      5           24964       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
 
PE1#show ldp fec
LSR codes    : E/N - LSR is egress/non-egress for this FEC,
               L - LSR received a label for this FEC,
               > - LSR will use this route for the FEC
FEC                 Code    Session             Out Label   ELC   Nexthop Addr
1.1.1.1/32          E >     non-existent        none        No    connected
2.2.2.2/32          NL>     2.2.2.2             impl-null   No    10.10.10.2
3.3.3.3/32          NL      4.4.4.4             24325       No    no nexthop
                    NL>     2.2.2.2             52480       No    10.10.10.2
4.4.4.4/32          NL>     4.4.4.4             impl-null   No    30.30.30.2
10.10.10.0/24       NL      2.2.2.2             impl-null   No    connected
                    E >     non-existent        none        No    connected
20.20.20.0/24       NL      4.4.4.4             24326       No    no nexthop
                    NL>     2.2.2.2             impl-null   No    10.10.10.2
30.30.30.0/24       NL      4.4.4.4             impl-null   No    connected
                    E >     non-existent        none        No    connected
40.40.40.0/24       NL>     4.4.4.4             impl-null   No    30.30.30.2
Configure Session Protection:
 
Note:	Recommended to configure both ends.
Configure session protection under LDP in both nodes.
PE1
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)# session-protection | Session-protection protect label indefinitely if no timer mentioned. | 
| (config-router)# commit | Commit and exit | 
P1
 
| (config)#router ldp | Enter Router mode for LDP. | 
| (config-router)# session-protection | Session-protection protect label indefinitely if no timer mentioned. | 
| (config-router)# commit | Commit and exit | 
Validation 
After session protection command Enabled
 
Verify that session protection status shown once session protection enabled in both peer nodes.
PE1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
4.4.4.4                   xe6        Passive   OPERATIONAL   30    00:05:46
2.2.2.2                   xe12       Passive   OPERATIONAL   30    00:06:32
PE1#show ldp targeted-peers
IP Address          Interface
2.2.2.2             xe12
4.4.4.4             xe6
PE1#show ldp session 2.2.2.2
Session state         : OPERATIONAL
Session role          : Passive
TCP Connection        : Established
IP Address for TCP    : 2.2.2.2
Interface being used  : xe12
Peer LDP ID           : 2.2.2.2:0
Peer LDP Password     : Not Set
Adjacencies           : 10.10.10.2
                        2.2.2.2
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Ready
Address List received : 2.2.2.2
                        10.10.10.2
                        20.20.20.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:3.3.3.3/32         52480           24963
                IPV4:20.20.20.0/24      impl-null       24964
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:2.2.2.2/32         impl-null       24962
Sent Labels :   Fec                     Label           Maps To
                IPV4:40.40.40.0/24      24961           impl-null
                IPV4:4.4.4.4/32         24960           impl-null
                IPV4:30.30.30.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       none
PE1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel, P - SR Policy FTN,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN, O - SR-OSPF FTN, i - SR-ISIS FTN, k - SR-CLI FTN
(m) - FTN mapped over multipath transport
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   2.2.2.2/32          1         2         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   3.3.3.3/32          3         5         -           Yes   LSP_DEFAULT  52480        xe12        No    10.10.10.2
   L>   4.4.4.4/32          4         7         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
   L>   20.20.20.0/24       2         3         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   40.40.40.0/24       5         8         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
PE1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       O - OSPF/OSPF6 SR, i - ISIS SR, k - SR CLI
       P - SR Policy, U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   3.3.3.3/32         4           24963       52480       N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   40.40.40.0/24      2           24961       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   4.4.4.4/32         1           24960       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   2.2.2.2/32         3           24962       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   20.20.20.0/24      5           24964       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
PE1#show mpls ftn-table
 Primary FTN entry with FEC: 2.2.2.2/32, id: 1, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 3, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 2, in intf: - in label: 0 out-segment ix: 4
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 4, owner: LDP, Stale: NO, out intf: xe12, out label: 52480
    Nexthop addr: 10.10.10.2        cross connect ix: 2, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 4, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
 Primary FTN entry with FEC: 20.20.20.0/24, id: 2, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 5, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
PE1#show ldp fec
LSR codes    : E/N - LSR is egress/non-egress for this FEC,
               L - LSR received a label for this FEC,
               > - LSR will use this route for the FEC
FEC                 Code    Session             Out Label   ELC   Nexthop Addr
1.1.1.1/32          E >     non-existent        none        No    connected
2.2.2.2/32          NL>     2.2.2.2             impl-null   No    10.10.10.2
3.3.3.3/32          NL      4.4.4.4             24325       No    no nexthop
                    NL>     2.2.2.2             52480       No    10.10.10.2
4.4.4.4/32          NL>     4.4.4.4             impl-null   No    30.30.30.2
10.10.10.0/24       NL      2.2.2.2             impl-null   No    connected
                    E >     non-existent        none        No    connected
20.20.20.0/24       NL      4.4.4.4             24326       No    no nexthop
                    NL>     2.2.2.2             impl-null   No    10.10.10.2
30.30.30.0/24       NL      4.4.4.4             impl-null   No    connected
                    E >     non-existent        none        No    connected
40.40.40.0/24       NL>     4.4.4.4             impl-null   No    30.30.30.2
 
 
P1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
3.3.3.3                   xe5        Passive   OPERATIONAL   30    00:05:40
1.1.1.1                   xe48       Active    OPERATIONAL   30    00:06:43
P1#show ldp targeted-peers
IP Address          Interface
1.1.1.1             xe48
3.3.3.3             xe5
 
P1#show ldp session 1.1.1.1
Session state         : OPERATIONAL
Session role          : Active
TCP Connection        : Established
IP Address for TCP    : 1.1.1.1
Interface being used  : xe48
Peer LDP ID           : 1.1.1.1:0
Peer LDP Password     : Not Set
Adjacencies           : 10.10.10.1
                        1.1.1.1
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Ready
Address List received : 1.1.1.1
                        10.10.10.1
                        30.30.30.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:4.4.4.4/32         24960           52482
                IPV4:40.40.40.0/24      24961           52484
                IPV4:30.30.30.0/24      impl-null       52483
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       52481
Sent Labels :   Fec                     Label           Maps To
                IPV4:3.3.3.3/32         52480           impl-null
                IPV4:20.20.20.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:2.2.2.2/32         impl-null       none
 
P1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   1.1.1.1/32          1         2         -           Yes   LSP_DEFAULT  3            xe48        No    10.10.10.1
   L>   3.3.3.3/32          5         9         -           Yes   LSP_DEFAULT  3            xe5         No    20.20.20.2
   L>   4.4.4.4/32          3         5         -           Yes   LSP_DEFAULT  24960        xe48        No    10.10.10.1
   L>   30.30.30.0/24       2         3         -           Yes   LSP_DEFAULT  3            xe48        No    10.10.10.1
   L>   40.40.40.0/24       4         7         -           Yes   LSP_DEFAULT  24961        xe48        No    10.10.10.1
 
 
P1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   30.30.30.0/24      4           52483       3           N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   1.1.1.1/32         2           52481       3           N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   3.3.3.3/32         1           52480       3           N/A        xe5              20.20.20.2                LSP_DEFAULT
   L>   4.4.4.4/32         3           52482       24960       N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   40.40.40.0/24      5           52484       24961       N/A        xe48             10.10.10.1                LSP_DEFAULT
P1#show mpls ftn-table
 Primary FTN entry with FEC: 1.1.1.1/32, id: 1, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe48, out label: 3
    Nexthop addr: 10.10.10.1        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 5, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 8
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 8, owner: N/A, Stale: NO, out intf: xe5, out label: 3
    Nexthop addr: 20.20.20.2        cross connect ix: 5, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 3, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 3, in intf: - in label: 0 out-segment ix: 4
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 4, owner: LDP, Stale: NO, out intf: xe48, out label: 24960
    Nexthop addr: 10.10.10.1        cross connect ix: 3, op code: Push
 
 
 Primary FTN entry with FEC: 30.30.30.0/24, id: 2, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: N/A, Stale: NO, out intf: xe48, out label: 3
    Nexthop addr: 10.10.10.1        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 4, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: LDP, Stale: NO, out intf: xe48, out label: 24961
    Nexthop addr: 10.10.10.1        cross connect ix: 4, op code: Push
 
 
P1#show ldp fec
LSR codes    : E/N - LSR is egress/non-egress for this FEC,
               L - LSR received a label for this FEC,
               > - LSR will use this route for the FEC
FEC                 Code    Session             Out Label   ELC   Nexthop Addr
1.1.1.1/32          NL>     1.1.1.1             impl-null   No    10.10.10.1
2.2.2.2/32          E >     non-existent        none        No    connected
3.3.3.3/32          NL>     3.3.3.3             impl-null   No    20.20.20.2
4.4.4.4/32          NL>     1.1.1.1             24960       No    10.10.10.1
10.10.10.0/24       NL      1.1.1.1             impl-null   No    connected
                    E >     non-existent        none        No    connected
20.20.20.0/24       NL      3.3.3.3             impl-null   No    connected
                    E >     non-existent        none        No    connected
30.30.30.0/24       NL>     1.1.1.1             impl-null   No    10.10.10.1
40.40.40.0/24       NL      3.3.3.3             impl-null   No    no nexthop
                    NL>     1.1.1.1             24961       No    10.10.10.1
Perform Link failure and check labels are retained until peer is reachable through alternate path.
 
| (config)#interface xe12 | Enter interface mode. | 
| (config-if)#shutdown | Shutdown the link. | 
| (config)#commit | commit. | 
Validation 
After link down
 
PE1#show ip route
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2,
       ia - IS-IS inter area, E - EVPN,
       v - vrf leaked
       * - candidate default
 
IP Route Table for VRF "default"
C            1.1.1.1/32 is directly connected, lo, 00:14:17
O            2.2.2.2/32 [110/33] via 30.30.30.2, xe6, 00:03:38
O            3.3.3.3/32 [110/32] via 30.30.30.2, xe6, 00:03:38
O            4.4.4.4/32 [110/31] via 30.30.30.2, xe6, 00:12:12
O            20.20.20.0/24 [110/32] via 30.30.30.2, xe6, 00:03:38
C            30.30.30.0/24 is directly connected, xe6, 00:12:57
O            40.40.40.0/24 [110/31] via 30.30.30.2, xe6, 00:12:12
    C            127.0.0.0/8 is directly connected, lo, 00:14:17
PE1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
4.4.4.4                   xe6        Passive   OPERATIONAL   30    00:10:10
2.2.2.2                   xe6        Passive   OPERATIONAL   30    00:10:56
PE1#show ldp targeted-peers
IP Address          Interface
2.2.2.2             xe6
4.4.4.4             xe6/
PE1#show ldp session 2.2.2.2
Session state         : OPERATIONAL
Session role          : Passive
TCP Connection        : Established
IP Address for TCP    : 2.2.2.2
Interface being used  : xe6
Peer LDP ID           : 2.2.2.2:0
Peer LDP Password     : Not Set
Adjacencies           : 2.2.2.2
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Protecting
Address List received : 2.2.2.2
                        20.20.20.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:3.3.3.3/32         52480           none
                IPV4:20.20.20.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:2.2.2.2/32         impl-null       none
Sent Labels :   Fec                     Label           Maps To
                IPV4:40.40.40.0/24      24961           impl-null
                IPV4:4.4.4.4/32         24960           impl-null
                IPV4:30.30.30.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                    IPV4:1.1.1.1/32         impl-null       none
 
PE1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel, P - SR Policy FTN,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN, O - SR-OSPF FTN, i - SR-ISIS FTN, k - SR-CLI FTN
(m) - FTN mapped over multipath transport
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   2.2.2.2/32          3         9         -           Yes   LSP_DEFAULT  24321        xe6         No    30.30.30.2
   L>   3.3.3.3/32          1         2         -           Yes   LSP_DEFAULT  24325        xe6         No    30.30.30.2
   L>   4.4.4.4/32          4         7         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
   L>   20.20.20.0/24       2         4         -           Yes   LSP_DEFAULT  24326        xe6         No    30.30.30.2
   L>   40.40.40.0/24       5         8         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
 
PE1#show mpls ftn-table
 Primary FTN entry with FEC: 2.2.2.2/32, id: 3, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 3, in intf: - in label: 0 out-segment ix: 5
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 5, owner: LDP, Stale: NO, out intf: xe6, out label: 24321
    Nexthop addr: 30.30.30.2        cross connect ix: 3, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 1, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 1
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 1, owner: LDP, Stale: NO, out intf: xe6, out label: 24325
    Nexthop addr: 30.30.30.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 4, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
 Primary FTN entry with FEC: 20.20.20.0/24, id: 2, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 2, in intf: - in label: 0 out-segment ix: 3
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 3, owner: LDP, Stale: NO, out intf: xe6, out label: 24326
    Nexthop addr: 30.30.30.2        cross connect ix: 2, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 5, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
PE1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       O - OSPF/OSPF6 SR, i - ISIS SR, k - SR CLI
       P - SR Policy, U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   40.40.40.0/24      2           24961       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   4.4.4.4/32         1           24960       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
 
P1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
3.3.3.3                   xe5        Passive   OPERATIONAL   30    00:11:12
1.1.1.1                   xe5        Active    OPERATIONAL   30    00:12:15
P1#show ldp targeted-peers
IP Address          Interface
1.1.1.1             xe5
    3.3.3.3             xe5
 
P1#show ldp session 1.1.1.1
Session state         : OPERATIONAL
Session role          : Active
TCP Connection        : Established
IP Address for TCP    : 1.1.1.1
Interface being used  : xe5
Peer LDP ID           : 1.1.1.1:0
Peer LDP Password     : Not Set
Adjacencies           : 1.1.1.1
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Protecting
Address List received : 1.1.1.1
                        30.30.30.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:4.4.4.4/32         24960           52482
                IPV4:40.40.40.0/24      24961           52484
                IPV4:30.30.30.0/24      impl-null       52483
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       52481
Sent Labels :   Fec                     Label           Maps To
                IPV4:3.3.3.3/32         52480           impl-null
                IPV4:20.20.20.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                    IPV4:2.2.2.2/32         impl-null       none
 
P1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   1.1.1.1/32          2         3         -           Yes   LSP_DEFAULT  24965        xe5         No    20.20.20.2
   L>   3.3.3.3/32          5         9         -           Yes   LSP_DEFAULT  3            xe5         No    20.20.20.2
   L>   4.4.4.4/32          3         5         -           Yes   LSP_DEFAULT  24966        xe5         No    20.20.20.2
   L>   30.30.30.0/24       4         7         -           Yes   LSP_DEFAULT  24967        xe5         No    20.20.20.2
   L>   40.40.40.0/24       1         1         -           Yes   LSP_DEFAULT  3            xe5         No    20.20.20.2
P1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   4.4.4.4/32         3           52482       Nolabel     N/A        N/A              127.0.0.1                 LSP_DEFAULT
   L>   3.3.3.3/32         1           52480       3           N/A        xe5              20.20.20.2                LSP_DEFAULT
   L>   1.1.1.1/32         2           52481       Nolabel     N/A        N/A              127.0.0.1                 LSP_DEFAULT
   L>   30.30.30.0/24      4           52483       Nolabel     N/A        N/A              127.0.0.1                 LSP_DEFAULT
   L>   40.40.40.0/24      5           52484       Nolabel     N/A        N/A              127.0.0.1                 LSP_DEFAULT
P1#
P1#show mpls ftn-table
 Primary FTN entry with FEC: 1.1.1.1/32, id: 2, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 1, in intf: - in label: 0 out-segment ix: 2
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 2, owner: LDP, Stale: NO, out intf: xe5, out label: 24965
    Nexthop addr: 20.20.20.2        cross connect ix: 1, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 5, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 8
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 8, owner: N/A, Stale: NO, out intf: xe5, out label: 3
    Nexthop addr: 20.20.20.2        cross connect ix: 5, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 3, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 3, in intf: - in label: 0 out-segment ix: 4
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 4, owner: LDP, Stale: NO, out intf: xe5, out label: 24966
    Nexthop addr: 20.20.20.2        cross connect ix: 3, op code: Push
 
 
 Primary FTN entry with FEC: 30.30.30.0/24, id: 4, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: LDP, Stale: NO, out intf: xe5, out label: 24967
    Nexthop addr: 20.20.20.2        cross connect ix: 4, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 1, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 8
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 8, owner: N/A, Stale: NO, out intf: xe5, out label: 3
    Nexthop addr: 20.20.20.2        cross connect ix: 5, op code: Push
 
 
P1#show ip route
Codes: K - kernel, C - connected, S - static, R - RIP, B - BGP
       O - OSPF, IA - OSPF inter area
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2,
       ia - IS-IS inter area, E - EVPN,
       v - vrf leaked
       * - candidate default
 
IP Route Table for VRF "default"
O            1.1.1.1/32 [110/53] via 20.20.20.2, xe5, 00:03:44
C            2.2.2.2/32 is directly connected, lo, 00:14:13
O            3.3.3.3/32 [110/2] via 20.20.20.2, xe5, 00:12:51
O            4.4.4.4/32 [110/52] via 20.20.20.2, xe5, 00:03:44
C            20.20.20.0/24 is directly connected, xe5, 00:13:46
O            30.30.30.0/24 [110/52] via 20.20.20.2, xe5, 00:03:44
O            40.40.40.0/24 [110/51] via 20.20.20.2, xe5, 00:03:44
C            127.0.0.0/8 is directly connected, lo, 00:14:13
 
Bring up the link and check same labels reused.
 
| (config)#interface xe12 | Enter interface mode. | 
| (config-if)#no shutdown | Shutdown the link. | 
| (config)#commit | Commit. | 
Validation
 
PE1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
4.4.4.4                   xe6        Passive   OPERATIONAL   30    00:14:55
2.2.2.2                   xe12       Passive   OPERATIONAL   30    00:15:41
PE1#show ldp targeted-peers
IP Address          Interface
2.2.2.2             xe12
4.4.4.4             xe6
 
PE1#show ldp session 2.2.2.2
Session state         : OPERATIONAL
Session role          : Passive
TCP Connection        : Established
IP Address for TCP    : 2.2.2.2
Interface being used  : xe12
Peer LDP ID           : 2.2.2.2:0
Peer LDP Password     : Not Set
Adjacencies           : 10.10.10.2
                        2.2.2.2
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Ready
Address List received : 2.2.2.2
                        10.10.10.2
                        20.20.20.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:3.3.3.3/32         52480           24966
                IPV4:20.20.20.0/24      impl-null       24967
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:2.2.2.2/32         impl-null       24965
Sent Labels :   Fec                     Label           Maps To
                IPV4:40.40.40.0/24      24961           impl-null
                IPV4:4.4.4.4/32         24960           impl-null
                IPV4:30.30.30.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       none
 
PE1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel, P - SR Policy FTN,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN, O - SR-OSPF FTN, i - SR-ISIS FTN, k - SR-CLI FTN
(m) - FTN mapped over multipath transport
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   2.2.2.2/32          3         9         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   3.3.3.3/32          1         2         -           Yes   LSP_DEFAULT  52480        xe12        No    10.10.10.2
   L>   4.4.4.4/32          4         7         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
   L>   20.20.20.0/24       2         4         -           Yes   LSP_DEFAULT  3            xe12        No    10.10.10.2
   L>   40.40.40.0/24       5         8         -           Yes   LSP_DEFAULT  3            xe6         No    30.30.30.2
PE1#
PE1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       O - OSPF/OSPF6 SR, i - ISIS SR, k - SR CLI
       P - SR Policy, U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   2.2.2.2/32         9           24965       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   40.40.40.0/24      2           24961       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   4.4.4.4/32         1           24960       3           N/A        xe6              30.30.30.2                LSP_DEFAULT
   L>   3.3.3.3/32         10          24966       52480       N/A        xe12             10.10.10.2                LSP_DEFAULT
   L>   20.20.20.0/24      11          24967       3           N/A        xe12             10.10.10.2                LSP_DEFAULT
PE1#show mpls ftn-table
 Primary FTN entry with FEC: 2.2.2.2/32, id: 3, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 10
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 10, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 5, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 1, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 6, in intf: - in label: 0 out-segment ix: 11
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 11, owner: LDP, Stale: NO, out intf: xe12, out label: 52480
    Nexthop addr: 10.10.10.2        cross connect ix: 6, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 4, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
 Primary FTN entry with FEC: 20.20.20.0/24, id: 2, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 10
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 10, owner: N/A, Stale: NO, out intf: xe12, out label: 3
    Nexthop addr: 10.10.10.2        cross connect ix: 5, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 5, row status: Active, Tunnel-Policy: N/A
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A, Color: 0
     Cross connect ix: 4, in intf: - in label: 0 out-segment ix: 6
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 6, owner: N/A, Stale: NO, out intf: xe6, out label: 3
    Nexthop addr: 30.30.30.2        cross connect ix: 4, op code: Push
 
 
P1#show ldp session
Peer IP Address           IF Name    My Role    State      KeepAlive  UpTime
3.3.3.3                   xe5        Passive   OPERATIONAL   30    00:15:30
    1.1.1.1                   xe48       Active    OPERATIONAL   30    00:16:33
 
P1#show ldp targeted-peers
IP Address          Interface
1.1.1.1             xe48
3.3.3.3             xe5
 
P1#show ldp session 1.1.1.1
Session state         : OPERATIONAL
Session role          : Active
TCP Connection        : Established
IP Address for TCP    : 1.1.1.1
Interface being used  : xe48
Peer LDP ID           : 1.1.1.1:0
Peer LDP Password     : Not Set
Adjacencies           : 10.10.10.1
                        1.1.1.1
Advertisement mode    : Downstream Unsolicited
Label retention mode  : Liberal
Graceful Restart      : Not Capable
Keepalive Timeout     : 30
Reconnect Interval    : 15
Session protection    : Ready
Address List received : 1.1.1.1
                        10.10.10.1
                        30.30.30.1
                        254.128.0.0
Received Labels :       Fec             Label           Maps To
                IPV4:4.4.4.4/32         24960           52482
                IPV4:40.40.40.0/24      24961           52484
                IPV4:30.30.30.0/24      impl-null       52483
                IPV4:10.10.10.0/24      impl-null       none
                IPV4:1.1.1.1/32         impl-null       52481
Sent Labels :   Fec                     Label           Maps To
                IPV4:3.3.3.3/32         52480           impl-null
                IPV4:20.20.20.0/24      impl-null       none
                IPV4:10.10.10.0/24      impl-null       none
                    IPV4:2.2.2.2/32         impl-null       none
 
P1#show mpls forwarding-table
Codes: > - installed FTN, * - selected FTN, p - stale FTN,
       B - BGP FTN, K - CLI FTN, t - tunnel,
       L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
       U - unknown FTN
 
Code    FEC                 FTN-ID    Nhlfe-ID  Tunnel-id   Pri   LSP-Type     Out-Label    Out-Intf    ELC   Nexthop
   L>   1.1.1.1/32          2         3         -           Yes   LSP_DEFAULT  3            xe48        No    10.10.10.1
   L>   3.3.3.3/32          5         9         -           Yes   LSP_DEFAULT  3            xe5         No    20.20.20.2
   L>   4.4.4.4/32          3         5         -           Yes   LSP_DEFAULT  24960        xe48        No    10.10.10.1
   L>   30.30.30.0/24       4         7         -           Yes   LSP_DEFAULT  3            xe48        No    10.10.10.1
   L>   40.40.40.0/24       1         1         -           Yes   LSP_DEFAULT  24961        xe48        No    10.10.10.1
P1#
P1#show mpls ilm-table
Codes: > - installed ILM, * - selected ILM, p - stale ILM
        K - CLI ILM, T - MPLS-TP, s - Stitched ILM
       S - SNMP, L - LDP, R - RSVP, C - CRLDP
       B - BGP , K - CLI , V - LDP_VC, I - IGP_SHORTCUT
       U - unknown
 
Code    FEC/VRF/L2CKT    ILM-ID      In-Label    Out-Label   In-Intf    Out-Intf/VRF       Nexthop                   LSP-Type
   L>   4.4.4.4/32         3           52482       24960       N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   1.1.1.1/32         2           52481       3           N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   3.3.3.3/32         1           52480       3           N/A        xe5              20.20.20.2                LSP_DEFAULT
   L>   40.40.40.0/24      5           52484       24961       N/A        xe48             10.10.10.1                LSP_DEFAULT
   L>   30.30.30.0/24      4           52483       3           N/A        xe48             10.10.10.1                LSP_DEFAULT
 
P1#show mpls ftn-table
 Primary FTN entry with FEC: 1.1.1.1/32, id: 2, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 6, in intf: - in label: 0 out-segment ix: 10
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 10, owner: N/A, Stale: NO, out intf: xe48, out label: 3
    Nexthop addr: 10.10.10.1        cross connect ix: 6, op code: Push
 
 
 Primary FTN entry with FEC: 3.3.3.3/32, id: 5, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 5, in intf: - in label: 0 out-segment ix: 8
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 8, owner: N/A, Stale: NO, out intf: xe5, out label: 3
    Nexthop addr: 20.20.20.2        cross connect ix: 5, op code: Push
 
 
 Primary FTN entry with FEC: 4.4.4.4/32, id: 3, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 7, in intf: - in label: 0 out-segment ix: 11
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 11, owner: LDP, Stale: NO, out intf: xe48, out label: 24960
    Nexthop addr: 10.10.10.1        cross connect ix: 7, op code: Push
 
 
 Primary FTN entry with FEC: 30.30.30.0/24, id: 4, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 6, in intf: - in label: 0 out-segment ix: 10
      Owner: N/A, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 10, owner: N/A, Stale: NO, out intf: xe48, out label: 3
    Nexthop addr: 10.10.10.1        cross connect ix: 6, op code: Push
 
 
 Primary FTN entry with FEC: 40.40.40.0/24, id: 1, row status: Active
  Owner: LDP, distance: 0, Action-type: Redirect to LSP, Exp-bits: 0x0, Incoming DSCP: none
  Tunnel id: 0, Protected LSP id: 0, Description: N/A
     Cross connect ix: 8, in intf: - in label: 0 out-segment ix: 12
      Owner: LDP, Persistent: No, Admin Status: Up, Oper Status: Up
       Out-segment with ix: 12, owner: LDP, Stale: NO, out intf: xe48, out label: 24961
    Nexthop addr: 10.10.10.1        cross connect ix: 8, op code: Push