一、什么是UDLD?
UDLD 是一种 Cisco 专有协议,用于检测光纤或铜缆链路中的单向通信故障。例如,一根光纤断裂、光模块故障或对端设备配置错误等情况都可能导致单向链路。当 UDLD 检测到单向链路时,会将接口置为 err-disabled 状态,以防止生成树环路。
二、常见错误信息
在show logging 或控制台中,你可能会看到如下日志:
linkon port Gi1/0/1. Port disabled. UDLD-4-UDLD_PORT_DISABLED: UDLD detected a unidirectional
inerr-disable state. PM-4-ERR_DISABLE: udld error detected on Gi1/0/1, putting Gi1/0/1
这表示UDLD 已检测到问题并禁用了端口。
三、诊断步骤
1. 确认接口是否因 UDLD 被禁用
运行以下命令查看是否有接口处于err-disabled 状态:
showinterfaces status err-disabled
注意原因是否为udld。
2. 查看具体错误原因
运行以下命令查找日志中的错误提示:
show logging |includeUDLD|err-disable
3. 查看 UDLD 状态
运行以下命令查看特定接口的UDLD 状态:
showudld interface gigabitethernet1/0/1
如果状态是“Uni-directional”,说明检测到单向链路;如果显示 UDLD in disabled mode,说明该接口未启用 UDLD。
4. 查看接口物理状态
运行以下命令检查接口的物理状态:
showinterfaces gigabitethernet1/0/1
检查是否有大量CRC 错误、input errors 或 frame errors,以及接口的双工和速率是否匹配。
四、常见原因及解决方案
原因 |
解决方法 |
---|---|
光纤线缆故障(一根断、弯曲过度) |
更换光纤跳线,确保两端连接正确(TX→RX,RX←TX) |
SFP 光模块故障或不兼容 |
更换为Cisco 认证或兼容的 SFP 模块 |
对端设备未启用UDLD |
确保链路两端都启用UDLD(推荐) |
链路协商问题(速率/双工不匹配) |
手动设置两端速率和双工模式一致,或确保auto-negotiation 正常 |
环路或中间设备(如分光器)干扰 |
|
UDLD aggressive mode 过于敏感 |
检查是否误启aggressive mode,可临时改为 normal mode 测试 |
五、解决步骤(实操流程)
步骤1:恢复被禁用的接口
运行以下命令手动恢复接口:
configure terminal
interface gigabitethernet1/0/1
shutdown
noshutdown
exit
或者启用全局自动恢复:
errdisablerecovery cause udld
errdisablerecovery interval300! 每5分钟尝试恢复
步骤2:确保两端都启用 UDLD
全局启用UDLD:
udld aggressive ! 或 udldenable(normal mode)
步骤3:在接口上启用 UDLD
在接口上启用UDLD:
interfacegigabitethernet1/0/1
udldport aggressive
步骤4:验证物理连接
-
更换光纤线缆。
-
清洁光纤接口。
-
使用show interfaces gi1/0/1 transceiver 查看光功率是否正常。
步骤5:确认对端设备配置
确保对端交换机也启用UDLD:
showrunning-config|include udld
六、配置建议
推荐配置(点对点光纤链路):
! 全局启用 UDLD aggressive 模式
udld aggressive
! 在关键接口上启用(可选,aggressive 已全局启用时可省略)
interface gi1/0/1
udld port aggressive
! 启用自动恢复
errdisable recovery cause udld
errdisable recovery interval 300
不建议在以下场景启用UDLD aggressive:
-
连接非Cisco 设备(不支持 UDLD)。
-
中间有光传输设备(如DWDM、分光器)。
-
使用SFP+ DAC 直连线缆且厂商不支持 UDLD。
七、验证命令汇总
命令 |
用途 |
---|---|
show udld [interface] |
查看UDLD 状态 |
show logging |
查看UDLD 错误日志 |
show interfaces status err-disabled |
查看被禁用的接口 |
show errdisable recovery |
查看自动恢复设置 |
show interfaces giX/Y transceiver |
查看光模块收发光功率 |
常见问题的解决方案:
问题 |
解决方案 |
---|---|
接口被UDLD 禁用 |
手动重启或启用自动恢复 |
单向链路误报 |
检查光纤、SFP、双工匹配 |
对端无响应 |
确保两端都启用UDLD |
频繁err-disabled |
考虑关闭aggressive 模式或排除硬件问题 |
希望这篇文章能帮助你快速解决Cisco 交换机的 UDLD 错误!如果你还有其他问题,欢迎留言交流哦!
发表回复