TRACERT 命令的工作原理
TRACERT 诊断实用程序确定通过各种到目标 IP 生存时间 (TTL) 值的 Internet 控制消息协议 (ICMP) 回显数据包发送到的目标所使用的路由。沿路径的每个路由器,则需要至少 1 的数据包上的 TTL 递减转发,所以 TTL 是有效地跃点计数之前。数据包上的 TTL 到达 0 时,路由器应该将 ICMP 已超时消息发送回源计算机。TRACERT 确定通过发送第一个回显数据包的 TTL 数为 1,并将 TTL 递增 1 上的每个后续传输到目标的路由响应,或者已达到最大 TTL。通过检查中间路由器发回的 ICMP 已超时消息来确定路由。请注意某些路由器以无提示方式使用到期 Ttl 丢弃数据包,对于 TRACERT 不可见。TRACERT 打印出的路由器返回的 ICMP 已超时消息的路径的排序列表。如果使用-d 开关 (告诉 TRACERT,不必在每个 IP 地址上执行 DNS 查找),报告的近侧路由器接口的 IP 地址。在以下示例中,数据包必须经过两个路由器 (157.54.48.1 和 11.1.0.67),以让主机 11.1.0.1。在此示例中,默认网关是 157.54.48.1,IP 地址 11.1.0.0 路由器的网络是 11.1.0.67。C:\ > tracert 11.1.0.1 Tracing route to 11.1.0.1 over a maximum of 30 hops 1 2 ms 3 ms 2 ms 157.54.48.1 2 75 ms 83 ms 88 ms 11.1.0.67 3 73 ms 79 ms 93 ms 11.1.0.1 Trace complete.
使用 TRACERT 进行故障诊断
若要确定数据包在网络上停止的位置,可以使用 TRACERT 命令。在以下示例中,默认网关已确定没有 22.110.0.1 主机的有效路径。有可能是路由器配置问题或者 22.110.0.0 网络不存在 (不正确的 IP 地址)。C:\ > tracert 22.110.0.1 Tracing route to 22.110.0.1 over a maximum of 30 hops 1 157.54.48.1 reports: Destination net unreachable. Trace complete. TRACERT 可用于解决大型网络,可以采取几条路径到达同一个点,或涉及许多中间的系统 (路由器或桥)。
TRACERT 语法
有几个命令行开关,可以使用 TRACERT,但它们通常不需要的标准故障诊断。TRACERT 语法:tracert [-d] [-h maximum_hops] [-j 主机列表] [-w 超时] target_name参数: -d Specifies to not resolve addresses to host names. -h maximum_hops Specifies the maximum number of hops to search for target. -j host-list Specifies loose source route along the host-list. -w timeout Waits the number of milliseconds specified by timeout for each reply. target_name Name or IP address of the target host. 您可以使用的-j 选项强制传出数据报中,若要通过使用特定的路由器。要以这种方式使用的-j 选项,请使用 IP 源路由选项。例如,如果您键入tracertHostName,您找到所使用的路径,如下所示是:* <router1> * <router2> * <router3> * <router4> * <hostname> 若要查找 router4 的路径和到计算机后,请键入tracert-j <router4>router4<MyComputer>MyComputer. 跟踪到 router4 和回计算机的路径。在此示例中,该路径通常是以下:* <router1> * <router2> * <router3> * <router4> * <router3> * <router2> * <router1> * <mycomputer>