Linux Minimal 网络配置实用指南
一、准备与诊断
- 确认网卡名称与状态:使用命令查看设备名(如 ens33/ens3/eth0)与连接状态
nmcli device status
- 查看 IP 地址与链路:
ip addr
- 测试连通性:先 ping 默认网关,再 ping 外网域名(如 www.baidu.com),以区分是路由/DNS 还是链路问题
ping -c 4 网关IP
ping -c 4 www.baidu.com
- 注意:最小化系统通常默认未安装 ifconfig,请优先使用 ip 命令。
二、使用 NetworkManager 快速配置(推荐)
- 使用 nmtui 图形化文本界面(若未安装,先安装包 NetworkManager-tui):
nmtui
- 进入 “Edit a connection” → 选中网卡 → 将 IPv4 Configuration 设为 Automatic,勾选 Automatically connect → OK → 返回主界面选择 “Activate a connection” 激活。
- 使配置生效:
systemctl restart NetworkManager
- 使用 nmcli 命令行(等效于 nmtui):
- DHCP 自动获取:
nmcli con mod ens33 ipv4.method auto connection.autoconnect yes
nmcli con up ens33
- 静态 IP(示例将 ens33 设为 192.168.3.201/24,网关 192.168.3.254,DNS 192.168.3.254):
nmcli con mod ens33 ipv4.addresses 192.168.3.201/24 ipv4.gateway 192.168.3.254 ipv4.dns 192.168.3.254 ipv4.method manual connection.autoconnect yes
nmcli con up ens33
- 验证:
ip addr show ens33
ping -c 4 www.baidu.com
三、编辑配置文件方式(RHEL/CentOS 7 系列常见)
- 编辑网卡配置文件(文件名因设备名不同可能为 ifcfg-ens33/ens3/eth0):
vi /etc/sysconfig/network-scripts/ifcfg-ens33
- DHCP 示例:
TYPE=Ethernet
BOOTPROTO=dhcp
ONBOOT=yes
NAME=ens33
DEVICE=ens33
- 静态 IP 示例:
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes
NAME=ens33
DEVICE=ens33
IPADDR=192.168.137.129
NETMASK=255.255.255.0
GATEWAY=192.168.137.2
DNS1=8.8.8.8
DNS2=8.8.4.4
- 使配置生效(两条常用命令择一):
systemctl restart NetworkManager
或(部分系统仍支持)
systemctl restart network
- 说明:最小化安装后常见 ONBOOT=no 导致网卡未启动,需改为 yes;静态配置务必同时设置 IPADDR/NETMASK/GATEWAY/DNS。
四、DNS 与主机名配置
- DNS 配置:
- 推荐写入网卡配置(见上例 DNS1/DNS2),或临时编辑 /etc/resolv.conf:
nameserver 8.8.8.8
nameserver 8.8.4.4
- 主机名与全局网络开关:
- 编辑 /etc/hostname 或使用命令:hostnamectl set-hostname your-hostname
- 如需使用传统网络开关,可在 /etc/sysconfig/network 中设置:
NETWORKING=yes
HOSTNAME=your-hostname
五、常见问题排查清单
- 网卡未启动:确认 ONBOOT=yes,并用 nmcli con up <连接名> 或 systemctl restart NetworkManager 激活。
- 获取不到 IP:确认链路/虚拟网络适配器已连接,使用 nmcli device status 查看状态是否为 connected。
- 能 ping 网关但无法解析域名:检查 DNS1/DNS2 是否正确,或临时写入 /etc/resolv.conf 测试。
- 虚拟机场景:确保 NAT/桥接 网络模式与宿主机网络一致,IP 与网关在同一网段。
- 修改配置后仍未生效:重启 NetworkManager 或系统,再测试连通性。