交换机在江湖之笑傲江湖】Ping不通,如何定位?

 

交换机在江湖 官方号 2014-8-22 14:50:09 最新回复:2019-08-14 13:14:37
 2.4W  32  5  8

1 故障处理Ping不通

1.1  故障定位思路

1.2  故障定位方法

1.3  Ping不通故障案例

1.4  Ping不通FAQ

1.5  Ping原理和命令格式

1.1 故障定位思路

故障分析

Ping不通是指Ping报文在网络中传输由于各种原因如链路故障、ARP学习失败等而接收不到所有Ping应答报文的现象。

如果您需要了解Ping的原理请参见1.5 Ping原理和命令格式。

如图1-1所示以一个Ping不通的尝试示例介绍Ping不通故障的定位思路。

图1-1 Ping不通故障组网图

112238ad8ini82uviz5jqj.png

 

故障现象

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-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测试的统计结果包括以下内容

l  packet(s) transmitted发送的ICMP Echo Request报文数目。

l  packet(s) received接收到的ICMP Echo Reply报文数目。

l  % packet loss未响应报文数占发送报文总数的百分比。

l  round-trip min/avg/max响应时间的最小值、平均值、最大值单位为毫秒ms。Ping失败的时候不会打印该信息。

 

故障定位

如图1-1所示Ping操作涉及三个角色

l   源端Ping报文发起端SwitchA

l   中间设备SwitchB和SwitchC

l   目的端Ping报文接收端SwitchD

当在源端SwitchA上直接Ping IP地址192.168.3.11不通时直接判定故障出现的原因比较困难。此时可以缩小故障范围在SwitchA上分别Ping SwitchB、SwitchC、SwitchD然后在SwitchB上分别Ping SwitchC、SwitchD依此类推最后可以判断出哪一段网络出现故障。

以下述两种情况为例介绍Ping不通的故障定位方法。

l   情况一假设故障发生在SwitchA和SwitchB之间即SwitchA Ping SwitchB的IP地址192.168.1.11不通定位流程如图1-2所示其他直连网段Ping不通的故障处理方法类似详细的定位方法请参见1.2 故障定位方法。

l   情况二假设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报文流量统计

图1-2 直连Ping不通流程图

112238uii9t3ikkt0f1ft1.png

 

1.2 故障定位方法

1.2.1 检查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报文的发送过程中不支持分片所以会导致Ping不通此时可以通过不使用-f参数或者增大链路MTU值的方式使ICMP报文不被丢弃。

如果您需要了解Ping命令的格式请参见Ping命令格式

1.2.2 检查配置是否正确

l   若PC直连交换机确保PC与所属VLAN配置的VLANIF IP地址为同一网段。

l   若交换机与其他网络设备直连确保两端设备接口类型、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.2.3 检查物理链路状态是否正常

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业务经过的物理接口是否被阻塞。如果接口被阻塞需要修改相关的配置。

−           执行命令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

−           执行命令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

−           执行命令display smart-link group all查看Smart Link组的状态信息回显信息中State为Active表示转发状态为Inactive表示阻塞状态。

<SwitchA> display smart-link group all 
Smart Link group 1 information :                                                 
  Smart Link group was enabled 
  Link status: Lock                                                   
  Wtr-time is: 60 sec. 
  Load-Balance Instance: 10 
  Protected-vlan reference-instance: 1                                  
  DeviceID: 0025-9e80-2494  Control-vlan ID: 505                                 
      Member              Role   State    Flush Count Last-Flush-Time            
  ----------------------------------------------------------------------         
                                                                                 
  GigabitEthernet1/0/1    Master Inactive  1           2010/09/29 09:30:09 UTC+08:00    
  GigabitEthernet1/0/2    Slave  Active     0           0000/00/00 00:00:00 UTC+00:00  

1.2.4 检查路由是否正常

1.         检查是否有直连路由

−           如果和交换机连接的是终端设备检查终端设备上是否配置了正确的网关地址。

−           如果和交换机连接的是交换机或路由设备检查设备上是否有正确的回程路由。

在源端执行命令display ip routing-table ip-address检查有无到对端的路由。

如有路由则显示如下信息回显字段中Proto为Direct表示为直连路由。由于遵循最长匹配原则同一路由前缀当非直连路由掩码长度大于直连路由时将导致报文无法从直连接口转发。若检查目的IP匹配的路由为非直连路由需排查路由故障。

<SwitchA> display ip routing-table 192.168.1.11                 
Route Flags: R - relay, D - download to fib 
------------------------------------------------------------------------------  
Routing Table : Public 
Summary Count : 1 
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface 
 
   192.168.1.0/24   Direct  0    0           D   192.168.1.10    Vlanif10

如果没有路由则输入上述命令后无任何信息显示需要检查路由协议配置是否正确。

2.         检查是否配置了策略路由

例如SwitchB在GE1/0/2接口调用策略路由将SwitchA上送的源IP地址为192.168.1.10的报文重定向到下一跳192.168.2.11。

可以通过下述步骤查看策略路由配置并做相应配置的修改。

a.         执行display traffic-policy applied-record命令查看流策略的应用记录。

<SwitchB> display traffic-policy applied-record 

------------------------------------------------- 
  Policy Name:   p1 
  Policy Index:  0 
     Classifier:c1     Behavior:b1 //流策略p1中关联了流分类c1和流行为b1 
-------------------------------------------------  
 *interface GigabitEthernet1/0/2 
    traffic-policy p1 inbound //流策略p1应用在接口GE1/0/2的入方向 
      slot 1    :  success 
------------------------------------------------- 
  Policy total applied times: 1.  
#                           

b.         执行display traffic behavior user-defined behavior-name命令查看已配置的流行为信息。

<SwitchB> display traffic behavior user-defined b1 
  User Defined Behavior Information: 
    Behavior: bb                                                
      Permit 
      Redirect: no forced 
        Redirect ip-nexthop 
        192.168.2.11  //流行为b1的动作为重定向下一跳IP为192.168.2.11

c.         执行display traffic classifier user-defined classifier-name命令查看策略中流分类关联的ACL编号。

<SwitchB> display traffic classifier user-defined c1 
User Defined Classifier Information: 
 Classifier: c1 
  Precedence: 15 
  Operator: AND 
  Rule(s) : if-match acl 3000 //流分类c1关联的ACL为acl 3000

d.         执行display acl acl-number命令查看ACL具体内容。

<SwitchB> display acl 3000 
Advanced ACL 3000, 1 rule 
Acl's step is 5 
 rule 5 permit ip source 192.168.1.10 0  //acl 3000中匹配了源地址为192.168.1.10的所有IP报文

3.         修改流策略保证SwitchA与SwitchB之间的流量正常转发。

配置思路新建ACL匹配SwitchA到SwitchB的流量这部分流量不做重定向。

配置顺序配置流分类时先创建不做重定向的流分类再配置用于重定向的流分类。配置流策略时先绑定不做重定向的流分类和流行为再绑定用于重定向的流分类和流行为。

<SwitchB> system-view 
[SwitchB] acl 3001       //新建ACL 
[SwitchB-acl-adv-3001] rule permit ip source 192.168.1.10 0 destination 192.168.1.11 0.0.0.255  //匹配SwitchA到SwitchB的IP报文不做重定向的流量 
[SwitchB-acl-adv-3001] quit 
 
[SwitchB] traffic behavior b2  //新建流行为 
[SwitchB-behavior-b2] permit  //动作为允许正常转发不做重定向动作 
[SwitchB-behavior-b2] quit 
//由于之前的策略已经调用在接口所以需要先在接口下取消策略调用再到流策略中解除绑定的流分类在全局删除流分类后再按顺序配置。 
[SwitchB] interface GigabitEthernet1/0/1 
[SwitchB-GigabitEthernet1/0/1] undo traffic-policy inbound  //进入接口下取消策略调用 
[SwitchB-GigabitEthernet1/0/1] quit 
 
[SwitchB] traffic policy p1 
[SwitchB-trafficpolicy-p1] undo classifier c1 //解除策略下绑定的流分类 
[SwitchB-trafficpolicy-p1] quit 
 
[SwitchB] undo traffic classifier c1 //全局下取消之前创建的流分类 
 
[SwitchB] traffic classifier c2   //先创建不做重定向的流分类c2 
[SwitchB-classifier-c2] if-match acl 3001  //在c2中匹配acl 3001 
[SwitchB-classifier-c2] quit 
[SwitchB] traffic classifier c1   //再创建用于重定向的流分类c1 
[SwitchB-classifier-c1] if-match acl 3000 //在c1中匹配acl 3000 
[SwitchB-classifier-c1] quit 
 
[SwitchB] traffic policy p1 //进入流策略先绑定不做重定向的流分类和流行为再绑定需要重定向的流分类和流行为 
[SwitchB-trafficpolicy-p1] classifier c2 behavior b2 
[SwitchB-trafficpolicy-p1] classifier c1 behavior b1 
[SwitchB-trafficpolicy-p1] quit 
 
[SwitchB] interface GigabitEthernet1/0/1 //进入接口下调用流策略 
[SwitchB-GigabitEthernet1/0/1] traffic-policy p1 inbound 
[SwitchB-GigabitEthernet1/0/1] quit

1.2.5 检查ARP学习是否正确

执行display arp all命令检查直连地址的ARP是否学习正常。

下述回显信息中如果MAC ADDRESS显示的是MAC地址则代表ARP学习正确如果显示的是Incomplete表示当前表项为临时ARP表项尚未学习到ARP出现MAC地址后代表ARP学习完成。

<SwitchA> display arp all 
IP ADDRESS      MAC ADDRESS     EXPIRE(M) TYPE INTERFACE      VPN-INSTANCE       
                                          VLAN  
------------------------------------------------------------------------------ 
192.168.1.10    4c1f-cc17-1ca5            I -  Vlanif10 
192.168.1.11    4c1f-cc2f-3634  19        D-0  GE1/0/1 
                                          10 
------------------------------------------------------------------------------ 
Total:2         Dynamic:1       Static:0     Interface:1   

l   如果ARP学习正确通过display mac-address interface-type interface-number命令查看MAC表项确认MAC地址的出接口和ARP的物理出接口是否一致。若不一致排查是否存在环路或MAC冲突。

<SwitchA> display mac-address 4c1f-cc2f-3634 
-------------------------------------------------------------------------------  
MAC Address          VLAN/VSI                    Learned-From          Type        
------------------------------------------------------------------------------- 
4c1f-cc2f-3634       10/-                        GE1/0/1               dynamic  
------------------------------------------------------------------------------- 
Total items displayed = 2

l   如果ARP学习失败有以下几种可能性请参照表1-2进行排查ARP学习失败的原因SwitchA向SwitchB发送ARP请求报文。

表1-2 ARP学习失败可能的原因

可能情况

可能原因

ARP请求报文没有发出去

l  SwitchA短期内大量ARP Miss消息触发太多ARP请求来不及发送出去

