tracert命令,追踪vpn的特点

在vpn中,tracert追踪的特点,在mpls BGP vpn中,tracert路径追踪的起始点,显示的路径信息

通过传统的 ip ping 和 traceroute 通无法感知数据包是走路由转发还是标签转发。
原因如下:
数据包经过 MPLS 网络,会打上 MPLS 标签,此时 MPLS 报文中也有 TTL 值,而 MPLS
对 TTL 的处理方式有两种,Uniform 和 Pipe。
1、在正常 IGP 场景:
如果是 Uniform 模式,在 LDP 正常的情况下,如果是 TTL 的传输模式是一致模式,那
么 IP 报文到了 PE 设备,IP 的 TTL 数值-1 然后拷贝给 MPL 的 TTL 字段,后续过程中,可
以显示每台设备的 IP 地址。
如果是 Pipe 模式,在 LDP 正常的情况下,如果 TTL 的传输模式是 pipe 模式,那么 IP
报文到达了 PE 设备,IP 的 TTL 数据-1 后并不会拷贝给 MPLS 的 TTL 字段,而是讲 MPLS
的 TTL 设置为默认的 255,后续的过程中,通过 MPLS 进行转发数据,那么结果只能跟踪
MPLS 域的 ingress 和 egress。
2、在 BGP 传递私网路由场景
如果是 Uniform 模式,那么 IP 的 TTL 数值-1 后会拷贝给 MPLS 的 TTL 字段,那么到了
P 设备后,因为 MPLS 的 TTL=0 将报文丢弃,P 设备没有私网的路由,那么无法将 TTL 超
时的报文发送会给源设备,那么源设备显示为***。
如果是 pipe 模式,那么 IP 的 TTL 数值-1 不会拷贝给 MPLS 的 TTL 字段,MPLS 的 TTL
使用默认的 255,那么就可以将 TTL=1 的数据通过隧道传递到最后 Egress。那么跟踪到的
设备 IP 在 MPLS 域中只有 ingress 和 egress,中间设备的地址被屏蔽了。
注意:BGP 传递私网路由的场景∶如果使用 tracert,那么 TTL 超时的报文不会沿着
LSP,可以通过命令:undo ttl expiration pop 让 TTL 超时的报文使用目的的 LDP 的 LSP 转发,
那么就可以显示 MPLS 域中设备的 IP 地址