服务器网卡配置教程:一步步教你搞定网络设置

服务网卡配置的基本概念

在搭建服务器时,网卡配置是绕不开的一环。无论是物理服务器还是虚拟机,网络不通,服务再强也白搭。很多人刚接触服务器时,面对ifcfg-eth0、IPADDR、NETMASK这些参数一头雾水,其实只要搞清楚几个关键点,配置起来并不复杂。

常见的Linux系统如CentOS、Rocky Linux等,网卡配置文件通常位于/etc/sysconfig/network-scripts/目录下,文件名类似ifcfg-eth0ifcfg-enp0s3,具体名称取决于网卡命名规则。

查看当前网卡信息

配置前先确认当前有哪些网卡可用。使用以下命令查看:

ip addr show

或者简写:

ip a

输出中会列出所有网络接口,比如enp3s0eth0等,找到你要配置的那个接口。

编辑网卡配置文件

以CentOS为例,假设你的主网卡是enp3s0,进入配置目录:

cd /etc/sysconfig/network-scripts/
vi ifcfg-enp3s0

文件内容可能如下:

DEVICE=enp3s0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=8.8.4.4

各字段含义:

  • ONBOOT:是否开机自启,设为yes才能自动联网
  • BOOTPROTO:获取IP方式,static表示静态IP,dhcp则自动获取
  • IPADDR:服务器的IP地址
  • NETMASK:子网掩码
  • GATEWAY:默认网关,通常是路由器地址
  • DNS1/DNS2:域名解析服务器

配置动态IP(DHCP)

如果你希望服务器自动获取IP,比如在测试环境或内网中,可以这样写:

DEVICE=enp3s0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp

保存后重启网络服务即可。

重启网络服务

修改完成后,需要重启网络让配置生效:

systemctl restart network

如果提示命令不存在,可能是使用的是NetworkManager,可尝试:

nmcli con reload

然后检查IP是否正确:

ip a show enp3s0

常见问题排查

配完发现上不了网?先检查几个地方:

网关是否填错。比如公司局域网网关是192.168.3.1,你却写了192.168.1.1,那肯定出不去。

DNS没配,能ping通IP但打不开网页。这时候可以临时改一下/etc/resolv.conf

nameserver 8.8.8.8
nameserver 114.114.114.114

防火墙也可能拦截流量。CentOS默认有firewalld,可以临时关闭测试:

systemctl stop firewalld

多网卡绑定示例

有些服务器为了高可用或带宽聚合,会做网卡绑定(bonding)。比如将两个千兆网卡绑成一个,实现负载均衡。

创建绑定接口配置文件:

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

内容如下:

DEVICE=bond0
TYPE=Bond
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.200
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
BONDING_OPTS="mode=1 miimon=100"

再修改两个物理网卡的配置:

DEVICE=enp3s0
TYPE=Ethernet
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

另一个网卡enp4s0同理。保存后重启网络,就能看到bond0接口生效了。

网卡配置不像写代码那样炫酷,但它决定了服务器能不能“呼吸”。花半小时弄明白,以后换环境、迁服务都心里有底。