l  终结子接口上没有使能arp broadcast enable。终结子接口不能转发ARP广播报文在收到ARP广播报文后它们直接把该报文丢弃

ARP请求报文没有到达对端SwitchB在网络上被丢弃了

传输链路问题

ARP请求报文到达了对端SwitchB但是被SwitchB丢弃了

SwitchB受到攻击收到大量ARP报文报文被CPCAR机制丢掉

SwitchB的响应报文没有到达SwitchA

传输链路问题

SwitchB的响应报文到达SwitchA但是没有上送CPU

SwitchA的CPCAR机制丢掉或ARP限速丢弃

SwitchB的响应报文到达SwitchA的CPU但是被丢弃了

SwitchA的ARP处理模块出错

 

1.2.6 检查是否配置黑名单

配置cpu-defend黑名单后设备将直接丢弃黑名单用户上送的报文。

通过display cpu-defend policy查看调用在全局或特定槽位的策略名然后通过display cpu-defend policy policy-name查看策略中是否配置黑名单Blacklist再通过display acl acl-number查看黑名单调用的ACL具体内容。

<SwitchA> display cpu-defend policy 
---------------------------------------------------------------- 
Name  : default 
Related slot : <> 
---------------------------------------------------------------- 
Name  : test1 
Related slot : <1>    //名称为test1的policy调用在1号槽位 
----------------------------------------------------------------

<SwitchA> display cpu-defend policy test1 
Related slot : <1> 
Configuration : 
Blacklist 1 ACL number : 3300  //该策略test1下配置了黑名单关联的ACL编号为3300 
Car packet-type icmp : CIR(5000)  CBS(20000) 
Car packet-type tcp : CIR(2000)  CBS(376000)

<SwitchA> display acl 3300 
Advanced ACL 3300, 1 rule 
Acl's step is 5 
rule 5 permit ip source 10.1.1.1 0 (match-counter 0)  //ACL匹配源IP地址为10.1.1.1的IP报文

黑名单中应用的ACL无论其rule配置为permit还是deny命中该ACL的报文均会被丢弃。

l   如果策略中配置了黑名单且黑名单中包含对端IP请尝试删除黑名单或修改黑名单关联的ACL保证报文可以被正常处理。

例如取消防攻击策略test1下的黑名单配置。

<SwitchA> system-view 
[SwitchA] cpu-defend policy test1 
[SwitchA-defend-policy-test] display this 

cpu-defend policy test1 
blacklist 1 acl 3300 
car packet-type icmp cir 5000 cbs 20000 
car packet-type tcp cir 2000 cbs 376000 
…… 
[SwitchA-defend-policy-test1] undo blacklist 1 
[SwitchA-defend-policy-test1] quit

l   如果策略中没有配置黑名单或者黑名单中不包含对端IP进行下一步排查。

112239uhhuqhfl44z9thhz.jpg

如果对端可以Ping通交换机而从交换机无法Ping通对端需要确认对方是否禁Ping如PC上的软件防火墙限制或网络设备上调用了相关策略拒绝访问。

1.2.7 检查报文收发是否正常

如果通过以上步骤排查配置、链路、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 icmp statistics 
  Input: bad formats         0          bad checksum           0    
         echo                0          destination unreachable 0     
         source quench       0          redirects               0    
         echo reply        25         parameter problem       0    
         timestamp request   0          information request     0    
         mask requests       0          mask replies            0    
         time exceeded       0          timestamp reply         0          
         Mping request       0          Mping reply             0    
  Output:echo               25         destination unreachable 0    
         source quench       0          redirects               0    
         echo reply          0          parameter problem       0    
         timestamp request   0          information reply       0    
         mask requests       0          mask replies            0    
         time exceeded       0          timestamp reply         0 
         Mping request       0          Mping reply             0  

在SwitchA上执行Ping操作的前后查看bad checksum计数是否一直增长如果一直增长需要检查对端设备SwitchB的协议栈软件回应ICMP报文的格式是否正确。

如果echoecho reply数目一致但是仍然Ping不通接下来需要进行ICMP报文流量统计进而判断报文的收**况。

如果echoecho reply数目不一致

l   如果SwitchA发出的echo报文数目少于Ping发送的报文数目说明报文在SwitchA上被丢弃。

l   如果SwitchA发出的echo报文数目多于SwitchB接收到的echo报文的数目说明报文在传输链路上被丢弃。

l   如果SwitchA发出的echo报文数目等于SwitchB接收到的echo报文的数目但是离开SwitchB的echo reply报文数目少于进入SwitchB的echo报文的数目说明报文在SwitchB上被丢弃。

如果报文在链路上被丢弃请更换链路再进行Ping测试如果报文在终端或友商设备被丢弃请排查终端或者友商设备如果报文在华为交换机被丢弃可进入下一步排查或者联系华为工程师处理。

ICMP报文流量统计

以SwitchA为例介绍如何对ICMP报**流量统计。

# 配置进入SwitchA报文的流量统计。

1.         配置ACL规则。

112239uhhuqhfl44z9thhz.jpg

这里的ACL一定要是高级ACL编号范围为30003999。

<SwitchA> system-view  
[SwitchA] acl number 3000  
[SwitchA-acl-adv-3000] rule permit icmp source 192.168.1.11 0 destination 192.168.1.10 0  
[SwitchA-acl-adv-3000] quit

2.         配置流分类。

[SwitchA] traffic classifier 3000  
[SwitchA-classifier-3000] if-match acl 3000  
[SwitchA-classifier-3000] quit

3.         配置流行为。

[SwitchA] traffic behavior 3000  
[SwitchA-behavior-3000] statistic enable  
[SwitchA-behavior-3000] quit

4.         配置流策略。

[SwitchA] traffic policy 3000  
[SwitchA-trafficpolicy-3000] classifier 3000 behavior 3000  
[SwitchA-trafficpolicy-3000] quit

5.         在接口上应用流策略

[SwitchA] interface gigabitethernet 1/0/1  
[SwitchA-GigabitEthernet1/0/1] traffic-policy 3000 inbound  
[SwitchA-GigabitEthernet1/0/1] return

# 配置离开SwitchA报文的流量统计。

1.         配置ACL规则。

112239xwe7sprv9pg9dgpr.jpg

这里的ACL一定要是高级ACL编号范围为30003999。

<SwitchA> system-view  
[SwitchA] acl number 3001  
[SwitchA-acl-adv-3001] rule permit icmp source 192.168.1.10 0 destination 192.168.1.11 0  
[SwitchA-acl-adv-3001] quit

2.         配置流分类。

[SwitchA] traffic classifier 3001  
[SwitchA-classifier-3001] if-match acl 3001  
[SwitchA-classifier-3001] quit

3.         配置流行为。

[SwitchA] traffic behavior 3001  
[SwitchA-behavior-3001] statistic enable  
[SwitchA-behavior-3001] quit

4.         配置流策略。

[SwitchA] traffic policy 3001  
[SwitchA-trafficpolicy-3001] classifier 3001 behavior 3001  
[SwitchA-trafficpolicy-3001] quit

5.         在接口上应用流策略

[SwitchA] interface gigabitethernet 1/0/1  
[SwitchA-GigabitEthernet1/0/1] traffic-policy 3001 outbound  
[SwitchA-GigabitEthernet1/0/1] return

如果是交换机直连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命令的回显其中PacketsBytes分别代表报文包个数和报文字节数。

<SwitchA> display traffic policy statistics interface gigabitethernet 1/0/1 outbound verbose rule-base  
 Interface: GigabitEthernet1/0/1                                                                                                     
 Traffic policy outbound: 3001                                                                                                       
 Rule number: 1                                                                                                                      
 Current status: OK!                                                                                                                 
 Statistics interval: 300                                                                                                            
---------------------------------------------------------------------                                                                
 Classifier: 3001 operator or                                                                                                        
 Behavior: 3001                                                                                                                      
 Board : 1                                                                                                                           
 rule 5 permit icmp source 10.1.1.1 0 destination 10.1.1.2 0 (match-counter 0)                                               
---------------------------------------------------------------------                                                                
 Passed           |      Packets:                           100                                                                      
                  |      Bytes:                          10,200                                                                     
                  |      Rate(pps):                           0                                                                      
                  |      Rate(bps):                           0                                                                      
---------------------------------------------------------------------                                                                
 Dropped          |      Packets:                             0                                                                      
                  |      Bytes:                               0                                                                      
                  |      Rate(pps):                           0                                                                      
                  |      Rate(bps):                           0                                                                      
---------------------------------------------------------------------

l   如果离开SwitchA的报文数目少于Ping发送的报文数目说明报文在SwitchA上被丢弃。

l   如果离开SwitchA的报文数目多余进入SwitchB的报文数目说明报文在传输链路上被丢弃。

l   如果离开SwitchA的报文数目等于进入SwitchB的报文数目但是离开SwitchB的报文数目少于进入SwitchB的报文数目说明报文在SwitchB上被丢弃。

如果报文在链路上被丢弃请更换链路再进行Ping测试如果报文在终端或友商设备被丢弃请排查终端或者友商设备如果报文在华为交换机被丢弃可进入下一步排查或者联系华为工程师处理。

1.2.8 检查CPCAR统计是否有过多ICMP报文被丢弃

查看CPCAR的统计情况检查ICMP报文是否由于CPCAR超出限制被丢弃相关命令行如下不同形态、不同版本的命令行有所不同

l   对于框式交换机V100R002版本、盒式交换机V100R005版本执行display cpu-defend icmp statistics all命令查看Drop计数是否在增加。

<HUAWEI> display cpu-defend icmp statistics all  
CPCAR on mainboard  
-------------------------------------------------------------------------------  
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets)  
icmp                0            0               0               0  
-------------------------------------------------------------------------------  
CPCAR on slot 4  
-------------------------------------------------------------------------------  
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets)  
icmp                0            0               0               0  
-------------------------------------------------------------------------------

l   对于框式交换机V100R003及之后版本、盒式交换机V100R005及之后版本执行display cpu-defend statistics packet-type icmp all命令查看Drop计数是否在增加。

<HUAWEI> display cpu-defend statistics packet-type icmp all  
Statistics on mainboard:  
-------------------------------------------------------------------------------  
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets)  
-------------------------------------------------------------------------------  
icmp                4488           0              44               0  
-------------------------------------------------------------------------------  
Statistics on slot 3:  
-------------------------------------------------------------------------------  
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets)  
-------------------------------------------------------------------------------  
icmp                0            0               0               0  
-------------------------------------------------------------------------------

如果Drop计数在增加说明存在CAR丢包可以适当增加CAR值再进行Ping测试看问题是否解决最后建议恢复CAR值。

 

112239ogx0smtr25vbsvss.png

调整CPCAR不当将会影响网络业务如果需要调整CPCAR建议联系华为工程师处理。

修改CAR的命令如下

