思科认证:路由器实用程序的Tracert命令' v7 u9 V& l+ `, v9 L+ }
为了方便广大考生更好的复习,帮考网综合整理提供了思科认证:路由器实用程序的Tracert命令,以供各位考生考试复习参考,希望对考生复习有所帮助。
/ }. u- G4 `* a i/ b7 U% x9 |0 l7 O& {* S2 }9 w/ g7 [
解读路由器实用程序Tracert命令
h3 ^1 Q3 f }, P% M 数据报(被捕获的)中,我们可以看到Tracert命令是如何使用IP生存时间(TTL)字段和ICMP错误消息,确定一个主机到网络上其他主机的路由。IP包头的TTL(Time to Live)字段,是由发送端初始设置的一个8bit字段,它指出数据包的有效时间,即生存周期。每个处理数据报的路由器都需要把TTL值减1或减去数据报在路由器中的停留秒数。7 m9 [% a' D+ B0 C! F9 O" N
由于大多数的路由器转发数据报的时延都小于1秒钟,因此TTL最终成为一个跳站的计数器,按照ICMP协议的有关规定,当路由器收到一份数据报,如果其TTL字段是0或1,则路由器丢弃该数据报,并给源主机发送一份ICMP“超时”信息。Tracert命令正是据此发现路由器、确定路由的。
2 F0 j+ `0 a9 v- d 下面我们来对数据包逐帧解析,体会Tracert命令的工作过程。
1 T$ a& e, \! X# c7 _7 b* ~2 j# w: S 帧1:主机A(10.4.152.16)向主机B(10.4.153.165)发送一个信息类型为8,代码为0的ECHO请求包。IP包头的TTL值为1,如图5所示。
, i5 G+ \+ e$ j! U+ Q& C2 L# F
4 C0 n$ ?# a7 A' ^4 G% h8 A 图5$ I! K7 A. x3 ~- L
帧2:由于目的主机在另一个网段,因此数据包被发往本地网关路由器A(10.4.152.254),路由器A收到主机A发来的的ECHO请求包后,返回了一个一个类型为11,代码为0的ICMP包。回复“超时”(Time to live exceeded in transit),如图6所示。
/ p6 Q+ l' j6 p( D1 Z9 f: @( u D
( h- A- `% I ?5 G4 _ U" F# l& R r 图60 h4 a/ r* [! ]+ R! H
从这两帧我们可以看到, 主机A首先发送TTL为1的回显数据包,路径上第一个路由器A(10.4.152.254)在转发数据包之前将数据包上的TTL递减 1,当数据包上的TTL减为0时,路由器丢弃该数据包,并将“ICMP Time Exceeded”(超时)的消息发回源主机A,由此,发现路径上的第一个路由器。
1 X3 T; |8 E1 h7 u# H; ?3 j 主机A为了获得往返延迟时间的信息,在这一跳发送了三个TTL都为1、长度、目标地址相同的报文(帧1、帧3、帧5),路由器A依次丢弃这三个报文,并向主机A发送“超时”消息(帧2、帧4、帧6)。 |