文章 | 入侵攻击 | 安全防御 | 操作系统 | 网站建设 | 网络编程 | 路由交换 | 灾难恢复 | 新闻资讯 | 安全公告
下载 | 漏洞扫描 | 加密破解 | 入侵攻击 | 后门木马 | 溢出程序 | 综合工具 | 安全防护 | 原创发布 | 动画教程
论坛 | 黑客军火 | 配服务器 | 黑客情感 | 免费资源 | 美女贴图 | 灌水无罪 | 在线服务 | 会员照片 | 网站首页
 当前位置:主页 >> 技术文摘 >> 路由交换 >> 文章内容  
 

 
小命令大作用 通过Ping排除路由器故障

www.hx99.org 阅读: 时间:2007-07-09 整理:华西黑盟
------------------------------------------------------------------
 在路由器的故障分析中,Ping命令是一个常见而实用的管理工具,用这种工具可以测试端到端的连通性,即检查源端到目的端是否通畅。Ping的原理很简单,就是从源端向目的端发出一定数量的包,然后从目的端返回这些包的响应,如果在一定的时间内源端收到响应,则程序返回从包发出到收到的时间间隔,根据时间间隔就可以统计的延迟。如果包的响应在一定时间间隔内没有收到,则程序认为包丢失,返回请求超时的结果。我们经常让Ping一次发一定数量的包,然后检查收到相应的包的数量,则可统计出端到端的丢包率,而丢包率是检验质量的重要参数。
在路由器上Ping返回符号的含义如下表所示:
符号   描述
!   收到一个响应。
.    在等待时,器超时。
U    目标无法到达,受到错误的PDU。
Q    源消失(目标设备太忙)。
M    无法分割。
?    包类型未知。
&    报的有效期过了。
在路由器上无法Ping通一个地址的原因有很多种,譬如线路故障,对方路由器的接口没有起来,路由器的路由表中没有该地址的路由信息等等都会造成无法Ping通。

实例一:

结构如(图1)示。

=700)window.open('/news/UploadFiles_9994/200705/20070526103405173.jpg');"src="http://3800hk.com/news/UploadFiles_9994/200705/20070526103405173.jpg"onload="if(this.width>700)this.width=700;if(this.height>700)this.height=700;"border=0>
图1

Router1#Ping34.0.0.4
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto34.0.0.4,timeoutis2seconds:
.....
Successrateis0percent(0/5)
在Router1上无法Ping通Router4的接口,通过使用DEBUG命令来获得更多的信息,便于进一步的分析:
Router1#debugippacket
IPpacketdebuggingison
Router1#Ping34.0.0.4
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto34.0.0.4,timeoutis2seconds:
5d21h:IP:s=12.0.0.1(local),d=34.0.0.4,Len100,unroutable.
5d21h:IP:s=12.0.0.1(local),d=34.0.0.4,Len100,unroutable.
……
Successrateis0percent(0/5)
我们看到“unroutable”的消息,表明在Router1的路由表中不存在该地址的路由信息,Router1不知道该地址向何处转发,现增加一条缺省路由到Router1中:
Router1#configureterminal
Enterconfigurationcommands,oneperline.EndwithCNTL/Z.
Router1(config)#iproute0.0.0.00.0.0.0Serial0/0
然后,再在Router1上使用Ping:
Router1#Ping34.0.0.4
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto34.0.0.4,timeoutis2seconds:
U.U.U
Successrateis0percent(0/5)
6d03h:IP:s=12.0.0.1(local),d=34.0.0.4(Serial0/0),Len100,sending
6d03h:ICMPtype=8,code=0
6d03h:IP:s=12.0.0.2(Serial0/0),d=12.0.0.1(Serial0/0),Len56,rcvd3
6d03h:ICMPtype=3,code=1
……
再看看在Router2上收到了什么信息:
Router2#
21:56:04:IP:s=12.0.0.1(Serial1),d=34.0.0.4,Len100,unroutable
21:56:04:ICMPtype=8,code=0
21:56:04:IP:s=12.0.0.2(local),d=12.0.0.1(Serial1),Len56,sending
21:56:04:ICMPtype=3,code=1
……
从上面的信息可以看出Router1已经能正确地发送包到Router2,但好象Router2并不知道如何转发地址34.0.0.4,所以Router2发送了“unreachable”的消息给Router1。因此分别给Router2和Router3加上动态路由协议RIP:
Router2#
routerrip
network12.0.0.0
network23.0.0.0
Router3#
routerrip
network23.0.0.0
network34.0.0.0
然后,在Router1上PingRouter4的接口:
Router1#Ping34.0.0.4
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto34.0.0.4,timeoutis2seconds:
5d21h:IP:s=12.0.0.1(local),d=34.0.0.4(Serial0/0),Len100,sending.
5d21h:IP:s=12.0.0.1(local),d=34.0.0.4(Serial0/0),Len100,sending.
……
Successrateis0percent(0/5)
现在情况看起来好点,Router1能发包到Router4,只是收不到任何从Router4返回的信息。看来Router4上也有问题:
Router4#
6d23h:IP:s=12.0.0.1(Serial0/0),d=34.0.0.4(Serial0/0),Len100,rcvd3
6d23h:IP:s=34.0.0.4(local),d=12.0.0.1,Len100,unroutable
……
Router4收到了ICMP的包,但由于没有到12.0.0.1的路由信息,因此无法响应12.0.0.1所发过来的包。在Router4上增加一条缺省路由:
Router4(config)#iproute0.0.0.00.0.0.0Serial0/0
这样问题得到了解决:
Router1#Ping34.0.0.4
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto34.0.0.4,timeoutis2seconds:
!!!!!
Successrateis100percent(5/5),round-tripmin/avg/max=32/35/36ms