1.         配置cpu-defend policy执行命令car packet-type icmp cir cir-value指定新的CAR值。

<HUAWEI> system-view  
[HUAWEI] cpu-defend policy 1  
[HUAWEI-cpu-defend-policy-1] car packet-type icmp cir 256  
[HUAWEI-cpu-defend-policy-1] display this  
#  
cpu-defend policy 1  
car packet-type icmp cir 256 cbs 48128  
#

2.         将该Policy策略在全局或者指定的接口板应用。

−           全局应用

[HUAWEI] cpu-defend-policy 1 global

−           在指定的接口板应用

[HUAWEI] slot 1  
[HUAWEI-slot-1] cpu-defend-policy 1  
[HUAWEI-slot-1] display this  
#  
slot 1  
cpu-defend-policy 1  
#

1.2.9 检查报文格式是否正确

有时虽然交换机收到了报文但是可能报文的格式不对导致无法得到正确处理。例如目的MAC错误VLAN的CFI被置为1等此时则需要通过获取报文信息来确认。

l   在端口获取报文可以更加直接的看到设备上报文的收**况可以使用端口镜像或者流镜像获取端口下的所有报文然后分析ICMP报文格式是否正确。

l   在镜像获取报文无法实施时使用capture命令确认报文接收情况然后分析ICMP报文格式是否正确。

配置镜像查看报文收**况

l   如果端口上流量不大可以配置端口镜像确认报文的收**况以SwitchA为例。

a.         配置观察口。

<SwitchA> system-view  
[SwitchA] observe-port 1 interface gigabitethernet 1/0/1

b.         配置镜像口获取双向报文。

[SwitchA] interface gigabitethernet 1/0/1  
[SwitchA-GigabitEthernet1/0/1] port-mirroring to observe-port 1 both  
[SwitchA-GigabitEthernet1/0/1] return

l   如果端口上流量比较大可以配置流镜像以SwitchA为例。

a.         配置观察口。

<SwitchA> system-view  
[SwitchA] observe-port 1 interface gigabitethernet 1/0/1

b.         配置ACL规则。

[SwitchA] acl number 3033  
[SwitchA-acl-adv-3033] rule permit icmp source 192.168.1.11 0 destination 192.168.1.10 0  
[SwitchA-acl-adv-3033] rule permit icmp source 192.168.1.10 0 destination 192.168.1.11 0  
[SwitchA-acl-adv-3033] quit

c.         配置流分类。

[SwitchA] traffic classifier 3033  
[SwitchA-classifier-3033] if-match acl 3033  
[SwitchA-classifier-3033] quit

d.         配置流行为。

[SwitchA] traffic behavior 3033  
[SwitchA-behavior-3033] mirroring to observe-port 1  
[SwitchA-behavior-3033] quit

e.         配置流策略。

[SwitchA] traffic policy 3033  
[SwitchA-trafficpolicy-3033] classifier 3033 behavior 3033  
[SwitchA-trafficpolicy-3033] quit

f.          在接口上应用流策略。

[SwitchA] interface gigabitethernet 1/0/1  
[SwitchA-GigabitEthernet1/0/1] traffic-policy 3033 inbound  
[SwitchA-GigabitEthernet1/0/1] traffic-policy 3033 outbound  
[SwitchA-GigabitEthernet1/0/1] return

通过对镜像报文进行分析不仅可以确认报文的收**况同时可以对报文进行校验包括报文的VLAN是否正确、报文的目的MAC地址是否是设备系统MAC地址、报文IP头的checksum是否正确、ICMP的checksum是否正确。

使用capture命令确认报文接收情况

在镜像获取报文无法实施时也可以使用Capture命令来确认端口收到的报文情况可以将报文打印到登录终端进行显示也可以存入.cap文件中保存到设备上然后对获取到的报文进行分析。

capture命令如下

[HUAWEI] capture-packet interface GigabitEthernet 1/0/1 destination terminal packet-num 100  
Info: Captured packets will be shown on terminal.  
[HUAWEI]  
Packet: 1  
-------------------------------------------------------  
00 00 0a 88 15 d0 00 00 0a 88 15 d5 81 00 00 c8  
08 00 45 00 00 54 17 9e 00 00 ff 01 05 eb 07 08  
c8 0d 07 08 c8 02 08 00 40 69 ab e4 00 01 0f 84  
d1 ea 00 00 00 00 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 28 29  
2a 2b 2c 2d 2e 2f  
-------------------------------------------------------  
  
Packet: 2  
-------------------------------------------------------  
00 00 0a 88 15 d0 00 00 0a 88 15 d5 81 00 00 c8  
08 00 45 00 00 54 17 9e 00 00 ff 01 05 eb 07 08  
c8 0d 07 08 c8 02 08 00 40 69 ab e4 00 01 0f 84  
d1 ea 00 00 00 00 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 28 29  
2a 2b 2c 2d 2e 2f  
-------------------------------------------------------

112239c7044k64t68322k4.jpg

该命令只有在V100R006及之后的版本支持。

1.2.10 收集信息并寻求技术支持

1.         收集信息

a.         收集上述各个操作步骤的执行结果。

b.         采集logbuffer信息、trapbuffer信息。

<HUAWEI> display logbuffer

<HUAWEI> display trapbuffer

c.         采集一键式诊断信息。

<HUAWEI> display diagnostic-information

 

112240d22gug22keunug36.png

l  若输出诊断信息过长可以按Ctrl+C停止。

l  此命令主要用于问题定位搜集系统诊断信息搜集时可能会影响系统的性能例如CPU占用率升高等。因此在系统正常运行时不建议执行此命令。

l  严禁在连接到设备的多个终端上同时执行display diagnostic-information命令否则可能造成设备的CPU占用率明显增高导致设备性能下降。

d.         保存交换机的日志、诊断日志。

<HUAWEI> save logfile 
<HUAWEI> system-view 
[HUAWEI] diagnose 
[HUAWEI-diagnose] save diag-logfile

将框式交换机CF卡中保存的日志、诊断日志文件导出到相关文件路径。

<HUAWEI> cd cfcard:/logfile

将盒式交换机Flash中保存的日志、诊断日志文件导出到相文件路径。

<HUAWEI> cd logfile/

2.         寻求技术支持

请联系华为技术支持人员获取技术支持。

1.3 Ping不通故障案例

1.3.1 ICMP报文携带Checksum错误导致Ping不通

现象描述

交换机做网关下挂门禁、PC等终端从交换机上Ping某一台终端不通。

原因分析

交换机对端回应的ICMP Echo Reply报文携带的Checksum错误协议检查不过导致Ping不通。

处理步骤

1.         方法一

在设备ARP学习正常情况下通过流量统计判断ICMP Echo Request报文是否正常发出以及ICMP Echo Reply报文是否正常回应到达交换机也可以通过获取报文来判断

图1-3 报文获取情况

112240vfhdq0eddd3soddo.png

 

从获取报文结果的分析软件能够看出ICMP Reply报文的Checksum值有误即图1-3中的incorrect代表Checksum值有误。

2.         方法二

在交换机上执行Ping操作的前后通过执行display icmp statistics命令查看bad checksum观察ICMP协议层面的Checksum错误包计数是否一直增长。

<HUAWEI> display icmp statistics 
  Input: bad formats         0          bad checksum           3    
         echo                8          destination unreachable 0    
         source quench       0          redirects               0    
         echo reply          0          parameter problem       0    
         timestamp request   0          information request     0    
         mask requests       0          mask replies            0    
         time exceeded       0          timestamp reply         0          
         Mping request       0          Mping reply             0    
  Output:echo                0          destination unreachable 0    
         source quench       0          redirects               0    
         echo reply          8          parameter problem       0    
         timestamp request   0          information reply       0    
         mask requests       0          mask replies            0    
         time exceeded       0          timestamp reply         0 
         Mping request       0          Mping reply             0

从上述回显可以看出Checksum错误包计数一直增长。

解决方案

需要检查对端设备的协议栈软件回应ICMP报文的格式是否正确。

1.3.2 错误的静态ARP表项导致直连设备两端不能Ping通

现象描述

用户用SwitchA替换现网中设备替换完成后组网如图1-4所示。替换完成后发现SwitchA和SwitchB无法正常Ping通。同时在SwitchA查看OSPF状态为Exchange但是还原到替换之前的组网时一切恢复正常。

图1-4 错误的静态ARP表项导致直连设备两端不能Ping通的组网图

112240gsk9k1xjx4s9yzta.png

 

原因分析

1.         因为恢复之前的组网后一切正常所以SwitchA和SwitchB之间的链路没有问题SwitchA和SwitchB之间是直连因此不存在路由问题。SwitchA和SwitchB不能正常Ping通有可能是ARP的学习问题。

2.         在SwitchA上执行display arp all命令检查SwitchA是否学习到了SwitchB的ARP表项。

<SwitchA> display arp all 
IP ADDRESS      MAC ADDRESS  EXPIRE(M) TYPE INTERFACE      VPN-INSTANCE 
                                       VLAN/CEVLAN 
------------------------------------------------------------------------------ 
1.1.1.1         0025-9e80-2494         I -  Vlanif20 
1.1.1.2         0025-9e80-248e  18     D-0  GE1/0/1 
                                       33 
------------------------------------------------------------------------------ 
Total:2        Dynamic:1       Static:0    Interface:1

发现ARP表项已经正常建立。

3.         在SwitchB上执行display arp all命令检查SwitchB是否正常学习到了SwitchA的ARP表项。

<SwitchB> display arp all 
IP ADDRESS      MAC ADDRESS  EXPIRE(M) TYPE INTERFACE      VPN-INSTANCE 
                                       VLAN/CEVLAN 
------------------------------------------------------------------------------ 
1.1.1.2         0025-9e80-248e         I -  Vlanif20 
1.1.1.1         0016-ecb9-0eb2         S--  GE1/0/1 
                                       33 
------------------------------------------------------------------------------ 
Total:2         Dynamic:0       Static:1    Interface:1

输出信息显示IP地址1.1.1.1对应的MAC地址为0016-ecb9-0eb2表项类型“S”表示该ARP表项为静态ARP。此时对比SwitchA上的ARP表项发现在SwitchB上1.1.1.1对应的MAC地址并非SwitchA上1.1.1.1地址对应的MAC地址。

因此问题可能是SwitchB在网络调整前配置了IP+MAC+端口号的静态绑定网络调整后因为对端的MAC变更而SwitchB上并未同步刷新IP+MAC+端口号的静态ARP从而导致SwitchA和SwitchB无法正常Ping通。

处理步骤

1.         在SwitchB执行命令system-view进入系统视图。

2.         执行命令undo arp static ip-address删除当前错误的静态用户绑定表项。

112241ztng7vq7nmn7ty7r.jpg

此时删除前错误的静态ARP表项后SwitchA和SwitchB可以正常Ping通。这里通过配置静态用户绑定表项能有效地防范网络中通过修改源地址而进行的恶意攻击行为的发生。

