Tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据包访问目标所采取的路径。Tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。Tracert工作原理是通过向目标发送不同IP生存时间(TTL)值的“Internet控制消息协议(ICMP)”回应数据包,Tracert诊断程序确定到目标所采取的路由。
应用背景
随着大数据时代的到来,科技信息技术快速发展,计算机水平在不断提高,在社会各行各界领域被广泛应用,进而提高人们生活、工作水平。
参数介绍
-d指定不将地址解析为计算机名.
-hmaximum_hops指定搜索目标的最大跃点数.
-jhost-list与主机列表一起的松散源路由(仅适用于IPv4),指定沿host-list的稀疏源路由列表序进行转发。host-list是以空格隔开的多个路由器IP地址,最多9个。
-wtimeout等待每个回复的超时时间(以毫秒为单位).
-R跟踪往返行程路径(仅适用于IPv6).
-Ssrcaddr要使用的源地址(仅适用于IPv6).
-4强制使用IPv4.
-6强制使用IPv6.
target_name目标计算机的名称.
最简单的用法就是"tracerthostname",其中"hostname"是计算机名或想跟踪其路径的计算机的IP地址,tracert将返回他到达目的地的各种IP地址.
命令详解
该诊断实用程序将包含不同生存时间(TTL)值的Internet控制消息协议(ICMP)回显数据包发送到目标,以决定到达目标采用的路由。要在转发数据包上的TTL之前至少递减1,必需路径上的每个路由器,所以TTL是有效的跃点计数。数据包上的TTL到达0时,路由器应该将“ICMP已超时”的消息发送回源系统。Tracert先发送TTL为1的回显数据包,并在随后的每次发送过程将TTL递增1,直到目标响应或TTL达到最大值,从而确定路由。路由通过检查中级路由器发送回的“ICMP已超时”的消息来确定路由。不过,有些路由器悄悄地下传包含过期TTL值的数据包,而tracert看不到。
tracert[-d][-hmaximum_hops][-jcomputer-list][-wtimeout]target_name
使用tracert跟踪网络连接
Tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据报访问目标所采取的路径。Tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。
工作原理
通过向目标发送不同IP生存时间(TTL)值的“Internet控制消息协议(ICMP)”回应数据包,Tracert诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的TTL递减1。数据包上的TTL减为0时,路由器应该将“ICMP已超时”的消息发回源系统。
Tracert先发送TTL为1的回应数据包,并随后的每次发送过程将TTL递增1,直到目标响应或TTL达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP已超时”的消息确定路由。某些路由器不经询问直接丢弃TTL过期的数据包,这在Tracert实用程序中看不到。
Tracert命令按顺序打印出返回“ICMP已超时”消息的路径中的近端路由器接口列表。如果使用-d选项,则Tracert实用程序不在每个IP地址上查询DNS。
在下例中,数据包必须通过两个路由器(10.0.0.1和192.168.0.1)才能到达主机172.16.0.99。主机的默认网关是10.0.0.1,192.168.0.0网络上的路由器的IP地址是192.168.0.1。
C://>tracert-d172.16.0.99
Tracingrouteto172.16.0.99overamaximumof30hops
12s3s2s10.0.0.1
275ms83ms88ms192.168.0.1
373ms79ms93ms172.16.0.99
Tracecomplete.
解决问题
可以使用tracert命令确定数据包在网络上的停止位置。下例中,默认网关确定192.168.10.99主机没有有效路径。这可能是路由器配置的问题,或者是192.168.10.0网络不存在(错误的IP地址)。
C://>tracert192.168.10.99
Tracingrouteto192.168.10.99overamaximumof30hops
110.0.0.1reports:Destinationnetunreachable.
Tracecomplete.
Tracert实用程序对于解决大网络问题非常有用,此时可以采取几条路径到达同一个点。
Tracert命令行选项
Tracert命令支持多种选项,如下表所示。
tracert[-d][-hmaximum_hops][-jhost-list][-wtimeout]target_name
-d指定不将IP地址解析到主机名称。
-hmaximum_hops指定跃点数以跟踪到称为target_name的主机的路由。
-jhost-list指定Tracert实用程序数据包所采用路径中的路由器接口列表。
-wtimeout等待timeout为每次回复所指定的毫秒数。
target_name目标主机的名称或IP地址。
使用tracert命令跟踪路径
打开命令提示符,然后键入:
tracerthost_name
或者键入tracertip_address
其中host_name或ip_address分别是远程计算机的主机名或IP地址。
例如,要跟踪从该计算机到的连接路由,请在命令提示行键入:
tracert[url]
注意
要打开“命令提示符”,请单击“开始”,指向“程序”、“附件”,然后单击“命令提示符”。
tracert命令跟踪TCP/IP数据包从该计算机到其他远程计算机所采用的路径。tracert命令使用ICMP响应请求并答复消息(和ping命令类似),产生关于经过的每个路由器及每个跃点的往返时间(RTT)的命令行报告输出。
如果tracert失败,可以使用命令输出来帮助确定哪个中介路由器转发失败或耗时太多。
该文章由作者:【魏昆】发布,本站仅提供存储、如有版权、错误、违法等相关信息请联系,本站会在1个工作日内进行整改,谢谢!