在 Ubuntu 22.04 中修改 IP 地址,Netplan 是首选的配置工具。以下是详细的配置步骤:
📝 详细步骤(使用 Netplan)
查看当前网络接口名称
ip addr
查找需要配置的接口名称(如
ens33
,enp0s3
,eth0
)备份现有配置文件
sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak
编辑 Netplan 配置文件
sudo nano /etc/netplan/00-installer-config.yaml
配置静态 IP(示例)
network: version: 2 renderer: networkd # 服务器版用 networkd,桌面版可用 NetworkManager ethernets: ens33: # 替换为您的网卡名称 dhcp4: no # 禁用 DHCP addresses: - 192.168.1.100/24 # 您的新IP地址/子网掩码 routes: - to: default via: 192.168.1.1 # 网关地址 nameservers: addresses: [8.8.8.8, 1.1.1.1] # DNS服务器
应用配置
sudo netplan apply
验证配置
ip addr show dev ens33 # 查看指定接口的IP ping -c 4 8.8.8.8 # 测试网络连通性 nslookup google.com # 测试DNS解析
🌐 DHCP 自动获取配置(动态 IP)
如果只需要恢复为 DHCP,使用以下配置:
network:
version: 2
ethernets:
ens33:
dhcp4: true
dhcp6: false
然后运行 sudo netplan apply
🔄 临时修改 IP 地址(重启后失效)
# 设置静态 IP
sudo ip addr add 192.168.1.100/24 dev ens33
# 设置网关
sudo ip route add default via 192.168.1.1
# 设置 DNS(临时生效)
sudo nano /etc/resolv.conf
# 添加: nameserver 8.8.8.8
🛠 多 IP 地址配置(别名)
network:
version: 2
ethernets:
ens33:
dhcp4: no
addresses:
- 192.168.1.100/24 # 主IP
- 192.168.1.101/24 # 附加IP
- 10.0.0.10/8 # 另一个网段IP
routes:
- to: default
via: 192.168.1.1
🧩 完整配置示例(含多个接口)
network:
version: 2
renderer: networkd
ethernets:
# 主网卡配置
enp3s0:
dhcp4: no
addresses: [192.168.1.50/24]
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 1.1.1.1]
# 第二个网口配置
enp4s0:
dhcp4: no
addresses: [10.10.0.10/16]
routes:
- to: 10.20.0.0/16
via: 10.10.0.1
🧪 测试和验证命令
命令 | 功能 |
---|---|
ip addr show |
查看所有接口IP地址 |
ip route show |
查看路由表 |
sudo netplan --debug generate |
测试配置语法 |
systemd-resolve --status |
检查DNS配置 |
curl ifconfig.me |
查看公网IP |
sudo tcpdump -i ens33 -n icmp |
抓取ICMP流量 |
nmcli device show |
(桌面版)查看网络配置 |
⚠️ 常见问题解决
配置语法错误
# 检查YAML语法 sudo netplan generate # 查看报错详情 sudo journalctl -u systemd-networkd -xe
接口未激活
sudo ip link set dev ens33 up
配置不生效
sudo netplan --debug apply sudo systemctl restart systemd-networkd
DNS问题
永久解决方案:sudo nano /etc/systemd/resolved.conf
修改为:
[Resolve] DNS=8.8.8.8 1.1.1.1 DNSStubListener=no
然后重启服务:
sudo systemctl restart systemd-resolved sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
🔧 重置网络配置
如果出现问题,可以恢复备份:
# 恢复之前的配置
sudo cp /etc/netplan/00-installer-config.yaml.bak /etc/netplan/00-installer-config.yaml
sudo netplan apply
通过以上步骤,您可以在 Ubuntu 22.04 中轻松修改 IP 地址。建议使用 Netplan 进行配置,它提供了统一的配置界面和强大的语法检查功能。