TraceRoute是什么

介绍

TraceRoute是什么?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

TraceRoute命令利用ICMP协议定位您的计算机和目标计算机之间的所有路由器,其中TTL值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP呼叫报文的TTL值和观察该报文被抛弃的返回信息。

<强> TraceRoute原理

TraceRoute最简单的基本用法是:TraceRoute主机名

TraceRoute程序的设计是利用ICMP及IP报头的TTL(生存时间)栏位(场),首先,TraceRoute送出一个TTL是1的IP数据报(其实,每次送出的为3个40字节的包,包括源地址,目的地址和包发出的时间标签)到目的地,当路径上的第一个路由器(路由器)收到这个数据报时,它将TTL减1。此时,TTL变为0了,所以该路由器会将此数据报丢掉,并送回一个“ICMP时间超过”消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址),TraceRoute收到这个消息后,便知道这个路由器存在于这个路径上,接着TraceRoute再送出另一个TTL是2的数据报,发现第2个路由器……traceroute每次将送出的数据报的TTL加1来发现另一个路由器,这个重复的动作一直持续到某个数据报抵达目的地。当数据报到达目的地后,该主机并不会送回ICMP时间超过消息,因为它已是目的地了,那么traceroute如何得知目的地到达了呢?

traceroute在送出UDP数据报到目的地时,它所选择送达的端口号是一个一般应用程序都不会用的号码(30000以上),所以当此UDP数据报到达目的地后该主机会送回一个“ICMP端口访问”的消息,而当traceroute收到这个消息时,便知道目的地已经到达了,所以traceroute在服务器端也是没有所谓的守护进程程式。

traceroute提取发ICMP TTL到期消息设备的IP地址并作域名解析。每次,traceroute都打印出一系列数据,包括所经过的路由设备的域名及IP地址,三个包每次来回所花时间。

traceroute有一个固定的时间等待响应(ICMP TTL到期消息)。如果这个时间过了,它将打印出一系列的*号表明:在这个路径上,这个设备不能在给定的时间内发出ICMP TTL到期消息的响应。然后,traceroute给TTL记数器加1,继续进行。

网关

一般使用traceroute(或者是路径跟踪程序)是基于一台主机的,但是通常您只能知道以手边的主机为源地址到互联网络上任意一台在线的主机的路由连接质量以及数据传输效率的情况,而使用基于WEB的方式,只要一台主机安装了特定的CGI程序,用户就可以通过这台主机运行相关的程序,执行traceroute的功能。这台主机我们把它叫做traceroute网关.Traceroute网关可以帮助用户了解网络的物理与逻辑连接的拓扑情况以及数据传输的效率。如果这种网关足够多,我们就可以方便地了解到各主机之间连接的情况了。

功能

traceroute最早是由范·雅各布森在1988写出的小程序。当时主要是解决他自己碰到的一些网络的问题.Traceroute是一个正确理解IP网络并了解路由原理的重要工具。他们对负责网络工程技术与系统管理的站长是一个使用方便的程序。

对ISP而言,设立traceroute网关,将使网络服务提供商帮助用户建立并维持对服务商服务质量的信心。服务质量高的ISP可以通过设立traceroute网关,使用户了解其与网络连接以及数据传输的效率。当然,基础设施差,服务质量低的ISP是比较害怕提供这种服务。因为,这样用户可以使用这一工具了解服务商网络连接情况。

在一台主机安装了相关的traceroute的CGI程序后,您可以输入相应的目的主机的IP地址或者名字,就可以得到相关的数据。

关于traceroute是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

TraceRoute是什么