ghostttttt 发表于 2010-1-24 21:57:00

[分享]Cisco 交换机端口假死解决方法

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

qin30220407 发表于 2010-3-27 10:06:00

沙发啊!学习了

redmake01 发表于 2010-3-28 10:50:00

学习了,谢谢分享

th198486 发表于 2010-3-29 10:09:00

学习

robinsonshen 发表于 2010-4-1 16:38:00

学习了,很有用的。
页: [1]
查看完整版本: [分享]Cisco 交换机端口假死解决方法