您的位置:首页 > 理论基础 > 计算机网络

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

2012-09-27 14:42 901 查看
本文转载自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秒之后恢复为正常的状态,实际情况也是这样,等了几分钟以后,我们找了一台笔记本电脑,分别接到这几个端口上试了一下,端口都可以正常工作了。这下总算在不重交换机的情况下,将几个处于“假死”状态的端口“拯救”了回来。

  

  作为一名网络管理员,除了日常网络故障的处理外,还会不时碰到自己知识范围以外的东西,但只要引起足够的重视,总会找到解决问题的办法。如果您在工作中也遇到交换机端口“假死”的情况,不妨用这个办法试一下。
需要更详细的解决方法请与本人联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网络