3.         执行命令arp static ip-address mac-address vid vlan-id interface interface-type interface-number按照对端新加入的设备MAC地址配置正确的静态用户绑定表项。

完成上述步骤后SwitchA和SwitchB可以正常Ping通。同时使用display ospf peer查看OSPF的邻居状态为“FULL”。

<SwitchA> display ospf peer 
         OSPF Process 1 with Router ID 1.1.1.1                             
                 Neighbors                                                       
                                                                                 
 Area 0.0.0.0 interface 1.1.1.1(Vlanif33)'s neighbors                            
 Router ID: 1.1.1.2     Address: 1.1.1.2                                    
   State: Full  Mode:Nbr is  Master  Priority: 1                                 
   DR: 1.1.1.2  BDR: 1.1.1.1  MTU: 0                                             
   Dead timer due in 34  sec                                                     
   Retrans timer interval: 8                                                     
   Neighbor is up for 00:28:17                                                   
   Authentication Sequence: [ 0 ]                                               

案例总结

如果某设备上配置了IP和MAC地址的静态绑定一旦该MAC地址对应设备被替换则需要同步刷新静态绑定表项。此案例中如果SwitchB的对端设备为其他厂商设备在出现故障时无法正常登录设备查看对端设备配置此时可以在SwitchA上Ping SwitchB同时通过镜像获取SwitchA和SwitchB之间的报文然后对报文进行分析从而判断报文中的目的MAC是否正确。

1.3.3 能Ping通但是不能远程登录交换机

现象描述

如图1-5所示在SwitchC上可以Ping通SwitchA的VLANIF20的地址但是在SwitchC上不能telnet登录到SwitchA。

图1-5 能Ping通但是不能远程登录交换机组网图

112241cl4otuod4tlvguad.png

 

原因分析

1.         因为Switch支持Ping快回功能它可以对收到的目的地址是自己的ICMP Echo报**快速应答。

在SwitchC上可以Ping通SwitchA但不能远程登录有可能是SwitchA上开启Ping快回功能导致。如果SwitchA上开启Ping快回功能即使SwitchA上未配置到目的地址是2.1.1.1的路由SwitchA也能快速应答ICMP Request报文此时SwitchC能Ping通SwitchA证明SwitchC和SwitchA之间的链路没有问题但不能排除路由没有问题因此要先判断SwitchC到SwitchA之间网络是否可达。

2.         在SwitchC上执行tracert 1.1.1.1检查SwitchC到SwitchA之间网络是否可达。

<SwitchC> tracert 1.1.1.1 
traceroute to  1.1.1.1(1.1.1.1), max hops: 30 ,packet length: 40 
 1 2.1.1.2 10 ms  1 ms  1 ms 
 2  *  *  *

输出信息显示SwitchC到SwitchB之间网络层是可达的SwitchC到SwitchA之间网络不可达。怀疑是SwitchA上未配置或配置错误的到目地址是2.1.1.1的路由。

3.         在SwitchC上执行telnet 2.1.1.2命令先登录到SwitchB然后再在SwitchB上执行telnet 1.1.1.1命令登录到SwitchA此时证明SwitchA的Telnet相关配置没有问题。

4.         在SwitchA上执行display ip routing-table 2.1.1.1命令显示到目的地址为2.1.1.1最长匹配的路由表项发现为空。此时在SwitchA上执行undo icmp-reply fast命令关闭Ping快回功能。然后在SwitchC上Ping SwitchA发现不能Ping通。

以上分析可以得出在SwitchC上能Ping通SwitchA是因为SwitchA上开启了Ping快回功能。从SwitchC上不能远程登录到SwitchA是因为SwitchA上没有配置到目的地址是2.1.1.1的路由。

处理步骤

1.         在SwitchC上执行命令system-view进入系统视图。

2.         执行命令ip route-static 2.1.1.0 255.255.255.0 1.1.1.2配置到目的网段为1.1.1.2的静态路由。

完成上述步骤后从SwitchC上可以远程登录到SwitchA。

1.3.4 交换机受到ARP报文攻击导致Ping不通

现象描述

如图1-6所示Switch为网关Switch_1框式交换机经常脱管且Switch_1下用户存在上网掉线Ping网关存在时延、不通等现象而Switch_2下联业务正常Ping网关正常。

图1-6 交换机受到ARP报文攻击导致Ping不通组网图

112241xxgy0r6uuk03u6kl.png

 

原因分析

Switch_1上存在源MAC固定的ARP攻击导致用户无法进行正常ARP交互。

处理步骤

在Switch_1上执行以下操作

1.         查看设备CPU占用率判断CPU占用率较高。

<Switch_1> display cpu-usage 
CPU Usage Stat. Cycle: 10 (Second) 
CPU Usage         : 82% Max: 99% 
CPU Usage Stat. Time : 2010-12-18  15:35:56 
CPU utilization for five seconds: 68%: one minute: 60%: five minutes: 55%.

发现CPU占用率达到82%。

2.         查看存在临时ARP表项初步判断设备的ARP表项学习存在问题。

<Switch_1> display arp 
IP ADDRESS  MAC ADDRESS EXPIRE(M) TYPE VPN-INSTANCE   INTERFACE 
VLAN/CEVLAN 
------------------------------------------------------------------------------------------------------ 
10.137.222.139  00e0-fc01-4422            I -         Eth0/0/0 
10.137.222.1    0025-9e36-e8c1  20        D-0         Eth0/0/0 
10.137.222.100  0025-9e80-b278  6         D-0         Eth0/0/0 
10.137.222.99   00e0-4c77-b0e1  9         D-0         Eth0/0/0 
10.137.222.173  000f-3d80-cba4  18        D-0         Eth0/0/0 
10.137.222.34   0025-9e36-e8c1  1         D-0         Eth0/0/0 
10.137.222.172  0016-ec71-ea8c  7         D-0         Eth0/0/0 
10.137.222.35   0025-9e36-e8c1  18        D-0         Eth0/0/0 
10.137.222.179  0014-2ae2-3128  20        D-0         Eth0/0/0 
10.137.222.38   0025-9e36-e8c1  17        D-0         Eth0/0/0 
10.137.222.175  0014-2261-2b22  1         D-0         Eth0/0/0 
10.1.1.3        Incomplete      1         D-0         GE5/0/0 
500/- 
10.1.1.2        Incomplete      1         D-0         GE5/0/0 
500/- 
172.31.255.255  00e0-fc01-4422            I -         Vlanif6 
10.0.0.139      00e0-fc01-4422            I -         Vlanif10 
172.16.0.4      00e0-fc01-4422            I -        Vlanif192 
20.1.1.1        00e0-fc01-4422            I -         Vlanif200 
192.168.2.2     00e0-fc01-4422            I -         Vlanif100 
------------------------------------------------------------------------------------------------------ 
Total:16        Dynamic:10      Static:0    Interface:6

发现有两条ARP表项的“MAC ADDRESS”字段为“Incomplete”即为临时表项表示有ARP表项学习不到。

3.         判断设备正遭受ARP攻击。

a.         由于有未学习到的ARP表项查看上送CPU的ARP-Request报文统计信息。

<Switch_1>display cpu-defend arp-request statistics all 
Statistics on mainboard: 
------------------------------------------------------------------------------------------------------------------ 
Packet Type         Pass(Bytes)       Drop(Bytes)   Pass(Packets)     Drop(Packets) 
----------------------------------------------------------------------------------------------------------------- 
arp-request            67908288            0         1061067               0 
------------------------------------------------------------------------------------------------------------------ 
Statistics on slot 4: 
------------------------------------------------------------------------------------------------------------------ 
Packet Type         Pass(Bytes)       Drop(Bytes)   Pass(Packets)     Drop(Packets) 
------------------------------------------------------------------------------------------------------------------ 
arp-request            80928            44380928          2301         693450 
------------------------------------------------------------------------------------------------------------------ 
Statistics on slot 5: 
------------------------------------------------------------------------------------------------------------------ 
Packet Type         Pass(Bytes)       Drop(Bytes)   Pass(Packets)     Drop(Packets) 
------------------------------------------------------------------------------------------------------------------ 
arp-request                 N/A          N/A               0               0 
------------------------------------------------------------------------------------------------------------------ 
Statistics on slot 6: 
------------------------------------------------------------------------------------------------------------------ 
Packet Type         Pass(Bytes)       Drop(Bytes)   Pass(Packets)     Drop(Packets) 
------------------------------------------------------------------------------------------------------------------ 
arp-request                 N/A          N/A               0               0 
------------------------------------------------------------------------------------------------------------------

发现交换机的4号单板上存在大量ARP-Request报文丢包。

b.         配置攻击溯源识别攻击源。

<Switch_1>system-view 
[Switch_1]cpu-defend policy policy1 
[Switch_1-cpu-defend-policy-policy1]auto-defend enable 
[Switch_1-cpu-defend-policy-policy1]auto-defend attack-packet sample 5   
//每5个报文抽样识别一次抽样值过小会消耗过多CPU 
[Switch_1-cpu-defend-policy-policy1]auto-defend threshold 30   
//报文达30pps即被识别为攻击若攻击源较多可调低该值 
[Switch_1-cpu-defend-policy-policy1]undo auto-defend trace-type source-ip source-portvlan   
//基于源MAC进行攻击源识别 
[Switch_1-cpu-defend-policy-policy1]undo auto-defend protocol 8021x dhcp icmp igmp tcp telnet ttl-expired udp   
//针对ARP攻击进行识别 
[Switch_1-cpu-defend-policy-policy1]quit 
[Switch_1]cpu-defend-policy policy1 
[Switch_1]cpu-defend-policy policy1 global

c.         查看攻击源信息。

[Switch_1]display auto-defend attack-source 
Attack Source User Table (MPU): 
------------------------------------------------------------------------------------------------ 
MacAddress       InterfaceName      Vlan:Outer/Inner      TOTAL 
------------------------------------------------------------------------------------------------ 
0000-0000-00db   GigabitEthernet2/0/22         193           416 
------------------------------------------------------------------------------------------------

发现攻击源的MAC地址为0000-0000-00db位于GigabitEthernet2/0/22端口。

如果该MAC有对应ARP还可以执行命令display arp | include 0000-0000-00db查询对应的IP。

解决方案

l   配置黑名单。


acl number 4000 
 rule 10 permit type 0806 ffff source-mac 0000-0000-00db ffff-ffff-ffff 

cpu-defend policy 1 
 blacklist 1 acl 4000  
//针对来自特定用户恶意报文的攻击设备通过ACL把符合特定特征的用户纳入到黑名单中被纳入黑名单的用户所发的报文到达设备后均会被丢弃 

cpu-defend-policy 1  
cpu-defend-policy 1 global 
#

l   配置攻击溯源的惩罚功能。

