![使用tracert命令发现路由环路 使用tracert命令发现路由环路_命令](http://www.net1980.com/s/cc_p_w_picpaths/cache_2541348055.jpg?t=1266651211)
如上图,三台路由器均配置静态路由,配置完成后,登录到RT1上ping主机192.4.0.2,不能ping通。
<RT1> ping -c 6 -t 5000 192.4.0.2
PING 192.4.0.2: 56 data bytes, press CTRL_C to break
Request time out
Request time out
Request time out
Request time out
Request time out
Request time out
<RT1> tracert 192.4.0.2
traceroute to 192.4.0.2(192.4.0.2) 30 hops max,40 bytes packet
1 192.1.0.1 7 ms 5 ms 5 ms
2 192.1.0.2 7 ms 6 ms 6 ms
??
29 192.1.0.1 25 ms 25 ms 16 ms
30 192.1.0.2 18 ms 17 ms 17 ms
原因分析:
1、检查RT1的配置,配置的是缺省静态路由,没有错误:
ip route-static 0.0.0.0 0.0.0.0 192.1.0.1
2、检查RT2的配置,发现配置的到192.4.0.0网络的静态路由如下:
ip route-static 192.4.0.0 255.255.0.0 192.1.0.2
下一跳配置的是192.1.0.2,而不是192.3.0.1。正是这一错误的配置导致了路由环路的产生。
处理过程:
修改RT2的配置:
[RT2] undo ip route-static 192.4.0.0 255.255.0.0 192.1.0.2
[RT2] ip route-static 192.4.0.0 255.255.0.0 192.3.0.1
建议和总结:
使用tracert命令,很容易发现路由环路等问题。
当路由器A认为路由器B知道到达目的地的路径,而路由器B认为路由器A知道目的地时,路由环路就发生了。使用ping命令只能知道接收端的超时错误,而tracert命令能够立即发现环路所在--如果tracert命令两次或者多次显示同样的接口。
当通过tracert命令发现路由环路后,需要分情况判断:
1、静态路由:基本可以肯定是手工配置的问题,如本案例。
2、OSPF协议:可能是地址聚合的问题。
3、多路由协议:可能是路由引入产生的问题。