zoukankan      html  css  js  c++  java
  • Cisco交换机error:link-flap

    MA实验室全部无法获取IP地址,检查物理线路正常之后,发现上行端口灯不亮,进入交换机后show logging:%PM-4-ERR_DISABLE: link-flap error detected on Gi1/0/51, putting Gi1/0/51 in err-disable state

    端口进入假死状态是交换机本身的防护机制,那么我总结了下面的解决方法,供大家参考。

    一:查看原因

    登录到交换机后,查看日志:

    >show logging

    会发现其中有以下信息(以我遇到的问题举例):

    %PM-4-ERR_DISABLE: link-flap error detected on Gi1/0/51, putting Gi1/0/51 in err-disable state

    所以,他所在端口是因为link-flap才造成的假死。link-flap是链路抖动,基本上是由于物理链路的问题导致,只要端口在10秒内出现了5次up/down,就会假死。那么,这种情况无非就是网口或网线本身的问题,还有一种可能是因为网卡的设置有问题(尤其是单双工模式设置)。然而,我给他重启了端口,他再也没有call过来了,具体什么情况也未可知了。

    二:端口恢复

    当然,直接重启端口当然可以解决问题,但也只是权宜之计,根本问题不解决,他下次在连设备的时候依然会出现异常。既然假死是由于交换机的防护机制,那么我们就按照具体情况把相应的防护机制禁用掉。

    (config)#no errdisable detect cause ******

    会导致 err-disabled 状态的原因,可以通过下面的命令查看:

    #show errdisable detect

    你会看到很多造成假死的原因。

    当然,你也可以暴力点:

    (config)#no errdisable detect cause all

    禁用全部防护机制,这样不管你怎么折腾,都不会errdisable了。​

    三:自动恢复

    上面的方法虽然直接,但无疑会让交换机置于隐患之中,那么我们可以设置端口的自动恢复机制。

    可以通过下面的命令查看有哪些防护会在timeout后会自动恢复:

    #show errdisable recovery

    会出现各种防护的自动恢复状态,Disable是不会自动恢复,Enable是可以自动恢复。

    默认情况下,一旦某个端口被置为err-disabled的状态,该端口将会一直保持该状态,系统并不会使它自动恢复。

    因此,要使其有自动恢复的功能,需要如下的配置:

    #conf t

    #(config)errdisable recovery cause ******​​

    还可以设置一下 recovery 的 timerout:

    (config)#errdisable recovery interval 60

    系统会在设置的时间后尝试恢复err-disabled状态的端口。如果在这期间引起err-disabled状态的原因没有得到解决,该端口会再次的变为err-disabled,这就会造成 flapping 的状态。

    四:原因分析

    一般出现err-disable的情况有以下几种:​

    1.EC两端的配置不匹配。包括协议类型、pagp和lacp的模式、speed、deplex等。

    2.duplex的问题。手动置顶双方的deplex即可,先查看端口当前情况:

    #show interface Gi1/0/51

    然后手工指定:

    #conf t

    (config)#interface Gi1/0/51

    (config-if)#speed 1000

    (config-if)#duplex full​​​​​​​

    3.BPDU(Bridge Protocol Data Unit 网桥协议数据单元)问题。也就是在同一个接口上做了 portfast以及BPDU Guard:

    #show run interface Gi1/0/51

    interface Gi1/0/51

    spanning-tree bpduguard enable

    spanning-tree portfast enable

    直接禁用或重置即可:​​​​​

    (config-if)#spanning-tree portfast bpduguard disable

    (config-if)#spanning-tree portfast bpduguard default

    4.UDLD(UnidDrectional Link Detection 单向链路检测)的问题。这是Cisco的私有协议问题,两边的配置必须要同步。​

    5.link-flap的问题。造成此问题的原因大多是物理链路,上面有提到。

    6.另外还有诸如keepalived、security-violation、l2ptguard、异常的SFPz Cable等都会造成err-disable。

    注:以上方法本人并未解决过实际问题,只是个人研究,仅供参考。且以上方法仅针对Cisco思科交换机讨论,华为、DELL等其他品牌或许有差异。

  • 相关阅读:
    java-logic====吃货联盟
    jsp---》》》新闻发布系统的项目跟踪+++++++文件上传
    jsp---tomcat===》》内置对象
    JS中两个节点的关系
    HTML第二本书学习后记
    JavaScript:编程改变文本样式
    JavaS:网页中的显示和隐藏
    第一次做网页设计遇到的问题总结
    HTML中添加背景音乐
    表格的结构标记
  • 原文地址:https://www.cnblogs.com/netian/p/13838984.html
Copyright © 2011-2022 走看看