首页 -> 网络技术 -> 技术前哨 -> 正文
通过Ping命令排除路由器故障

在路由器的故障分析中,Ping命令是一个常见而实用的网络管理工具,用这种工具可以测试端到端的连通性,即检查源端到目的端网络是否通畅。 Ping的原理很简单,就是从源端向目的端发出一定数量的网络包,然后从目的端返回这些包的响应,如果在一定的时间内源端收到响应,则程序返回从包发出到收到的时间间隔,根据时间间隔就可以统计网络的延迟。如果网络包的响应在一定时间间隔内没有收到,则程序认为包丢失,返回请求超时的结果。我们经常让 Ping一次发一定数量的包,然后检查收到相应的包的数量,则可统计出端到端网络的丢包率,而丢包率是检验网络质量的重要参数。

在路由器上Ping返回符号的含义如下表所示:

符号 描述

! 收到一个响应。

。  在等待时,网络服务器超时。

U 目标无法到达,受到错误的PDU.

Q 源消失(目标设备太忙)。

M 数据无法分割。

? 包类型未知。

& 报的有效期过了。

在路由器上无法Ping通一个地址的原因有很多种,譬如线路故障,对方路由器的接口没有起来,路由器的路由表中没有该地址的路由信息等等都会造成网络无法Ping通。

实例:

网络结构如(图1)示。

Router1#Ping 34.0.0.4

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:

.....

Success rate is 0 percent (0/5)

在Router1上无法Ping通Router4的接口,通过使用DEBUG命令来获得更多的信息,便于进一步的分析:

Router1#debug ip packet

IP packet debugging is on

Router1#Ping 34.0.0.4

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:

5d21h: IP: s=12.0.0.1 (local), d=34.0.0.4, Len 100, unroutable.

5d21h: IP: s=12.0.0.1 (local), d=34.0.0.4, Len 100, unroutable.

……

Success rate is 0 percent (0/5) 我们看到 “unroutable”的消息,表明在Router1的路由表中不存在该地址的路由信息,Router1不知道该地址向何处转发,现增加一条缺省路由到Router1中:

Router1#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

Router1(config)#ip route 0.0.0.0 0.0.0.0 Serial0/0

然后,再在Router1上使用Ping:

Router1#Ping 34.0.0.4

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:

U.U.U

Success rate is 0 percent (0/5)

6d03h: IP: s=12.0.0.1 (local), d=34.0.0.4 (Serial0/0), Len 100, sending

6d03h: ICMP type=8, code=0

6d03h: IP: s=12.0.0.2 (Serial0/0), d=12.0.0.1 (Serial0/0), Len 56, rcvd 3

6d03h: ICMP type=3, code=1

……

再看看在Router2上收到了什么信息:

Router2#

21:56:04: IP: s=12.0.0.1 (Serial1), d=34.0.0.4, Len 100, unroutable

21:56:04: ICMP type=8, code=0

21:56:04: IP: s=12.0.0.2 (local), d=12.0.0.1 (Serial1), Len 56, sending

21:56:04: ICMP type=3, code=1

……

从上面的信息可以看出Router1已经能正确地发送包到Router2,但好象Router2并不知道如何转发地址34.0.0.4,所以 Router2发送了“unreachable”的消息给Router1.因此分别给Router2和Router3加上动态路由协议RIP:

Router2#

router rip

network 12.0.0.0

Router2#

router rip

network 12.0.0.0

network 23.0.0.0

Router3#

router rip

network 23.0.0.0

network 34.0.0.0

然后,在Router1上Ping Router4的接口:

Router1#Ping 34.0.0.4

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:

5d21h: IP: s=12.0.0.1 (local), d=34.0.0.4 (Serial0/0), Len 100, sending.

5d21h: IP: s=12.0.0.1 (local), d=34.0.0.4 (Serial0/0), Len 100, sending.

……

Success rate is 0 percent (0/5)

现在情况看起来好点,Router1能发包到Router4,只是收不到任何从Router4返回的信息。看来Router4上也有问题: Router4#6d23h: IP: s=12.0.0.1 (Serial0/0), d=34.0.0.4 (Serial0/0), Len 100, rcvd 36d23h: IP: s=34.0.0.4 (local), d=12.0.0.1, Len 100, unroutable……

Router4收到了ICMP的包,但由于没有到12.0.0.1的路由信息,因此无法响应12.0.0.1所发过来的包。在Router4上增加一条缺省路由:

Router4(config)#ip route 0.0.0.0 0.0.0.0 Serial0/0

这样问题得到了解决: Router1#Ping 34.0.0.4Type escape sequence to abort.Sending 5, 100-byte ICMP Echos to 34.0.0.4, timeout is 2 seconds:!!!!!Success rate is 100 percent (5/5), round-trip min/avg/max = 32/35/36 ms

 PING专题文章列表

·Ping程序在TCP/IP中的应用

·Ping命令应用实例三则

·如何正确使用Windows的Ping命令

·如何使用ping和tracert命令检测丢包

·使用Ping命令细节点特别提醒

·ping的作用

·高效排除网络故障 从用好Ping命令开始

·网关无法Ping通故障及解决方法

·通过ping检测网络故障的典型次序

·通过Ping命令排除路由器故障

·网管应透过现象轻松解决Ping故障

·检测网络故障的利器!ping命令的使用

·启用IP安全策略防Ping

·IPSec安全策略 防Ping还是要慎用

·Ping命令幕后过程及其返回信息分析

·教你快速深入了解Ping

·什么是Ping不能告诉你的?

·Ping的工作过程及单向Ping通的原因

·Ping的源代码

·show,ping,trace and debug 命令介绍

·网络不通不用愁 Ping命令来帮忙

·完美解决Vista不能Ping问题

·Ping命令不能PING通的种种解惑

·四个Ping命令判断网络的故障

·使用PING判断TCP/IP网络故障

·浅谈IP安全策略:防范被Ping与封闭端口

·伪装IP地址的洪水Ping攻击

·不可忽视 彻底封杀Ping命令漏洞

文章搜索

覆盖全国各省会城市及海外城市的网速测试
→选择要测试的地区
→选择目标测试点
>> 测试点注册