ping不通的几种可能原因(网络ping不通怎么办)
"上不了网啦!刚才还好好的,突然之间就上不了了。"
"开会开的好好的,突然之间就听不见了"
"不能上外网啦,这个日子怎么过啊~~~"
"怎么隔壁办公室的人就能上网,我们这边就不行呢!呜呜"
作为一名网络管理员,听到以上消息,您肯定立马紧张了吧。恨不得立马发现问题所在,解决用户问题。
冷静下来想一下,碰到以上故障,一定是先Ping网关,如果能Ping通,那么问题就发生在网关到网络运营商,这种情况就赶紧报故障给运营商吧;但如果Ping不通,问题就发生在企业内部网络了,怎么定位这类故障呢?小编这就来告诉你。
背景知识:
Ping的作用是测试主机/交换机到某一个IP地址的网络是否通畅。
Ping基于ICMP协议实现的。通过从源端向目的端发送ICMP回显请求(Echo Request)报文后,根据是否收到目的端的ICMP回显应答(Echo Reply)报文来判断目的端是否可达。即源端在一个有效时间内(等待回显应答报文超时时间之前)收到目的端返回的ICMP回显应答报文,则说明目的端可达。如果在有效时间内,没有收到应答报文,则说明目的端不可达。
对于可达的目的端,根据发送报文个数、接收到响应报文个数来判断链路的质量,根据Ping报文的往返时间来判断源端与目的端之间的"距离"。
故障定位技巧:
从PC到企业网关之间的设备如果不止一台,那么建议分段执行Ping命令,找出故障大概位置再进行详细定位。
故障定位流程:
1. 检查配置——如果是配置问题,修改配置后看故障是否恢复。
2. 检查链路——如果是链路问题,排查故障后看故障是否恢复。
3. 检查路由——如果没有到目的IP的路由,排查路由故障。
4. 检查ARP——直连链路,查看是否学习到ARP表项。没有学习到,要先排除ARP学习故障。
5. 检查报文收发情况——有很多种方式可以检查,包括:ICMP统计、IP层调试、CPCAR统计、流量统计、镜像。。。
6. 以上步骤如果仍不能解决问题,请保留故障定位中的设备信息,联系华为工程师或代理商处理。
故障定位步骤:
1. 检查配置
检查交换机上端口配置、VLAN配置、VLANIF接口配置、IP地址配置是否正确,首先排除配置问题;确认两端端口的端口类型,两端VLAN的封装方式是否一致,VLANIF接口下IP地址配置的网段是否存在问题。
2. 检查链路
检查物理链路:
1. 光纤或网线连接的端口需要和网络要求的部署一致。
2. 光纤所带的光模块波长参数需要一致,光模块建议使用华为认证光模块。
3. 如果是通过Eth-Trunk接口连接,两端设备上Eth-Trunk中加入的物理成员端口数量需要保持一致;若Eth-Trunk启用LACP协议,需要保证LACP协议状态稳定。
4. 检查两端设备之间是否有传输设备,两端的物理端口是否处于UP状态。
5. 确认Ping业务经过的物理端口是否存在CRC校验错误,且错误计数是否在不断增长。
检查物理端口是否存在阻塞现象。检查设备上是否运行了STP、RRPP或SMART LINK等二层协议,确认Ping业务经过的物理端口是否被阻塞。
3. 检查路由
检查设备上是否存在到Ping目的地址的路由。
如果和交换机连接的是终端设备,检查终端设备上是否配置了正确的网关地址。
如果和交换机连接的是交换机或路由设备,检查对端设备上是否有正确的回程路由。
参考命令:display ip routing-table
如果路由不正常,检查接口协议状态是否UP,设备上运行的路由协议是否正常,排查路由故障。
4. 检查ARP表项
检查直连地址的ARP是否学习正常。
相关命令:
display arp
display arp interface vlanif vlanif-id
如果ARP学习正确,查看MAC表项,确认MAC地址的出端口和ARP的物理出端口是否一致。
相关命令:
display mac-address mac-address
display mac-address mac-address vlan vlan-id
如果ARP学习不到,排查ARP故障,步骤如下:
1.检查设备上是否使能严格ARP学习,若配置将其去使能后观察能否正常学习ARP。
2.在不能互相学习ARP的两端设备的其中一端执行长Ping操作,命令行如下:
ping -c 100000 ip-address
也可视情况添加-t/-m等参数将Ping的速率适当调整。
3.长ping操作会不断触发本端设备发出ARP请求报文,可通过流量统计确认ARP请求报文是否从端口送出。
4.通过流量统计检查对端设备的物理端口是否收到了ARP请求报文。若收到ARP请求,查看是否能生成ARP表项,并是否能回应ARP-REPLY;若收到请求未生成表项,联系华为工程师处理。
5.同样可采用流量统计方法确认ARP-REPLY报文是否从对端设备物理口发出。若未发出,联系华为工程师处理。
6.检查本端设备是否收到ARP-REPLY报文,若物理端口上收到ARP-REPLY但没有上送CPU,联系华为工程师处理。
ARP请求和ARP回应报文的流量统计配置,示例如下:
[huawei] traffic classifier aa operator and //配置流分类
[
huawei-traffic-classifier-aa]if-match l2-protocol arp //匹配ARP报文
[
huawei-traffic-classifier-aa]if-match source-mac 1111-1111-1111 //匹配源MAC
[
huawei-traffic-classifier-aa]if-match destination-mac 2222-2222-2222 //匹配目的MAC
[
huawei-traffic-classifier-aa]if-match vlan-id 33 //匹配VLAN
[huawei-traffic-classifier-aa]quit
Tips:对应ARP请求报文,目的MAC需要匹配广播MAC(FFFF-FFFF-FFFF),源MAC匹配发送端设备的MAC;对于ARP回应报文,目的MAC匹配对端MAC,源MAC匹配本设备MAC。上面的数据仅是举例,实际故障定位中需要按照这个原则替换。
[huawei]traffic behavior bb //配置流行为
[
huawei-traffic-behavior-bb] statistic enable //使能流量统计功能
[huawei-traffic-behavior-bb] quit
[huawei]traffic policy pp // 配置流策略
[huawei-traffice-policy-pp]classifier aa behavior bb //关联流分类和流行为
[huawei-traffice-policy-pp]quit
[huawei]interface gigabitethernet 3/0/0
[
huawei-gigabitethernet3/0/0] traffic policy pp inbound //在接口的入方面应用流策略。对于ARP请求报文,应该是接口的出方向。
5. 检查报文收发情况
Ping不通问题或Ping有丢包问题的定位关键主要是确认报文丢在哪里了,可以通过如下几个方式进行确认。
ICMP统计
进行Ping操作时,通过命令display icmp statistics查看ICMP报文的收发情况,echo和echo reply报文收发是否一致,是否存在checksum错误统计计数。
reset ip statistics命令用来清除统计计数。
Output:echo 19 destination unreachable 0 source quench 0 redirects 0 echo reply 512 parameter problem 0 timestamp 0 information request 0 mask requests 0 mask replies 0 time exceeded 0 timestamp reply 0 Mping request 0 Mping reply 0
IP层调试开关
这一层调试开关需要定义ACL匹配Ping报文,即源IP、目的IP地址,进行Ping操作同时打开IP层调试开关,观察报文的收发情况。
配置命令如下:
# acl number 3333 rule 5 permit icmp source x.x.x.x 0 destination y.y.y.y 0 rule 10 permit icmp source y.y.y.y 0 destination x.x.x.x 0 # debugging ip packet acl 3333 verbose
下面举例说明:
如:ping 7.8.20.5
PING 7.8.20.5: 56 data bytes, press CTRL_C to break*0.55569503 L3FC-4 IP/7/debug_case:Sending, interface = Vlanif20, version = 4, headlen = 20, tos = 0,pktlen = 84, pktid = 35000, offset = 0, ttl = 255, protocol = 1,checksum = 64727, s = 7.8.20.4, d = 7.8.20.5prompt: Sending the packet from local at Vlanif20 45 00 00 54 88 b8 00 00 ff 01 fc d7 07 08 14 04 07 08 14 05 08 00 00 9e ab cf 00 01 03 4f ec 5e 81 00 c0 01 50 49 4e 00 00 00 ff 05 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27 Reply from 7.8.20.5: bytes=56 Sequence=1 ttl=255 time=2 ms*0.55569603 L3FC-4 IP/7/debug_case:Receiving, interface = Vlanif20, version = 4, headlen = 20, tos = 0,pktlen = 84, pktid = 44132, offset = 0, ttl = 255, protocol = 1,checksum = 55595, s = 7.8.20.5, d = 7.8.20.4prompt: Receiving IP packet from Vlanif20 45 00 00 54 ac 64 00 00 ff 01 d9 2b 07 08 14 05 07 08 14 04 00 00 0e 9d ab cf 00 01 03 4f ec 5e 81 00 c0 01 50 4e 47 00 00 00 00 02 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 22 23 24 25 26 27
CPCAR统计
查看CPCAR的统计情况,检查ICMP报文是否被car掉了。相关命令:
大S V100R002版本、小S V100R005版本:display cpu-defend icmp statistics all
大S V100R003及之后、小S V100R006及之后的版本:display cpu-defend statistics packet-type icmp all
主要关注Drop计数是否在增加。如果Drop计数在增加,说明存在CPCAR丢包,可以适当增加car值再进行Ping测试,看问题是否解决。最后建议恢复car值。
流量统计
配置流量统计,确认报文的收发情况。定义流分类时需要匹配到Ping的源IP和目的IP,其他配置同ARP报文的统计。
配置完成后,执行Ping命令,查看流量统计情况。相关命令:
display traffic policy statistics interface GigabitEthernet 0/0/1 inbound
display traffic policy statistics interface GigabitEthernet 0/0/1 outbound
如果outbound方向没有统计计数,说明报文没有发送出去;如果inbound方向没有统计计数,说明没有收到应答报文。
配置镜像查看报文收发情况
通过镜像来确认报文的收发情况。
如果端口上流量不大,可以直接用端口镜像;
如果端口上流量较大,可以使用流镜像。
通过对镜像报文进行分析,不仅可以确认报文的收发情况,同时可以对报文进行校验,包括:报文的VLAN是否正确、报文的目的MAC地址是否是设备系统MAC地址、报文IP头的checksum是否正确、ICMP的checksum是否正确。
一般情况,前四个步骤基本就可以解决Ping不通的问题了。第五步是对故障情况下报文收发情况的统计,对于后续需要华为工程师处理的故障可以作为参考。
Ping不通故障定位介绍就到这里,希望碰到Ping不通的时候,记得参考哈。