Huawei S6730-H24X6C 上联口连不上 40G QSFP+ DAC 接 QNAP LAN-40G2SF-MLX 网卡
小办公室机柜:文件服务器上有一块 40G 网卡,交换机也有空余的上联口,所以我没打算再买一台设备,而是想直接把服务器接到交换机上。两端都能识别到线缆,就是链路起不来。
- 华为 S6730-H24X6C,QSFP28 上联口
- 服务器上是 QNAP LAN-40G2SF-MLX,实际是换标的 ConnectX-3 Pro,40G QSFP+ 端口
- 两者之间用 ACC761-10000S 直连线缆
交换机能读到线缆并显示光模块信息,网卡也能看到线缆,但两边端口都是 down:
# ethtool ens2
Settings for ens2:
Speed: Unknown!
Duplex: Unknown! (255)
Link detected: no
我已经检查过:
- 用同一根线缆在交换机自己的两个端口之间做环回,立刻就起来了,所以线缆没坏
- 试过手动设置速率、在上联口上切换自动协商,但 CLI 在这些端口上根本不提供这两个选项
- 两端重新插拔,换到另一个上联口,没有区别
端口默认是 100GE,我找不到任何办法让它接受 40G 线缆。这是这些上联口的硬性限制,还是有我还没找到的模式?
Comments 3
线缆没问题,网卡也没问题。这些上联口默认是 100GE,处在 100GE 模式下的端口不会为了一根 40G QSFP+ 线缆自动降级。这不是你能通过协商去影响的东西,而是端口类型本身的问题。
看起来显而易见的那条命令其实是死路。大部分帖子会建议
undo assign port-speed 100GE,但设备会回答说这在 100GE 端口上是无法识别的命令,很多人就是在这里放弃并开始怀疑线缆。真正管用的是端口类型这个层面,在 system-view 下:然后重启,这个转换只有重启之后才会生效。之后 QSFP28 上联口会变成 40GE,40G 网卡就能正常连上了。用下面这条命令检查结果:
有两点需要注意。这里的
all是真的指全部:机箱上所有 100GE 上联口都会变成 40GE,所以如果这台交换机上有或者以后会有真正的 100G 链路,就不要把服务器接在这上面。另外要安排好停机时间,没有办法在不重启的情况下单独切换某一个端口。QSFP28 插槽里插 QSFP+ 线缆通常不是问题,同样的插槽、同样的四条通道,只是每条通道速率更低,所以我不会先怀疑 ACC761-10000S。这台设备上
display device port-speed configuration显示的是什么?在这些华为上联口上,速率是端口组这个设备级别的属性,而不是接口上能单独配置的东西,这也正是为什么这个端口不提供速率或自动协商选项。把那条命令的输出贴出来,另外说一下其他上联口有没有在用,因为不管你最后改了什么,都不太可能只影响一个端口。就是这个。在 system-view 下执行
undo assign port-type 100ge all,重启之后,端口第一次尝试就以 40G 和 QNAP 网卡连上了。线缆和 ConnectX-3 Pro 都没动过。放弃上联口的 100GE 能力确实有点心疼,但这个机柜里短期内没有任何东西会跑到 100G,所以这个交易是划算的。