CentOS 网卡驱动配置技巧
一 快速定位与准备
lspci | grep -i ethernet、lspci | grep -i wireless、ip link、lsmod | grep <驱动名>、dmesg | tail。这些信息能快速判断是“未识别设备”“驱动未加载”还是“已加载但链路不通”。yum install -y kernel-headers kernel-devel gcc make。编译驱动时必须保证“内核版本完全一致”,可用uname -r核对版本后再安装对应kernel-devel包。二 编译安装通用流程
make编译,随后make install安装(部分驱动提供autorun.sh可一键执行)。modprobe <驱动名>加载模块,执行depmod -a更新依赖;如需开机自动加载,可将该模块加入/etc/modules-load.d/*.conf或在相应发行版的模块配置中设置。lsmod | grep <驱动名>与dmesg | tail确认模块已加载且无报错,再用ip link查看网卡是否 up。三 常见故障与处理
kernel-devel/gcc。解决思路是安装匹配当前uname -r的开发包,获取对应版本驱动并重新编译;若modprobe失败,优先查看dmesg输出定位问题。make install并加载模块即可恢复。kernel-headers、kernel-devel、gcc等依赖后,下载并编译对应驱动,再modprobe载入并配置开机加载。四 配置与管理要点
/etc/sysconfig/network-scripts/ifcfg-<name>,关键项包括DEVICE、BOOTPROTO(如dhcp或static)、ONBOOT=yes等;修改后使用systemctl restart network(或发行版对应网络服务)使配置生效。/etc/sysctl.conf中开启转发:net.ipv4.ip_forward = 1;用 firewalld 放行转发:firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i <内网> -o <外网> -j ACCEPT与反向规则,最后firewall-cmd --reload。ifconfig <iface> <IP> netmask <掩码> up或ip addr add <IP>/<掩码> dev <iface>;持久化仍建议写入 ifcfg 文件并重启网络服务。五 场景化命令清单
Intel 有线网卡(如 I219-LM,驱动 e1000e)
lspci | grep -i ethernetyum install -y kernel-headers-$(uname -r) kernel-devel-$(uname -r) gcc maketar xzf e1000e-<ver>.tar.gz && cd e1000e-<ver>/src && make && make installmodprobe e1000e && lsmod | grep e1000e && dmesg | tailecho -e 'DEVICE=eth0\nBOOTPROTO=dhcp\nONBOOT=yes' > /etc/sysconfig/network-scripts/ifcfg-eth0 && systemctl restart networkRealtek RTL8111/8168(驱动 r8168)
lspci | grep -i ethernet(应见到 RTL8111/8168)yum install -y gcc make kernel-develtar -xjf r8168-<ver>.tar.bz2 && cd r8168-<ver> && ./autorun.sh(或make && make install)modprobe r8168 && lsmod | grep r8168 && dmesg | tailecho -e 'DEVICE=eth0\nBOOTPROTO=dhcp\nONBOOT=yes' > /etc/sysconfig/network-scripts/ifcfg-eth0 && systemctl restart network