centos网卡驱动配置方法
小樊
44
2025-12-09 19:07:30
CentOS 网卡驱动配置方法
一 识别网卡与检查驱动状态
- 查看网卡型号与厂商:执行命令:lspci | grep -i ethernet,从输出确认如 Intel I219-V/I219-LM、Realtek RTL8111/8168 等型号。
- 检查驱动是否加载:执行命令:lsmod | grep <驱动名>(如 e1000e、r8169);查看设备是否出现:ip link show。
- 查看内核日志定位问题:dmesg | grep -i eth 或 dmesg | grep -i <驱动名>。
- 确认内核与头文件匹配:uname -r;安装对应版本的开发包(如 kernel-devel、gcc)以避免编译失败。
以上步骤可快速判断是“驱动缺失/未加载”还是“配置问题”。
二 安装或更新驱动
- 优先使用发行版仓库安装:若为常见网卡(如 e1000e、igb、ixgbe),可直接用 yum/dnf 安装对应模块包(通常已集成在系统内核模块中)。
- 源码编译安装(以 Intel e1000e 为例):
- 安装编译依赖:yum install -y gcc kernel-devel;
- 下载驱动(示例):wget https://downloadmirror.intel.com/29636/eng/e1000e-4.2.5.tar.gz;
- 编译安装:
tar xzf e1000e-4.2.5.tar.gz
cd e1000e-4.2.5/src
make
make install
- 更新模块依赖并加载:depmod -a && modprobe e1000e;
- 验证:lsmod | grep e1000e、ip link show。
- UEFI Secure Boot 限制:若 modprobe 时报 Required key not available,需在 BIOS 关闭 Secure Boot(如关闭 EFI_SECURE_BOOT_SIG_ENFORCE),再加载驱动。
- 老版本或离线环境:需准备与本机内核版本一致的 kernel-headers/kernel-devel 与编译器,再进行编译安装。
以上流程覆盖仓库安装与源码编译两种常见路径,并给出 Secure Boot 场景的处理要点。
三 配置网络接口
- 确认接口名:执行 ip link,常见为 ens33/ens192/eth0 等。
- 编辑接口配置文件(CentOS 7 传统网络脚本):
- 文件位置:/etc/sysconfig/network-scripts/ifcfg-<接口名>
- 静态 IP 示例:
DEVICE=ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.10.10
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DNS1=223.5.5.5
- DHCP 示例:
DEVICE=ens33
BOOTPROTO=dhcp
ONBOOT=yes
- 使配置生效:
- 传统脚本:systemctl restart network;
- 如为 NetworkManager 管理,可用 nmcli 或 nmtui 应用配置。
- 多网卡与默认路由:仅在外网口设置 GATEWAY;如需双网卡转发,开启 net.ipv4.ip_forward=1 并配置防火墙转发规则。
以上配置方法适用于常见静态/动态地址场景及双网卡路由转发需求。
四 常见问题与排查
- 编译报错 “Kernel header files not in any of the expected locations”:安装与本机内核一致的 kernel-devel 与 gcc,再重新 make。
- 接口未出现或反复 down:检查驱动是否加载(lsmod)、网线/交换机端口、接口名是否变更、以及 ip link set up。
- Secure Boot 拦截第三方驱动:进入 BIOS 关闭 Secure Boot 后重启。
- 双网卡默认路由冲突:确保仅一个接口配置 GATEWAY,必要时用 ip route 检查与调整。
- 远程操作风险:在机房或远程环境执行网卡/路由变更前,建议本地控制台或带外管理可用,避免断连。
以上为驱动编译、加载与网络配置中最常见的阻塞点与处理建议。