使用 ethtool -s [接口名] speed [速率] duplex full autoneg off
配置速率(如 ethtool -s eth0 speed 1000 duplex full
),需在网卡配置文件中添加 ETHTOOL_OPTS
参数确保重启生效。
如何在 Rocky Linux 9 中使用 ethtool 配置网络接口的速率?
-
安装ethtool(如未安装):
sudo dnf install ethtool
-
查看接口支持的速率:
ethtool <接口名> | grep 'Supported link modes'
(例如enp0s3) -
配置接口速率(示例设置1000M全双工):
sudo ethtool -s <接口名> speed 1000 duplex full autoneg off
-
持久化配置(网络重启后生效): 创建文件
/etc/NetworkManager/dispatcher.d/99-ethtool
,内容:#!/bin/sh if [ "$1" = "<接口名>" ] && [ "$2" = "up" ]; then /sbin/ethtool -s <接口名> speed 1000 duplex full autoneg off fi
-
添加执行权限:
chmod +x /etc/NetworkManager/dispatcher.d/99-ethtool
注意:需确认网卡硬件支持目标速率,且设置参数需与支持模式匹配。配置后建议重启网络服务验证生效情况。
更多回答
在Rocky Linux 9中通过ethtool配置网络接口速率需遵循以下技术逻辑:
- 硬件兼容性验证:通过
ethtool -i [interface]
确认网卡驱动支持速率调整,重点检查'supported link modes'字段。 - 协商模式控制:若需固定速率,须通过
ethtool -s [interface] autoneg off
禁用自动协商,但需注意部分PHY芯片可能强制保持自动协商。 - 速率强制配置:使用
ethtool -s [interface] speed [1000|2500|...] duplex full
时,需验证内核日志(dmesg
)是否出现'link partner did not autoneg'类警告,表明物理层协商异常。 - 持久化策略选择:推荐采用NetworkManager原生集成方案,通过
nmcli con modify [profile] ethtool.feature-speed [value]
实现策略管理,优于传统的ifcfg文件注入方式。 - PHY状态监控:配置后需持续观察
ethtool -S [interface]
中的'LinkPartnerAdvertised'和'adv_...'计数器,确认双工模式匹配。 关键注意:现代25G/100G网卡多采用AN/LT协议,强制速率可能导致物理层失步,建议优先采用FEC配置协调替代方案。
为什么不尝试使用NetworkManager的nmcli工具来动态调整接口参数,或许能避免驱动兼容性问题呢?
在Rocky Linux 9中使用ethtool配置网络接口速率需遵循以下步骤及注意事项:
-
基础操作
- 查看接口支持的模式:
ethtool eth0 | grep 'Supported link modes'
- 设置速率与双工:
ethtool -s eth0 speed 1000 duplex full autoneg off
(示例为千兆全双工)
- 查看接口支持的模式:
-
关键挑战与实践经验
- 驱动兼容性:部分旧型号网卡(如某些Realtek型号)需加载特定内核模块(如r8169驱动)并确认
ethtool -i eth0
显示的驱动版本支持速率设置 - 协商冲突:混合环境(如老式交换机)需严格匹配两端autoneg状态。曾遇华为S5720交换机因强制关闭自协商导致端口err-disable,需通过
autoneg on
恢复 - 虚拟化限制:VMware虚拟网卡(vmxnet3)不支持速率调整,需在ESXi主机侧配置限速
- 驱动兼容性:部分旧型号网卡(如某些Realtek型号)需加载特定内核模块(如r8169驱动)并确认
-
持久化配置
- 通过nmcli固化配置:
nmcli con mod eth0 ethtool.speed 1000 ethtool.duplex full ethtool.autoneg no nmcli con reload && nmcli con up eth0
- 或创建
/etc/NetworkManager/dispatcher.d/99-ethtool
脚本实现多接口动态配置
- 通过nmcli固化配置:
-
调试技巧
- 使用
ethtool -t eth0 offline
执行网卡自检,排查硬件故障 - 通过
dmesg | grep eth0
检查内核是否报错(常见如'Could not set speed'提示驱动不支持)
- 使用
-
性能验证
完成配置后需使用iperf3 -c <server_ip> -t 30
进行带宽压测,同时用sar -n DEV 1
监控实际速率是否稳定在设定值,避免因协商异常导致降速至百兆。
推荐
热门问答
部分内容依据人工智能生成,仅供参考,可能有误请注意甄别