实例二:

结构如(图2)示:

=700)window.open('/news/UploadFiles_9994/200705/20070526103408469.jpg');"src="http://3800hk.com/news/UploadFiles_9994/200705/20070526103408469.jpg"onload="if(this.width>700)this.width=700;if(this.height>700)this.height=700;"border=0>
图2
Router1上增加了一个LAN的接口:
Router1(config)#interfacee0/1
Router1(config-if)#ipaddress
Router1(config-if)#ipaddress20.0.0.1255.255.255.0
结果LAN上的一台PC机能Ping通Router1,但却无法Ping通Router2,而在Router1上却能Ping通Router2。
Router1#Ping12.0.0.2
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto12.0.0.2,timeoutis2seconds:
!!!!!
Successrateis100percent(5/5),round-tripmin/avg/max=4/7/9ms
Router1#
5d23h:IP:s=12.0.0.1(local),d=12.0.0.2(Serial0/0),Len100,sending
5d23h:IP:s=12.0.0.2(Serial0/0),d=12.0.0.1(Serial0/0),Len100,rcvd3
在路由器上使用普通Ping时,其源IP地址为路由器上Ping包所出去的接口IP地址,在路由器上能通过使用扩展的Ping命令来更改缺省的源IP地址。现在在router1上通过使用扩展的Ping命令来模拟从LAN上发包到Router2:
Router1#Ping
Protocol[ip]:
TargetIPaddress:12.0.0.2
Repeatcount[5]:
Datagramsize[100]:
Timeoutinseconds[2]:
Extendedcommands[n]:y
Sourceaddressorinterface:20.0.0.1
Typeofservice[0]:
SetDFbitinIPheader?[no]:   

Validatereplydata?[no]:
Datapattern[0xABCD]:
Loose,Strict,Record,Timestamp,Verbose[none]:
Sweeprangeofsizes[n]:
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto12.0.0.2,timeoutis2seconds:
5d23h:IP:s=20.0.0.1(local),d=12.0.0.2(Serial0/0),Len100,sending.
……
Successrateis0percent(0/5)
从上面的信息看,当源IP地址为20.0.0.1的时候,Router1能发包到Router2,只是无法收到Router2的响应包。解决的办法很简单,只有在Router2上增加一条路由到20.0.0.0就可以了。Ping成功的基本原则就是被Ping设备也必须知道如何发送回包到发起Ping的源地址。从Router1能Ping通Router2是因为默认下是把包出口的接口的IP地址作为源地址。但由于原先Router2并不知道新的LAN,所以当源地址为新的LAN的时候,就不知道如何发送回包到新的LAN。
从以上两个实例中可以看出来,在Debug命令的帮助下,我们也能通过Ping命令来发现和解决中的一些比较复杂的故障,而并不只是把它简单的作为测试是否通的工具而已。特别是路由器中的扩展的Ping命令所具有的可以任意设定源IP地址的特性,在实际使用当中更是能给我们在判断故障等方面带来很多的方便。
   -------------------------------------------------------------------------------------------
  上一篇:无线LAN通信速度慢的原因以及解决方法
  下一篇:解决争端 让IPsec与NAT两技术和平共处
   -------------------------------------------------------------------------------------------
用户名:
Email:
评论内容:
 
  精品推荐
TCP/IP 你了解多少?
10M网线与100M网线和1000M
Windows 2003 + ISA 2006+
网吧瞬间掉线故障的解决方
小命令大作用 通过Ping排
网吧LINUX软路由,一步一
有效阻止ARP欺骗、Snarf等
什么是代理服务器以及代理
CMD下的网络安全配置全集
三层交换机比拼路由器
活动目录之用户配置文件
四种AD的安装和配置
解开无法上网谜题 浏览器
如何通过路由器来控制上网
网管员心得:局域网加速之
组网经验分享 端口映射的
疯狂的ARP 痛苦的路由器
网吧同时接两条光纤进局域
用网络流量监测工具让ARP
路由技术 路由器安全性与
大多由器默认密码(完美汇
路由器的基本命令操作实验
虚拟专用网中的隧道技术
由于路由导致的故障以及解
内网上划分VLAN的方法
关于我们 | 发展历程 | 在线投稿 | 核心监督 | 友情链接 | 网站地图 | 网站留言 | 联系我们
Copyright © 2004-2007 Www.Hx99.Net
版本:华西黑盟网站系统V5.0 Email:root#hx99.org
中国·西安·宝鸡 请使用IE6.0版本, 分辩率1024×768进行浏览
版权所有 任意抄袭 注意完整
陕ICP备06000444号