#  
cpu-defend policy policy1  
 auto-defend enable  
 auto-defend threshold 30  
 undo auto-defend trace-type source-ip source-portvlan  
 undo auto-defend protocol 8021x dhcp icmp igmp tcp telnet ttl-expired udp 
 auto-defend action deny   
//使能攻击溯源的惩罚功能并指定惩罚措施。在默认惩罚时间300s内将识别为攻击的报文全部丢弃 

 cpu-defend-policy policy1 global  
 cpu-defend-policy policy1  
#

1.3.5 PE私网之间无法Ping通

现象描述

如图1-7所示两台PE上分别建立两个Loopback接口。Loopback1接口为公网接口IP地址分别为1.1.1.1/32和1.1.1.2/32。Loopback2接口绑定VPN实例test且IP地址分别为10.1.1.1/24和10.1.1.2/24两台PE之间无法交换VPN私网路由相互之间Ping不通。

图1-7 PE私网之间无法Ping通的组网图

112242gz4wyle50r7l50y9.png

 

原因分析

当设备上存在两条相同的路由一条为直连路由一条为BGP路由。此时设备会优选直连路由创建到自身路由表所以私网路由表中没有BGP私网路由导致无法Ping通。

处理步骤

1.         在PE1和PE2上执行display ip routing-table命令检查是否有去往对端网段的路由。可以看到路由表中有去往对端Loopback1接口网段的路由。

2.         在PE1和PE2上执行display ip routing-table vpn-instance vpn-instance-name命令查看私网路由表中的路由。发现只有一条路由10.1.1.0/24 Direct是路由设备自身Loopback2接口路由。同时发现掩码是24位而不是32位。

这样的话两台PE的Loopback2接口地址便在同一网段内了。其实设备已经收到了私网路由但是与其自身Loopback2接口地址在同一网段相当有两条相同的路由一条为直连路由一条为BGP路由。此时设备会优选直连路由创建到自身路由表所以私网路由表中没有BGP私网路由导致PE间无法Ping通。

解决方案

在PE1和PE2上分别执行下列步骤

1.         执行命令system-view进入系统视图。

2.         执行命令interface loopback loopback-number进入Loopback2接口视图。

3.         执行命令ip address ip-address mask mask-length }配置接口的IP地址将Loopback接口IP地址的掩码改为32位。

经验及总结

如果到同一个网段有两条相同的路由设备只会选择其中之一更新到路由表。

1.3.6 交换机与C厂商C3750对接出现Ping不通

现象描述

如图1-8所示Switch与C厂商C3750直连通过VLAN200建立OSPF邻居分别发布各自设备上VLAN100以及VLAN300的网段路由到对端。在网络中Monitor Server 172.19.2.2通过Ping操作监控下游的Server 172.19.3.2是否在线。

图1-8 交换机与C厂商C3750对接出现Ping不通组网图

112242tsms0d7m07oomsx2.png

 

问题发生时每隔18个小时大约发生一次Ping不通的现象半小时后自动恢复影响了客户的视频监控业务。

原因分析

C厂商设备上路由非正常老化使到Monitor server的网段路由172.19.2.0消失造成Ping不通。

处理步骤

1.         通过流量统计发现监控服务器发出的ICMP请求通过Switch正常转发但未收到ICMP Reply回应报文初步判断问题出现在C厂商设备上。

2.         在C厂商设备上观察路由信息发现问题发生时到监控服务器的网段路由消失导致回程的ICMP Reply报文在C厂商设备上丢弃。

对比一下故障发生时C厂商设备和Switch上LSDB的所有信息发现C厂商设备比Switch少如下两个Network LSA。

Type      LinkState ID    AdvRouter        Age  Len   Sequence   Metric 
Network   172.19.5.1      172.19.1.250      1256  32    80000208    0 
Network   172.19.5.1      172.19.99.10      3600  32    800026C9    0

172.19.99.10产生的这个LSA是Switch后收到的向所有邻居洪泛C厂商收到之后的处理是将原先172.19.1.250发布的LSA删除造成路由计算时路由丢失。30分钟之后172.19.1.250也就是Switch做LSA刷新会把自己的Network LSA再发给C厂商C3750C厂商C3750上路由就自然恢复了。

请注意

−           OSPF协议中LSA由三要素唯一标识Type、LinkStateIDAdvRouter也就是说这两个LSA在Switch上认为是不同的LSA。怀疑C厂商设备将两个LSA认为是同一个LSA因此使用172.19.99.10发布的这个将原LSDB中的覆盖另外由于该LSA的Age是3600因此将其老化删除造成路由丢失。

−           172.19.99.10产生的这个LSA有DC标识。

Type      : Network 
Ls id     : 172.19.5.1 
Adv rtr   : 172.19.99.10 
Ls age    : 3600 
Len       : 32 
Options   :  DC  E 
seq#      : 800026c9 
chksum    : 0xd55 
Net mask  : 255.255.255.0 
Attached Router    172.19.99.10 
Attached Router    172.19.8.1

协议RFC1793中有描述由于DoNotAge bitAge字段的最高位置为1那么这个LSA不需要被删除即使发布者不存在于网络。

那么这些LSA什么时候删除呢

需要同时满足两个条件

- LSA在LSDB中存在至少3600秒。

- LSA发布者不可达。

解决方案

l   将Switch与C厂商设备的OSPF邻居类型改为P2P可有效避免错误LSA消息的干扰。

l   修改Switch与C厂商的邻居接口的互连地址也可避免错误LSA消息的干扰。

1.3.7 管理网口下的IP地址Ping不通网关的故障案例

涉及产品和版本

所有产品和版本

组网情况

如图1-9所示管理网口Meth和Switch的GE0/0/46相连。Switch的上行口GE0/0/47、GE0/0/48绑定到Eth-Trunk12中同时通过Eth-Trunk12和网关SwitchA相连。Switch上配置了IPSG功能。

图1-9 管理网口下的IP地址Ping不通网关的故障案例组网图

112242rr8rhe9r8bqxghrd.png

 

现象描述

管理网口下的IP地址10.5.17.253/24Ping不通网关SwitchA。

处理步骤

                                步骤 1      在Switch上执行命令display mac-address查看MAC表项同时查看Switch上的IPSG配置。

<Switch> display mac-address 
------------------------------------------------------------------------------- 
MAC Address    VLAN/VSI                          Learned-From        Type       
------------------------------------------------------------------------------- 
0024-ac11-2670 2017/-                            Eth-Trunk12         dynamic    
745a-aadf-7f00 2017/-                            GE0/0/46            dynamic    
 
------------------------------------------------------------------------------- 
Total items displayed = 2


user-bind static ip-address 10.5.17.253 mac-address 745a-aadf-7f00 interface GigabitEthernet0/0/46 
user-bind static mac-address 0024-ac11-2670 interface Eth-Trunk12 

interface MEth0/0/1 
 ip address 10.5.17.253 255.255.255.0 

interface Eth-Trunk12 
 port link-type trunk 
 port trunk allow-pass vlan 2017 
 arp anti-attack check user-bind enable 
 ip source check user-bind enable 

interface GigabitEthernet0/0/46 
 port default vlan 2017 
 arp anti-attack check user-bind enable 
 ip source check user-bind enable

                                步骤 2      由于Switch上配置了arp anti-attack check user-bind enable如果网关SwitchA先触发ARP学习发送ARP广播报文则在Switch上观察可以广播到GE0/0/46出去再到管理口学习地址可以Ping通如果Switch先触发ARP学习网关回ARP单播报文会被检查不再发到管理网口导致ARP学习不到所以Ping不通。

建议不要用交换机管理网口做测试用交换机下挂的设备做测试。如果一定要用管理网口做测试可以先在网关上清除下交换机的ARP。

----结束

1.3.8 S9300无法Ping通摄像头的故障案例

涉及产品和版本

S9300 V200R001

组网情况

如图1-10所示Switch通过接口GE2/0/10和摄像头相连。

图1-10 S9300无法Ping通摄像头的故障案例组网图

112243cd9lkcnv8mmkdvv9.png

 

现象描述

S9300无法Ping通摄像头。

原因分析

ICMP报文的限速功能是使能的ICMP报文被丢弃导致S9300无法Ping通摄像头。

处理步骤

                                步骤 1      执行命令display cpu-defend statistics all查看上述CPU的报文统计信息发现有大量的ICMP报文被丢弃。

<S9300> display cpu-defend statistics all 
 Statistics on mainboard: 
------------------------------------------------------------------------------- 
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets) 
------------------------------------------------------------------------------- 
icmp                  754529686            0         9672793               0 
------------------------------------------------------------------------------- 
 Statistics on slot 1: 
------------------------------------------------------------------------------- 
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets) 
------------------------------------------------------------------------------- 
icmp                   40999663        18688          405269              20 
------------------------------------------------------------------------------- 
 Statistics on slot 2: 
------------------------------------------------------------------------------- 
Packet Type         Pass(Bytes)  Drop(Bytes)   Pass(Packets)   Drop(Packets) 
------------------------------------------------------------------------------- 
icmp                 353711830k      9195452      5522622743          138905

                                步骤 2      执行命令display logbuffer查看日志信息发现有全局上的ICMP报文和接口上的ICMP报文速率超过阈值的日志信息。

Jun 30 2017 11:10:07+08:00 S9306 %SECE/4/ICMP_GLOBAL_RATELIMIT(l)[159]:Rate of global icmp packets exceeds the limit( Threshold=100 packets per second). 
Jun 30 2017 11:05:05+08:00 S9306 %SECE/4/ICMP_GLOBAL_RATELIMIT(l)[161]:Rate of global icmp packets exceeds the limit( Threshold=100 packets per second). 
Jun 30 2017 10:55:02+08:00 S9306 %SECE/4/ICMP_GLOBAL_RATELIMIT(l)[165]:Rate of global icmp packets exceeds the limit( Threshold=100 packets per second). 
Jun 30 2017 09:01:28+08:00 S9306 %SECE/4/ICMP_INTF_RATELIMIT(l)[219]:Rate of icmp packets on interface exceeds the limit(SourceInterface=GigabitEthernet2/0/10, Threshold=100 packets per second). 
Jun 30 2017 08:56:27+08:00 S9306 %SECE/4/ICMP_INTF_RATELIMIT(l)[221]:Rate of icmp packets on interface exceeds the limit(SourceInterface=GigabitEthernet2/0/10, Threshold=100 packets per second).

                                步骤 3      缺省情况下S9300 V200R001版本ICMP报文的限速功能是使能的icmp rate-limit enable接口和全局ICMP报文限速阈值为100pps。

可以执行命令undo icmp rate-limit enable去使能全局ICMP限速或者执行命令icmp-reply fast配置Ping快回S9300能Ping通摄像头。

----结束

总结与建议

S9300 V200R001以及之前版本ICMP报文的限速功能是使能的V200R001之后版本ICMP报文的限速功能是未使能的。

1.3.9 终端和VRRP备设备相连网关Ping不通终端的故障案例

