2. 物理层故障:网线/光模块损坏、端口协商失败、信号衰减与误码率飙升

物理层,说白了就是网络的最底层。它负责把比特流变成电信号或者光信号,从一台设备传到另一台设备。很多刚入行的朋友觉得这层简单,不就是插根线嘛。但我在项目里踩过的坑,十有七八都出在这一层。

你想想看,上层协议再健壮,物理层断了,一切归零。所以处理网络故障,我习惯先从物理层查起。别一上来就抓包、看路由,先看看灯亮不亮。

核心原则:物理层故障排查,永远遵循“从线缆到端口,从信号到数据”的顺序。跳过这一步,后面全是瞎忙活。

2.1 网线与光模块:最容易被忽视的“硬伤”

网线这东西,看着不起眼,但出问题的概率极高。我记得有一次,某数据中心业务频繁中断,查了三天,最后发现是一根跳线的水晶头压接不牢,稍微一动就断连。

常见的网线故障有这几种:

  • 线序错误:特别是自己做的网线,568A和568B混用,或者没按标准压接。百兆网络可能还能通,千兆直接废掉。
  • 物理损坏:被机柜门夹了、被老鼠咬了、被脚踩了。这种故障最隐蔽,外观可能完好,但内部已经断了。
  • 长度超标:双绞线理论极限100米,超过这个距离,信号衰减严重,丢包率飙升。

光模块的问题更麻烦。光口不像电口,肉眼看不见光,只能靠设备日志和光功率计来判断。

故障类型 典型现象 我的排查习惯
光模块脏污 光功率偏低,误码率间歇性升高 先用光纤清洁笔擦一下端面,八成能解决
光模块不兼容 端口灯亮,但链路起不来 查厂商兼容列表,有些模块必须用原厂
光纤弯曲半径过小 光衰突然变大 检查光纤走线,弯曲处不能打死折
收发器波长不匹配 单纤双向模块插错 确认两端模块的发送/接收波长一致

我的小技巧:手边常备一根已知完好的短跳线。排查时直接替换怀疑的线缆,如果故障消失,那就是线的问题。这比用测线仪快多了。

2.2 端口协商失败:千兆变百兆的玄学

端口协商,就是两端设备商量好用多快的速度、什么双工模式。按理说这是自动完成的,但现实往往不按套路出牌。

我遇到过最典型的情况:一台服务器明明插着千兆网卡,但交换机上显示只协商到百兆。查了半天,发现是网线里只有四根芯线通了。千兆需要八根芯,百兆只需要四根。线没断,但速度上不去。

协商失败的常见原因:

  1. 一端手动,一端自动:这是大忌。手动设了百兆全双工,对面是自动协商,结果两边对不上,要么起不来,要么变成半双工。
  2. 线缆质量差:信号质量差,导致协商过程出错,降速运行。
  3. 端口硬件故障:某个针脚接触不良,或者PHY芯片有问题。

警告:千万不要在生产环境一端手动设置速率,另一端开自动协商。这会导致严重的丢包和错帧。我曾经因为这个原因,让一个核心业务的延迟从1ms飙升到500ms。

怎么查?登录设备看端口状态:

# 查看端口协商状态(Cisco)
show interfaces GigabitEthernet0/1

# 重点关注这几行:
# "Speed: 1000" —— 是不是千兆?
# "Duplex: Full" —— 是不是全双工?
# "Auto-negotiation: on" —— 自动协商是否开启?

# 如果看到 "Speed: 100, Duplex: Half",基本可以断定有问题

2.3 信号衰减与误码率:看不见的杀手

信号衰减,就是信号在传输过程中越来越弱。误码率,就是接收端收到的比特流里有多少是错的。这两个指标直接决定了链路的可靠性。

为什么会这样?

  • 距离太长:电信号在铜缆里传100米,衰减已经很严重了。光信号虽然好一些,但几十公里后也需要中继。
  • 干扰太大:网线跟强电线缆走在一起,电磁干扰会让信号变形。光纤不怕电磁干扰,但怕弯曲和挤压。
  • 连接器损耗:每个接头、每个配线架都会引入一点点损耗。积少成多,信号就垮了。

误码率飙升的后果很直接:上层协议疯狂重传,TCP窗口缩小,应用卡顿。你抓包会看到大量TCP重传和Dup ACK,但根源其实在物理层。

关键指标:对于千兆以太网,误码率(BER)通常要求低于 10⁻¹²。如果超过这个值,链路就不稳定了。可以用 show interfaces counters errors 查看CRC错误和帧校验错误。

2.4 物理层故障排查流程图

下面这张图是我自己总结的排查思路。每次遇到物理层问题,我就按这个流程走一遍,基本不会漏掉什么。

物理层故障排查流程图 物理层故障排查流程图 发现物理层故障 检查端口指示灯状态 灯是否正常亮? 是 检查端口协商状态 否 更换线缆/光模块 查看误码率/CRC错误 误码率是否过高? 是 检查信号衰减/干扰 否 链路正常,排查上层 提示:每次更换线缆或模块后,记得重新查看端口状态和误码率

2.5 实战避坑指南

最后分享几个我踩过的坑,希望能帮你省点时间。

避坑一:我曾经在机房排查一个间歇性丢包问题,换了三根网线都没解决。最后发现是配线架的端口氧化了,接触不良。从那以后,我排查链路问题时一定会把跳线两端都重新插拔一次,让触点重新接触。

避坑二:光模块的清洁比你想的重要得多。有一次新装的光纤链路,光功率一直偏低。我用光纤显微镜一看,端面上有个肉眼看不见的灰尘点。用清洁笔擦了一下,功率立刻恢复正常。现在我的工具包里永远放着一盒光纤清洁笔。

避坑三:别信“这根线昨天还能用”。网线和水晶头是有寿命的,特别是在频繁插拔的环境里。我见过一根跳线用了五年,外表完好,但内部已经断裂。定期更换跳线,特别是机柜里的短跳线,能省很多麻烦。

物理层的问题,说难不难,说简单也不简单。关键是养成按流程排查的习惯,别凭感觉乱试。记住:先看灯,再查线,最后看计数器。这套流程走下来,90%的物理层故障都能定位。