Linux服务器网卡配置完全指南,从基础认知到IP等实战操作

2026-08-02 03:02:04 177阅读
本文是面向Linux服务器的网卡IP配置从基础到实战全指南,基础环节先明确通用的查看网卡硬件标识、当前网络参数的ip a等现代命令;实战与适配环节梳理RedHat/CentOS系的nmcli图形化转命令、老版本兼容的network-scripts网卡文件,Ubuntu/Debian系的netplan YAML配置两种主流方案,清晰区分临时生效、永久生效的设置逻辑;收尾给出直观验证方法,适配不同场景需求。

网络是Linux服务器的核心功能之一,正确配置网卡是确保服务器稳定联网、对外提供服务的关键步骤,无论是新手还是有经验的运维人员,掌握Linux网卡配置都是必备技能,本文将从基础查看、主流发行版配置方法到常见问题排查,带你一步步完成Linux服务器网卡配置。

先搞清楚:如何查看网卡信息?

在配置网卡前,首先需要确认服务器上有哪些网卡、它们的名称和状态,常用命令如下:

Linux服务器网卡配置完全指南,从基础认知到IP等实战操作

查看网卡概览

使用 ip a(或旧版 ifconfig,但建议用 ip 命令)查看所有网卡的详细信息:

ip a

输出示例:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic eth0
    ether 00:16:3e:xx:xx:xx
  • lo:本地回环接口(用于本机通信),不用配置。
  • eth0(或 ens33enp0s3 等,取决于系统和硬件):物理网卡名称,后面配置会用到。
  • state UP:表示网卡已启用;DOWN 则未启用。

查看网卡硬件信息

如果不确定网卡型号,可使用:

lspci | grep Ethernet

输出会显示网卡的硬件型号,便于排查驱动问题。

主流发行版网卡配置方法

Linux发行版众多,网卡配置方式略有不同,下面分 CentOS/RHEL 7+/8+Ubuntu/Debian 两种主流场景讲解。

场景1:CentOS/RHEL 7/8(NetworkManager)

CentOS 7及以上版本默认使用 NetworkManager 管理网络,配置文件位于 /etc/sysconfig/network-scripts/ 目录下,文件名格式为 ifcfg-<网卡名>(如 ifcfg-eth0)。

步骤1:找到并编辑配置文件

假设网卡名是 eth0,先查看是否有配置文件:

ls /etc/sysconfig/network-scripts/

如果没有,可以复制模板(通常系统会自动生成),或直接创建:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

步骤2:配置静态IP(服务器常用)

服务器一般需要固定IP,配置内容示例:

TYPE=Ethernet                # 类型为以太网
BOOTPROTO=static             # 静态IP(设为dhcp则是动态获取)
ONBOOT=yes                   # 开机自动启用网卡
NAME=eth0                    # 网卡名称
DEVICE=eth0                  # 设备名,需与NAME一致
IPADDR=192.168.1.200         # 静态IP地址
NETMASK=255.255.255.0        # 子网掩码
GATEWAY=192.168.1.1          # 网关地址
DNS1=8.8.8.8                 # 首选DNS
DNS2=114.114.114.114         # 备用DNS
  • 参数说明:
    • BOOTPROTO=static:固定IP;若设为 dhcp,则由路由器自动分配IP(无需配置IPADDR、NETMASK等)。
    • ONBOOT=yes:必须设为yes,否则重启后网卡不会自动启动。

步骤3:重启网络服务

编辑完成后,重启NetworkManager使配置生效:

# CentOS 7/8通用
systemctl restart NetworkManager
# 旧版CentOS 6可用(不推荐)
service network restart

场景2:Ubuntu 20.04+/Debian 10+(Netplan)

Ubuntu从18.04开始默认使用 Netplan 管理网络,配置文件为YAML格式,位于 /etc/netplan/ 目录下(文件名可能是 00-installer-config.yaml01-netcfg.yaml)。

步骤1:查看并编辑Netplan配置文件

先列出该目录下的文件:

ls /etc/netplan/

假设文件名为 00-installer-config.yaml,编辑它:

vi /etc/netplan/00-installer-config.yaml

步骤2:配置静态IP

YAML文件对缩进非常敏感(需用空格,不能用Tab),示例配置:

network:
  version: 2
  renderer: NetworkManager  # 也可设为networkd,推荐NetworkManager
  ethernets:
    eth0:  # 网卡名,根据实际情况修改
      dhcp4: no  # 关闭DHCP
      addresses:
        - 192.168.1.200/24  # 静态IP/子网掩码
      gateway4: 192.168.1.1  # 网关
      nameservers:
        addresses:
          - 8.8.8.8
          - 114.114.114.114  # DNS

步骤3:应用配置

编辑完成后,先测试配置是否正确(避免网络断开):

netplan try

若没有错误,按回车确认应用;或直接生效:

netplan apply

小提示:传统interfaces配置(Ubuntu旧版)

如果仍习惯用 /etc/network/interfaces(Ubuntu 18.04前主流),配置示例:

auto eth0
iface eth0 inet static
address 192.168.1.200
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8

重启网络生效:

systemctl restart networking

验证配置是否生效

配置完成后,务必验证是否成功:

查看IP地址

ip a show eth0  # 替换为你的网卡名

确认 inet 后的IP是否为你配置的静态IP。

测试连通性

  • 测试网关:ping 192.168.1.1(替换为你的网关)
  • 测试外网:ping 8.8.8.8
  • 测试DNS:ping baidu.com

如果都能通,说明配置成功!

常见问题排查

网卡重启后不生效?

  • 检查 ONBOOT 是否设为 yes(CentOS/RHEL)。
  • 检查Netplan文件缩进是否正确(Ubuntu)。
  • 查看NetworkManager状态:systemctl status NetworkManager

无法ping通外网?

  • 确认网关和DNS配置正确。
  • 检查防火墙规则:iptables -Lfirewall-cmd --list-all

网卡显示DOWN?

手动启用网卡:

ip link set eth0 up  # 替换为你的网卡名

IP冲突?

使用 arping 检测网络中是否有重复IP:

arping 192.168.1.200  # 替换为你的IP

如果有多个响应,说明存在冲突,需更换IP。

Linux服务器网卡配置的核心是:先确认网卡名称,再根据发行版选择配置工具(NetworkManager或Netplan),最后验证连通性

  • CentOS/RHEL用 /etc/sysconfig/network-scripts/ 下的文件 + NetworkManager。
  • Ubuntu/Debian用 /etc/netplan/ 下的YAML文件 + netplan apply

希望这篇指南能帮你轻松完成Linux网卡配置,让服务器稳定联网!

文章版权声明:除非注明,否则均为亚朵原创文章,转载或复制请以超链接形式并注明出处。