CloudEngine 16800, 12800, 9800, 8800, 7800, 6800, 5800系列交换机 维护宝典(V100, V200版本)

故障案例:CE6800与H友商交换机对接LACP时Eth-Trunk接口无法Up

故障案例:CE6800与H友商交换机对接LACP时Eth-Trunk接口无法Up

现象描述

客户购买CE6800交换机需要与H友商交换机对接LACP,完成配置后发现物理成员接口Up,但是Eth-Trunk接口无法正常Up。

相关告警与日志

  • 相关告警

  • 相关日志

原因分析

  1. 在任意视图下执行display eth-trunk trunk-id命令检查Eth-Trunk成员接口的状态。
    <HUAWEI> display eth-trunk 10
    Eth-Trunk10's state information is:                                             
    Local:                                                                          
    LAG ID: 10                      Working Mode: Static                            
    Preempt Delay: Disabled         Hash Arithmetic: profile default                
    System Priority: 32768          System ID: 0025-9e95-7c31                       
    Least Active-linknumber: 1      Max Active-linknumber: 16                       
    Operating Status: down          Number Of Up Ports In Trunk: 0                  
    Timeout Period: Fast
    --------------------------------------------------------------------------------
    ActorPortName          Status   PortType PortPri PortNo PortKey PortState Weight
    10GE1/0/25             Unselect 10GE     32768   21     6465    11100010  1     
    10GE2/0/25             Unselect 10GE     32768   21     6465    11100010  1     
                                                                                    
    Partner:                                                                        
    --------------------------------------------------------------------------------
    ActorPortName          SysPri   SystemID        PortPri PortNo PortKey PortState
    10GE1/0/25             0        0000-0000-0000  0       0      0       11100011 
    10GE2/0/25             0        0000-0000-0000  0       0      0       10100011 

    发现Partner接口的PortState是11100011和10100011,正常情况下,接口协商成功后状态应该是11111100或者10111100。其中PortState信息的含义如下:

    • LACP_Activity:成员接口是否是主动端标记,取值固定为1,表示接口只要加入Eth-Trunk并且Up就可以主动发送LACP协议报文。
    • LACP_TimeOut:标识超时周期是fast还是slow,fast时该位置1,slow时该位置0。
    • Aggregation:标识本接口是否可以和Eth-Trunk中其他成员接口聚合。
    • Synchronization:同步标记位,根据接口速率、双工、两端报文交互情况等确认可以进入Selected状态的端口,将该位置1,否则置0。
    • Collecting、Distributing:两端完全协商成功,LACP状态稳定时这两个bit位才会置1。
    • Defaulted:接口刚加入Eth-Trunk开始协商时该位置1,协商成功后置0。
    • Expired:超时标记位,超时时间内收不到LACP报文时该位置1,协商成功后置0。
    从Partner接口的PortState信息来看,Synchronization位不同步和超时标记位置1。问题可能发生的原因有:
    • 两端端口速率、双工等状态不同步,有可能两端连线出错。
    • 由于某种原因,H交换机未及时收到CE6800交换机发送的LACP报文,导致对端超时,LACP协商失败。
  2. 采集H交换机配置及接口状态信息,并在H交换机debug LACP报文。
  3. 在任意视图下执行display lacp statistics eth-trunk trunk-id命令查看CE6800交换机上LACP报文收发统计信息,发现Eth-trunk接口只有发送LACP报文统计,没有接收LACP报文统计。
    <HUAWEI> display lacp statistics eth-trunk 10
      Eth-Trunk10's PDU statistics is:                                              
     -------------------------------------------------------------------------------
     Port                      LacpRevPdu  LacpSentPdu  MarkerRevPdu  MarkerSentPdu 
     10GE1/0/25                         0         2248             0              0 
     10GE2/0/25                         0         2245             0              0 
  4. 在诊断视图下执行display lacp error packet eth-trunk trunk-id命令查看LACP最近收到的错误报文内容。
    [~HUAWEI-diagnose] display lacp error packet eth-trunk 10
    -------------------------------------------------------- 
    [Eth-Trunk 10, interface: 10GE1/0/25, time: Oct 26 2015 11:34:13]: 
    0180C200    00025C8A    38A3C307    88090101    01148000 
    5C8A38A3    C29B0001    80000037    0D000000    02148000 
    845B1252    9A411941    80000015    47000000    03100000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    64180000    00015C8A    38A3C29B    00000000 
    00000756    B5B30000    0000 
    -------------------------------------------------------- 
    
    -------------------------------------------------------- 
    [Eth-Trunk 10, interface: 10GE2/0/25, time: Oct 26 2015 11:34:13]: 
    0180C200    00025C8A    38A3C308    88090101    01148000 
    5C8A38A3    C29B0001    80000038    0D000000    02148000 
    845B1252    9A411941    80000016    47000000    03100000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    00000000    00000000    00000000    00000000 
    00000000    64180000    00015C8A    38A3C29B    00000000 
    00000756    B5B30000    0000 
    -------------------------------------------------------- 
    解析之后,确认10GE1/0/25和10GE2/0/25收到对端发送的LACP报文。
    • 10GE1/0/25接口

    • 10GE2/0/25接口

    从报文看,CE6800交换机已经收到对端发送的LACP报文,但是由于该报文被异常丢弃,导致LACP协商失败。

  5. 客户反馈H交换机侧信息,可以看到物理接口正常Up,H交换机可以学习到CE6800交换机的信息。
     
    Aggregation Interface: Bridge-Aggregation128 Aggregation Mode: Dynamic 
    Loadsharing Type: Shar System ID: 0x8000, 5c8a-38a3-c29b 
    Local: 
         Port             Status  Priority Oper-Key  Flag 
    --------------------------------------------------------------------------------
         XGE1/0/53        U       32768    1         {ACD} 
         XGE1/0/54        U       32768    1         {ACD} 
    Remote: 
         Actor            Partner Priority Oper-Key  SystemID Flag 
    --------------------------------------------------------------------------------
         XGE1/0/53        21      32768    6465      0x8000, 845b-1252-9a41 {ACG} 
         XGE1/0/54        22      32768    6465      0x8000, 845b-1252-9a41 {ACG} 
  6. 查看H交换机的配置,发现一个命令mad enable。通过确认:该命令会在LACP报文中添加私有扩展字段,怀疑CE6800交换机无法识别该字段导致LACP报文被丢弃,建议客户在H交换机取消该命令后确认问题解决。
    interface Bridge-Aggregation128 
      port link-type trunk 
      port trunk permit vlan all 
      link-aggregation mode dynamic 
      mad enable

根因

对端H交换机配置了LACP MAD功能导致在LACP报文中增加了私有扩展字段。

操作步骤

在H交换机侧取消mad enable命令后问题解决。