Traceroute命令学习理解

时间:2025-04-20

Traceroute

Tarcerout程序

作用

可以让我们看到IP数据报从一台主机传到另一台主机所经过的路由。而且它还可以让我们使用IP源路由选项

为什么不是使用IP首部中的IP记录路由选项而另外开发一个应用程序

1. 并不是所有的路由器都支持记录路由选项,因此该选项在某些路径上不能使用而Traceroute程序不需要中间路由器具备任何特殊的或不可选的功能。

2. 记录路由一般是单向的选项,如果发送端设置了该选项,那么接收端不得不从收到的IP首部中提取所有的信息,然后全部返回给客户端。而Traceroute程序只需要目的端运行一个UDP模块——其他不需要任何特殊的服务器应用程序。

3. 最重要的原因是,IP首部中留给选项的空间有限,不能存放当前大多数的路径。Traceroute程序使用ICMP报文中IP首部中的TTL字段。TTL字段是由发送端初始设置一个8bit的字段。发送ICMP回显应答时经常把TTL设为最大值255。

TTL的概念及作用

1.它是指数据报的生存时间,每个处理数据报的路由器都需要把TTL的值减去数据报在路由器中停留的秒数,由于大多数的路由器转发数据报的时延都小于1秒,所以现在大多数厂商在设置路由器的时候都把经过的数据报的TTL值减1——————————成为一个跳站的计数器。

2.TTL字段的目的是防止数据报在选路时无休止地在网络中流动————既防止路由环路

3.当TTL字段是0或1的时候,则路由器不转发该数据报,而是将该包丢弃,并给信源机发一份ICMP“超时”信息。Traceroute就是利用了包含这份ICMP信息的IP报文,因为里面有发送该信息的路由器的IP地址。

4.接收到这种数据报的目的主机可以将它交给应用程序,这是因为不需要转发该数据报。但是在通常情况下,系统不应该接收TTL字段为0的数据报。

Traceroute

Traceroute的工作原理

1.Traceroute程序发送一份UDP数据报给目的主机,但它选择了一个不可能的值作为UDP端口号(大于30000),该UDP数据报中的TTL字段为1。

2.处理这份数据报的第一个路由器将TTL值减1,丢弃该数据报,并发回一份超时ICMP报文。这样就得到了该路径第一个路由器的地址。

3.然后,Tarceroute程序发送一份TTL值为2的数据报,这样就得到了该路径第二个路由器的地址。

4.继续该过程直到数据报到达目的主机。

5.目的主机接收到该数据报后,将使它的UDP模块产生一份“端口不可达”错误的ICMP报文。

Traceroute程序所要做的就是区分接收到的ICMP报文是超时还是端口不可达,以判断什么时候结束。

运行机制

1. 当使用Traceroute程序时,会发出40字节的UDP数据报,它包括20字节IP首部,8字节的UDP首部和12字节的用户数据(用户数据包含每发送一个数据报就加1的序列号,送出TTL的副本以及发送数据报的时间)。

2. Traceroute程序会对每一个TTL值发送3个数据报,每接收一份ICMP报文,就计算并打印出往返时间,如果5秒内仍未收到3份数据报的任意一份响应,则打印一个星号。

3. 对于返回来的ICMP回显报文,Traceroute程序要判断它是传送超时报文还是端口不可达报文,以判定有没有到达目的地。

IP源站路由选项

是IP首部选项(operating)中的其中之一,源站选项的思想就是由发送者指定路由。

可以采用以下两种形式。

宽松的源站选项

发送端指明一个数据报经过的IP地址清单,但是数据报在清单上指明的任意两个地址之间可以通过其他的路由器。

严格的的源路由选项

发送端指明IP数据报所必须采用的正确路径,如果一个路由器发现源路由所指定的下一个路由器不在其直接连接的网络上,那么它就返回一个“源站路由

Traceroute

失败”的ICMP错误保文。

ICMP超时报文

0 7 8

15 16

类型(11 代码(0~1) 检验和

未用(必须为0)

IP首部(包括选项)+原始IP数据中数据的前8字节

传送超时报文是在ICMP的TTL值等于0时产生的,其code字段为0。另外还有一种与本节无关的超时报文,它是主机在组装分片时发生超时产生的,这时,它将发送一份“组装报文超时”的ICMP数据报,这种差错报文将code字段置1

Traceroute程序的注意事项

1.

2. 不能保证现在的路由也是将来所要采用的路由,甚至两份连续的IP数据报都可能采用不同的路由。 不能保证ICMP报文的路由与traceroute程序发送的UDP数据报采用

同一路由。这表明所打印出来的往返时间可能并不能真正体现数据报

发出和返回的时间差(如果UDP数据报从信源到路由器的时间是一

秒,而ICMP报文用另一条路由返回信源用了3秒钟,则打印出来的

往返时间是4秒)

返回的ICMP报文中的信源IP地址是UDP数据报到达路由器接口的

IP地址。而IP路由选项记录的IP地址是接口的IP地址。 3.

…… 此处隐藏:74字,全部文档内容请下载后查看。喜欢就下载吧 ……
Traceroute命令学习理解.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219