涉及产品和版本

所有产品和版本

组网情况

如图1-11所示SwitchA和SwitchB配置VRRP其中SwitchA为VRRP主SwitchB为VRRP备。PC所在的网段为10.0.0.0网关SwitchC所在的网段为10.36.0.0。

用户想实现10.36.0.0到10.0.0.0网段互通在SwitchB上配置基于ACL的报文过滤允许10.0.0.0到10.36.0.0流量通过其余的全部拒绝同时该规则应用在VLAN 322的出方向上。

图1-11 终端和VRRP备设备相连网关Ping不通终端的故障案例组网图

112243ooc41rno44u49zmv.png

 

现象描述

SwitchC无法Ping通PC。

原因分析

1.         查看SwitchC上的配置。

名称为Vlan322Out、编号为3022的ACL中允许网段10.0.0.0到网段10.36.0.0的所有流量通过因此PC能Ping通Switch。当SwitchC Ping PC时没有允许网段10.36.0.0到网段10.0.0.0的流量通过。


acl name Vlan322Out 3022  
 rule 10 permit ip source 10.0.0.0 0.15.255.255 destination 10.36.0.0 0.0.255.255  
 rule 30 permit ip source 10.36.0.0 0.0.255.255 destination 224.0.0.0 0.0.0.255  
 rule 40 permit ip source 10.38.0.0 0.0.255.255 destination 10.36.0.0 0.0.255.255  
 rule 50 permit ip source 10.100.5.0 0.0.0.255 destination 10.36.0.0 0.0.255.255  
 rule 60 permit ip source 10.100.246.0 0.0.0.255 destination 10.36.0.0 0.0.255.255  
 rule 1000 deny ip  

acl number 3144  
 rule 10 deny tcp destination-port eq 5554  
 rule 15 deny tcp destination-port eq 9995  
 rule 20 deny tcp destination-port eq 9996  
 rule 25 deny udp destination-port eq 445  
 rule 30 deny udp destination-port eq 1434  
 rule 40 permit ip source 10.0.0.0 0.255.255.255 destination 10.0.0.0 0.255.255.255  
 rule 45 permit ip source 10.36.0.0 0.0.255.255 destination 224.0.0.0 0.0.0.255  
 rule 1000 deny ip  

interface GigabitEthernet1/0/7  
 port link-type access  
 port default vlan 322  

traffic-filter vlan 322 inbound acl 3144 
traffic-filter vlan 322 outbound acl name Vlan322Out

2.         PC相连的SwitchB是VRRP的备设备如果是备设备的话走二层转发则双向都必须允许通过才能通。如果PC相连的是VRRP的主设备只需要配置单向流量即可。

处理步骤

                                步骤 1      在acl name Vlan322Out 3022下增加规则rule 20 permit ip source 10.36.0.0 0.0.255.255 destination 10.0.0.0 0.255.255.255SwitchC能Ping通PC问题解决。

----结束

1.3.10 汇聚层交换机上行和下行分别绑定Eth-Trunk接入层交换机无法Ping通网关的故障案例

涉及产品和版本

框式交换机  V200R007以及之后版本

组网情况

如图1-12所示ME60为SwitchB的网关SwitchA做二层透传。SwitchA上行通过Eth-Trunk52与ME60相连下行通过Eth-Trunk24与SwitchB相连。

图1-12 汇聚层交换机上行和下行分别绑定Eth-Trunk接入层交换机无法Ping通网关的故障案例组网图

112243dbio70qau3lu55tf.png

 

现象描述

SwitchB无法Ping通网关ME60。

原因分析

广播到同板和其他单板的非已知单播报文将VLAN作为Eth-Trunk HASH因子选路时同板取的是原始报文里的VLAN跨板取得是经过VLAN转换后的VLAN这样导致算出来的HASH key值不一致出现Eth-Trunk出口多包或者少包的情况。

处理步骤

                                步骤 1      在SwitchA上配置对ARP报文的流量统计。从下面的报文统计信息可以发现SwitchB的ARP广播请求报文没有转发到ME60上。

[SwitchA] display traffic policy statistics interface Eth-Trunk 24 inbound verbose rule-base  
 Interface: Eth-Trunk24 
 Traffic policy inbound: Qos-ZhuanXian 
 Rule number: 1 
 Current status: success 
 Statistics interval: 300 
--------------------------------------------------------------------- 
 Classifier: arp operator and 
 Behavior: arp 
 if-match l2-protocol arp 
 if-match source-mac 4846-fbeb-f3ba 
 if-match destination-mac ffff-ffff-ffff  
 Board : 2 
--------------------------------------------------------------------- 
 Passed          |      Packets:                         127 
                     Bytes:                           8,636 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Board : 3 
--------------------------------------------------------------------- 
 Passed           |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Board : 4 
--------------------------------------------------------------------- 
 Passed           |      Packets:                             1 
                  |      Bytes:                              68 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0

[SwitchA] display traffic policy statistics interface Eth-Trunk 52 outbound verbose rule-base  
 
 Interface: Eth-Trunk52 
 Traffic policy outbound: arp 
 Rule number: 1 
 Current status: success 
 Statistics interval: 300 
--------------------------------------------------------------------- 
 Classifier: arp operator and 
 Behavior: arp1 
 if-match l2-protocol arp 
 if-match source-mac 4846-fbeb-f3ba 
 if-match destination-mac ffff-ffff-ffff  
 Board : 2 
--------------------------------------------------------------------- 
 Passed         |      Packets:                         0 
                |      Bytes:                           0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Board : 4 
--------------------------------------------------------------------- 
 Passed           |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Board : 5 
--------------------------------------------------------------------- 
 Passed           |      Packets:                             0 
                  |      Bytes:                              0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Board : 6 
--------------------------------------------------------------------- 
 Passed           |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
--------------------------------------------------------------------- 
 Dropped          |      Packets:                             0 
                  |      Bytes:                               0 
                  |      Rate(pps):                           0 
                  |      Rate(bps):                           0 
---------------------------------------------------------------------

                                步骤 2      查看下行口Eth-trunk24与上行口Eth-trunk52的配置

Eth-trunk24的配置如下


interface Eth-Trunk24 
 undo port hybrid vlan 1 
 port hybrid tagged vlan 80 300 500 534 to 535 900 932 to 933 1957 to 1958 1999 2843 2923 to 2926 
 port hybrid tagged vlan 2931 to 2934 2950 2973 to 2974 3018 3041 to 3042 3090 3101 3194 3204 to 3206 3265 
 port hybrid tagged vlan 3355 3465 to 3469 3651 3683 3725 3729 3786 3828 3838 3848 to 3849 
 port hybrid tagged vlan 4017 
 port hybrid untagged vlan 150 
 port vlan-stacking vlan 151 stack-vlan 150 
 port vlan-stacking vlan 152 stack-vlan 150 
 port vlan-stacking vlan 189 stack-vlan 150 
 port vlan-stacking vlan 279 stack-vlan 150 
 traffic-policy Qos-ZhuanXian inbound 
 traffic-policy 3333 outbound 
 urpf loose 
#

[SwitchA] display eth-trunk 24 
Eth-Trunk24'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: 3                      
-------------------------------------------------------------------------------- 
PortName                      Status      Weight  
GigabitEthernet2/0/5          Up          1       
GigabitEthernet4/0/17         Up          1       
GigabitEthernet3/1/17         Up          1   

Eth-Trunk52的配置如下


interface Eth-Trunk52 
 port link-type trunk 
 undo port trunk allow-pass vlan 1 
 port trunk allow-pass vlan 150 2001 to 2002 2146 2187 3355 4001 
 traffic-policy arp outbound 
 mode lacp 
#

[SwitchA] display eth-trunk 52 
Eth-Trunk52's state information is: 
Local: 
LAG ID: 52                  WorkingMode: LACP                                  
Preempt Delay: Disabled     Hash arithmetic: According to SIP-XOR-DIP          
System Priority: 32768      System ID: 68a8-284d-59d0                          
Least Active-linknumber: 1  Max Active-linknumber: 8                           
Operate status: up          Number Of Up Port In Trunk: 8                      
-------------------------------------------------------------------------------- 
ActorPortName          Status   PortType PortPri PortNo PortKey PortState Weight 
GigabitEthernet4/0/20  Selected 1GE      32768   57     13361   10111100  1      
GigabitEthernet2/0/20  Selected 1GE      32768   58     13361   10111100  1      
GigabitEthernet5/0/4   Selected 1GE      32768   59     13361   10111100  1      
GigabitEthernet6/0/4   Selected 1GE      32768   60     13361   10111100  1      
GigabitEthernet5/0/5   Selected 1GE      32768   61     13361   10111100  1      
GigabitEthernet5/0/6   Selected 1GE      32768   62     13361   10111100  1      
GigabitEthernet6/0/5   Selected 1GE      32768   63     13361   10111100  1      
GigabitEthernet6/0/6   Selected 1GE      32768   64     13361   10111100  1      
 
Partner: 
-------------------------------------------------------------------------------- 
ActorPortName          SysPri   SystemID        PortPri PortNo PortKey PortState 
GigabitEthernet4/0/20  32768    e435-c888-2e6a  32768   21     817     10111100 
GigabitEthernet2/0/20  32768    e435-c888-2e6a  32768   17     817     10111100 
GigabitEthernet5/0/4   32768    e435-c888-2e6a  32768   18     817     10111100 
GigabitEthernet6/0/4   32768    e435-c888-2e6a  32768   22     817     10111100 
GigabitEthernet5/0/5   32768    e435-c888-2e6a  32768   19     817     10111100 
GigabitEthernet5/0/6   32768    e435-c888-2e6a  32768   20     817     10111100 
GigabitEthernet6/0/5   32768    e435-c888-2e6a  32768   23     817     10111100 
GigabitEthernet6/0/6   32768    e435-c888-2e6a  32768   24     817     10111100

                                步骤 3      查看非已知单播的Eth-Trunk负载分担方式

[SwitchA] display current-configuration | include load 
unknown-unicast load-balance enhanced 
load-balance-profile 1 
 load-balance enhanced profile 1 
 load-balance enhanced profile 1 
 load-balance enhanced profile 1 
 load-balance enhanced profile 1 
[SwitchA] load-balance-profile 1 
[SwitchA-load-balance-profile-1] display this 

load-balance-profile 1 
 l2 field smac dmac vlan 

return

广播报文是在下行单板进行HASH的根据每个下行单板的HASH算法结合Eth-trunk52各个成员端口加入Eth-trunk的前后顺序会计算出唯一一个流量转发出去的端口。对于ARP广播报文由于配置了非已知单播增强模式所以使用了增强模板即HASH因子为SMAC+DMAC+VLAN。流量从Eth-trunk24口的2号单板成员口进来原始报文为VLAN189命中了Eth-trunk24的VLAN Stacking配置Eth-trunk HASH计算时在2号单板是以SMAC+DMAC+VLAN189计算出一个HASH值以原始报文里面的VLAN作为HASH值但是通过广播到其他下行单板时因为已经在2号板上行做了VLAN Stacking的动作此时外层VLAN已是VLAN150下行单板识别报文的原始VLAN值是VLAN150所以在Eth-trunk52的其他非2号单板上是以SMAC+DMAC+VLAN150计算出一个HASH值。

