首页 -> 网络技术 -> 技术前哨 -> 正文
Ping命令不能PING通的种种解惑

网络工程师都会用到Ping,它是检查路由问题的有效办法。但也常听工程师抱怨:不可能,怎么会不通呢?

这样的困惑一般发生在自认为路由设置正确的时候。举几个笔者遇到的问题,欢迎大家补充。

最简单的三种情况:

1.太心急。即网线刚插到交换机上就想Ping通网关,忽略了生成树的收敛时间。当然,较新的交换机都支持快速生成树,或者有的管理员干脆把用户端口(access port)的生成树协议关掉,问题就解决了。

2.访问控制。不管中间跨越了多少跳,只要有节点(包括端节点)对ICMP进行了过滤,Ping不通是正常的。最常见的就是防火墙的行为。

3.某些路由器端口是不允许用户Ping的。

还遇到过这样的情形,更为隐蔽。

1.网络因设备间的时延太大,造成ICMPecho报文无法在缺省时间(2秒)内收到。时延的原因有若干,比如线路(卫星网时延上下星为540毫秒),路由器处理时延,或路由设计不合理造成迂回路径。使用扩展Ping,增加timed out时间,可Ping通的话就属路由时延太大问题。

2.引入NAT的场合会造成单向Ping通。NAT可以起到隐蔽内部地址的作用,当由内Ping外时,可以Ping通是因为NAT表的映射关系存在,当由外发起Ping内网主机时,就无从查找边界路由器的NAT表项了。

3.多路由负载均衡场合。比如Ping远端目的主机,成功的reply和timed out交错出现,结果发现在网关路由器上存在两条到目的网段的路由,两条路由权重相等,但经查一条路由存在问题。

4.IP地址分配不连续。地址规划出现问题象是在网络中埋了地雷,地址重叠或掩码划分不连续都可能在Ping时出现问题。比如一个极端情况,A、B两台主机,经过多跳相连,A能Ping通B的网关,而且B的网关设置正确,但A、B就是Ping不通。经查,在B的网卡上还设有第二个地址,并且这个地址与A所在的网段重叠。

5.指定源地址的扩展Ping.登陆到路由器上,Ping远程主机,当ICMP echorequest从串行广域网接口发出去的时候,路由器会指定某个IP地址作为源IP,这个IP地址可能不是此接口的IP或这个接口根本没有IP地址。而某个下游路由器可能并没有到这个IP网段的路由,导致不能Ping通。可以采用扩展Ping,指定好源IP地址。

当主机网关和中间路由的配置认为正确时,出现Ping问题也是很普遍的现象。此时应该忘掉"不可能"几个字,把Ping的扩展参数和反馈信息、traceroute、路由器debug、以及端口镜像和Sniffer等工具结合起来进行分析。

比如,当A、B两台主机经过多跳路由器相连时,二者网关设置正确,在A上可以Ping通B,但在B上不能Ping通A.可以通过在交换机做镜像,并用Sniffer抓包,来找出ICMP报文终止于何处,报文内容是什么,就可以发现ICMP报文中的源IP地址并非预期的那样,此时很容易想象出可能是路由器的NAT功能使然,这样就能够逐步地发现一些被忽视的问题。而Ping不通时的反馈信息是"destination_net_unreachable"还是"timedout"也是有区别的。

 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命令漏洞

文章搜索

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