MPLS LSP Ping
Because MPLS cannot work without IP on the network level, you can still use the IP ping when the network is running MPLS. The ping packets are labeled and label-switched throughout the network. Why invent MPLS LSP ping? Well, IP ping is insufficient for verifying the correctness of the MPLS LSP. Although it can verify whether the connectivity is present on the IP level, it does not verify whether the LSP is broken. If you have a plain IP-over-MPLS network and LDP is broken between two LSRs, ping indicates that there is no problem as the echo request makes it to the destination and the echo reply makes it back to the source. Between the two LSRs where the LDP session is broken, the packets are no longer labeled. The ping indicates falsely that everything is okay, when in reality the LSP is broken.
LSPs can break for any number of reasons, while the IP connectivity remains fine. Following are
some reasons an LSP could be broken:
* The LDP session is down.
* MPLS is not enabled on an LSR (or one interface).
* The LFIB has a wrong entry for that LSP (wrong in/out label or wrong outgoing next-hop
information).
* The software and hardware LFIB have a discrepancy.
MPLS LSP Traceroute
The goal of traceroute is to test the path, whereas the goal of ping is to test the connectivity. The goal of MPLS LSP traceroute is to test the path of the LSP and verify the control and data plane on every LSR along the path of the LSP.
An MPLS LSP traceroute is nothing more than an MPLS echo request. The difference with MPLS LSP ping is that MPLS LSP traceroute sends several MPLS echo request packets with increasing MPLS TTL. The first MPLS LSP traceroute probe has MPLS TTL 1, and for every subsequent probe, the TTL is increased by 1. One additional TLV that is included with the echo request for MPLS LSP traceroute is the Downstream Mapping TLV. If an LSR receives the MPLS echo request with TTL 1, it replies to it. If the LSR is not the egress LSR for the FEC and everything checks out fine, the LSR replies as one of the downstream routers. Therefore, it replies with a return code of 8 and the appropriate downstream TLV information (MTU, Address Type, Downstream IP Address, Downstream Interface Address, Multipath information, Downstream Label, and Protocol) filled in. If the LSR is the egress LSR for the FEC, it does not need to fill in the Downstream Mapping information but should reply with a return code of 3.
The MPLS echo request for an MPLS traceroute holds the following information:
* MPLS Echo Header
* Target FEC Stack TLV
* Downstream Mapping TLV
* A PAD TLV (optional)
The echo reply will hold the following information:
* MPLS Echo Header
* An Error Code TLV (optional)
* A PAD TLV (optional)
* Downstream Mapping TLV
MPLS LDP Hello Message uses UDP Port 646 and it's sourced from the neighbor's interface IP address.
Expand User Datagram Protocol > click Source Port:646 > right-click > Prepare a Filter > Selected
In order to view the whole LDP session, type || tcp.port == 646 on the search filter (Expression) > press Enter.
MPLS LFIB exchange is established via TCP three-way handshake on port 646.
The ICMP reply packet is the reverse Label Switch Path (LSP) from CUSTA-SITE2 (192.168.1.99) to CUSTA-SITE1 (172.16.1.2).
There's a slight difference with the commands used in configuring and troubleshooting a VRF.
Configure the CE routers to allow Telnet for testing purposes.
CUSTA-SITE1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTA-SITE1(config)#line vty 0 4
CUSTA-SITE1(config-line)#no login
CUSTA-SITE1(config-line)#privilege level 15
CUSTA-SITE1(config-line)#end
CUSTA-SITE1#
CUSTB-SITE1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTB-SITE1(config)#line vty 0 4
CUSTB-SITE1(config-line)#no login
CUSTB-SITE1(config-line)#privilege level 15
CUSTB-SITE1(config-line)#end
CUSTB-SITE1#
CUSTB-SITE2#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTB-SITE2(config)#line vty 0 4
CUSTB-SITE2(config-line)#no login
CUSTB-SITE2(config-line)#privilege level 15
CUSTB-SITE2(config-line)#end
CUSTB-SITE2#
R1-PE1#ping 172.16.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
R1-PE1#traceroute ?
  
Because MPLS cannot work without IP on the network level, you can still use the IP ping when the network is running MPLS. The ping packets are labeled and label-switched throughout the network. Why invent MPLS LSP ping? Well, IP ping is insufficient for verifying the correctness of the MPLS LSP. Although it can verify whether the connectivity is present on the IP level, it does not verify whether the LSP is broken. If you have a plain IP-over-MPLS network and LDP is broken between two LSRs, ping indicates that there is no problem as the echo request makes it to the destination and the echo reply makes it back to the source. Between the two LSRs where the LDP session is broken, the packets are no longer labeled. The ping indicates falsely that everything is okay, when in reality the LSP is broken.
LSPs can break for any number of reasons, while the IP connectivity remains fine. Following are
some reasons an LSP could be broken:
* The LDP session is down.
* MPLS is not enabled on an LSR (or one interface).
* The LFIB has a wrong entry for that LSP (wrong in/out label or wrong outgoing next-hop
information).
* The software and hardware LFIB have a discrepancy.
MPLS LSP Traceroute
The goal of traceroute is to test the path, whereas the goal of ping is to test the connectivity. The goal of MPLS LSP traceroute is to test the path of the LSP and verify the control and data plane on every LSR along the path of the LSP.
An MPLS LSP traceroute is nothing more than an MPLS echo request. The difference with MPLS LSP ping is that MPLS LSP traceroute sends several MPLS echo request packets with increasing MPLS TTL. The first MPLS LSP traceroute probe has MPLS TTL 1, and for every subsequent probe, the TTL is increased by 1. One additional TLV that is included with the echo request for MPLS LSP traceroute is the Downstream Mapping TLV. If an LSR receives the MPLS echo request with TTL 1, it replies to it. If the LSR is not the egress LSR for the FEC and everything checks out fine, the LSR replies as one of the downstream routers. Therefore, it replies with a return code of 8 and the appropriate downstream TLV information (MTU, Address Type, Downstream IP Address, Downstream Interface Address, Multipath information, Downstream Label, and Protocol) filled in. If the LSR is the egress LSR for the FEC, it does not need to fill in the Downstream Mapping information but should reply with a return code of 3.
The MPLS echo request for an MPLS traceroute holds the following information:
* MPLS Echo Header
* Target FEC Stack TLV
* Downstream Mapping TLV
* A PAD TLV (optional)
The echo reply will hold the following information:
* MPLS Echo Header
* An Error Code TLV (optional)
* A PAD TLV (optional)
* Downstream Mapping TLV
R1-PE1#traceroute
10.5.5.5  
Type
escape sequence to abort.
Tracing
the route to 10.5.5.5
VRF info:
(vrf in name/id, vrf out name/id)
  1 10.12.0.2 [MPLS: Label 202 Exp 0] 52 msec
48 msec 28 msec
  2 10.23.0.3 [MPLS: Label 304 Exp 0] 32 msec
60 msec 36 msec
  3 10.34.0.4 [MPLS: Label 402 Exp 0] 48 msec 8
msec 32 msec
  4 10.45.0.5 64 msec 92 msec 48 msec
R3-P2#show
mpls ldp ?
  backoff           LDP session setup backoff table
  bindings          Show the LDP Label Information Base
(LIB)
  capabilities      Display LDP Capabilities information
  discovery         Display sources for locally generated
LDP Discovery Hello
                    PDUs
  graceful-restart  Show Graceful Restart summary
  igp               IGP-related info
  neighbor          Display LDP neighbor information
  parameters        Display LDP configuration parameters
R3-P2#show
mpls ldp bindings
  lib entry: 10.1.1.1/32, rev 4
        local binding:  label: 301
        remote binding: lsr: 10.4.4.4:0, label:
400
        remote binding: lsr: 10.2.2.2:0, label:
200
  lib entry: 10.2.2.2/32, rev 6
        local binding:  label: 302
        remote binding: lsr: 10.4.4.4:0, label:
401
        remote binding: lsr: 10.2.2.2:0, label:
imp-null
  lib entry: 10.3.3.3/32, rev 10
        local binding:  label: imp-null
        remote binding: lsr: 10.4.4.4:0, label:
405
        remote binding: lsr: 10.2.2.2:0, label:
205
  lib entry: 10.4.4.4/32, rev 12
        local binding:  label: 303
        remote binding: lsr: 10.4.4.4:0, label:
imp-null
        remote binding: lsr: 10.2.2.2:0, label:
201
  lib entry: 10.5.5.5/32, rev 14
        local binding:  label: 304
        remote binding: lsr: 10.4.4.4:0, label:
402
        remote binding: lsr: 10.2.2.2:0, label:
202
  lib entry: 10.12.0.0/24, rev 2
        local binding:  label: 300
        remote binding: lsr: 10.4.4.4:0, label:
403
        remote binding: lsr: 10.2.2.2:0, label:
imp-null
  lib entry: 10.23.0.0/24, rev 8
        local binding:  label: imp-null
        remote binding: lsr: 10.4.4.4:0, label:
404
        remote binding: lsr: 10.2.2.2:0, label:
imp-null
  lib entry: 10.34.0.0/24, rev 16
        local binding:  label: imp-null
        remote binding: lsr: 10.4.4.4:0, label:
imp-null
        remote binding: lsr: 10.2.2.2:0, label:
203
  lib entry: 10.45.0.0/24, rev 18
        local binding:  label: 305
        remote binding: lsr: 10.4.4.4:0, label:
imp-null
        remote binding: lsr: 10.2.2.2:0, label:
