交换机端口假死(err-disable)解决方法

      本文转载自http://wujun5200.blog.51cto.com/339253/123226

    出现了这个问题,我们不得不重视起交换机端口“假死”的现象,寻求在交换机不重启的状态下将该端口“拯救”回来的方法。
拯救步骤1:查看日志/端口的状态
  
  登录进入交换机后,执行show log,会看到如下的提示:
  21w6d: %ETHCNTR-3-LOOP_BACK_DETECTED: Keepalive packet loop-back detected on FastEthernet0/20.
  21w6d: %PM-4-ERR_DISABLE: loopback error detected on Fa0/20, putting Fa0/20 in err-disable state
  以上信息就明确表示由于检测到第20端口出现了环路,所以将该端口置于了err-disable状态。
  
    查看端口的状态
  
  Switch# show inter fa0/20 status
  Port      Name           Status        Vlan   Duplex Speed Type
  Fa0/20    link to databackup err-disabled 562          auto   auto 10/100BaseTX
  这条信息更加明确的表示了该端口处于err-disabled状态。
  既然看到了该端口是被置于了错误的状态了,我们就应该有办法将其再恢复成正常的状态。
    拯救步骤2:将端口从错误状态中恢复回来
  
  进入交换机全局配置模式,执行errdisable recovery cause ?,会看到如下信息:
  Switch(config)#errdisable recovery cause ?
   all                 Enable timer to recover from all causes
   bpduguard           Enable timer to recover from BPDU Guard error disable state
   channel-misconfig   Enable timer to recover from channel misconfig disable state
   dhcp-rate-limit     Enable timer to recover from dhcp-rate-limit error disable state
   dtp-flap            Enable timer to recover from dtp-flap error disable state
   gbic-invalid        Enable timer to recover from invalid GBIC error disable state
   l2ptguard           Enable timer to recover from l2protocol-tunnel error disable state
   link-flap           Enable timer to recover from link-flap error disable state
   loopback            Enable timer to recover from loopback detected disable state
   pagp-flap           Enable timer to recover from pagp-flap error disable state
   psecure-violation   Enable timer to recover from psecure violation disable state
   security-violation Enable timer to recover from 802.1x violation disable state
   udld                Enable timer to recover from udld error disable state
   unicast-flood       Enable timer to recover from unicast flood disable state
   vmps                Enable timer to recover from vmps shutdown error disable state
  
  从列出的选项中,我们可以看出,有非常多的原因会引起端口被置于错误状态,由于我们明确的知道这台交换机上的端口是由于环路问题而被置于错误状态的,所以就可以直接键入命令:
  
  Switch(config)#errdisable recovery cause loopback
  是啊,就这么简单的一条命令,就把困挠我们很长时间的问题解决了,真的就这么神奇。那么如何验证这条命令是生效了呢?
    拯救步骤3:显示被置于错误状态端口的恢复情况
  
  Switch# show errdisable recovery
  ErrDisable Reason    Timer Status
  -----------------    --------------
  udld                 Disabled
  bpduguard            Disabled
  security-violatio    Disabled
  channel-misconfig    Disabled
  vmps                 Disabled
  pagp-flap            Disabled
  dtp-flap             Disabled
  link-flap            Disabled
  gbic-invalid         Disabled
  l2ptguard            Disabled
  psecure-violation    Disabled
  gbic-invalid         Disabled
  dhcp-rate-limit      Disabled
  unicast-flood        Disabled
  loopback             Enabled
  Timer interval: 300 seconds
  Interfaces that will be enabled at the next timeout:
  Interface    Errdisable reason    Time left(sec)
  ---------    -----------------    --------------
  Fa0/8              loopback              276
  Fa0/17             loopback              267
  Fa0/20             loopback              250
  
  从以上显示的信息可以看出,这台交换机有三个端口(Fa0/8、Fa0/17、Fa0/20)会分别在276、267、250秒之后恢复为正常的状态,实际情况也是这样,等了几分钟以后,我们找了一台笔记本电脑,分别接到这几个端口上试了一下,端口都可以正常工作了。这下总算在不重交换机的情况下,将几个处于“假死”状态的端口“拯救”了回来。
  
  作为一名网络管理员,除了日常网络故障的处理外,还会不时碰到自己知识范围以外的东西,但只要引起足够的重视,总会找到解决问题的办法。如果您在工作中也遇到交换机端口“假死”的情况,不妨用这个办法试一下。
需要更详细的解决方法请与本人联系!

你可能感兴趣的:(网络)