When a labeled packet is received with a TTL of 1, the receiving LSR drops the packet and sends an ICMP message “time exceeded” (type 11, code 0) to the originator of IP packet. This is the same behavior that a router would exhibit with an IP packet that had TTL an expiring TTL. However ICMP message may be sent back by two different methods:
ICMP message “time exceeded” is sent to the originator immediately by using LSR’s local ip routing table;
ICMP message “time exceeded” is forwarded along the LSP of original packet was forwarded. (Because intermediate LSR might not have local route to the source of original packet)
Using the ttl expiration pop
command, you can use the local IP route to forward ICMP response packets after the MPLS TTL
Using the undo ttl expiration pop
command, you can disable this function. That is, ICMP response packets are sent along LSPs.
By default, when packets with one label expires, ICMP message “time exceeded” is sent according to the local IP route.
As You remember, customer uses Global Routing Table (GRT) and standalone Route Reflector (RR) for exchanging public Internet routing information. In this case there is one label in packets and all intermediate P devices don’t have routing information about networks which are beyond PE devices. That means that all intermediate P-LSRs don’t know how to forward ICMP message “time exceeded” directly to source of original packet. P-LSRs have to forward ICMP message to the remote PE device which has in their local routing table information about ip address of originator (in our case, originator is 18.104.22.168).
According to documentation, by default local routing table is used by NE40E/NE80E (with VRP version V600R001C00SPC800) for forwarding ICMP message “time exceeded”. That is why in this case we must execute command “undo ttl expiration pop” on all P-LSRs in MPLS BB.