Minimal Linux系统(如Ubuntu Server、CentOS Minimal等)未预装图形界面或高级网络管理工具,需通过命令行完成网络配置。以下是静态IP配置、DHCP自动获取及关键验证步骤的详细说明:
首先确认系统可用网络接口名称(如eth0、ens33、enp0s3等),避免后续配置错误:
ip link show # 显示所有网络接口(推荐,适用于新版本Linux)
# 或
ifconfig -a # 传统命令(需安装net-tools,若未安装可运行sudo apt install net-tools)
输出中以UP标记的接口为当前启用接口,eth0或类似名称通常为以太网接口。
静态IP适用于需要固定IP的场景(如服务器)。不同发行版的配置文件路径不同:
编辑netplan配置文件(通常位于/etc/netplan/目录,文件名以.yaml结尾,如01-netcfg.yaml):
sudo nano /etc/netplan/01-netcfg.yaml
添加/修改以下内容(以eth0接口为例,替换为你的接口名):
network:
version: 2
renderer: networkd # 使用systemd-networkd渲染器(推荐)
ethernets:
eth0:
dhcp4: no # 关闭DHCP
addresses: [192.168.1.100/24] # 静态IP及子网掩码(/24=255.255.255.0)
gateway4: 192.168.1.1 # 默认网关
nameservers:
addresses: [8.8.8.8, 8.8.4.4] # DNS服务器
保存文件后,应用配置:
sudo netplan apply
编辑网络接口配置文件(/etc/sysconfig/network-scripts/ifcfg-<接口名>,如ifcfg-eth0):
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
添加/修改以下内容:
DEVICE=eth0
BOOTPROTO=static # 静态IP
ONBOOT=yes # 开机自启
IPADDR=192.168.1.100 # 静态IP
NETMASK=255.255.255.0 # 子网掩码
GATEWAY=192.168.1.1 # 默认网关
DNS1=8.8.8.8 # 主DNS
DNS2=8.8.4.4 # 备DNS
保存后重启网络服务:
sudo systemctl restart network
若需临时测试,可使用以下命令快速配置:
sudo ip addr add 192.168.1.100/24 dev eth0 # 添加IP
sudo ip route add default via 192.168.1.1 # 设置默认网关
验证IP是否生效:
ip addr show eth0
若需系统自动获取IP(如家用路由器环境下),修改对应配置文件:
编辑/etc/network/interfaces:
sudo nano /etc/network/interfaces
修改为:
auto eth0
iface eth0 inet dhcp # 启用DHCP
重启网络服务:
sudo systemctl restart networking
编辑/etc/sysconfig/network-scripts/ifcfg-eth0:
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0
修改为:
DEVICE=eth0
BOOTPROTO=dhcp # 启用DHCP
ONBOOT=yes # 开机自启
重启网络服务:
sudo systemctl restart network
sudo dhclient eth0 # 手动触发DHCP请求
DNS用于解析域名(如google.com)到IP地址。静态配置已在上述步骤中完成(nameservers或DNS1/DNS2字段),若需临时修改DNS:
sudo nano /etc/resolv.conf
添加DNS服务器:
nameserver 8.8.8.8
nameserver 8.8.4.4
注意:部分系统(如Ubuntu使用
systemd-resolved)会覆盖此文件,建议通过netplan或接口配置文件修改DNS。
配置完成后,通过以下命令验证网络是否正常:
ip addr show # 检查IP地址是否生效
ip route show # 检查默认网关是否正确
ping -c 4 google.com # 测试外网连通性(需安装iputils-ping,若未安装可运行sudo apt install iputils-ping)
若ping能收到回复(如64 bytes from google.com...),则说明网络配置成功。
eth0、ens33),务必使用ip link show确认的实际名称替换配置中的接口名。sudo提升权限,避免权限不足导致配置失败。sudo ufw status查看Ubuntu防火墙状态)。