204
R3-P2#show
mpls ldp bindings ?
  A.B.C.D             Destination prefix
  advertisement-acls  Show advertisement access lists
  all                 Display LIB information in all
VRFs
  detail              Show detailed information
  local               Display only locally assigned
labels
  local-label         Match locally assigned label values
  neighbor            Display labels from LDP neighbor
  remote-label        Match remotely assigned label values
  vrf                 VRF Routing/Forwarding
instance information
  |                   Output modifiers
  <cr>
R3-P2#show mpls ldp bindings local    // PER
PLATFORM LABEL; USE SAME LABELS IN OTHER INTERFACES
  lib entry: 10.1.1.1/32, rev 4
        local binding:  label: 301
  lib entry: 10.2.2.2/32, rev 6
        local binding:  label: 302
  lib entry: 10.3.3.3/32,
rev 10
        local binding:  label: imp-null      // DIRECTLY CONNECTED
  lib entry: 10.4.4.4/32, rev 12
        local binding:  label: 303
  lib entry: 10.5.5.5/32, rev 14
        local binding:  label: 304
  lib entry: 10.12.0.0/24, rev 2
        local binding:  label: 300
  lib entry: 10.23.0.0/24, rev 8
        local binding:  label: imp-null
  lib entry: 10.34.0.0/24, rev 16
        local binding:  label: imp-null
  lib entry: 10.45.0.0/24, rev 18
        local binding:  label: 305
R3-P2#show
mpls ldp bindings 10.5.5.5 32  
  lib entry: 10.5.5.5/32, rev 14
        local binding:  label: 304
        remote binding: lsr: 10.4.4.4:0, label:
402     
// TWO LABELS RECEIVED DUE TO LIBERAL LABEL RETENTION MODE
        remote binding: lsr: 10.2.2.2:0, label:
202
R3-P2#conf
t
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#no
mpls ip
R3-P2(config)#
*Nov 12
15:41:25.884: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (1) is DOWN (LDP
unconfigured globally)
*Nov 12
15:41:25.888: %LDP-5-NBRCHG: LDP Neighbor 10.2.2.2:0 (2) is DOWN (LDP
unconfigured globally)
R3-P2(config)#
R3-P2(config)#mpls
ip
R3-P2(config)#
*Nov 12
15:41:33.612: %LDP-5-NBRCHG: LDP Neighbor 10.2.2.2:0 (3) is UP
*Nov 12
15:41:33.644: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (4) is UP
R3-P2#show
mpls ldp bindings local      
  lib entry: 10.1.1.1/32, rev 2
        local binding:  label: 306
  lib entry: 10.2.2.2/32, rev 4
        local binding:  label: 307
  lib entry: 10.3.3.3/32, rev 6
        local binding:  label: imp-null
  lib entry: 10.4.4.4/32, rev 8
        local binding:  label: 308
  lib entry: 10.5.5.5/32, rev 10
        local binding:  label: 309
  lib entry: 10.12.0.0/24, rev 12
        local binding:  label: 310
  lib entry: 10.23.0.0/24, rev 14
        local binding:  label: imp-null
  lib entry: 10.34.0.0/24, rev 16
        local binding:  label: imp-null
  lib entry: 10.45.0.0/24, rev 18
        local binding:  label: 311
R3-P2#show
mpls ldp bindings 10.5.5.5 32
  lib entry: 10.5.5.5/32, rev 10
        local binding:  label: 309      // LABEL 304 PREVIOUSLY
        remote binding: lsr: 10.2.2.2:0, label:
202       // NO CHANGE
        remote binding: lsr: 10.4.4.4:0, label:
402      // NO CHANGE
R3-P2#show
mpls forwarding-table 10.5.5.5    
Local      Outgoing  
Prefix           Bytes Label   Outgoing  
Next Hop    
Label      Label     
or Tunnel Id     Switched      interface              
309       
402        10.5.5.5/32      0             Fa1/0      10.34.0.4 
R3-P2#conf
t
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#access-list 1 permit 10.5.5.5
R3-P2(config)#end
R3-P2#
*Nov 12
16:03:51.768: %SYS-5-CONFIG_I: Configured from console by console
R3-P2#debug
mpls ?
  access-list 
MPLS ACCESS
  events      
MPLS events
  ip          
Debug MPLS IP information
  l2transport 
Any transport over MPLS debug
  ldp         
Label Distribution Protocol
  lspv        
LSP Verification debug
  netflow     
MPLS Egress NetFlow Accounting
  packet      
mpls packet debug
  static      
MPLS Static labels
  traffic-eng 
MPLS Traffic Engineering debug
R3-P2#debug
mpls ldp ?
  address-to-session  Address to LDP session mapping services
  advertisements      LDP label and address advertisements
  backoff             LDP session establishment backoff
  bindings            Label bindings and other Label
Information Base (LIB)
                      changes
  capabilities        Capabilities debug
  dev                 MPLS development interested
events
  graceful-restart    LDP Graceful Restart events
  iccp                InterChassis Control Protocol
debug
  igp                 IGP-related interactions
  messages            LDP messages
  peer                LDP peer
  prev-label          Previous label protocol changes
  refcount            LDP instance reference count
tracking
  session             LDP session
  targeted-neighbors  LDP targeted neighbor events
  transport           LDP transport and discovery
R3-P2#debug
mpls ldp bindings ?
  peer-acl   
Peer access list filter
  prefix-acl 
Prefix access list filter
  <cr>
R3-P2#debug
mpls ldp bindings prefix-acl ?
  WORD 
ACL name
R3-P2#debug mpls ldp bindings prefix-acl 1       // LIMIT DEBUG BASED ON ACL 1 USING
PREFIX 10.5.5.5
LDP Label
Information Base (LIB) changes debugging is on for prefix ACL 1
R3-P2#
R3-P2#conf
t
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#no
mpls ip
R3-P2(config)#
*Nov 12
16:04:32.496: %LDP-5-NBRCHG: LDP Neighbor 10.2.2.2:0 (3) is DOWN (LDP
unconfigured globally)
*Nov 12
16:04:32.504: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (4) is DOWN (LDP
unconfigured globally)
*Nov 12
16:04:32.708: tagcon: tibent(10.5.5.5/32): deleted
R3-P2(config)#
*Nov 12
16:04:34.100: tc_handle_bg_timer_event: TC not enabled, ctx # 0
*Nov 12
16:04:34.100: tagcon: (default) Deassign peer id; 10.2.2.2:0: id 2
*Nov 12
16:04:34.104: tagcon: (default) Deassign peer id; 10.4.4.4:0: id 3
R3-P2(config)#
R3-P2(config)#mpls
ip   
R3-P2(config)#
R3-P2(config)#
*Nov 12
16:04:43.892: tib: prefix recurs walk start: 10.5.5.5/32, tableid: 0; tib entry
not found
*Nov 12
16:04:43.892: tib: get path labels: 10.5.5.5/32(0), nh tableid: 0, Fa1/0, nh
10.34.0.4
*Nov 12
16:04:43.892: tagcon: tibent(10.5.5.5/32): created; find route tags request
*Nov 12
16:04:43.892: tib: Assign 10.5.5.5/32 nh 10.34.0.4 real label
*Nov 12 16:04:43.896: tagcon: tibent(10.5.5.5/32):
label 304 (#10) assigned
*Nov 12
16:04:43.896: tib: add a route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0),
remote label Unknown
*Nov 12
16:04:43.896: tib: update route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0), with
remote label Unknown
*Nov 12
16:04:43.896: tagcon: announce labels for: 10.5.5.5/32; nh 10.34.0.4, Fa1/0,
inlabel 304, outlabel unknown (from 0.0.0.0:0), get path labels
*Nov 12
16:04:44.008: tib: prefix recurs walk start: 10.5.5.5/32, tableid: 0
*Nov 12
16:04:44.008: tib: get path labels: 10.5.5.5/32(0), nh tableid: 0, Fa1/0, nh
10.34.0.4
*Nov 12
16:04:44.012: tib: Assign 10.5.5.5/32 nh 10.34.0.4 real label
*Nov 12
16:04:44.012: tib: found route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0),
remote label Unknown
*Nov 12
16:04:44.016: tib: update route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0), with
remote label Unknown
*Nov 12
16:04:44.020: tagcon: announce labels for: 10.5.5.5/32; nh 10.34.0.4, Fa1/0,
inlabel 304, outlabel unknown (from 0.0.0.0:0), get path labels
*Nov 12
16:04:44.100: tagcon: (default) Assign peer id; 10.2.2.2:0: id 0
*Nov 12
16:04:44.100: %LDP-5-NBRCHG: LDP Neighbor 10.2.2.2:0 (1) is UP
*Nov 12
16:04:44.156: tagcon: (default) Assign peer id; 10.4.4.4:0: id 1
*Nov 12
16:04:44.156: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (2) is UP
*Nov 12
16:04:44.156: tagcon: 10.4.4.4:0: 10.45.0.4 added to addr<->ldp ident map
*Nov 12
16:04:44.160: tagcon: 10.4.4.4:0: 10.34.0.4 added to addr<->ldp ident map
*Nov 12
16:04:44.160: tagcon: 10.4.4.4:0: 10.4.4.4 added to addr<->ldp ident map
*Nov 12 16:04:44.160: tib: 10.5.5.5/32:: learn
binding 402 from 10.4.4.4:0
*Nov 12
16:04:44.164: tib: a new binding to be added
*Nov 12
16:04:44.164: tagcon: tibent(10.5.5.5/32): label 402 from 10.4.4.4:0 added
*Nov 12
16:04:44.164: tib: next hop for route 10.5.5.5/32(0, 10.34.0.4, Fa1/0) is
mapped to peer 10.4.4.4:0
*Nov 12
16:04:44.164: tib: invoke iprm label announcement for 10.5.5.5/32
*Nov 12
16:04:44.164: tib: prefix recurs walk start: 10.5.5.5/32, tableid: 0
*Nov 12
16:04:44.164: tib: get path labels: 10.5.5.5/32(0), nh tableid: 0, Fa1/0, nh
10.34.0.4
*Nov 12
16:04:44.164: tib: Assign 10.5.5.5/32 nh 10.34.0.4 real label
*Nov 12
16:04:44.164: tib: found route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0),
remote label Unknown
*Nov 12
16:04:44.164: tib: update route info for 10.5.5.5/32(0, 10.34.0.4, Fa1/0), with
remote label 402 from 10.4.4.4:0
*Nov 12
16:04:44.164: tagcon: announce labels for: 10.5.5.5/32; nh 10.34.0.4, Fa1/0,
inlabel 304, outlabel 402 (from 10.4.4.4:0), get path labels
*Nov 12
16:04:44.176: tagcon: 10.2.2.2:0: 10.12.0.2 added to addr<->ldp ident map
*Nov 12
16:04:44.176: tagcon: 10.2.2.2:0: 10.2.2.2 added to addr<->ldp ident map
*Nov 12
16:04:44.176: tagcon: 10.2.2.2:0: 10.23.0.2 added to addr<->ldp ident map
*Nov 12 16:04:44.180: tib: 10.5.5.5/32:: learn
binding 202 from 10.2.2.2:0
*Nov 12
16:04:44.180: tib: a new binding to be added
*Nov 12
16:04:44.180: tagcon: tibent(10.5.5.5/32): label 202 from 10.2.2.2:0 added
*Nov 12
16:04:44.180: tib: next hop for route 10.5.5.5/32(0, 10.34.0.4, Fa1/0) is not
mapped to peer 10.2.2.2:0
*Nov 12
16:04:44.180: tib: skip iprm label announcement for 10.5.5.5/32
R3-P2(config)#
R3-P2(config)#end
R3-P2#u
all
All
possible debugging has been turned off
R3-P2#show
mpls ldp bindings 10.5.5.5 32
  lib entry: 10.5.5.5/32, rev 10
        local binding:  label: 304
        remote binding: lsr: 10.4.4.4:0, label:
402
        remote binding: lsr: 10.2.2.2:0, label:
202
MPLS LDP Hello Message uses UDP Port 646 and it's sourced from the neighbor's interface IP address.
Expand User Datagram Protocol > click Source Port:646 > right-click > Prepare a Filter > Selected
In order to view the whole LDP session, type || tcp.port == 646 on the search filter (Expression) > press Enter.
MPLS LFIB exchange is established via TCP three-way handshake on port 646.
R3-P2#show
mpls ldp neighbor 
    Peer LDP Ident: 10.2.2.2:0; Local LDP Ident 10.3.3.3:0
        TCP connection: 10.2.2.2.646 - 10.3.3.3.47607      // R3 HAS THE HIGHER ROUTER ID (LOOPBACK IP) AND
INITIATED THE TCP SESSION (3-WAY HANDSHAKE) USING HIGHER RANDOM (EPHEMERAL) SOURCE PORT GOING TO
MPLS WELL KNOWN PORT 646 
        State: Oper; Msgs sent/rcvd: 37/36;
Downstream
        Up time: 00:21:56
        LDP discovery sources:
          FastEthernet1/1,
Src IP addr: 10.23.0.2
        Addresses bound to peer LDP Ident:
          10.12.0.2       10.2.2.2        10.23.0.2         // LDP NEIGHBOR ALSO ADVERTISE ITS KNOWN NETWORKS
    Peer LDP Ident: 10.4.4.4:0; Local LDP Ident 10.3.3.3:0
        TCP connection: 10.4.4.4.57765 - 10.3.3.3.646
        State: Oper; Msgs sent/rcvd: 37/37;
Downstream
        Up time: 00:21:56
        LDP discovery sources:
          FastEthernet1/0,
Src IP addr: 10.34.0.4
        Addresses bound to peer LDP Ident:
          10.45.0.4       10.34.0.4       10.4.4.4 
R5-PE2#show
control-plane host open-ports    // VERIFY OPENED PORTS FOBGP AND MPLS PING/TRACEROUTE
Active
internet connections (servers and established)
Prot               Local Address             Foreign Address                  Service    State
 tcp                     *:51815             192.168.1.2:179         IOS host service ESTABLIS
 tcp                        *:23                         *:0                   Telnet   LISTEN
 tcp                     *:31529                10.4.4.4:646         IOS host service ESTABLIS
 tcp                     *:30089                10.1.1.1:179         IOS host service ESTABLIS
 tcp                       *:179                         *:0                      BGP   LISTEN
 tcp                       *:179                         *:0                      BGP   LISTEN
 udp                      *:3503                         *:0                LSPV Echo   LISTEN
R3-P2#show
ip route
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      10.0.0.0/8 is variably subnetted, 11
subnets, 2 masks
O        10.1.1.1/32 [110/3] via 10.23.0.2,
1d04h, FastEthernet1/1
O       
10.2.2.2/32 [110/2] via 10.23.0.2, 1d04h, FastEthernet1/1
C        10.3.3.3/32 is directly connected,
Loopback0
O        10.4.4.4/32 [110/2] via 10.34.0.4,
1d04h, FastEthernet1/0
O        10.5.5.5/32 [110/3] via 10.34.0.4,
1d04h, FastEthernet1/0
O        10.12.0.0/24 [110/2] via 10.23.0.2,
1d04h, FastEthernet1/1
C        10.23.0.0/24 is directly connected,
FastEthernet1/1
L        10.23.0.3/32 is directly connected,
FastEthernet1/1
C        10.34.0.0/24 is directly connected,
FastEthernet1/0
L        10.34.0.3/32 is directly connected,
FastEthernet1/0
O        10.45.0.0/24 [110/2] via 10.34.0.4,
1d04h, FastEthernet1/0
R3-P2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#ip
route 10.2.2.2 255.255.255.255 10.34.0.4    
// WRONG STATIC ROUTE
R3-P2(config)#
R3-P2(config)#no
mpls ip
R3-P2(config)#
*Nov 12
16:49:13.188: %LDP-5-NBRCHG: LDP Neighbor 10.2.2.2:0 (3) is DOWN (LDP
unconfigured globally)
*Nov 12
16:49:13.196: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (4) is DOWN (LDP
unconfigured globally)
R3-P2(config)#
*Nov 12
16:49:13.356: %MPLS_PACKET-4-NOLFDSB: MPLS packet received on non MPLS enabled
interface FastEthernet1/0 L3 type 0x8847 label {303 6 1 254}
R3-P2(config)#
R3-P2(config)#mpls
ip
R3-P2(config)#
*Nov 12
16:49:23.056: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (1) is UP      // LDP NEIGHBOR R2 DIDN'T GO UP; IT CAN'T
REACH R2 LOOPBACK IP 10.2.2.2
R3-P2(config)#
R3-P2(config)#do
show mpls ldp neighbor
    Peer LDP Ident: 10.4.4.4:0; Local LDP Ident
10.3.3.3:0
        TCP connection: 10.4.4.4.14003 -
10.3.3.3.646
        State: Oper; Msgs sent/rcvd: 12/12;
Downstream
        Up time: 00:00:13
        LDP discovery sources:
          FastEthernet1/0, Src IP addr:
10.34.0.4
        Addresses bound to peer LDP Ident:
          10.45.0.4       10.34.0.4       10.4.4.4        
R3-P2(config)#
R3-P2(config)#no
ip route 10.2.2.2 255.255.255.255 10.34.0.4    
// RESTORE ROUTING FOR 10.2.2.2 DYNAMICALLY VIA OSPF
R3-P2(config)#
*Nov 12 16:50:11.792: %LDP-5-NBRCHG: LDP Neighbor
10.2.2.2:0 (2) is UP
R3-P2(config)#
R3-P2(config)#do
show mpls ldp neighbor   // MPLS
ESTABLISH LDP NEIGHBORSHIP USING HIGHEST LOOPBACK IP 
    Peer LDP Ident: 10.4.4.4:0; Local LDP Ident
10.3.3.3:0
       
TCP connection: 10.4.4.4.14003 - 10.3.3.3.646
       
State: Oper; Msgs sent/rcvd: 13/13; Downstream
       
Up time: 00:01:00
        LDP discovery sources:
          FastEthernet1/0, Src IP addr:
10.34.0.4
        Addresses bound to peer LDP Ident:
          10.45.0.4       10.34.0.4       10.4.4.4        
    Peer LDP
Ident: 10.2.2.2:0; Local LDP Ident 10.3.3.3:0
       
TCP connection: 10.2.2.2.646 - 10.3.3.3.24330
       
State: Oper; Msgs sent/rcvd: 12/12; Downstream
       
Up time: 00:00:11
        LDP discovery sources:
          FastEthernet1/1, Src IP addr:
10.23.0.2
        Addresses bound to peer LDP Ident:
          10.12.0.2       10.2.2.2        10.23.0.2     