从上述分析可知Eth-trunk52的2号单板与其他单板算出的HASH key值不唯一导致的后果就是多包或者少包该问题就是明显的少包现象。

                                步骤 4      在SwitchA上执行命令unknown-unicast load-balance  enhanced  lbid问题解决。

此方式下对于非已知单播Eth-trunk HASH选路在上行单板所以保证了HASH key值唯一不会出现多包或少包现象。

----结束

总结与建议

同时满足下述三个条件时需要配置unknown-unicast load-balance  enhanced  lbid

1.         入口配置且命中VLAN转换通过VLAN Stacking或者VLAN Mapping或者ACL策略或者配置dot1q-tunnel转换成其他VLAN。

2.         全局配置了非已知单播增强模式且模板中包含VLAN作为因子。

3.         出接口Eth-Trunk存在与入口板相同单板的成员口与其他单板成员口的组合。

1.3.11 AP掉线后无法ping通AC的VRRP问题案例

涉及产品和版本

系列

形态

版本

盒式交换机

S2300&S3300&S5300

V100R002/V100R003/V100R005/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S6300

V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

框式交换机

S9300

V100R001/V100R002/V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9300E

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

 

系列

形态

版本

盒式交换机

S2700&S3700&S5700

V100R002/V100R003/V100R005/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S6700

V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

框式交换机

S7700

V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9700

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S12700

V200R005/V200R006/V200R007/V200R008

 

组网情况

如图1-13所示两台交换机SW63和SW64部署VRRPSW64是主用交换机SW63是备用交换机做为下行AC的网关AP掉线后AC ping AP不通。

图1-13 AP掉线后无法ping通AC的VRRP问题案例组网图

112244vgn7lx7axzydk9tg.png

 

问题根因说明

下挂的Z厂商AC45正常情况下应学习到交换机的VRRP的虚地址AP掉线时在AC上获取报文头显示AC封装的是备用交换机的MAC报文到达主机后由于MAC不是主机MAC直接走二层到达备用交换机在备用交换机上查路由表走三层转发又回到主用交换机在主用交换机上查路由表走三层出去到达路由器不带标签。

根据Z厂商工程师获取报文的信息从AC侧发出的报文可以看到报文封装的是VRRP备机的MAC

[LNSY-MA-CMNET-SW63]display interface vlan 3421 
Vlanif3421 current state : Administratively DOWN 
Line protocol current state : DOWN 
Description:ZX-AC46-Xia 
Route Port,The Maximum Transmit Unit is 1500 
Internet Address is 192.168.252.214/29 
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 0819-a620-8bea

这样报文到达主机后由于MAC不是主机MAC直接走二层到达备机在备机上走三层转发又回到主机在主机走三层出去到达路由器不带标签路由器由于没有标签无法转发将报文丢弃。

处理步骤

在交换机入口获取报文头或者基于虚MAC做流量统计查看报文的带的MAC是否正确。

Z厂商设备学习VRRP的虚MAC有问题无法学到虚MAC需要Z厂商处理。

总结与建议

在处理VRRP丢包问题使用流量统计时需要考虑MAC信息。

1.3.12 去使能快回后交换机才能Ping通故障案例

适用产品形态及版本

系列

形态

版本

盒式交换机

S2300&S3300&S5300

V100R002/V100R003/V100R005/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S6300

V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

框式交换机

S9300

V100R001/V100R002/V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9300E

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

 

系列

形态

版本

盒式交换机

S2700&S3700&S5700

V100R002/V100R003/V100R005/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S6700

V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

框式交换机

S7700

V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9700

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S12700

V200R005/V200R006/V200R007/V200R008

 

问题现象描述及组网

从远端Ping 交换机上接口地址无法Ping通在交换机上undo icmp-reply fast去使能快回后能Ping通。

问题根因说明

交换机上路由表超规格导致部分路由未下发到硬件。

l   默认使能快回时报文上送CPU后应答报文需要通过硬件路由表项转发当不存在路由表项时Ping不通。

l   当去使能Ping快回时icmp包通过icmp不可达规格上送CPU并通过软表中的路由转发出去出现Ping能通。这种情况下即使能Ping通由于硬件没有表项三层转发也是存在问题。

问题判断方法

1.         确认设备的形态和版本是否是框式交换机或者盒式交换机V100R006版本或者之后版本。

2.         通过命令display fib statistics all查看设备上学习到的路由数是否超规格。默认情况下A类型单板路由规格只有16KC/D类型单板配置大路由模式时路由规格为128K和512K。另外路由是全局所有接口板都下发的需要所有接口板都不能超规格。

<HUAWEI>display fib statistics all 
IPv4 FIB Total Route Prefix Count : 412073; Entry Count : 412073 
IPv4 FIB Public Route Prefix Count : 412058; Entry Count : 412058 
IPv4 FIB VPN-instance CUSTVPN_1 Route Prefix Count : 4; Entry   Count : 4 
IPv4 FIB VPN-instance CUSTVPN_20 Route Prefix Count : 7; Entry   Count : 7 
IPv4 FIB VPN-instance vpna Route Prefix Count : 4; Entry Count :   4

解决方案

l   调整组网减少交换机上路由学习数目。

l   直接更换路由规格更大的单板类型替换。

1.3.13 接口板上FIB的容量超过规格导致Ping不通案例

适用产品形态及版本

系列

形态

版本

框式交换机

S9300

V100R001/V100R002/V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9300E

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

 

系列

形态

版本

框式交换机

S7700

V100R003/V100R006/V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S9700

V200R001/V200R002/V200R003/V200R005/V200R006/V200R007/V200R008

S12700

V200R005/V200R006/V200R007/V200R008

 

问题现象描述及组网

112244r79uvt179nagnt9i.png

设备上存在BGP邻居通过ip ip-prefix配置控制BGP路由的学习。当修改ip ip-prefix配置后再在设备上创建VLANIF接口添加IP地址和一对端设备直连从设备Ping对端设备的直连地址Ping不通。

问题根因说明

设备上FIB数量超过了单板的规格多余FIB表项不能下发到接口板导致转发问题。

问题判断方法

在修改ip ip-prefix配置的前用命令display fib statistics all查询设备上的路由数量在48K左右没有超过接口板上FIB的容量规格128K。当修改ip ip-prefix配置后设备上学习到的BGP路由增加很多增长到300多K已经超过了接口板上的FIB规格有很多FIB表项没有添加到接口板。这个时候再创建vlanif接口配置ip地址生成的直连路由也是无法下发到接口板上的。这种情况下从设备ping cisco设备arp能正常学习但是cisco设备回应的icmp应答报文就无法命中本机路由而是匹配了设备上从BGP邻居学过来的默认路由。应答报文也就不能上送到CPU而是转发到其它设备去了导致出现ping不通的现象。

解决方案

先创建vlanif接口配置ip地址保证生成的直连路由先成功下发到接口板然后再修改ip ip-prefix配置。

经验总结

定位转发问题一般可以先检查下设备上的路由数量先确认FIB是否超过了接口板上的规格。执行命令display fib XXXstatistics all可以查看单板上的FIB规格和已经添加的FIB数量。

1.3.14 远端Ping下行路由器接口地址不通的故障案例

涉及产品和版本

S9300 V200R008

组网情况

如图1-14所示Switch上行连接到两台CE交换机两台CE交换机上行分别连接到NE路由器Switch、CE和NE之间OSPF路由互通。下行用户侧Router配置两条等价默认路由到Switch。

图1-14 远端Ping下行路由器接口地址不通的故障案例

112244u5xpof5ffmbzs3bb.png

 

现象描述

从远端远端IP为10.203.45.3Ping用户Router上行口和GE3/0/24对接地址10.18.223.82不通Ping另一个上行口和GE3/0/0对接地址正常。

原因分析

Switch的下行口配置了命令urpf strict allow-default-route

处理步骤

                                步骤 1      Ping不通时在Switch上做流量统计可以收到用户Router的回包但Switch的上行口并没有报文发出去。

[Switch] display traffic policy statistics interface GigabitEthernet 3/0/24 outbound verbose rule-base class tj 
 
Interface: GigabitEthernet3/0/24 
Traffic policy outbound: tj 
Rule number: 4 
Current status: success 
Statistics interval: 300 
--------------------------------------------------------------------- 
Classifier: tj operator or 
Behavior: tj 
Board : 3 
rule 5 permit icmp source 10.203.45.3 0 destination 10.18.223.82 0 (match-counter 0) 
--------------------------------------------------------------------- 
Passed | Packets: 218 
 
Bytes: 17,004  
Rate(pps): 0  
Rate(bps): 120 
--------------------------------------------------------------------- 
Dropped  Packets: 0  
Bytes: 0  
Rate(pps): 0  
Rate(bps): 0 
---------------------------------------------------------------------

[Switch] display traffic policy statistics interface GigabitEthernet 3/0/0 inbound verbose rule-base class tj 
 
Interface: GigabitEthernet3/0/0 
Traffic policy inbound: tj 
Rule number: 4 
Current status: success 
Statistics interval: 300 
--------------------------------------------------------------------- 
Classifier: tj operator or 
Behavior: tj 
Board : 3 
rule 5 permit icmp source 10.203.45.3 0 destination 10.18.223.82 0 (match-counter 0) 
--------------------------------------------------------------------- 
Passed | Packets: 0 
 
Bytes: 0  
Rate(pps): 0  
Rate(bps): 0 
--------------------------------------------------------------------- 
Dropped  Packets: 0  
Bytes: 0  
Rate(pps): 0  
Rate(bps): 0 
--------------------------------------------------------------------- 
rule 10 permit icmp source 10.18.223.82 0 destination 10.203.45.3 0 (match-counter 0) 
--------------------------------------------------------------------- 
Passed  Packets: 113  
Bytes: 8,814  
Rate(pps): 0  
Rate(bps): 120 
--------------------------------------------------------------------- 
Dropped  Packets: 0  
Bytes: 0

                                步骤 2      查看GE3/0/24和GE3/0/0下的配置。

发现端口下有命令urpf strict allow-default-route路由ARP学习在GE3/0/24远端10.203.45.3 Ping 10.18.223.82时ICMP应答报文从GE3/0/0进来URPF在路由表和ARP表中查找数据包的IP源地址与数据包的来源接口不匹配将报文丢弃因此Ping不通。


interface GigabitEthernet3/0/0 
 description description2 
 port link-type access 
 port default vlan 600 
 traffic-policy tj inbound 
 traffic-policy tj outbound 
 urpf strict allow-default-route 

