tracert 命令详解命令如何发现路由环路

windows下使用Tracert命令查看路由跳转
下使用Tracert命令查看路由跳转
命令:Tracert domain ,
可以用来排除网络问题
作者 willvvv
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467142',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix' 上传我的文档
 下载
 收藏
毕业于医学院校,在医院工作,有相对丰富的护理经验
 下载此文档
正在努力加载中...
Tracert命令作为一个路由跟踪
下载积分:1500
内容提示:Tracert命令作为一个路由跟踪
文档格式:DOC|
浏览次数:3|
上传日期: 21:17:56|
文档星级:
该用户还上传了这些文档
Tracert命令作为一个路由跟踪
官方公共微信如何通过SNIFFER发现上层网络中的路由环路_学习、专业、势着、求进_天涯博客
心情喜愁哀乐,学习心得体会,兴趣爱好交流,成长生活日志。
今日访问:[$DayVisitCount$]
总访问量:22392
开博时间:
博客排名:暂无排名
(22)(14)(0)(0)(0)(2)(1)
(2)(3)(1)(1)(1)(3)(2)(2)(4)(1)(1)(1)
  如果你的网络中出现了路由环路,利用Sniffer捕获流量,Sniffer专家分析系统会有如下专家系统提示。  1.传输层的TCP Bouncing Frames或UDP Bouncing Frames  IP 地址相同的TCP或UDP数据包在网络中不断出现时,同时在抓获的数据包中有大量的TCP 重发数据包,Sniffer专家系统会出现这个提示告警。这种流量特征一般是由于路由错误引起的,发送到目标主机的同一个数据包在网络中不断出现,目标主机一般不可达,需要检查目标主机的路由设置是否正确。    2.网络层的Time-to-live expiring告警    当网络中的数据包的TTL值减到1时,Sniffer专家系统会产生该告警,IP包的TTL值减到1后将会被路由器丢掉,正常传输的一般IP包的TTL值在传输过程中是不会减到被路由器丢掉的地步的, 一般情况下,TTL值减到1时说明你本地的网络中可能存在路由问题,导致IP包在路由器间不断转发一直到TTL值降到1。不过有些包除外,主要是有些路由组播包(初始TTL值为1,不扩散)或有些P2P应用将初始TTL值设低避免跳数过多的数据传输。  出现该告警后应检查这些数据包的目的地址路由在路由器中的配置。      3. 网络层的Time-to-live Exceeded in Transmit告警    当路由器处理TTL值减为1的数据包时,会在丢掉该数据包的同时向发出该数据包的主机发送ICMP数据包,通知发送者该数据包在传输中被丢掉,出现这种情况一般是发送者发出的IP包的目的地址的路由有问题,同时路由问题不在本地,一般要检查发送ICMP数据包的路由器上的路由设置。这个告警使技术人员能够通过专家系统能够发现远程网络路由设置问题。    发现告警后可以用tracert来确认路由是否有问题。分类: |查看:1161|回复:9
