tracert (traceroute 路由跟踪)
跟踪路由信息,使用此命令可以查出数据从本地机器传输到目标主机所经过的所有途径,这对我们了解网络布局和结构很有帮助。
格式:tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R ] [-S srcaddr] [-4] [-6]target_name
参数,还是简单介绍几个:
-d :不将地址解析成主机名,因此可以更快地显示路由器路径。
-j : 按照主机列表中的地址释放源路由
-w : 指定超时时间间隔,程序默认的时间单位是毫秒
其它参数同样在DOS命令下输入tracert或tracert /? 就会出现相应帮助(如下)。
最简单的用法就是"tracert hostname",其中"hostname"是计算机名或想跟踪其路径的计算机的IP地址,tracert将返回他到达目的地的各种IP地址.
原理:Traceroute从源主机发送一连串的数据报,数据报中封装的是无法交付的UDP用户数据报(使用了非法的端口号)。第一个数据报P1的生存时间TTL设置为1,。当P1到达路径上的第一个路由器R1时,路由器R1先收下它,,接着把TTL减1.由于TTL等于零了,R1就把P1丢弃了,并向源主机发送一个ICMP时间超过差错报告报文。源主机接着发送第二个数据报P2,并把TTL设置成2。P2先到达路由器R1,R1收下后把TTL减1再转发给路由器R2,R2收到P2时TTl为1,但减1后TTl变为零了。R2就丢弃P2,并向源主机发送一个ICMP时间超过差错报告报文。如此重复,知道源主机发送的数据报到达目的主机为止,这些路由器和最后的目的主机发来的ICMP报文给出了源主机想知道的路由信息。
下面看一下我用tracert命令测试的本地主机到www.csdn.net之间的路径信息:
感兴趣可以尝试一下其它参数的功能。