首页 > 编程知识 正文

traceroute命令实例(tracert原理及其实现)

时间:2023-05-04 01:27:59 阅读:74364 作者:2600

文章目录PINGTracerouteTraceroute的结构举“栗”

萍萍

ICMP的一个重要应用是将packetinternetgroper (packetinternetgroper )分组以测试两台主机之间的连接。 PING使用了ICMP回复请求和回复消息。 PING是APP应用层直接使用网络层ICMP的实例。 他没有通过传输层的TCP或UDP。

Traceroute ICMP的另一个非常有用的APP应用程序是traceroute (这是UNIX操作系统的名称),用于跟踪从源到端分组的路径。 在Windows上,此命令为跟踪。 简要说明这个程序的工作原理。

跟踪机制Traceroute将一组封装了无法传递的UDP用户数据报的IP数据报从源主机发送到目标主机。 第一个数据报P1的生存时间TTL被设置为1。 当P1到达路径上的第一个路由器R1时,路由器R1首先接收它,接着将TTL的值减1。 因为TTL为零,所以R1放弃P1并将ICMP 时间超过错误报告发送到源主机。

然后,源主机发送第二个数据报P2并将TTL设置为2。 在P2先到达并接收到路由器R1之后,减去TTL将其传送给路由器R2。 收到R2P2时TTL为1,但减去1后TTL为零。 R2丢弃P2,并在消息中将ICMP 时间超过错误报告发送到源主机。 就这样一直下去。 当最后一个数据报刚到达目标主机时,数据报的TTL为1。 主机不传输数据报,TTL值不减少1。 然而,由于封装了不能传递到IP数据报的传输层UDP用户数据报,目的地主机向源主机发送ICMP 终点不可达错误报告消息。

通过这种方式,源主机实现了自己的目的。 因为这些路由器和最后一个目标主机发出的ICMP消息提供了源主机想知道的路由信息——到达目标主机所通过的路由器的IP地址,以及到达其中每个路由器的往返时间。

“栗子”c:users 列出liyongjuntracertwww.Baidu.com,最多30个跳跃点,www.a.shifen.com [ 180.101.49.11 ] 跟踪到的根33601.5的3 ms3 ms3 ms 49.76.124.14 ms1 ms3 ms 58.215.68.2015 ms6 ms4 ms 58.215.152.1816 ms6 ms 58.213.94.106 6 ms 58.213.94.8687 ms 45m S11 ms 10.166.50.6 [ 10.166.50.6 ] 101010 m S11 ms 10.166 60 m S11 ms 10.165.1.17 [ 10.165.1.17 ] 135 ms5 ms6 ms 180.101.49.17图中每行显示三个时间的原因是源主机是否发送三个相同的IP数据报,以对应于每个TTL值显示*。 由于此路由器的防火墙阻止了ICMP消息,因此可能无法获得相关数据包的回复数据。 上图显示,从PC到百度服务器,您在途中经历了12台路由器,可以看到每个路由器的IP地址,最终到达目标IP 180.101.49.11。

还需要注意的是,原则上,IP数据报通过的路由器越多,时间也越长。 但是,从上面的例子可以看出,有时情况正好相反。 这是因为互联网的拥挤度随时都在变化,也很难预料。 因此,如果经过更多的路由器,反而可能需要时间。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。