华三路由追踪命令 tracert 

此命令用来查看IPv4报文从源端传到目的端所经过的路径

tracert [ -a source-ip | -f first-ttl | -m max-ttl | -p port | -q packet-number | -t tos | { -topology topo-name | -vpn-instance vpn-instance-name [ -resolve-as { global | none | vpn } ] } | -w timeout ] * host

参数的含义如下:

-a source-ip:指定tracert报文的源IP地址。该地址必须是设备上已配置的合法IP地址。不指定该参数时,tracert报文的源IP地址是该报文出接口的主IP地址。

-f first-ttl:指定一个初始TTL,即第一个报文所允许的最大跳数。取值范围为1~255,且小于或等于最大TTL,缺省值为1。

-m max-ttl:指定一个最大TTL,即一个报文所允许的最大跳数。取值范围为1~255,且大于或等于初始TTL,缺省值为30。

-p port:指定目的端的UDP端口号,取值范围为1~65535,缺省值为33434。用户一般不需要更改此选项。当tracert的目的地址为远端LISP站点的EID地址时,目的端的UDP端口号必须大于或等于33434。

-q packet-number:指定每次发送的探测报文个数,取值范围为1~65535,缺省值为3。

-t tos:Tracert报文中ToS域的值。取值范围为0~255,缺省值为0。

-topology topo-name:指定目的端所属的拓扑。topo-name表示拓扑名,为1~31个字符的字符串,区分大小写;取值为base时表示公网拓扑。如果未指定本参数,则表示目的端位于公网中。

-vpn-instance vpn-instance-name:指定目的端所属的VPN实例。vpn-instance-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示目的端位于公网中。

-resolve-as:指定从哪个路由表中解析AS号。使用该参数,能够帮助用户了解Tracert路径中三层设备所属AS的编号。不指定该参数时,表示从公网路由表解析AS号。

global:表示从公网路由表解析AS号。指定该参数后,Tracert在显示公网三层设备的地址信息时,会同时显示该地址对应的AS号。如果公网路由表中没有记录该地址的AS号,则不显示。

none:表示不解析AS号。Tracert显示信息中不会携带AS号。

vpn:表示从当前VPN的路由表解析AS号。指定该参数后,Tracert在显示当前VPN中三层设备的地址信息时,会同时显示该地址对应的AS号。如果当前VPN路由表中没有记录该地址的AS号,则不显示。

-w timeout:指定探测报文的响应报文的超时时间,取值范围是1~65535,单位为毫秒,缺省值为5000。

host:目的端的IP地址或主机名。其中,主机名为1~253个字符的字符串,不区分大小写,字符串仅可包含字母、数字、“-”、“_”或“.”。

使用指导:

当用户使用ping命令测试发现网络出现故障后,可以用tracert命令分析出现故障的网络节点。

当目的地址为公网地址时,设备会自动从公网路由表解析AS号,如果存在则显示。当目的地址为私网地址时,路径上的三层设备的地址可能存在于公网路由表或私网路由表,这时需要用户执行两次tracert命令,分别指定global参数和vpn参数,然后根据网络拓扑确定源端到目的端实际途经的AS。

tracert命令的输出信息包括到达目的端所经过的所有三层设备的IP地址,如果某设备不能回应ICMP错误消息(可能因为路由不可达或者没有开启ICMP错误报文处理功能),则输出“* * *”。

在Tracert过程中,并且中间设备开启了ICMP不可达报文处理功能(参考ip unreachables enable命令),如果命令执行结果中显示以下字符,则表示目的设备已不可达,设备会停止发包,Tracert过程停止。

· !N:表示网络不可达。

· !H:表示目的主机不可达。

· !P:表示协议不可达(未知的协议号)。

· !F:表示需要进行分片但中间设备设置了不分片导致的不可达。

· !W:表示未知的目的主机不可达,即目的主机不存在。

· !Q:表示目的网络不可达的服务类型不可达,即不可用的服务类型(网络)。

· !T:表示目的主机不可达的服务类型不可达,即不可用的服务类型(主机)。

· !X:表示管理禁止通信不可达,即通信被过滤策略禁止。

· !V:表示违反主机优先级不可达,即报文优先级为src/dst/port不准许的优先级,则报文不被允许转发。

· !C:表示优先级终止生效不可达,即报文优先级被终止生效而不允许转发。

在执行命令过程中,键入<Ctrl+C>可终止此次tracert操作。

举例:

# 查看报文从源端到目的端(IP地址为1.1.2.2)所经过的路径。

<Sysname> tracert 1.1.2.2

traceroute to 1.1.2.2 (1.1.2.2), 30 hops at most, 40 bytes each packet, press CTRL_C to break

 1  1.1.1.2 (1.1.1.2) 673 ms 425 ms 30 ms

 2  1.1.2.2 (1.1.2.2) [AS 100] 580 ms 470 ms 80 ms

# 查看报文从源端到目的端(IP地址为1.1.3.2,属于vpn1)所经过的路径,并显示报文经过的私网中的三层设备的AS信息。

<Sysname> tracert –vpn-instance vpn1 –resolve-as vpn 1.1.3.2

traceroute to 1.1.3.2 (1.1.3.2), 30 hops at most, 40 bytes each packet, press CTRL_C to break

 1  1.1.1.2 (1.1.1.2) 673 ms 425 ms 30 ms

 2  1.1.2.2 (1.1.2.2) 580 ms 470 ms 80 ms

 3  1.1.3.2 (1.1.3.2) [AS 65535] 530 ms 472 ms 380 ms

# 查看报文从源端到目的端(IP地址为192.168.0.46)所经过的路径(途经MPLS网络)。

<Sysname> tracert 192.168.0.46

traceroute to 192.168.0.46 (192.168.0.46), 30 hops at most, 40 bytes each packet, press CTRL_C to break

 1  192.0.2.13 (192.0.2.13)  0.661 ms  0.618 ms  0.579 ms

 2  192.0.2.9 (192.0.2.9)  0.861 ms  0.718 ms  0.679 ms

    MPLS Label=100048 Exp=0 TTL=1 S=1

 3  192.0.2.5 (192.0.2.5)  0.822 ms  0.731 ms  0.708 ms

    MPLS Label=100016 Exp=0 TTL=1 S=1

 4  192.0.2.1 (192.0.2.1)  0.961 ms  8.676 ms  0.875 ms

表1-3 tracert命令显示信息描述表

华三路由追踪命令 tracert详解-编程知识网