Verify
CUSTA SITE 1 has network connectivity to 192.168.1.99 in CUSTA SITE 2. Troubleshoot backwards on the LSP: CUSTA-SITE2 > R5-PE2 > R4-P3 > R3-P2 > R2-P1 > R1-PE1 > CUSTA-SITE1.
CUSTA-SITE2#show
ip interface brief
Interface                  IP-Address      OK? Method Status                Protocol
FastEthernet0/0            unassigned      YES unset 
administratively down down    
FastEthernet1/0            192.168.1.2     YES manual up                    up      
FastEthernet1/1            unassigned      YES unset 
administratively down down    
Loopback1                  192.168.1.99    YES manual up                    up      
R5-PE2#show
bgp vpnv4 unicast vrf CUSTA label
   Network          Next Hop      In label/Out label
Route
Distinguisher: 65000:1 (CUSTA)
   172.16.1.0/30    10.1.1.1        nolabel/107
   172.16.1.99/32   10.1.1.1        nolabel/108
   192.168.1.0/30   0.0.0.0         509/nolabel(CUSTA)
  
192.168.1.99/32  192.168.1.2     510/nolabel
R5-PE2#show
bgp vpnv4 unicast vrf CUSTA 192.168.1.99
BGP
routing table entry for 65000:1:192.168.1.99/32,
version 13
Paths: (1
available, best #1, table CUSTA)
  Advertised to update-groups:
     2        
  Refresh Epoch 1
  Local
    192.168.1.2 from 0.0.0.0 (10.5.5.5)
      Origin incomplete, metric 1, localpref
100, weight 32768, valid, sourced, best
      Extended Community: RT:1:1
      mpls labels in/out 510/nolabel
R5-PE2#show
mpls forwarding-table vrf CUSTA 192.168.1.99
Local      Outgoing  
Prefix           Bytes Label   Outgoing  
Next Hop    
Label      Label     
or Tunnel Id     Switched      interface              
510        No Label   192.168.1.99/32[V]   \
                                      
2370          Fa1/0     
192.168.1.2 
R5-PE2#show
ip cef vrf CUSTA 192.168.1.99
192.168.1.99/32
  nexthop
192.168.1.2 FastEthernet1/0
R1-PE1#show
bgp vpnv4 unicast vrf CUSTA label
   Network          Next Hop      In label/Out label
Route
Distinguisher: 65000:1 (CUSTA)
   172.16.1.0/30    0.0.0.0         107/nolabel(CUSTA)
   172.16.1.99/32   172.16.1.2      108/nolabel
   192.168.1.0/30   10.5.5.5        nolabel/509
  
192.168.1.99/32  10.5.5.5        nolabel/510
R1-PE1#show
mpls forwarding-table 10.5.5.5
Local      Outgoing  
Prefix           Bytes Label   Outgoing  
Next Hop    
Label      Label     
or Tunnel Id     Switched      interface              
106       
205        10.5.5.5/32      0             Fa0/0      10.12.0.2 
R1-PE1#show
ip cef vrf CUSTA 192.168.1.99
192.168.1.99/32
  nexthop
10.12.0.2 FastEthernet0/0 label 205 510      // TOP LABEL: 209; BOTTOM LABEL: 510
CUSTA-SITE2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
CUSTA-SITE2(config)#line
vty 0 4          // ENABLE TELNET FOR
TESTING
CUSTA-SITE2(config-line)#no
login
CUSTA-SITE2(config-line)#privilege
15
CUSTA-SITE2(config-line)#privilege
level 15
CUSTA-SITE2(config-line)#end
CUSTA-SITE2#
CUSTA-SITE1#show
ip route
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      172.16.0.0/16 is variably subnetted, 3
subnets, 2 masks
C        172.16.1.0/30 is directly connected,
FastEthernet1/0
L        172.16.1.2/32 is directly connected,
FastEthernet1/0
C        172.16.1.99/32 is directly connected,
Loopback1
      192.168.1.0/24 is variably subnetted, 2
subnets, 2 masks
O E2     192.168.1.0/30 [110/1] via 172.16.1.1,
1d16h, FastEthernet1/0
O E2    
192.168.1.99/32 [110/1] via 172.16.1.1, 1d16h, FastEthernet1/0
CUSTA-SITE1#traceroute
192.168.1.99
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 172.16.1.1 16 msec 20 msec 16 msec      // R1-PE1
  2 10.12.0.2 [MPLS: Labels 205/510 Exp 0] 108
msec 72 msec 92 msec     // R2-P1
  3 10.23.0.3 [MPLS: Labels 309/510 Exp 0] 128
msec 72 msec 72 msec    // R3-P2
  4 10.34.0.4
[MPLS: Labels 405/510 Exp 0] 84 msec 72 msec 88 msec     // R4-P3 (PHP)
  5
192.168.1.1 [MPLS: Label 510 Exp 0] 72 msec 40 msec 64 msec      // R5-PE2; BOTTOM LABEL:510
  6 192.168.1.2 96 msec 80 msec 68 msec       // CUSTA-SITE2; NATIVE IP
CUSTA-SITE1#telnet
192.168.1.99
Trying 192.168.1.99 ... Open
CUSTA-SITE2#
Perform
Wireshark packet capture between R2-P1 and R3-P2. Notice the Ethernet II (Layer
2/Data Link) has a Type: MPLS label switched packet (MPLS is Layer 2.5). Also
the MPLS Label: 310 has a Bottom of Label Stack: 1
CUSTA-SITE1#ping
192.168.1.99       
Type
escape sequence to abort.
Sending
5, 100-byte ICMP Echos to 192.168.1.99, timeout is 2 seconds:
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 72/90/104 ms
The ICMP reply packet is the reverse Label Switch Path (LSP) from CUSTA-SITE2 (192.168.1.99) to CUSTA-SITE1 (172.16.1.2).
There's a slight difference with the commands used in configuring and troubleshooting a VRF.
Configure the CE routers to allow Telnet for testing purposes.
CUSTA-SITE1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTA-SITE1(config)#line vty 0 4
CUSTA-SITE1(config-line)#no login
CUSTA-SITE1(config-line)#privilege level 15
CUSTA-SITE1(config-line)#end
CUSTA-SITE1#
CUSTB-SITE1#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTB-SITE1(config)#line vty 0 4
CUSTB-SITE1(config-line)#no login
CUSTB-SITE1(config-line)#privilege level 15
CUSTB-SITE1(config-line)#end
CUSTB-SITE1#
CUSTB-SITE2#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
CUSTB-SITE2(config)#line vty 0 4
CUSTB-SITE2(config-line)#no login
CUSTB-SITE2(config-line)#privilege level 15
CUSTB-SITE2(config-line)#end
CUSTB-SITE2#
R1-PE1#ping 172.16.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.2, timeout is 2 seconds:
.....
Success rate is 0 percent (0/5)
R1-PE1#ping
172.16.1.2      // PING FAILED SINCE IP
IS NOT IN GLOBAL ROUTING TABLE
Type escape sequence
to abort.
Sending 5, 100-byte
ICMP Echos to 172.16.1.2, timeout is 2 seconds:
.....
Success rate is 0
percent (0/5)
R1-PE1#show
ip route
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      10.0.0.0/8 is variably subnetted, 10
subnets, 2 masks
C        10.1.1.1/32 is directly connected,
Loopback0
O        10.2.2.2/32 [110/2] via 10.12.0.2,
1w3d, FastEthernet0/0
O        10.3.3.3/32 [110/3] via 10.12.0.2,
1w3d, FastEthernet0/0
O        10.4.4.4/32 [110/4] via 10.12.0.2,
1w3d, FastEthernet0/0
O        10.5.5.5/32 [110/5] via 10.12.0.2,
1w3d, FastEthernet0/0
C        10.12.0.0/24 is directly connected,
FastEthernet0/0
L        10.12.0.1/32 is directly connected,
FastEthernet0/0
O        10.23.0.0/24 [110/2] via 10.12.0.2,
1w3d, FastEthernet0/0
O        10.34.0.0/24 [110/3] via 10.12.0.2,
1w3d, FastEthernet0/0
O        10.45.0.0/24 [110/4] via 10.12.0.2,
1w3d, FastEthernet0/0
R1-PE1#show
ip route ?  
  Hostname or A.B.C.D  Network to display information about or
hostname
  bgp                  Border Gateway Protocol (BGP)
  connected            Connected
  dhcp                 Show routes added by DHCP
Server or Relay
  eigrp                Enhanced Interior Gateway
Routing Protocol (EIGRP)
  isis                 ISO IS-IS
  lisp                 Locator ID Separation Protocol
(LISP)
  list                 IP Access list
  loops                RIB routes forming loops
  mobile               Mobile routes
  multicast            Multicast global information
  next-hop-override    Show next-hop-overrides too
  nhrp                 Next Hop Resolution Protocol
(NHRP)
  odr                  On Demand stub Routes
  ospf                 Open Shortest Path First
(OSPF)
  ospfv3               OSPFv3
  profile              IP routing table profile
  repair-paths         Show repair paths too
  rip                  Routing Information Protocol
(RIP)
  static               Static routes
  summary              Summary of all routes
  supernets-only       Show supernet entries only
  tag                  Route Tag
  track-table          Tracked static table
  vrf                  Display routes from a VPN
Routing/Forwarding instance
  |                    Output modifiers
  <cr>
R1-PE1#show ip route vrf CUSTA
Routing
Table: CUSTA
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      172.16.0.0/16 is variably subnetted, 3
subnets, 2 masks
C        172.16.1.0/30 is directly connected,
FastEthernet1/0
L        172.16.1.1/32 is directly connected,
FastEthernet1/0
O       
172.16.1.99/32 [110/2] via 172.16.1.2, 2d19h, FastEthernet1/0
      192.168.1.0/24 is variably subnetted, 2
subnets, 2 masks
B       
192.168.1.0/30 [200/0] via 10.5.5.5, 2d13h
B       
192.168.1.99/32 [200/1] via 10.5.5.5, 2d13h
R1-PE1#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R1-PE1(config)#ip
route ?
  A.B.C.D 
Destination prefix
  profile 
Enable IP routing table profile
  static  
Allow static routes
  vrf     
Configure static route for a VPN Routing/Forwarding instance
R1-PE1(config)#ip route vrf CUSTA 10.1.1.0 255.255.255.0 172.16.1.2
R1-PE1(config)#end
R1-PE1#show
ip route vrf CUSTA
Routing
Table: CUSTA
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      10.0.0.0/24 is subnetted, 1 subnets
S       
10.1.1.0 [1/0] via 172.16.1.2
      172.16.0.0/16 is variably subnetted, 3
subnets, 2 masks
C        172.16.1.0/30 is directly connected,
FastEthernet1/0
L        172.16.1.1/32 is directly connected,
FastEthernet1/0
O        172.16.1.99/32 [110/2] via 172.16.1.2,
2d19h, FastEthernet1/0
      192.168.1.0/24 is variably subnetted, 2
subnets, 2 masks
B        192.168.1.0/30 [200/0] via 10.5.5.5,
2d13h
B        192.168.1.99/32 [200/1] via 10.5.5.5,
2d13h
R1-PE1#show ip route vrf CUSTB
Routing
Table: CUSTB
Codes: L
- local, C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, 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, su - IS-IS summary, L1 -
IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate
default, U - per-user static route
       o - ODR, P - periodic downloaded static
route, H - NHRP, l - LISP
       + - replicated route, % - next hop
override
Gateway
of last resort is not set
      172.16.0.0/16 is variably subnetted, 3
subnets, 2 masks
C        172.16.1.0/30 is directly connected,
FastEthernet1/1
L        172.16.1.1/32 is directly connected,
FastEthernet1/1
D       
172.16.1.100/32 [90/156160] via 172.16.1.2, 2d19h, FastEthernet1/1
      192.168.1.0/24 is variably subnetted, 2
subnets, 2 masks
B       
192.168.1.0/30 [200/0] via 10.5.5.5, 2d19h
B       
192.168.1.100/32 [200/0] via 10.5.5.5, 2d19h
R1-PE1#ping
vrf CUSTA 172.16.1.2       // CUSTA-SITE1
Type
escape sequence to abort.
Sending
5, 100-byte ICMP Echos to 172.16.1.2, timeout is 2 seconds:
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 8/16/24 ms
R1-PE1#ping
vrf CUSTB 172.16.1.2     // CUSTB-SITE1
Type
escape sequence to abort.
Sending
5, 100-byte ICMP Echos to 172.16.1.2, timeout is 2 seconds:
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 8/12/24 ms
R1-PE1#ping
vrf CUSTA 192.168.1.2      // CUSTA-SITE2
Type
escape sequence to abort.
Sending
5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 72/91/132 ms
R1-PE1#ping
vrf CUSTB 192.168.1.2      // CUSTB-SITE2
Type
escape sequence to abort.
Sending
5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 44/64/84 ms
R1-PE1#traceroute
?              
  WORD      
Trace route to destination address or hostname
  appletalk 
AppleTalk Trace
  clns      
ISO CLNS Trace
  ethernet  
Ethernet Traceroute
  ip        
IP Trace
  ipv6      
IPv6 Trace
  ipx       
IPX Trace
  mpls      
MPLS LSP Trace
  vrf       
Select VPN routing instance
  <cr>
R1-PE1#traceroute vrf CUSTA 172.16.1.99       // MPLS TRACEROUTE USES HIGH NUMBERED UDP PORTS
Type
escape sequence to abort.
Tracing
the route to 172.16.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 172.16.1.2 20 msec 12 msec 12 msec       // DIRECTLY CONNECTED (NO MPLS)
R1-PE1#traceroute vrf CUSTA 192.168.1.2 
Type
escape sequence to abort.
Tracing
the route to 192.168.1.2
VRF info:
(vrf in name/id, vrf out name/id)
  1 10.12.0.2 [MPLS: Labels 205/509 Exp 0] 44 msec 56 msec 44 msec      // SAME DESTINATION IP BUT DIFFERENT
EGRESS MPLS LABEL; Exp IS THE EXPERIMENTAL BITS USED FOR QoS
  2 10.23.0.3 [MPLS: Labels 309/509 Exp 0] 64
msec 44 msec 40 msec
  3 10.34.0.4 [MPLS: Labels 405/509 Exp 0] 48
msec 56 msec 44 msec
  4 192.168.1.1 52 msec 36 msec 52 msec
  5 192.168.1.2 84 msec 48 msec 56 msec
R1-PE1#traceroute vrf CUSTB 192.168.1.2
Type
escape sequence to abort.
Tracing
the route to 192.168.1.2
VRF info:
(vrf in name/id, vrf out name/id)
  1 10.12.0.2 [MPLS: Labels 205/507 Exp 0] 40 msec 60 msec 60 msec
  2 10.23.0.3 [MPLS: Labels 309/507 Exp 0] 48
msec 40 msec 44 msec
  3 10.34.0.4 [MPLS: Labels 405/507 Exp 0] 40
msec 52 msec 48 msec
  4 192.168.1.1 40 msec 48 msec 60 msec
  5 192.168.1.2 64 msec 72 msec 60 msec
R1-PE1#telnet
192.168.1.2 ?
  /debug             Enable telnet debugging mode
  /encrypt           Negotiate telnet encryption
  /ipv4              Force use of IP version 4
  /ipv6              Force use of IP version 6
  /line              Enable telnet line mode
  /noecho            Disable local echo
  /quiet             Suppress login/logout messages
  /route:            Enable telnet source route mode
  /source-interface  Specify source interface
  /stream            Enable stream processing
  /terminal-type     Set terminal type
  /vrf               Select VPN routing/forwarding
instance
  <0-65535>          Port number
  bgp                Border Gateway Protocol (179)
  chargen            Character generator (19)
  cmd                Remote commands (rcmd, 514)
  daytime            Daytime (13)
  discard            Discard (9)
  domain             Domain Name Service (53)
  drip               Dynamic Routing Information
Protocol (3949)
  echo               Echo (7)
  exec               Exec (rsh, 512)
  finger             Finger (79)
  ftp                File Transfer Protocol (21)
  ftp-data           FTP data connections (20)
  gopher             Gopher (70)
  hostname           NIC hostname server (101)
  ident              Ident Protocol (113)
  irc                Internet Relay Chat (194)
  klogin             Kerberos login (543)
  kshell             Kerberos shell (544)
  login              Login (rlogin, 513)
  lpd                Printer service (515)
  nntp               Network News Transport Protocol
(119)
  pim-auto-rp        PIM Auto-RP (496)
  pop2               Post Office Protocol v2 (109)
  pop3               Post Office Protocol v3 (110)
  smtp               Simple Mail Transport Protocol
(25)
  sunrpc             Sun Remote Procedure Call (111)
  tacacs             TAC Access Control System (49)
  talk               Talk (517)
  telnet             Telnet (23)
  time               Time (37)
  uucp               Unix-to-Unix Copy Program (540)
  whois              Nicname (43)
  www                World Wide Web (HTTP, 80)
  <cr>
R1-PE1#telnet
192.168.1.2 /vrf ?
  WORD 
VPN Routing/forwarding instance name
R1-PE1#telnet 192.168.1.2 /vrf CUSTA
Trying
192.168.1.2 ... Open
CUSTA-SITE2#
R1-PE1#telnet 192.168.1.2 /vrf CUSTB
Trying
192.168.1.2 ... Open
CUSTB-SITE2#
CUSTA-SITE1#traceroute
192.168.1.99
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 172.16.1.1 48 msec 44 msec 16 msec
  2 10.12.0.2
[MPLS: Labels 205/510 Exp 0] 88 msec 72 msec 76 msec      // YOU CAN OPTIONALLY HIDE THE MPLS LABEL
AND TTL IN A TRACEROUTE OUTPUT
  3 10.23.0.3
[MPLS: Labels 309/510 Exp 0] 72 msec 76 msec 48 msec
  4 10.34.0.4
[MPLS: Labels 405/510 Exp 0] 72 msec 72 msec 60 msec
  5
192.168.1.1 [MPLS: Label 510 Exp 0] 92 msec 60 msec 44 msec
  6 192.168.1.2 52 msec 64 msec 64 msec
R1-PE1#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R1-PE1(config)#no
mpls ?
  discovery   
Configure LSP discovery
  export      
Configure periodic export of MPLS PAL table
  ip          
Dynamic MPLS forwarding for IP
  label       
Label properties
  ldp         
Label Distribution Protocol
  oam         
OAM configuration
  static      
MPLS static application
  traffic-eng 
Configure Traffic Engineering parameters
R1-PE1(config)#no
mpls ip ?
  default-route   Allow MPLS forwarding for ip default route
  propagate-ttl   Propagate IP TTL into the label stack
  ttl-expiration  Control MPLS TTL expiration behavior
  <cr>
R1-PE1(config)#no mpls ip propagate-ttl        // HIDES MPLS LABELS FOR CE TO CE ROUTER TRACEROUTE
R2-P1#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R2-P1(config)#no
mpls ip propagate-ttl
R3-P2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#no
mpls ip propagate-ttl
R4-P3#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R4-P3(config)#no
mpls ip propagate-ttl
R5-PE2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R5-PE2(config)#no
mpls ip propagate-ttl
CUSTA-SITE1#traceroute
192.168.1.99
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 172.16.1.1 16 msec 16 msec 16 msec
  2 192.168.1.1 [MPLS: Label 510 Exp 0] 88 msec
80 msec 80 msec     // CISCO DEVICE USES
UDP IN TRACEROUTE; HIDES P ROUTER/LABELS
  3 192.168.1.2 88 msec 100 msec 132 msec
R1-PE1#traceroute
vrf CUSTA 192.168.1.99
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 192.168.1.1 [MPLS: Label 510 Exp 0] 140
msec 88 msec 52 msec        // SEES
DESTINATION IP AS ONE HOP
  2 192.168.1.2 100 msec 96 msec 40 msec
R1-PE1#ping
?
  WORD     
Ping destination address or hostname
  atm      
ATM echo
  clns     
CLNS echo
  ethernet 
Ethernet echo
  ip       
IP echo
  ipv6     
IPv6 echo
  mpls      MPLS echo
  srb      
srb echo
  tag      
Tag encapsulated IP echo
  vrf      
Select VPN routing instance
  <cr>
R1-PE1#ping
mpls ?
  ipv4        
Target specified as an IPv4 address
  pseudowire  
Target VC specified as an IPv4 address and VC ID
  traffic-eng 
Target specified as TE tunnel interface
  <cr>
R1-PE1#ping
mpls ipv4 ?
  A.B.C.D 
{/nn || A.B.C.D}  Target FEC
address with mask
R1-PE1#ping mpls ipv4 10.5.5.5/32
Sending
5, 100-byte MPLS Echos to 10.5.5.5/32, 
     timeout is 2 seconds, send interval is 0
msec:
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' -
unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping,
'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported
tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature
termination of LSP, 
  'R' - transit router, 'I' - unknown upstream
index,
  'X' - unknown return code, 'x' - return code
0
Type
escape sequence to abort.
!!!!!
Success
rate is 100 percent (5/5), round-trip min/avg/max = 40/49/60 ms
R1-PE1#ping
mpls ipv4 10.5.5.5/32 ?      
  destination          Destination address or address range
  dsmap                Request dsmap from replying
router
  exp                  EXP bits in mpls header
  flags                Flag options
  force-explicit-null  force an explicit null label to be added
  interval             Send interval between requests in
msec
  output               Output options
  pad                  Pad TLV pattern
  repeat               Repeat count
  reply                Reply mode
  revision             Echo Packet TLV versioning
  size                 Packet size
  source               Source specified as an IP
address
  sweep                Sweep range of sizes
  timeout              Timeout in seconds
  ttl                  Time to live
  verbose              verbose output mode
  <cr>
R1-PE1#ping mpls ipv4 10.5.5.5/32 verbose
Sending
5, 100-byte MPLS Echos to 10.5.5.5/32, 
     timeout is 2 seconds, send interval is 0
msec:
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' -
unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping,
'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported
tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature
termination of LSP, 
  'R' - transit router, 'I' - unknown upstream
index,
  'X' - unknown return code, 'x' - return code
0
Type
escape sequence to abort.
!   
size 100, reply addr 10.45.0.5, return code 3      // ! INDICATES MPLS PING OK;  MPLS PING USES UDP PORT 3503; RETURN CODE 3
INDICATES THE EGRESS LSR (R5-PE2) IN LSP RESPONDED AN ECHO REPLY 
!    size 100, reply addr 10.45.0.5, return code
3
!    size 100, reply addr 10.45.0.5, return code
3
!    size 100, reply addr 10.45.0.5, return code
3
!    size 100, reply addr 10.45.0.5, return code
3
Success
rate is 100 percent (5/5), round-trip min/avg/max = 40/48/56 ms
R1-PE1#traceroute ?
  WORD      
Trace route to destination address or hostname
  appletalk 
AppleTalk Trace
  clns      
ISO CLNS Trace
  ethernet  
Ethernet Traceroute
  ip        
IP Trace
  ipv6      
IPv6 Trace
  ipx       
IPX Trace
  mpls      
MPLS LSP Trace
  vrf       
Select VPN routing instance
  <cr>
R1-PE1#traceroute
mpls ?
  ipv4        
Target specified as an IPv4 address
  multipath   
LSP Multipath Traceroute
  traffic-eng 
Target specified as TE tunnel interface
  <cr>
R1-PE1#traceroute
mpls ipv4 ?
  A.B.C.D 
{/nn || A.B.C.D}  Target FEC
address with mask
R1-PE1#traceroute mpls ipv4 10.5.5.5/32      // TO VERIFY MPLS LSP OR IF USING NATIVE
IP
Tracing
MPLS Label Switched Path to 10.5.5.5/32, timeout is 2 seconds
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' -
unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping,
'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported
tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature
termination of LSP, 
  'R' - transit router, 'I' - unknown upstream
index,
  'X' - unknown return code, 'x' - return code
0
Type
escape sequence to abort.
  0 10.12.0.1 MRU 1500 [Labels: 205 Exp: 0]
L 1
10.12.0.2 MRU 1500 [Labels: 309 Exp: 0] 40 ms
L 2
10.23.0.3 MRU 1500 [Labels: 405 Exp: 0] 48 ms
L 3
10.34.0.4 MRU 1504 [Labels: implicit-null
Exp: 0] 52 ms      // PHP
! 4
10.45.0.5 44 ms        // NATIVE IPv4
R1-PE1#traceroute
mpls ipv4 10.5.5.5/32 ?       
  destination          Destination address or address range
  exp                  EXP bits in mpls header
  flags                Flag options
  force-explicit-null  force an explicit null label to be added
  output               Output options
  reply                Reply mode
  revision             Echo Packet TLV versioning
  source               Source specified as an IP
address
  timeout              Timeout in seconds
  ttl                  Maximum time to live
  verbose              verbose output mode
  <cr>
R1-PE1#traceroute mpls ipv4 10.5.5.5/32 verbose
Tracing
MPLS Label Switched Path to 10.5.5.5/32, timeout is 2 seconds
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' -
unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping,
'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported
tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature
termination of LSP, 
  'R' - transit router, 'I' - unknown upstream
index,
  'X' - unknown return code, 'x' - return code
0
Type
escape sequence to abort.
  0 10.12.0.1 10.12.0.2 MRU 1500 [Labels: 205 Exp: 0]       // MAXIMUM RECEIVE UNIT (MRU)
L 1 10.12.0.2 10.23.0.3 MRU 1500 [Labels: 303
Exp: 0] 60 ms, ret code 8       // L INDICATES DOWNSTREAM ROUTER SENDS
AN ECHO REPLY; RETURN CODE 8 INDICATES THE PACKET WAS CORRECTLY LABELED BUT
IT'S NOT THE TARGET EGRESS LSR
L 2
10.23.0.3 10.34.0.4 MRU 1500 [Labels: 415 Exp: 0] 56 ms, ret code 8
L 3
10.34.0.4 10.45.0.5 MRU 1504 [Labels: implicit-null
Exp: 0] 52 ms, ret code 8 
! 4
10.45.0.5 60 ms, ret code 3      //  
RETURN CODE 3 INDICATES EGRESS LSR IN LSP
R3-P2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#no
mpls ip
R3-P2(config)#
*Dec 11 09:39:12.541: %LDP-5-NBRCHG: LDP Neighbor
10.2.2.2:0 (3) is DOWN (LDP unconfigured globally)
*Dec 11 09:39:12.545: %LDP-5-NBRCHG: LDP Neighbor
10.4.4.4:0 (4) is DOWN (LDP unconfigured globally)
R3-P2(config)#
*Dec 11 09:39:16.757: %MPLS_PACKET-4-NOLFDSB: MPLS
packet received on non MPLS enabled interface FastEthernet1/1 L3 type 0x8847
label {303 0 1 1}
R2-P1#
*Dec 11 09:39:11.097: %LDP-5-NBRCHG: LDP Neighbor
10.3.3.3:0 (1) is DOWN (TCP connection closed by peer)
R4-P3(config)#
*Dec 11 09:39:20.181: %LDP-5-NBRCHG: LDP Neighbor
10.3.3.3:0 (2) is DOWN (TCP connection closed by peer)
R1-PE1#traceroute
mpls ipv4 10.5.5.5/32
Tracing
MPLS Label Switched Path to 10.5.5.5/32, timeout is 2 seconds
Codes:
'!' - success, 'Q' - request not sent, '.' - timeout,
  'L' - labeled output interface, 'B' - unlabeled output interface, 
  'D' - DS Map mismatch, 'F' - no FEC mapping,
'f' - FEC mismatch,
  'M' - malformed request, 'm' - unsupported
tlvs, 'N' - no label entry, 
  'P' - no rx intf label prot, 'p' - premature
termination of LSP, 
  'R' - transit router, 'I' - unknown upstream
index,
  'X' - unknown return code, 'x' - return code
0
Type
escape sequence to abort.
  0 10.12.0.1 MRU 1500 [Labels: 205 Exp: 0]
B 1 10.12.0.2 MRU 1504 [No Label] 12 ms      // ISSUE OR A BREAK IN LSP
. 2 *
B 3
10.12.0.2 MRU 1504 [No Label] 28 ms
B 4
10.12.0.2 MRU 1504 [No Label] 36 ms
B 5
10.12.0.2 MRU 1504 [No Label] 40 ms
B 6
10.12.0.2 MRU 1504 [No Label] 24 ms
B 7
10.12.0.2 MRU 1504 [No Label] 44 ms
B 8
10.12.0.2 MRU 1504 [No Label] 20 ms
B 9
10.12.0.2 MRU 1504 [No Label] 40 ms
B 10
10.12.0.2 MRU 1504 [No Label] 44 ms
B 11
10.12.0.2 MRU 1504 [No Label] 40 ms
B 12
10.12.0.2 MRU 1504 [No Label] 40 ms
B 13
10.12.0.2 MRU 1504 [No Label] 36 ms
B 14
10.12.0.2 MRU 1504 [No Label] 40 ms
B 15
10.12.0.2 MRU 1504 [No Label] 40 ms
B 16
10.12.0.2 MRU 1504 [No Label] 40 ms
B 17
10.12.0.2 MRU 1504 [No Label] 36 ms
B 18
10.12.0.2 MRU 1504 [No Label] 44 ms
B 19
10.12.0.2 MRU 1504 [No Label] 40 ms
B 20
10.12.0.2 MRU 1504 [No Label] 36 ms
B 21
10.12.0.2 MRU 1504 [No Label] 40 ms
B 22
10.12.0.2 MRU 1504 [No Label] 36 ms
B 23
10.12.0.2 MRU 1504 [No Label] 40 ms
B 24
10.12.0.2 MRU 1504 [No Label] 40 ms
B 25
10.12.0.2 MRU 1504 [No Label] 36 ms
B 26
10.12.0.2 MRU 1504 [No Label] 72 ms
B 27
10.12.0.2 MRU 1504 [No Label] 56 ms
B 28
10.12.0.2 MRU 1504 [No Label] 40 ms
B 29
10.12.0.2 MRU 1504 [No Label] 40 ms
B 30
10.12.0.2 MRU 1504 [No Label] 40 ms
R1-PE1#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R1-PE1(config)#no
mpls ip propagate-ttl ?
  forwarded 
Propagate IP TTL for forwarded traffic
  local     
Propagate IP TTL for locally originated traffic
  <cr>
R1-PE1(config)#no mpls ip propagate-ttl forwarded        // HIDES MPLS LABELS FOR CE TO CE
ROUTER BUT NOT FOR MPLS VPN NETWORK: PE <> P <> PE
R2-P1#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R2-P1(config)#no
mpls ip propagate-ttl forwarded
R3-P2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R3-P2(config)#no
mpls ip propagate-ttl forwarded
R4-P3#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R4-P3(config)#no
mpls ip propagate-ttl forwarded
R5-PE2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R5-PE2(config)#no
mpls ip propagate-ttl forwarded
CUSTA-SITE1#traceroute
192.168.1.99 
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 172.16.1.1 52 msec 100 msec 24 msec
  2 192.168.1.1 [MPLS: Label 510 Exp 0] 92 msec
96 msec 44 msec
  3 192.168.1.2 92 msec 36 msec 116 msec
R1-PE1#traceroute
vrf CUSTA 192.168.1.99
Type
escape sequence to abort.
Tracing
the route to 192.168.1.99
VRF info:
(vrf in name/id, vrf out name/id)
  1 10.12.0.2 [MPLS: Labels 205/510 Exp 0] 116
msec 68 msec 68 msec
  2 10.23.0.3 [MPLS: Labels 309/510 Exp 0] 64
msec 60 msec 60 msec
  3 10.34.0.4 [MPLS: Labels 405/510 Exp 0] 76
msec 64 msec 40 msec
  4 192.168.1.2 84 msec 64 msec 44 msec
R1-PE1#show
mpls forwarding-table      // LFIB
ACCOUNTING PER LSP
Local      Outgoing  
Prefix           Bytes Label  
Outgoing   Next Hop    
Label      Label     
or Tunnel Id     Switched     
interface              
100        Pop Label  10.2.2.2/32      0             Fa0/0      10.12.0.2   
101        Pop Label  10.23.0.0/24     0             Fa0/0      10.12.0.2   
102        201        10.3.3.3/32      0             Fa0/0      10.12.0.2   
103        202        10.34.0.0/24     0             Fa0/0      10.12.0.2   
104        203        10.4.4.4/32      0             Fa0/0      10.12.0.2   
105        204        10.45.0.0/24     0             Fa0/0      10.12.0.2   
106        205        10.5.5.5/32      0             Fa0/0      10.12.0.2   
107        No Label   172.16.1.0/30[V] 38614         aggregate/CUSTA 
108        No Label   172.16.1.99/32[V]   \
                                       0             Fa1/0      172.16.1.2  
109        No Label   172.16.1.0/30[V] 15940         aggregate/CUSTB 
110        No Label   172.16.1.100/32[V]   \
                                       0             Fa1/1      172.16.1.2  
R5-PE2#configure
terminal
Enter
configuration commands, one per line. 
End with CNTL/Z.
R5-PE2(config)#access-list
?
  <1-99>            IP standard access list
  <100-199>         IP extended access list
  <1100-1199>       Extended 48-bit MAC address access list
  <1300-1999>       IP standard access list (expanded range)
  <200-299>         Protocol type-code access list
  <2000-2699>       IP extended access list (expanded range)
  <2700-2799>       MPLS access list
  <700-799>         48-bit MAC address access list
  compiled          Enable IP access-list compilation
  dynamic-extended  Extend the dynamic ACL absolute timer
  rate-limit        Simple rate-limit specific access list
R5-PE2(config)#access-list
2701 ?
  deny   
Specify packets to reject
  permit 
Specify packets to forward
  remark 
access list entry comment
R5-PE2(config)#access-list
2701 permit ?
  WORD 
mpls label table name or 'any' 
R5-PE2(config)#access-list
2701 permit any ?
  <0-1048575>  mpls label number 
  any         
any label number 
  <cr>
R5-PE2(config)#access-list
2701 permit any any ?
  <0-7> 
mpls exp value 
  any   
any exp value 
  <cr>
R5-PE2(config)#access-list
2701 permit any any any ?
  <0-1> 
mpls eos value 
  any   
any eos value 
  <cr>
R5-PE2(config)#access-list
2701 permit any any any any ?
  <cr>
R5-PE2(config)#access-list 2701 permit any any any any 
R5-PE2(config)#end
R5-PE2#
*Nov 30
23:03:16.043: %SYS-5-CONFIG_I: Configured from console by console
R5-PE2#debug
mpls ?
  access-list 
MPLS ACCESS
  events      
MPLS events
  ip          
Debug MPLS IP information
  l2transport 
Any transport over MPLS debug
  ldp         
Label Distribution Protocol
  lspv        
LSP Verification debug
  netflow     
MPLS Egress NetFlow Accounting
  packet      
mpls packet debug
  static      
MPLS Static labels
  traffic-eng 
MPLS Traffic Engineering debug
R5-PE2#debug
mpls packet ?
  <2700-2799>        MPLS label access list
  Async              Async interface
  Auto-Template      Auto-Template interface
  BVI                Bridge-Group Virtual Interface
  CDMA-Ix            CDMA Ix interface
  CTunnel            CTunnel interface
  Dialer             Dialer interface
  FastEthernet       FastEthernet IEEE 802.3
  GMPLS              MPLS interface
  LISP               Locator/ID Separation Protocol
Virtual Interface
  LongReachEthernet  Long-Reach Ethernet interface
  Loopback           Loopback interface
  MFR                Multilink Frame Relay bundle
interface
  Multilink          Multilink-group interface
  Null               Null interface
  Port-channel       Ethernet Channel of interfaces
  Tunnel             Tunnel interface
  Vif                PGM Multicast Host interface
  Virtual-PPP        Virtual PPP interface
  Virtual-Template   Virtual Template interface
  Virtual-TokenRing  Virtual TokenRing
  error              error conditions
  exception          exception conditions
  process            process packet information
  rate-limit         rate limit mpls packet debugs
  vmi                Virtual Multipoint Interface
  <cr>
R5-PE2#debug mpls packet 2701     // CAUTION IS NEEDED WHEN DEBUGGING MPLS;
LIMIT INFO WITH ACL
R5-PE2#debug
mpls events
MPLS events debugging is on
R5-PE2#
R5-PE2#debug
mpls packet 
Packet debugging is on
R4-P3#configure
terminal               
Enter
configuration commands, one per line. 
End with CNTL/Z.
R4-P3(config)#no
mpls ip
R4-P3(config)#
*Nov 30
23:08:13.911: %LDP-5-NBRCHG: LDP Neighbor 10.3.3.3:0 (1) is DOWN (LDP
unconfigured globally)
*Nov 30
23:08:13.915: %LDP-5-NBRCHG: LDP Neighbor 10.5.5.5:0 (2) is DOWN (LDP
unconfigured globally)
R4-P3(config)#
*Nov 30
23:08:14.715: %MPLS_PACKET-4-NOLFDSB: MPLS packet received on non MPLS enabled
interface FastEthernet1/0 L3 type 0x8847 label {409 6 1 253}
R4-P3(config)#
R4-P3(config)#mpls
ip   
R4-P3(config)#
*Nov 30
23:08:31.311: %LDP-5-NBRCHG: LDP Neighbor 10.5.5.5:0 (1) is UP
*Nov 30
23:08:31.379: %LDP-5-NBRCHG: LDP Neighbor 10.3.3.3:0 (2) is UP
R5-PE2#
*Nov 30
23:08:14.275: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (1) is DOWN (TCP
connection closed by peer)
R5-PE2#
R5-PE2#
*Nov 30
23:08:31.515: %LDP-5-NBRCHG: LDP Neighbor 10.4.4.4:0 (1) is UP
R5-PE2#
*Nov 30
23:08:41.611: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 253} - ipv4 data s:10.12.0.2 d:172.16.1.1 ttl:255 tos:C0
prot:1       // {LABEL EXP TTL}
*Nov 30
23:08:41.707: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 253} - ipv4 data
s:10.12.0.2 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:41.763: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 253} - ipv4 data
s:10.12.0.2 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:41.815: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 254} - ipv4 data
s:10.23.0.3 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:41.883: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 254} - ipv4 data
s:10.23.0.3 d:172.16.1.1 ttl:255 tos:C0 prot:1
R5-PE2#
*Nov 30
23:08:41.931: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 254} - ipv4 data
s:10.23.0.3 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:41.995: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 255} - ipv4 data
s:10.34.0.4 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:42.067: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 255} - ipv4 data
s:10.34.0.4 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:42.115: MPLS turbo: Fa0/0: rx: Len 190 Stack {510 6 255} - ipv4 data
s:10.34.0.4 d:172.16.1.1 ttl:255 tos:C0 prot:1
*Nov 30
23:08:42.175: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 1} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:4 tos:0 prot:11
*Nov 30
23:08:42.175: FIBfwd-proc: packet routed to FastEthernet1/0 192.168.1.2(1)
*Nov 30
23:08:42.179: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet1/0
nh 192.168.1.2 uhp 1 deag 0 ttlexp 1
*Nov 30
23:08:42.179: FIBfwd-proc: CUSTA:172.16.1.0/30 process level forwarding
*Nov 30
23:08:42.179: FIBfwd-proc: depth 0 first_idx 0
R5-PE2#
paths 1 long 0(0)
*Nov 30
23:08:42.179: FIBfwd-proc: try path 0 (of 1) v4-rcrsv-10.1.1.1 first short ext
6AA1435C(0)
*Nov 30
23:08:42.179: FIBfwd-proc: v4-rcrsv-10.1.1.1 valid short mbl
*Nov 30
23:08:42.179: FIBfwd-proc: label[0] 107 connid 0 link ILLEGAL
*Nov 30
23:08:42.179: FIBfwd-proc: ip_pak_table 1 ip_nh_table 0 if none nh 10.1.1.1
deag 0 chg_if 0 via fib 6A95F444 path type recursive
*Nov 30
23:08:42.179: FIBfwd-proc: depth 1 first_idx 0 paths 1 long 0(0)
*Nov 30
23:08:42.179: FIBfwd-proc: try path 0 (of 1) v4-anh-10.45.0.4-Fa0/0 first short
ext 67A72DBC(0)
*Nov 30
23:08:42.179: FIBfwd-proc: v4-anh-10.45.0.4-Fa0/0 valid short
*Nov 30
23:08:42.179: FIBfwd-proc: label[1] 412 connid 0 link TAG
*Nov 30
23:08:42.183: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 deag 0 chg_if 0 via fib 0 path type attached nexthop
*Nov 30
23:08:42.187: FIBfwd-proc: packet routed to FastEthernet0/0 10.45.0.4(1) with
labels 107 412
*Nov 30
23:08:42.191: FIBip
R5-PE2#v4-packet-proc:
packet routing succeeded
*Nov 30
23:08:42.191: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 uhp 0 deag 0 ttlexp 0
*Nov 30
23:08:42.195: FIBfwd-proc: sending link TAG ip_pak_table 1 ip_nh_table 65535 if
FastEthernet0/0 nh 10.45.0.4 uhp 0 deag 0 chgif 0 ttlexp 0 rec 0
*Nov 30
23:08:42.239: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 1} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:4 tos:0 prot:11
*Nov 30
23:08:42.243: FIBfwd-proc: packet routed to FastEthernet1/0 192.168.1.2(1)
*Nov 30
23:08:42.243: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet1/0
nh 192.168.1.2 uhp 1 deag 0 ttlexp 1
*Nov 30
23:08:42.243: FIBfwd-proc: CUSTA:172.16.1.0/30 process level forwarding
*Nov 30
23:08:42.243: FIBfwd-proc: depth 0 first_idx 0 paths 1 long 0(0)
*Nov 30
23:08:42.243: FIBfwd-proc: try path 0 (of 1) v4-rcrsv-10.1.1.1 first short ext
6AA1435C(0)
*Nov 30
23:08:42.243: FIBfwd-proc: v4-rcrsv-10.1.1.1 valid short mbl
*Nov 30
23:08:42.
R5-PE2#243:
FIBfwd-proc: label[0] 107 connid 0 link ILLEGAL
*Nov 30
23:08:42.243: FIBfwd-proc: ip_pak_table 1 ip_nh_table 0 if none nh 10.1.1.1
deag 0 chg_if 0 via fib 6A95F444 path type recursive
*Nov 30
23:08:42.243: FIBfwd-proc: depth 1 first_idx 0 paths 1 long 0(0)
*Nov 30
23:08:42.243: FIBfwd-proc: try path 0 (of 1) v4-anh-10.45.0.4-Fa0/0 first short
ext 67A72DBC(0)
*Nov 30
23:08:42.243: FIBfwd-proc: v4-anh-10.45.0.4-Fa0/0 valid short
*Nov 30
23:08:42.243: FIBfwd-proc: label[1] 412 connid 0 link TAG
*Nov 30
23:08:42.243: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 deag 0 chg_if 0 via fib 0 path type attached nexthop
*Nov 30
23:08:42.243: FIBfwd-proc: packet routed to FastEthernet0/0 10.45.0.4(1) with
labels 107 412
*Nov 30
23:08:42.243: FIBipv4-packet-proc: packet routing succeeded
*Nov 30
23:08:42.243: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 uhp 0 deag 0 ttlexp 0
*Nov 30
23:08:42.243: FIBfwd-proc: sending
R5-PE2#
link TAG ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0 nh 10.45.0.4 uhp 0
deag 0 chgif 0 ttlexp 0 rec 0
*Nov 30
23:08:42.283: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 1} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:4 tos:0 prot:11
*Nov 30
23:08:42.283: FIBfwd-proc: packet routed to FastEthernet1/0 192.168.1.2(1)
*Nov 30
23:08:42.283: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet1/0
nh 192.168.1.2 uhp 1 deag 0 ttlexp 1
*Nov 30
23:08:42.283: FIBfwd-proc: CUSTA:172.16.1.0/30 process level forwarding
*Nov 30
23:08:42.283: FIBfwd-proc: depth 0 first_idx 0 paths 1 long 0(0)
*Nov 30
23:08:42.283: FIBfwd-proc: try path 0 (of 1) v4-rcrsv-10.1.1.1 first short ext
6AA1435C(0)
*Nov 30
23:08:42.283: FIBfwd-proc: v4-rcrsv-10.1.1.1 valid short mbl
*Nov 30
23:08:42.283: FIBfwd-proc: label[0] 107 connid 0 link ILLEGAL
*Nov 30
23:08:42.283: FIBfwd-proc: ip_pak_table 1 ip_nh_table 0 if none nh 10.1.1.1
deag 0 chg_if 0 via fib 6A95F444 path type recursive
*Nov 30
23:08:42.283: FIBfwd-proc: depth 1 first_idx 0 paths 1 long 0(0)
*Nov 30
23:08:42.283: FIBfwd-proc: try path 0 (of 1) v4-anh-10.45.0.4-Fa0/0 first short
ext 67A72DBC(0)
*No
R5-PE2#v
30 23:08:42.283: FIBfwd-proc: v4-anh-10.45.0.4-Fa0/0 valid short
*Nov 30
23:08:42.283: FIBfwd-proc: label[1] 412 connid 0 link TAG
*Nov 30
23:08:42.283: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 deag 0 chg_if 0 via fib 0 path type attached nexthop
*Nov 30
23:08:42.283: FIBfwd-proc: packet routed to FastEthernet0/0 10.45.0.4(1) with
labels 107 412
*Nov 30
23:08:42.283: FIBipv4-packet-proc: packet routing succeeded
*Nov 30
23:08:42.283: FIBfwd-proc: ip_pak_table 1 ip_nh_table 65535 if FastEthernet0/0
nh 10.45.0.4 uhp 0 deag 0 ttlexp 0
*Nov 30
23:08:42.283: FIBfwd-proc: sending link TAG ip_pak_table 1 ip_nh_table 65535 if
FastEthernet0/0 nh 10.45.0.4 uhp 0 deag 0 chgif 0 ttlexp 0 rec 0
*Nov 30
23:08:42.323: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 2} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:5 tos:0 prot:11
*Nov 30
23:08:42.367: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 2} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:5 tos:0 prot:11
*Nov
R5-PE2#
30 23:08:42.419: MPLS turbo: Fa0/0: rx: Len 56 Stack {510 0 2} - ipv4 data
s:172.16.1.1 d:192.168.1.99 ttl:5 tos:0 prot:11
*Nov 30
23:08:44.587: tagcon: background scan: Start
*Nov 30
23:08:44.587: tagcon: background scan: End
R5-PE2#
R5-PE2#undebug all
All
possible debugging has been turned off
  









