Ping
是我们网络工程师排除设备访问故障的常见方法
但是也常常听我们同学在群里
抱怨:咋又不通呢?
所以今天有空就整理了一下
网络Ping不通的一些常见故障和处理方法
网络故障排除工具是每个网络工程师的必需品。为了提升我们的工作效率,不浪费时间,工具的重要性显而易见特别是每当添加新的设备或网络发生变更时,新的问题就会出现,而且很难快速确定问题出在哪里。每一位网络工程师或从事网相关的人员,都了解几款工具,能让快速定位网络故障。
▲长按二维码 加小助理好友
获取【网络排障工具】下载
更多排障方法可以预约今晚的直播间
▲预约
我们继续今天的话题
Ping是排除设备访问故障的常见方法。
它使用Internet控制消息协议ICMP确定以下内容:
远程设备是否处于可访问状态。
访问远程设备时是否丢失报文。
本端与远程设备之间通信的往返延迟。
Ping命令格式
Ping命令的参数非常的丰富,用户可以依据检测目的、网络类型、当前网络状况等因素选择不同的参数。
ping [ ip ] [ -a source-ip-address | -c count | -d | { -f | ignore-mtu } | -h ttl-value | -nexthop nexthop-ip-address | -i interface-type interface-number | -m time | -n | -name | -p pattern | -q | -r | { -s packetsize | -range [ min min-size | max max-size | step step-size ] * } | -system-time | -t timeout | -tos tos-value | -v | -vpn-instance vpn-instance-name ] * host [ ip-forwarding ]
Ping不通介绍
故障分析
Ping不通是指Ping报文在网络中传输,由于各种原因(如链路故障、ARP学习失败等)而接收不到所有Ping应答报文的现象。
如果您需要了解Ping的原理
如图1所示,以一个Ping不通的尝试示例,介绍Ping不通故障的定位思路。
图1 Ping不通故障组网图
现象描述
SwitchA Ping不通SwitchD。
<SwitchA> ping 192.168.3.11
PING 192.168.3.11: 56 data bytes, press CTRL_C to break
Request time out
Request time out
Request time out
Request time out
Request time out
--- 192.168.3.11 ping statistics ---
5 packet(s) transmitted
0 packet(s) received
100.00% packet loss
表1 Ping命令输出信息描述
项目 | 描述 |
项目 | 查看所有接口的概要信息 |
PING 192.168.3.11 | 对IP地址为192.168.3.11的目的主机进行Ping测试,检测目的主机是否可达。 |
56 data bytes | 发送的Echo Request报文的长度 |
press CTRL_C to break | 在执行命令的过程中,执行Ctrl+C可终止Ping操作 |
Request time out | 如果超时时间内没有收到响应报文,则显示“Request time out”。 |
192.168.3.11 ping statistics | 对目的主机进行Ping测试的统计结果,包括以下内容:1、packet(s) transmitted:2、发送的ICMP Echo Request报文数目。packet(s) received 3、接收到的ICMP Echo Reply报文数目。% packet loss:未响应报文数占发送报文总数的百分比。4、round-trip min/avg/max:响应时间的最小值、平均值、最大值,单位为毫秒(ms)。Ping失败的时候不会打印该信息。 |
故障定位
如图1所示,Ping操作涉及三个角色:
——源端:Ping报文发起端SwitchA
——中间设备:SwitchB和SwitchC
——目的端:Ping报文接收端SwitchD
当在源端SwitchA上直接Ping IP地址192.168.3.11不通时,直接判定故障出现的原因比较困难。此时可以缩小故障范围,在SwitchA上分别Ping SwitchB、SwitchC、SwitchD,然后在SwitchB上分别Ping SwitchC、SwitchD,依此类推,最后可以判断出哪一段网络出现故障。
以下述两种情况为例,介绍Ping不通的故障定位方法。
情况一:
假设故障发生在SwitchA和SwitchB之间,即SwitchA Ping SwitchB的IP地址192.168.1.11不通,定位流程如图2所示(其他直连网段Ping不通的故障处理方法类似),详细的定位方法请参见Ping不通故障定位指导。
情况二:
假设SwitchA Ping SwitchB的IP地址192.168.1.11能通,SwitchB Ping SwitchC的IP地址192.168.2.21能通,但是SwitchA Ping SwitchC的IP地址192.168.2.21不通,这种情况需要在SwitchA、SwitchB和SwicthC上做ICMP报文的流量统计,进而判断流量是在哪丢弃的,关于流量统计的方法,请参见ICMP报文流量统计。
图2 直连Ping不通流程图
Ping不通故障定位指导
一、检查Ping命令是否合理
在SwitchA上检查是否执行了 ping –f 192.168.1.11
命令,
如果执行了此操作,则ICMP报文发送的过程中不支持分片,此时需要检查链路上出接口的MTU值。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
如果MTU值小于ICMP报文长度,由于ICMP报文的发送过程中不支持分片,如果ICMP报文的大小超过链路的MTU值,ICMP报文将会被丢弃,所以会导致Ping不通,此时可以通过不使用-f参数或者增大链路MTU值的方式使ICMP报文不被丢弃。
二、检查配置是否正确
若PC直连交换机,确保PC与所属VLAN配置的VLANIF IP地址为同一网段。若交换机与其他网络设备直连,确保两端设备接口类型、VLAN配置一致,两端VLANIF IP地址为同一网段。以SwitchA为例,查看方法如下:
执行命令 display port vlan
查看GE1/0/1接口的接口类型和VLAN配置。其中Link Type代表的是接口链路类型,Trunk VLAN List代表的是接口动态加入和静态配置允许通过的VLAN ID。
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
执行命令 display ip interface brief
查看VLANIF10接口下的IP地址配置。其中IP Address/Mask代表的是接口的IP地址和掩码。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
三、检查物理链路状态是否正常
1、检查物理链路连接
查看设备接口指示灯状态,如果是常灭,说明无连接。此时需要更换接口或者网线再进行尝试。
查看光纤或网线连接的接口和网络要求的部署是否一致。
如果不一致,需要重新对接口进行部署。
光纤所带的光模块波长参数需要一致,光模块建议使用华为认证光模块。
如果是通过Eth-Trunk接口连接,执行命令 display eth-trunk trunk-id
检查两端设备上Eth-Trunk中加入的物理成员接口数量是否一致,如果不一致,需要进行Eth-Trunk的重新配置。
如果是手工模式Eth-Trunk,回显如下,其中PortName代表的是加入Eth-Trunk的接口。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
如果是LACP模式Eth-Trunk,回显如下,其中ActorPortName代表的是加入Eth-Trunk的接口。
<SwitchA> display eth-trunk 10
Eth-Trunk10's state information is:
Local:
LAG ID: 10 WorkingMode: LACP
Preempt Delay Time: 10 Hash arithmetic: According to SIP-XOR-DIP
System Priority: 120 System ID: 0018-82d4-04c3
Least Active-linknumber: 1 Max Active-linknumber: 2
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
ActorPortName Status PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet1/0/1 Selected 1GE 10 262 2609 10111100 1
GigabitEthernet1/0/2 Selected 1GE 10 263 2609 10111100 1
GigabitEthernet1/0/3 Unselect 1GE 32768 264 2609 10100000 1
Partner:
--------------------------------------------------------------------------------
ActorPortName SysPri SystemID PortPri PortNo PortKey PortState
GigabitEthernet1/0/1 32768 00e0-fc6e-bb11 32768 262 2609 10111100
GigabitEthernet1/0/2 32768 00e0-fc6e-bb11 32768 263 2609 10111100
GigabitEthernet1/0/3 32768 00e0-fc6e-bb11 32768 264 2609 10110000
2、检查对应的VLANIF接口是否Up
VLANIF接口UP是能Ping通的前提。执行命令display ip interface brief查看VLANIF接口的状态,如果VLANIF接口Down,说明该VLAN下没有成员接口Up。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 10.1.1.1/24 down down
Vlanif30 unassigned *down down
……
执行命令display interface brief
查看接口状态,保证接口Up。如果接口为Down状态,请首先排除接口Down的故障。
<SwitchA> display interface brief
……
Interface PHY Protocol InUti OutUti inErrors outErrors
GigabitEthernet1/0/1 down down 0% 0% 0 0
GigabitEthernet1/0/2 down down 0% 0% 0 0
3、如果VLANIF和物理接口均为UP状态,检查设备上是否运行了STP、RRPP或Smart Link等二层协议,确认Ping业务经过的物理接口是否被阻塞。如果接口被阻塞,需要修改相关的配置。
1)执行命令 display stp brief
命令,查看STP状态,回显信息中STP State为FORWARDING表示转发状态,为DISCARDING表示阻塞状态。
<SwitchA> display stp brief
MSTID Port Role STP State Protection
0 GigabitEthernet1/0/1 DESI DISCARDING LOOPBACK
2)执行命令 display rrpp verbose
[ domain domain-id [ ring ring-id ] ],查看RRPP配置的详细信息,回显信息中Port status为UP表示转发状态,为BLOCKED表示阻塞状态
<SwitchA> display rrpp verbose domain 1 ring 1
Domain Index : 1
Control VLAN : major 400 sub 401
Protected VLAN : Reference Instance 30
Hello Timer : 1 sec(default is 1 sec) Fail Timer : 6 sec(default is 6 sec)
RRPP Ring : 1
Ring Level : 0
Node Mode : Master
Ring State : Complete
Is Enabled : Enable Is Active : Yes
Primary port : GigabitEthernet1/0/1 Port status: BLOCKED
Secondary port : GigabitEthernet1/0/2 Port status: UP
3)执行命令 display smart-link group all
,查看Smart Link组的状态信息,回显信息中State为Active表示转发状态,为Inactive表示阻塞状态。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
0
四、检查路由是否正常
1、 检查是否有直连路由
如果和交换机连接的是终端设备,检查终端设备上是否配置了正确的网关地址。
如果和交换机连接的是交换机或路由设备,检查设备上是否有正确的回程路由。
在源端执行命令display ip routing-table ip-address
检查有无到对端的路由。
如有路由则显示如下信息,回显字段中Proto为Direct表示为直连路由。由于遵循最长匹配原则,同一路由前缀,当非直连路由掩码长度大于直连路由时,将导致报文无法从直连接口转发。若检查目的IP匹配的路由为非直连路由,需排查路由故障。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
1
如果没有路由,则输入上述命令后无任何信息显示,需要检查路由协议配置是否正确。
2、检查是否配置了策略路由
例如:SwitchB在GE1/0/2接口调用策略路由,将SwitchA上送的源IP地址为192.168.1.10的报文重定向到下一跳192.168.2.11。
可以通过下述步骤查看策略路由配置并做相应配置的修改。
a、执行display traffic-policy applied-record
命令,查看流策略的应用记录。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
2
b、执行display traffic behavior user-defined behavior-name
命令,查看已配置的流行为信息。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
3
c、执行display traffic classifier user-defined classifier-name命令,查看策略中流分类关联的ACL编号。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
4
d、执行display acl acl-number命令,查看ACL具体内容。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
5
3、修改流策略,保证SwitchA与SwitchB之间的流量正常转发。
配置思路:新建ACL,匹配SwitchA到SwitchB的流量,这部分流量不做重定向。
配置顺序:配置流分类时,先创建不做重定向的流分类,再配置用于重定向的流分类。配置流策略时,先绑定不做重定向的流分类和流行为,再绑定用于重定向的流分类和流行为。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
6
五、 检查ARP学习是否正确
执行display arp all
命令,检查直连地址的ARP是否学习正常。
下述回显信息中,如果MAC ADDRESS显示的是MAC地址,则代表ARP学习正确;如果显示的是Incomplete,表示当前表项为临时ARP表项,尚未学习到ARP,出现MAC地址后,代表ARP学习完成。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
7
如果ARP学习正确,通过display mac-address interface-type interface-number
命令查看MAC表项,确认MAC地址的出接口和ARP的物理出接口是否一致。若不一致,排查是否存在环路或MAC冲突。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
8
如果ARP学习失败,有以下几种可能性,请参照表1进行排查ARP学习失败的原因(SwitchA向SwitchB发送ARP请求报文)。
表1 ARP学习失败可能的原因
六、检查是否配置黑名单
配置cpu-defend黑名单后,设备将直接丢弃黑名单用户上送的报文。
通过display cpu-defend policy
查看调用在全局或特定槽位的策略名,然后通过display cpu-defend policy policy-name
查看策略中是否配置黑名单(Blacklist),再通过display acl acl-number
查看黑名单调用的ACL具体内容。
<SwitchA> system-view
[SwitchA] interface GigabitEthernet 1/0/1
[SwitchA-GigabitEthernet1/0/1] display this
[SwitchA-GigabitEthernet1/0/1] undo portswitch
[SwitchA-GigabitEthernet1/0/1] mtu 1600 //接口的MTU值为1600字节,如果此字段不显示,代表接口的MTU为缺省值1500字节。
9
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
0
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
1
黑名单中应用的ACL,无论其rule配置为permit还是deny,命中该ACL的报文均会被丢弃。
如果策略中配置了黑名单,且黑名单中包含对端IP,请尝试删除黑名单或修改黑名单关联的ACL,保证报文可以被正常处理。
例如:取消防攻击策略test1下的黑名单配置。
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
2
如果策略中没有配置黑名单,或者黑名单中不包含对端IP,进行下一步排查。
七、检查报文收发是否正常
如果通过以上步骤排查配置、链路、ARP表项和路由表项均正常,但是仍然Ping不通,接下来检查ICMP报文收发是否正常。
ICMP统计查询
进行Ping操作时,通过命令display icmp statistics
查看ICMP报文的收发情况,ICMP Echo Request和ICMP Echo Reply报文收发是否一致,是否存在checksum错误统计计数。
SwitchA Ping SwitchB,以SwitchA的回显为例,Output方向的echo字段代表的是请求报文数目,Input方向的echo reply代表的是应答报文数目,bad checksum代表的是校验错误的报文数目。
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
3
在SwitchA上执行Ping操作的前后查看bad checksum计数是否一直增长,如果一直增长,需要检查对端设备SwitchB的协议栈软件回应ICMP报文的格式是否正确。
如果echo和echo reply数目一致,但是仍然Ping不通,接下来需要进行ICMP报文流量统计进而判断报文的收发情况。
如果echo和echo reply数目不一致:
如果SwitchA发出的echo报文数目少于Ping发送的报文数目,说明报文在SwitchA上被丢弃。
如果SwitchA发出的echo报文数目多于SwitchB接收到的echo报文的数目,说明报文在传输链路上被丢弃。
如果SwitchA发出的echo报文数目等于SwitchB接收到的echo报文的数目,但是离开SwitchB的echo reply报文数目少于进入SwitchB的echo报文的数目,说明报文在SwitchB上被丢弃。
如果报文在链路上被丢弃,请更换链路再进行Ping测试;如果报文在终端或其他厂商设备被丢弃,请排查终端或者其他厂商设备;如果报文在华为交换机被丢弃,可进入下一步排查或者联系技术支持人员处理。
ICMP报文流量统计
以SwitchA为例,介绍如何对ICMP报文做流量统计。
配置进入SwitchA报文的流量统计。
• 配置ACL规则。这里的ACL一定要是高级ACL,编号范围为3000~3999。
<SwitchA> display port vlan
4
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……• 配置流分类。
<SwitchA> display port vlan
5
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……• 配置流行为。
<SwitchA> display port vlan
6
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……• 配置流策略。
<SwitchA> display port vlan
7
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
在接口上应用流策略
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
8
配置离开SwitchA报文的流量统计
配置ACL规则。这里的ACL一定要是高级ACL,编号范围为3000~3999。
<SwitchA> display port vlan
Port Link Type PVID Trunk VLAN List
-------------------------------------------------------------------------------
GigabitEthernet1/0/1 trunk 1 10
GigabitEthernet1/0/2 access 1 1-11 13-30
GigabitEthernet1/0/3 hybrid 50 -
……
9
• 配置流分类。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……• 配置流行为。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……• 配置流策略。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……• 在接口上应用流策略
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
如果是交换机直连PC,在连接PC的接口出、入方向调用流统策略;如果是交换机与其他网络设备直连,建议在两台设备两个接口的出、入方向都使用流量统计。
配置完成后,先执行reset命令清空计数信息,以保证接口流统计数归零,相关命令如下:
reset traffic policy statistics interface GigabitEthernet 1/0/1 inbound
reset traffic policy statistics interface GigabitEthernet 1/0/1 outbound
在SwitchA上持续Ping SwitchB,通过display traffic policy statistics interface interface-type interface-number { inbound | outbound } verbose rule-base
命令查看接口流量统计信息。
以SwitchA出方向为例,介绍上述display
命令的回显,其中Packets和Bytes分别代表报文包个数和报文字节数。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
4
-如果离开SwitchA的报文数目少于Ping发送的报文数目,说明报文在SwitchA上被丢弃。
-如果离开SwitchA的报文数目多余进入SwitchB的报文数目,说明报文在传输链路上被丢弃。
-如果离开SwitchA的报文数目等于进入SwitchB的报文数目,但是离开SwitchB的报文数目少于进入SwitchB的报文数目,说明报文在SwitchB上被丢弃。
如果报文在链路上被丢弃,请更换链路再进行Ping测试;如果报文在终端或其他厂商设备被丢弃,请排查终端或者其他厂商设备;如果报文在华为交换机被丢弃,可进入下一步排查或者联系技术支持人员处理。
八、检查CPCAR统计是否有过多ICMP报文被丢弃
查看CPCAR的统计情况,检查ICMP报文是否由于CPCAR超出限制被丢弃,相关命令行如下(不同形态、不同版本的命令行有所不同):
对于框式交换机V100R002版本、盒式交换机V100R005版本,执行display cpu-defend icmp statistics al
l命令查看Drop计数是否在增加。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
5
对于框式交换机V100R003及之后版本、盒式交换机V100R005及之后版本,执行display cpu-defend statistics packet-type icmp all
命令查看Drop计数是否在增加。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
6
对于框式交换机V100R003及之后版本、盒式交换机V100R005及之后版本,执行display cpu-defend statistics packet-type icmp all
命令查看Drop计数是否在增加。
如果Drop计数在增加,说明存在CAR丢包,可以适当增加CAR值再进行Ping测试,看问题是否解决,最后建议恢复CAR值。
修改CAR的命令如下:
配置cpu-defend policy,执行命令car packet-type icmp cir cir-value
指定新的CAR值。
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
7
将该Policy策略在全局或者指定的接口板应用。全局应用:
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
8
在指定的接口板应用:
<SwitchA> display ip interface brief
……
Interface IP Address/Mask Physical Protocol
Vlanif10 192.168.1.10/24 up up
……
9
九、 检查报文格式是否正确
有时虽然交换机收到了报文,但是可能报文的格式不对,导致无法得到正确处理。例如目的MAC错误,VLAN的CFI被置为1等,此时则需要通过获取报文信息来确认。
在端口获取报文可以更加直接的看到设备上报文的收发情况,可以使用端口镜像或者流镜像获取端口下的所有报文,然后分析ICMP报文格式是否正确。
在镜像获取报文无法实施时,使用capture命令确认报文接收情况,然后分析ICMP报文格式是否正确。
配置镜像查看报文收发情况
如果端口上流量不大,可以配置端口镜像,确认报文的收发情况(以SwitchA为例)。
配置观察口。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
0
配置镜像口,获取双向报文。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
1
如果端口上流量比较大,可以配置流镜像(以SwitchA为例)。配置观察口。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
2
配置ACL规则。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
3
配置流分类。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
4
配置流行为。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
5
配置流策略。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
6
在接口上应用流策略。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
7
通过对镜像报文进行分析,不仅可以确认报文的收发情况,同时可以对报文进行校验,包括:报文的VLAN是否正确、报文的目的MAC地址是否是设备系统MAC地址、报文IP头的checksum是否正确、ICMP的checksum是否正确。
使用capture命令确认报文接收情况 在镜像获取报文无法实施时,也可以使用Capture命令来确认端口收到的报文情况,可以将报文打印到登录终端进行显示,也可以存入.cap文件中保存到设备上,然后对获取到的报文进行分析。
capture命令如下:
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
8
十、 收集信息并寻求技术支持
收集信息
收集上述各个操作步骤的执行结果。
采集logbuffer信息、trapbuffer信息。
<SwitchA> display eth-trunk 11
Eth-Trunk11's state information is:
WorkingMode: NORMAL Hash arithmetic: According to SIP-XOR-DIP
Least Active-linknumber: 1 Max Bandwidth-affected-linknumber: 8
Operate status: up Number Of Up Port In Trunk: 1
--------------------------------------------------------------------------------
PortName Status Weight
GigabitEthernet1/0/1 Up 1
9
采集一键式诊断信息。
<SwitchA> display eth-trunk 10
Eth-Trunk10's state information is:
Local:
LAG ID: 10 WorkingMode: LACP
Preempt Delay Time: 10 Hash arithmetic: According to SIP-XOR-DIP
System Priority: 120 System ID: 0018-82d4-04c3
Least Active-linknumber: 1 Max Active-linknumber: 2
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
ActorPortName Status PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet1/0/1 Selected 1GE 10 262 2609 10111100 1
GigabitEthernet1/0/2 Selected 1GE 10 263 2609 10111100 1
GigabitEthernet1/0/3 Unselect 1GE 32768 264 2609 10100000 1
Partner:
--------------------------------------------------------------------------------
ActorPortName SysPri SystemID PortPri PortNo PortKey PortState
GigabitEthernet1/0/1 32768 00e0-fc6e-bb11 32768 262 2609 10111100
GigabitEthernet1/0/2 32768 00e0-fc6e-bb11 32768 263 2609 10111100
GigabitEthernet1/0/3 32768 00e0-fc6e-bb11 32768 264 2609 10110000
0
若输出诊断信息过长,可以按Ctrl+C停止。
此命令主要用于问题定位,搜集系统诊断信息,搜集时可能会影响系统的性能(例如CPU占用率升高等)。因此,在系统正常运行时不建议执行此命令。
严禁在连接到设备的多个终端上同时执行display diagnostic-information
命令,否则可能造成设备的CPU占用率明显增高,导致设备性能下降。
保存交换机的日志、诊断日志。
<SwitchA> display eth-trunk 10
Eth-Trunk10's state information is:
Local:
LAG ID: 10 WorkingMode: LACP
Preempt Delay Time: 10 Hash arithmetic: According to SIP-XOR-DIP
System Priority: 120 System ID: 0018-82d4-04c3
Least Active-linknumber: 1 Max Active-linknumber: 2
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
ActorPortName Status PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet1/0/1 Selected 1GE 10 262 2609 10111100 1
GigabitEthernet1/0/2 Selected 1GE 10 263 2609 10111100 1
GigabitEthernet1/0/3 Unselect 1GE 32768 264 2609 10100000 1
Partner:
--------------------------------------------------------------------------------
ActorPortName SysPri SystemID PortPri PortNo PortKey PortState
GigabitEthernet1/0/1 32768 00e0-fc6e-bb11 32768 262 2609 10111100
GigabitEthernet1/0/2 32768 00e0-fc6e-bb11 32768 263 2609 10111100
GigabitEthernet1/0/3 32768 00e0-fc6e-bb11 32768 264 2609 10110000
1
将框式交换机CF卡中保存的日志、诊断日志文件导出到相关文件路径。
<SwitchA> display eth-trunk 10
Eth-Trunk10's state information is:
Local:
LAG ID: 10 WorkingMode: LACP
Preempt Delay Time: 10 Hash arithmetic: According to SIP-XOR-DIP
System Priority: 120 System ID: 0018-82d4-04c3
Least Active-linknumber: 1 Max Active-linknumber: 2
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
ActorPortName Status PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet1/0/1 Selected 1GE 10 262 2609 10111100 1
GigabitEthernet1/0/2 Selected 1GE 10 263 2609 10111100 1
GigabitEthernet1/0/3 Unselect 1GE 32768 264 2609 10100000 1
Partner:
--------------------------------------------------------------------------------
ActorPortName SysPri SystemID PortPri PortNo PortKey PortState
GigabitEthernet1/0/1 32768 00e0-fc6e-bb11 32768 262 2609 10111100
GigabitEthernet1/0/2 32768 00e0-fc6e-bb11 32768 263 2609 10111100
GigabitEthernet1/0/3 32768 00e0-fc6e-bb11 32768 264 2609 10110000
2
将盒式交换机Flash中保存的日志、诊断日志文件导出到相文件路径。
<SwitchA> display eth-trunk 10
Eth-Trunk10's state information is:
Local:
LAG ID: 10 WorkingMode: LACP
Preempt Delay Time: 10 Hash arithmetic: According to SIP-XOR-DIP
System Priority: 120 System ID: 0018-82d4-04c3
Least Active-linknumber: 1 Max Active-linknumber: 2
Operate status: up Number Of Up Port In Trunk: 2
--------------------------------------------------------------------------------
ActorPortName Status PortType PortPri PortNo PortKey PortState Weight
GigabitEthernet1/0/1 Selected 1GE 10 262 2609 10111100 1
GigabitEthernet1/0/2 Selected 1GE 10 263 2609 10111100 1
GigabitEthernet1/0/3 Unselect 1GE 32768 264 2609 10100000 1
Partner:
--------------------------------------------------------------------------------
ActorPortName SysPri SystemID PortPri PortNo PortKey PortState
GigabitEthernet1/0/1 32768 00e0-fc6e-bb11 32768 262 2609 10111100
GigabitEthernet1/0/2 32768 00e0-fc6e-bb11 32768 263 2609 10111100
GigabitEthernet1/0/3 32768 00e0-fc6e-bb11 32768 264 2609 10110000
3
寻求技术支持
请联系华为技术支持人员获取技术支持。
▲长按二维码 加小助理好友
获取【网络排障工具】下载
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...