首先,我们需要查看交换机的日志和端口状态,以确定问题的具体原因。登录交换机后,执行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-disabled state
这表示第20端口出现了环路,导致该端口被置于err-disabled状态。接下来,我们查看端口的状态:
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
这条信息进一步确认了端口处于不正确的状态。
为了解决这个问题,我们需要将端口从不正确的状态中还原回来。进入交换机的全局配置模式,执行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
在这些选项中,我们需要找到loopback,表示环路检测到的错误状态。执行以下命令:
Switch(config)# errdisable recovery cause loopback
这样,我们就设置了一个定时器,当端口再次检测到环路时,会自动尝试恢复。然而,如果环路故障已经解决,我们还需要手动介入。
首先,进入接口配置模式:
Switch(config)# interface fa0/20
然后,关闭并重新启用该端口:
Switch(config-if)# shutdown Switch(config-if)# no shutdown
这样,端口应该能够恢复正常工作。如果问题仍然存在,可以尝试清除VLAN信息,或者重置交换机的配置。
在处理此类问题时,关键是确定端口为何被置于错误状态,并采取相应的措施来恢复。此外,为了预防未来的问题,建议定期检查网络设备,确保没有环路或其他配置错误。通过这种方式,我们可以确保网络稳定运行,避免因故障而影响业务。
“假死”现象蔓延 不得不根治?
但是最近几天单位那台连接数字电视前端系统的交换机上也出现了端口“假死”的现象,故障原由很快查清了:是因为该端口下面连接的一台交换机出现了环路,这台Cisco交换机上相应的端口就被系统自动关上了,这种措势是必要的,因为可以防止 环路的扩散,但是当下面的交换机环路故障解除后,该端口并没有又还原到正常工作状态,更要命的是:一、更换端口; 二、重启交换机都不能实现,因为一来这台交换机上空闲端口很少了,二来这台交换机须要始终处于工作状态,如果一旦重新启动,这几分钟的网络中断就会影响到数字电视的播出,所以是绝对不能 重启的。
出现了这个疑问,我们不得不重视起交换机端口“假死”的现象,寻求在交换机不重启的状态下将该端口“拯救”回来的要领。
拯救步骤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