做服务器的 debian 10,网卡 RTL8111/8168/8411 PCI Express Gigabit,现在速度只有 100M,如何强制网卡 1000M?

2021-01-31 03:39:57 +08:00
 cathedrel

主板双网口,RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller,两个网口都连着网线,一条接千兆交换机,一条接百兆路由器,千兆交换机上连着的另一台电脑网卡 Intel Corporation I350 在系统里看是千兆连接,没有想到过 debian10 里面还能只有百兆。刚刚拷贝文件才发现速度只有 7M/s 左右,然后就是折腾:

一开始看 ethtool -i enp2s0,驱动是 r8169,apt install r8168-dkms,装完重启系统,驱动显示为 r8168 了,但是速度还是百兆

我在想会不会两个网口也有“水桶理论”:都按照最低速的那个来算?于是禁用连着百兆路由器的那个网卡,重启,连千兆交换机的网卡还是百兆的速度

又在网上找了一条命令 “ethtool -s enp2s0 speed 1000 duplex full”, 运行之,ssh 终端失去相应,重启 debian 10,还是 100M

没辙了,求教,怎么让它老老实实走千兆??多谢!

5951 次点击
所在节点    Linux
45 条回复
vk42
2021-01-31 04:15:01 +08:00
先确定是不是网线什么的问题吧,可能的话把确定 1000M 那条线连到这台机子上试试
billwsy
2021-01-31 04:42:56 +08:00
强制千兆后失去连接,十有八九网线问题?看看网线不会是四芯的吧,网线长度多少,替换一根网线试试?
lihongming
2021-01-31 05:10:54 +08:00
先排除硬件问题吧,我有块网卡也是这样,死活不上千兆,换一块同型号的就好了。后来发现那块网卡有根金手指是不通的。
systemcall
2021-01-31 09:54:46 +08:00
之前遇到过,是网线坏了。换个网线试试
lc7029
2021-01-31 10:01:56 +08:00
两个网卡,一个接百兆路由器,这个除了把路由器换成千兆之外没有办法。
另一个网卡显示百兆,先看看网线是不是八根都通,是不是六类线(短距离五类也行),如果不是就先解决网线问题。
看起来像是协商不到千兆,手动指定强制千兆,就断了。
MeteorCat
2021-01-31 10:14:47 +08:00
光猫线是不是折弯了
ungrown
2021-01-31 11:40:45 +08:00
可能是线或者接头的问题
cathedrel
2021-01-31 18:11:42 +08:00
@vk42
@billwsy
@lihongming
@systemcall
@lc7029
@ungrown

刚刚把 debian 10 接千兆交换机的线拿下来换下台式机上千兆口的那根线,依然千兆,而且这几根线是一起买的,现在排除是线的问题,debian 10 那边还能做什么操作?
cathedrel
2021-01-31 18:26:29 +08:00
@vk42
@billwsy
@lihongming
@systemcall
@lc7029
@MeteorCat
@ungrown

debian 10 上运行 ethtool enp2s0 输出在此:imgur . com / vLH3gmK (去空格)


我怀疑“Link partner advertised link modes”这一行有问题,这是指千兆交换机“建议”走百兆?可是同一台交换机接的另一台台式机上就是千兆,这是怎么回事呢?
ungrown
2021-01-31 19:58:49 +08:00
好,如果能排除线、交换机等等的问题,那么接下来排查驱动程序
尝试安装这个驱动“r8168-dkms”,如果已经安装了则反过来尝试将其卸载,然后看看情况是否变化
另外, 为了彻底排查原物理链接(交换机、网线口、网线、等等)的问题,建议不拔线不换口不换机器,用 U 盘或者其他存储器启动一个其他的操作系统来看看能否成功千兆,可以尝试 win10 或者 ubuntu20 等常见且自动支持该网卡的操作系统
cathedrel
2021-01-31 20:17:28 +08:00
@ungrown 好建议,我这就来做个 ubuntu20 的启动盘试一下,晚点更新结果
yuguorui96
2021-01-31 20:38:17 +08:00
用 ethtool 强制指定速度试试?
yuguorui96
2021-01-31 20:40:15 +08:00
@yuguorui96 没看到你已经用 ethtool 了,用 mii-tool -v 验证下?
terryhyx
2021-01-31 21:13:53 +08:00
看一下交换机端口的设置 是自适应还是设死了 speed 和 duplex 的
cathedrel
2021-01-31 21:17:54 +08:00
@yuguorui96 mii-tool 是哪个软件包里面的?
cathedrel
2021-01-31 21:19:11 +08:00
@terryhyx 怎么看? tp-link 家用 8 口的交换机,好像不好设置什么的,而且同一台交换机上接的另一台机器的 intel 网卡就直接是千兆
terryhyx
2021-01-31 21:22:38 +08:00
家用交换机可以的话换个交换机试试看
systemcall
2021-01-31 22:13:53 +08:00
rj45 接口也有可能坏了
你的电脑,如果 2 个网口都是千兆的话,就在 Win10 或者 Ubuntu 下把两个网口用好的网线连接起来,看一下能不能到千兆。启动 Ubuntu Desktop LiveCD 就是在 Grub2 里面加个 loopback 的事,很好弄,可以试一下,要不了多久
如果是普通的交换机,不是那种网管交换机 /VLAN 交换机 /3 层交换机之类的东西的话,应该是没有任何设置功能的,所有的口正常情况下都是 10Mbps/100Mbps/1Gbps 自适应,ethtool 里面应该是可以看到并且自动协商到 1Gbps 才对
看上去不像是驱动的问题,因为 ethtool 里面可以看到正常的速率,而且你的网卡可以跑起来。交换机的接口也可以换一个,这个也可能损坏
还是觉得电脑网口的问题可能性比较大,如果用 iperf3 来测速,百兆网卡应该是 90Mbps 多一些。我这边垃圾网卡都可以跑 95Mbps,应该不至于只有 7M/s 那么慢,而且如果是 smbv3 之类的协议可能还有压缩,实际的带宽开销更小
no1xsyzy
2021-01-31 22:16:42 +08:00
自认为可用千兆,收到对端握手是百兆
基本可以认为问题出在物理链路上。
甚至可能网口坏了
pheyx
2021-01-31 22:21:22 +08:00
realtek 的网卡在 linux 下问题很多。usb 3.0 转千兆都比它强。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/749937

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX