
服务器连不上网,90%的问题出在网络配置上。
在 Linux 系统管理中,网络配置是最基础也最常打交道的工作之一。无论是新服务器上架、迁移 IP 地址,还是排查网络故障,都离不开对网卡和路由的熟练操作。
这一篇我们从网络状态查看入手,逐步深入到网卡配置和路由管理,帮你建立网络管理的完整知识框架。
一、Linux 网络工具包的演变
Linux 系统中常用的网络管理工具有两套,分别对应不同的时代:
实际工作中,旧系统可能还在用 ifconfig,新系统则主推 ip 命令。建议两套工具都掌握,遇到任何环境都能从容应对。
二、查看网卡状态
2.1 ifconfig:查看和配置网卡接口
直接输入 ifconfig 即可查看当前所有活跃网卡的信息:
ifconfig
输出解读:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.18.224.121 netmask 255.255.240.0 broadcast 172.18.239.255 ether 00:16:3e:0a:el:c3 txqueuelen 1000
关键字段:
- •
RX/TX packets:接收/发送的数据包统计,可用于初步判断网络是否通畅
特殊网卡:
- •
lo:本地回环网卡,固定 IP 为 127.0.0.1,用于本地服务端口测试 - •
virbr0:虚拟化网关设备(常见于 KVM 环境)
2.2 网卡命名规则
不同版本的 Linux 对网卡的命名方式不同:
管理痛点:批量操作多台服务器时,不同命名方式会增加脚本复杂度。如果想统一改为传统命名,可通过修改 GRUB 参数实现。
三、修改网卡 IP 地址
3.1 临时修改(重启网络服务后失效)
使用 ifconfig 临时修改 IP:
# 查看当前配置ifconfig eth0# 修改 IP 地址ifconfig eth0 10.21.152.5 netmask 255.255.255.0
注意:
- • 子网掩码不指定时默认
255.0.0.0,与常见的 255.255.255.0 不同,建议显式指定。 - • 修改后立即生效,但重启系统或网络服务后会丢失。
- • 远程操作风险:修改云主机的 IP 会立即断开连接,需通过控制台恢复。
3.2 永久修改(修改网卡配置文件)
要让 IP 配置永久生效,需要修改网卡配置文件。配置文件位于 /etc/sysconfig/network-scripts/ifcfg-eth0(每个文件默认对应⼀个网络接口):
BOOTPROTO=static # static 表示静态 IP,dhcp 表示动态分配IPADDR=192.168.1.110 # IP 地址NETMASK=255.255.255.0 # 子网掩码GATEWAY=192.168.1.1 # 网关DNS1=8.8.8.8 # DNS 服务器DNS2=8.8.5.5 # DNS 服务器(通常最多3个)ONBOOT=yes # 控制网卡开机自动启用,否则需手动ifup eth0启动
修改完成后,重启网络服务生效:
# 传统方式(CentOS 6)service network restart# 新式方式(CentOS 7+)systemctl restart NetworkManager
四、网卡启停操作
# 启动网卡ifup eth0 # 或 ifconfig eth0 up# 关闭网卡ifdown eth0 # 或 ifconfig eth0 down
网卡启停主要用于配置混乱时还原默认配置,日常操作中不常用。
五、管理网络服务:network vs NetworkManager
Linux 中有两套网络服务管理工具,需要特别注意不要同时启用,否则可能导致配置冲突。
| | |
|---|
| | |
| | |
| service network restart | systemctl restart NetworkManager |
| /etc/sysconfig/network-scripts/ | |
服务器环境建议:启用 network,禁用 NetworkManager。
systemctl stop NetworkManagersystemctl disable NetworkManager
其他补充:
systemctl start|stop|restart|enable|disable NetworkManager # 启|停|重启|设置开机⾃启|禁⽤systemctl list-unit-files # 查看所有systemd服务systemctl list-unit-files NetworkManager.service # 验证 NetworkManager 服务可⽤性
生产踩坑提醒:
- 1. 两套服务同时启用时,可能会出现"网卡配置显示正常但 IP 不生效"的问题。制作云主机镜像时尤其要注意这一点。解决冲突方式是禁用其中一个服务然后重启下另一个服务。
- 2. 远程连接时systemctl stop network等停止网络命令慎重执行,有掉线后连不上的风险,当然有管控台VNC能连进去操作就不用担心。
六、修改网卡命名方式(改为 eth0)
如果需要将网卡名统一改回传统的 eth0 格式,可以按以下步骤操作:
- 1. 编辑 GRUB 配置文件
/etc/default/grub,在 GRUB_CMDLINE_LINUX 中添加参数:
GRUB_CMDLINE_LINUX="... biosdevname=0 net.ifnames=0"
biosdevname:影响设备命名⽅式,默认是0。
net.ifnames:控制是否使⽤新式命名,默认是1代表使用新式命名。
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot
ifconfig eth0
命名组合效果对照:
| |
|---|
biosdevname=0 net.ifnames=1 | ens33 |
biosdevname=1 net.ifnames=0 | em1 |
biosdevname=0 net.ifnames=0 | eth0 |
应用价值:
小结
网络管理是 Linux 系统管理中最频繁的操作之一。这一篇我们重点介绍了:
- • 两套网络管理工具包(
net-tools 和 iproute2)的共存关系 - • 网卡状态的查看和 IP 配置(临时 + 永久)
- • 网络服务管理工具(
network vs NetworkManager)的选择
下一篇我们继续深入网络管理——路由配置和网络故障排查。