interface GigabitEthernet3/0/24 
 description description1 
 port link-type access 
 port default vlan 607 
 traffic-policy tj inbound 
 traffic-policy tj outbound 
 urpf strict allow-default-route

删除端口GE3/0/0和GE3/0/24下的urpf strict allow-default-route配置问题解决。

----结束

1.4 Ping不通FAQ

1.4.1 交换机和服务器对接为什么交换机能Ping通服务器而服务器无法Ping通交换机

当服务器Ping交换机时如果ICMP报文的MAC地址为交换机的MAC地址则能Ping通否则Ping不通。服务器无法Ping通交换机时是因为ICMP报文的目的MAC变化导致的。

1.4.2 机场场景下为什么S12700+ACU2下无线用户漫游过程无法Ping通业务网关而定点上网正常

终端漫游无线并没有断开业务不通是终端ARP请求应答较慢或丢失导致。AP会收到大量广播和组播导致CPU升高所以需要在接AP的交换机上以及一直到网关交换机上配置端口隔离。

1.4.3 为什么V100R002版本的S9300与其他厂商设备对接无法ping通

通过获取报文发现其他厂商设备发送的报文携带的外层标签为0对于标签为0的报文S9300 V100R002版本无法处理报文会被丢弃。

V100R006版本及以后可以正常处理。

1.5 Ping原理和命令格式

Ping是排除设备访问故障的常见方法。它使用Internet控制消息协议ICMP(Internet Control Message Protocol)确定以下内容

l   远程设备是否处于可访问状态。

l   访问远程设备时是否丢失报文。

l   本端与远程设备之间通信的往返延迟。

Ping原理

现在以一个实例来说明Ping的实现过程。

如图1-15所示PC1想要Ping通PC2即Ping 11.1.1.2。

图1-15 Ping的实现过程

112245ib271s7nn0yea168.png

 

1.         PC1的Ping程序生成一个ICMP请求报文。

a.         ICMP报文沿协议栈向下传输到IP层封装IP头包含源地址IP与目的地址IP。

在此封装过程中IP层已经根据IP地址和掩码判断出了源IP与目的IP不属于同一网段。

b.         ICMP报文再向下传到链路层准备进行以太帧头的封装但由于无法知道目的MAC地址暂时无法进行封装。

c.         由于已经知道了源IP与目的IP不属于同一网段故PC1要查找FIB表找自己的下一跳。

1如果PC1没找到下一跳则得不到下一跳的IP也得不到下一跳的MAC地址以太帧头无法进行封装于是PC1就Ping不通PC2。

2如果PC1找到了下一跳得到了下一跳的IP但此时还不知道下一跳的MAC地址故PC1要发送ARP广播请求。

2.         下一跳Switch a口10.1.1.2/24收到此请求以后发现请求所对应的IP地址是自己于是回复一个ARP单播应答给PC1此应答包含了10.1.1.2/24所对应的MAC地址。

3.         PC1此时已经收到ARP应答得到了下一跳的MAC地址进行以太帧头的封装然后将数据报发送给Switch。

当PC1向Switch发送ARP请求时将自己的IP地址到物理地址的映射写入ARP请求中。当Switch收到PC1的ARP请求后Switch就将PC1的这一映射写入到了自己的ARP缓存中。这是因为以后很可能Switch也要向PC1进行数据传送为了以后彼此通信的方便避免总是发送ARP请求及应答减少网络上的通信。

4.         Switch收到数据报文后剥掉以太帧头上送到IP层发现IP首部中的目的IP地址11.1.1.2/24不是自己需要转发故查找自己的路由表重新进行数据报文的封装。

当封装到以太帧头时发现目的MAC地址11.1.1.2/24对应的MAC地址未知故Switch也要发送ARP广播请求。

5.         PC2收到此请求以后发现请求所对应的IP地址是自己于是回复一个ARP单播应答给Switch此应答包含了11.1.1.2/24所对应的MAC地址。

与前面Switch学习PC1的ARP映射一样PC2也相应地在自己的ARP缓存中记录了Switch b口的IP地址到物理地址的映射。

6.         Switch此时已经收到ARP应答得到了PC2的MAC地址进行以太帧头的封装。然后将数据报发送给PC2。

7.         PC2收到此数据报文后拆封以太帧头拆封IP首部后发现是个ICMP请求报文于是会回复一个ICMP应答报文给PC1。此时的源IP地址变成了PC2的IP地址11.1.1.2/24目的IP地址变成了PC1的IP地址10.1.1.1/24。

由于目的IP与源IP不在同一网段所以PC2也要查找FIB表经查找得知下一跳为Switch b口11.1.1.1/24。如前所述PC2的ARP缓存中已经记录了Switch b口的映射信息故不需要再向Switch发送ARP请求直接在ARP缓存中读到Switch 11.1.1.1/24的MAC地址进行封装将数据报发给Switch。

同理Switch也不需要向PC1发送ARP请求直接在自己的ARP缓存中读到PC1的MAC地址将数据报文转发给PC1。

8.         PC1收到数据报文后逐层拆封以太帧头、IP首部得到ICMP应答报文显示Ping通。

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 | stepstep-size ] * } | -system-time | -t timeout | -tos tos-value | -v | -vpn-instance vpn-instance-name ] *host [ ip-forwarding ]

表1-3 Ping命令参数解释

参数

参数说明

取值

ip

使用IPv4协议。不指定该参数时也表示使用IPv4协议。

-

-a source-ip-address

指定发送ICMP Echo Request报文的源IP地址。

如果不指定源IP地址将采用出接口的IP地址作为ICMP Echo Request报文发送的源地址。

点分十进制形式。

-c count

指定发送ICMP Echo Request报文次数。

ping命令每发送一个ICMP Echo Request报文顺序号就加1顺序号从1开始缺省情况下发送5个ICMP Echo Request报文也可以通过命令行参数count设置发送ICMP Echo Request报文的个数。

当网络质量不高时可以增加发送报文数目通过丢包率来检测网络质量。

整数形式取值范围是14294967295缺省值是5。

-d

设置socket为debug模式。

缺省为非debug模式。

-f

设置报文发送的过程中不分片。

说明

使用-f参数后ICMP报文将不会被分片如果ICMP报文的大小超过链路的MTU值ICMP报文将会被丢弃。可以通过不使用-f参数或者增大链路MTU值的方式使ICMP报文不被丢弃。

-

-h ttl-value

指定TTL的值。

报文在转发过程中如果TTL字段的值减为0报文到达的三层设备就会向源端发送ICMP超时报文表明远程设备不可达。

整数形式取值范围是1255。缺省值是255。

-nexthop nexthop-ip-address

指定下一跳IP地址。

指定该参数后ICMP Echo Request报文在发送前不再查找路由表而是直接发送。可用于排除路由表项不正确而导致的Ping不通问题。

点分十进制格式。

interface-type interface-number

设置发送ICMP Echo Request报文的接口。

-

-m time

指定发送下一个ICMP请求报文的等待时间。

Ping发送ICMP Echo Request报文后等待应答reply缺省等待500毫秒后发送下一个ICMP Echo Request报文。可以通过time参数配置发送时间间隔。在网络状况较差情况下不建议此参数取值小于500毫秒。

整数形式取值范围是110000单位毫秒。缺省值是500。

-n

host参数直接作为IP地址而不需作域名解析。

-

-name

显示目的地址的主机名。

-

-p pattern

指定ICMP Echo Request报文填充字节。

可以通过配置ICMP Echo Request报文的填充字节便于故障定位人员从大量ICMP Echo Reply报文后识别出某类报文。

16进制整数取值范围是0FFFFFFFF。缺省情况下填充方式为从0x01开始依次递增。

-q

指定只显示统计信息。

ping命令指定此参数后系统只显示发送、接收报文数、报文丢失率、最小返回时间、平均返回时间和最大返回时间。

缺省情况下显示全部信息。

-r

指定记录路由。

如果指定记录路由在IP报文传送过程中在IP包到达三层路由设备后经过的每一个三层设备都把它的IP地址放入选项字段中。当数据报到达目的端时所经过的IP地址都应该复制到ICMP回显应答中并且返回途中所经过的三层设备地址也要被加入到回应的IP报文中。当Ping程序收到回显应答时它就可以显示出经过的三层设备的IP地址。

缺省情况下不记录路由。

-s packetsize

指定Echo Request报文的长度不包括IP和ICMP报文头。

整数形式取值范围是209600单位是字节。缺省报文长度是56字节。

-range

设置Echo Request报文净荷长度的范围及变化步长。当需要发送可变长度的Echo Request报文时可以配置该参数。

如果不指定-range发送报文的长度是-s packetsize。缺省值是56。如果指定-range发送的第一个报文的长度是min min-size后续报文长度按照步长step step-size递增直到报文长度达到最大值max max-size。缺省情况下长度范围是569600步长是1。

min min-size

设置Echo Request报文净荷长度的最小值。

整数形式取值范围是209600单位是字节。缺省值是56。

max max-size

设置Echo Request报文净荷长度的最大值。

整数形式取值范围是209600单位是字节。缺省值是9600。

step step-size

设置报文长度变化的步长。

整数形式取值范围是11000单位是字节。缺省值是1。

-system-time

显示报文发送时的系统时间。

-

-t timeout

指定发送完ICMP Echo Request后等待ICMP Echo Reply的超时时间。

ping命令会发送ICMP Echo Request报文到某个地址然后等待应答reply当ICMP Echo Request报文到达目标地址以后在一个有效的时间内timeout之前返回ICMP Echo Reply给源地址则说明目的地可达。如在有效时间内没有收到回应则在发送端显示超时。

正常情况下发送完ICMP Echo Request后会在110秒内收到应答replay。当网络传输速率较慢时可以使用此参数加大ICMP ECHO_REQUEST报文的响应超时时间。

整数形式取值范围是065535单位是毫秒。缺省超时时间是2000毫秒。

-tos tos-value

指定发送ICMP Echo Request报文的ToS值。通过设置ToS值配置ICMP报文的优先级别。

整数形式取值范围是0255。缺省值是0。

-v

如果不指定-v系统只显示本用户收到ICMP ECHO-REPLY报文。

如果指定-v系统会显示设备收到的所有ICMP ECHO-REPLY报文。

-

-vpn-instance vpn-instance-name

VPN实例名。

字符串形式区分大小写不支持空格长度范围是131。当输入的字符串两端使用双引号时可在字符串中输入空格。

ignore-mtu

忽略接口发送包的最大传输单元。

-

host

目的主机的域名或IP地址。

字符串形式主机名不支持空格区分大小写长度范围是1255当输入的字符串两端使用双引号时可在字符串中输入空格。或者合法的点分十进制IPv4地址。

ip-forwarding

指定头节点强制走IP。

-

 

posted @ 2021-08-04 17:47  精舞门2020  阅读(725)  评论(0编辑  收藏  举报