下面的网络环境中,R1和R2之间相互指默认路由形成环路。
R1上有loopback 0:1.1.1.1去tracerote 2.2.2.2(并不存在的接口地址):如下两种现象:
R1#traceroute 2.2.2.2& && && && && && &
Type escape sequence to abort.
Tracing the route to 2.2.2.2
&&1 12.1.1.2 76 msec 68 msec 60 msec
&&2 12.1.1.1 72 msec 64 msec 60 msec //存在环路,但是数据包终止了
&&3&&*&&*&&*
&&4&&*&&*&&*
&&5&&*&&*&&*
R1#traceroute 2.2.2.2 source loopback 0
Type escape sequence to abort.
Tracing the route to 2.2.2.2
&&1 12.1.1.2 124 msec 60 msec 60 msec
&&2 12.1.1.1 64 msec 64 msec 60 msec
&&3 12.1.1.2 116 msec 152 msec 60 msec
&&4 12.1.1.1 76 msec 96 msec 108 msec
&&5 12.1.1.2 152 msec 132 msec 184 msec
&&6 12.1.1.1 152 msec 96 msec 180 msec
&&7 12.1.1.2 208 msec 212 msec 220 msec
&&8 12.1.1.1 100 msec 184 msec 40 msec
&&9 12.1.1.2 52 msec 100 msec 60 msec
10 12.1.1.1 48 msec 60 msec 52 msec
11 12.1.1.2 56 msec 60 msec 60 msec
12 12.1.1.1 60 msec 60 msec 68 msec
问题:为什么会出现这种现象呢?路由器是通过什么机制处理的?
初级工程师
你这个也算奇葩现象吗?
引用:原帖由 ssffzz1 于
15:27 发表
你这个也算奇葩现象吗? 麻烦您解答一下好吗?这种现象对于我这个初学者难以理解,帮忙解答一下小弟的疑惑吧!谢谢
晕,路由表啊
这个问题应该和fib表有关系
首先你r1用环回1.1.1.1 发到r2
因为r2上没有2.2.2.2 的路由所以走默认又扔给r1
按理说路由到这里就该丢包了
但是路由器在发包时先查的是fib 所以r1会根据fib表再把包扔回r2
你在r1上sh ip cef 2.2.2.2 你会发现下一跳是默认路由的出接口
你在r1上关cef就不会有环了.
也可以写一条指向null接口的路由来解决这个问题
本帖最后由 kt400a 于
14:49 编辑
路由写的很奇葩
中级工程师
tracertroute 这个命令再WINDOWS与CISCO平台的原理稍微有点区别,windows用ICMP作为探测报文,CISCO用UDP作探测报文。traceroute显示的结果主要依靠ICMP报文采集。ICMP报文其中利用(type 11 与type 3 code 3)这2种报文的结果采集信息。type 11 TTL 超时&&type 3 目标不可达 code 3 目标端口不可达。
当cisco 路由器发送 UDP 报文进行探测路径时首先发送3个TTL值为1的UDP报文,发给他的邻居路由器,当收到TYPE11 或者TYPE 3 CODE3的ICMP报文时,就输出该报文的源IP地址,然再将TTL值改为2,依次类推。直到探测路由器收到type 3 code3 的报文或者再将TTL增加到某个值后连续发送了3个探测报文后还没有收到回复,就结束探测。根据这个理论就可以知道为什么你上面2个结果了。
1 第一种输出结果是因为 当探测路由器发送给他的邻居后,R2回复了一个TYPE11的ICMP的报文,所以探测路由器将TTL值改成2在次发送给他的邻居,邻居收到后,发现报文的源IP与该报文的目标下一跳再同一网段中,所以发送了一个ICMP重定向的报文type值为5,这个类型不属于tracertroute的采集类型所以没有显示输出。探测路由器不停的增大TTL,他的邻居也不停的输出TYPE为5的报文,所以看到的结果就是全部都是*。
2 第二种输出结果是因为探测路由器发送给他的邻居后R2不停的再给他回复TYPE11的ICMP报文所以你会看到 报文在R1和R2之间传递。
中级工程师
引用:原帖由 kt400a 于
11:52 发表
这个问题应该和fib表有关系
首先你r1用环回1.1.1.1 发到r2
因为r2上没有2.2.2.2 的路由所以走默认又扔给r1
按理说路由到这里就该丢包了
但是路由器在发包时先查的是fib 所以r1会根据fib表再把包扔回r2
你在r1上sh ip ... 这个问题是ICMP重定向引起的,建议你仔细研究下tracertroute这个命令原理
初级工程师
算了,不骂人了。太过份。
你们可以把icmp重定向关了试试,是不是还是这个现象。或者把cef关了试试。
本帖最后由 ssffzz1 于
19:03 编辑
*Oct&&3 14:17:48.671: ICMP: bogus redirect from 12.1.1.2 - for 2.2.2.2 use gw 12.1.1.1
*Oct&&3 14:17:48.671:& && & gateway address is one of our addresses
这个是debug 信息。 你在r1上开&&debug ip icmp 看一下 。
不带源的话,r2会给r1 重定向信息,说,你到2.2.2.2 的包不要发给我了,走12.1.1.1 这个地址更近,你走那个地址吧。 而r1 看见这个地址其实就是自己的接口地址,也就是说,自己比r2 还靠近 2.2.2.2 这个地址,除了r2 外,自己也没有其他的出口了啊 。它迷茫啦。
而带源的话,r2收到了一个包源是 1.1.1.1 ,下一跳是12.1.1.1 ,不是同一个网段,也就不存在重定向的问题。
本帖最后由 xiqiuxue 于
14:24 编辑dos里执行tracert命令只有一跳的原因及解决方法
字体:[ ] 类型:转载 时间:
一直以来,我在家电脑DOS里执行Tracert命令时都只看到只有一跳的返回结果,令我非常不解。我原以为是电信运营商那边的问题,所以也就一直没去追究是什么真正的原因
一直以来,我在家电脑DOS里执行Tracert命令时都只看到只有一跳的返回结果,令我非常不解。我原以为是电信运营商那边的问题,所以也就一直没去追究是什么真正的原因。
C:\Documents and Settings\Administrator&tracert Tracing route to www. [220.181.111.148]over a maximum of 30 hops:& 1&&&& 45 ms&&& 46ms&&& 46ms& 220.181.111.148Trace complete.
&&&&& 问题出在路由器本身不对tracert数据包进行解析
&&&&& 我今天无意中看到一篇文章,说的正是这个问题,看了文章后才得知原来是路由器的问题。我之前使用的路由器是TP-LINK TL-R402M,通过TP-LINK技术支持人员给网友的邮件内容了解到,TL-R402M路由器本身不对tracert数据包进行解析,所以,中间的跳数都看不到。
&&&&& 我上两个月已经把TL-R402M换成了无线路由器,型号是TP-LINK TL-WR841N。
&&&&& 我再tracert看看,竟然可以看到tracert过程了。
C:\Documents and Settings\Administrator&tracert Tracing route to www. [220.181.111.148]over a maximum of 30 hops:& 1&&&& 6 ms&&&& 6 ms&&&& 5 ms& 14.147.84.1& 2&&&& 6 ms&&&& 5 ms&&&& 5 ms& 14.147.84.1& 3&&&& 9 ms&&&& 8 ms&&&& 7 ms& 193.114.62.58.broad.gz.gd..cn&[58.62.114.193]& 4&&&& 6 ms&&&& 6 ms&&&& 6 ms& 183.56.30.189& 5&&&& 9 ms&&& 11 ms&&& 11 ms& 61.144.3.158& 6&&& 48 ms&&& 47 ms&&& 47 ms& 202.97.80.37& 7&&& 47 ms&&& 51 ms&&& 46 ms& 220.181.16.62& 8&&& 50 ms&&& 49 ms&&& 49 ms& 220.181.16.158& 9&&& 54 ms&&& 48 ms&&& 47 ms& 220.181.17.150&10&&&& *&&&&&&& *&&&&&&& *&&&& Request timed out.&11&&& 47 ms&&& 48 ms&&& 48 ms& 220.181.111.148Trace complete.
&&&&&& 我进入路由器的管理后台,发现路由器的“诊断工具”里竟然自带了ping和tracert检测工具。
&&&&& 利用网上在线tracert工具诊断
&&&&& 如果你的路由器Tracert还是只有一跳,而你也想使用Tracert的话,那么可以通过ADSL直接拨号上网的方式,这样就可以看到Tracert数据包了,不过这样来回切换需要拔插网线,比较麻烦,估计很多人都不喜欢这样操作。
&&&&& 其实现在网上出现了不少在线tracert工具,例如卡卡网的在线tracert工具,我们可以利用它们来帮我们诊断,非常方便。
&&&&& 小知识:
&&&&& tracert可以解决什么问题?
&&&&& 网站站长常常用它来检测IP的线路问题,用于确定 IP 数据报访问目标所采取的路径。
&&&&& 可以使用tracert命令确定数据包在网络上的停止位置。下例中,默认网关确定192.168.10.99 主机没有有效路径。这可能是路由器配置的问题,或者是192.168.10.0 网络不存在(错误的 IP 地址)。
C:\&tracert 192.168.10.99Tracing route to 192.168.10.99 over a maximum of 30 hops1 10.0.0.1 reports:Destination net unreachable.Trace complete.
&&&&& Tracert 命令行选项
&&&&& Tracert 命令支持多种选项,如下表所示。
&&&&& tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] target_name选项 描述 &-d &指定不将 IP 地址解析到主机名称。 &-h maximum_hops &指定跃点数以跟踪到称为 target_name 的主机的路由。 &-j host-list &指定 Tracert 实用程序数据包所采用路径中的路由器接口列表。 &-w timeout &等待 timeout 为每次回复所指定的毫秒数。 &target_name &目标主机的名称或 IP 地址。
&&&&& 当我们不能通过网络访问目的设备时,网络管理员就需要判断是哪里出了问题。问题不仅仅会出现在最终目的设备,也可能出现在转发数据包的中间路由器。
&&&&& 探测一个数据包从源点到目的地经过了哪些中转路由器,通过tracert基于记录路由选项的路由探测是一个非常不错的方法。
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具

我要回帖

更多关于 tracert 命令详解 的文章

 

随机推荐