告别千兆瓶颈:RTL8125驱动安装全流程与2.5G跑满实战指南 告别千兆瓶颈RTL8125驱动安装全流程与2.5G跑满实战指南【免费下载链接】realtek-r8125-dkmsA DKMS package for easy use of Realtek r8125 driver, which supports 2.5 GbE.项目地址: https://gitcode.com/gh_mirrors/re/realtek-r8125-dkmsRTL8125驱动安装是2.5G网卡在Linux下真正发挥价值的唯一前提而社区维护的 realtek-r8125-dkms 项目正是解决这件事的标准答案它把Realtek官方驱动打包成DKMS模块一次装好后续内核怎么升级都无需人工干预。下面这套流程来自我多次装机踩坑后的整理从为什么是千兆讲到怎么跑满2.5G每一步都能直接照做。新网卡只跑千兆问题多半出在万能钥匙上刚把RTL8125插进PCIe槽位时系统通常能认出设备ip link里也有接口但ethtool一查链路速度停在1000Mb/s。多数人第一反应是网线或交换机不行其实真正的根源在内核自带的 r8169 驱动——它是为老一代瑞昱千兆芯片写的对2.5G芯片只是能点亮、不优化的兼容级支持速率协商、硬件卸载、中断合并这些关键特性统统缺席高负载下还容易丢包、延迟飙升。先用两条命令确认症状别急着动手# 查看网卡被哪个驱动接管留意 Kernel driver in use 一栏 lspci -k | grep -A3 -i ethernet # 确认当前协商速率Speed 显示 1000Mb/s 即中招 ethtool enp3s0 | grep -i speedenp3s0是示例接口名请替换成你机器上的实际名称。确认之后剩下的问题只有一个让官方r8125驱动取代r8169。两条安装路线按你的内核升级频率来选Realtek官方只提供驱动源码直接make make install也能编译但升级内核后几乎必然失效。真正值得考虑的是下面两条路。路线A一次性脚本给当前内核应急。项目根目录的autorun.sh会完成编译、卸载旧驱动、装载新模块的全流程还会把 r8169.ko 备份成.bak后缀防止误覆盖git clone https://gitcode.com/gh_mirrors/re/realtek-r8125-dkms cd realtek-r8125-dkms sudo chmod x autorun.sh sudo ./autorun.sh脚本末尾会自动调用update-initramfs刷新引导镜像省去手动操作。代价是只对当前内核生效下次升级内核就得重跑一遍。路线BDKMS封装给长期使用兜底。DKMSDynamic Kernel Module Support的职责就是内核一变自动重新编译。在仓库目录直接跑封装好的脚本或干脆安装打包好的.debsudo ./dkms-install.sh # 或sudo dpkg -i realtek-r8125-dkms*.deb # 依赖报错时执行sudo apt install --fix-broken维度一次性脚本DKMS内核升级后驱动失效需重跑自动重新编译安装复杂度低低脚本化卸载方式手动清理dkms remove r8125/9.018.00 --all适合场景临时环境、应急服务器、主力机装完还是千兆是r8169在跟你抢方向盘这是全流程里最隐蔽的坑DKMS明明显示安装成功lsmod | grep r8125却查无此模块。原因是内核加载驱动时按名称和优先级匹配r8169 抢先一步绑定了设备。先用命令验证lsmod | grep -E r8125|r8169只要看到 r8169 的身影就在 modprobe 配置里把它拉黑再重建引导镜像echo blacklist r8169 | sudo tee /etc/modprobe.d/blacklist-r8169.conf sudo update-initramfs -u # Fedora/RHEL 请换成 sudo dracut --force sudo rebootArch 系对应的是sudo mkinitcpio -P。不同发行版只是重建工具不同原理一致让 r8169 根本不被加载r8125 自然上位。这一步不做前面的安装等于白费。内核升级后网卡消失先翻日志再怪硬件升级内核后突然没了网络非DKMS方式安装的用户十有八九是驱动没跟上。先查日志别急着怀疑硬件损坏dmesg | grep -i r8125常见的报错是符号缺失或版本不匹配——旧模块与新版内核头文件对不上。DKMS用户此时只需确认模块状态缺了就手动补一次编译dkms status r8125 sudo dkms autoinstall还有一个容易被忽略的细节如果/lib/firmware/rtl_nic/下的 rtl8125 firmware 文件与驱动版本不匹配同样会导致加载失败必要时清理掉相关文件再重装驱动。跑满2.5G的最后一步调优再验证驱动就位只是起点默认参数偏保守吞吐和CPU占用都不理想。下面几项按顺序设置即可# 中断合并减少CPU被打断频率吞吐优先 sudo ethtool -C enp3s0 rx-usecs 30 tx-usecs 30 # 环形缓冲区加大扛住突发流量 sudo ethtool -G enp3s0 rx 4096 tx 4096 # 给TCP接收栈更大内存余量 sudo sysctl -w net.core.rmem_max26214400追求极致延迟的可在/etc/modprobe.d/r8125.conf写入options r8125 aspm0 eee_enable0显式关掉节能相关的链路状态协商反之想压低功耗保留默认即可。调完用 iperf3 对打一次数据不会骗人# 服务端机器执行iperf3 -s iperf3 -c 对端IP -P 4 -t 30实测中完成驱动替换与上述设置后同一台机器的文件对拷速度能从110MB/s左右爬升到280MB/s上下CPU占用和延迟同步下降2.5G才算名副其实。收尾行动清单先lspci -k确认驱动归属再决定是否动手主力机一律走 DKMS 路线脚本只作应急备选装完必查lsmodr8169 不拉黑等于白装调优参数逐个验证别一次全上出了问题不好定位。想深入了解实现细节驱动源码在src/目录官方说明见REALTEK_README.txtDebian打包脚本在debian/下想自己产出.deb包可以照着研究。【免费下载链接】realtek-r8125-dkmsA DKMS package for easy use of Realtek r8125 driver, which supports 2.5 GbE.项目地址: https://gitcode.com/gh_mirrors/re/realtek-r8125-dkms创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考