Tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据报访问目标所采取的路径。Tracert命令用IP生存时间(TTL)字段和ICMP错误消息,来确定从一个主机到网络上其他主机的路由。
命令格式:tracert [-d] [-h MaximumHops] [-j Hostlist] [-w Timeout] [TargetName]
-d:防止tracert试图将中间路由器的IP地址解析为它们的名称。这样可以加速显示tracert的结果。-h MaximumHops:在搜索目标(目的)路径中指定跃点最大数。默认值为30个跃点。
-j HostList:指定"回响请求"消息对于在主机列表中指定的中间目标集实用IP报头中的"松散源路由"选项。可以由一个或多个具体具有松散源路由的路由器分隔开连续的中间目的地。主机列表中的地址或名称的最大数为9.主机列表是一系列由空格分开的IP地址(用带点的十进制符号表示)。
-w Timeout:指定等待"ICMP已超时"或"回响答复"消息(对应于要接收的给定回响请求消息)的时间(以毫秒为单位)。如果超时时间内未收到消息,则显示一个星号*。默认的超时时间为400(4s)。
TargetName:指定目标,可以是IP地址或主机名。
tracert诊断工具通过向目标路径发送具有变化的"生存时间(TTL)"值的"ICMP回响请求"消息,来确定到达目标的路径。要求路径上每个路由器在转发数据包之前,至少将IP数据包中的TTL递减1.这样,TTL就成为最大链路计数器,数据包上的TTL到达0时,路由器应将"ICMP已超时"的消息发送回源计算机。
tracert发送TTL为1的第一条"回响请求"消息,并在随后的每次发送过程中将TTL递增到1,直到目标响应或跃点达到最大值,从而确定路径,在默认情况下,跃点的最大数量是30,可使用-h参数指定。
检查中间路由器返回的"ICMP已超时"消息与目标返回的"回显答复"消息可确定路由路径。但某些路由器不会为其TTL值已过期的数据包返回"已超时"消息,而且这些路由器对于tracert命令不可见。在这种情况下,将为该跃点显示一行星号(*)。
要跟踪路径为路径中的每个路由器、链路提供网络延迟、数据包丢失消息,请使用pathping命令。只有当"Internet协议(TCP/IP)"协议在"网络连接"中安装为网络适配器属性的组件时,该tracert命令才可用。
如果想要追踪到腾讯网(www.qq.com)的路由,证明局域网络和Internet连接是否正常,则应输入命令:
tracert www.qq.com,命令执行完成后的结果如图所示。从运动结果可知,局域网可以正常连接至Internet,实现对腾讯网的访问。同时,可以显示该链路中所有路由器设备的IP地址。
若想要追踪到清华大学(www.tsinghua.edu.cn)的路由,判断故障所在,应在命令提示符下输入"tracert www.tsinghua.edu.cn"命令,命令执行后的结果如图所示。