Linux中通过Netplan修改IP地址需先确认配置文件和网卡名,编辑YAML时严格遵循缩进、冒号后空格等语法,设置dhcp4: false、addresses、gateway4、nameservers,再执行sudo netplan apply生效并验证。

Linux中通过Netplan修改IP地址参数,核心是编辑YAML配置文件并正确应用。关键不在于“改哪里”,而在于“怎么改才不报错、不掉线”。
确认当前Netplan配置和网卡名
先查清楚系统用的是哪个配置文件、网卡叫什么名字:
- 列出Netplan配置文件:sudo ls /etc/netplan/
- 查看当前活跃网卡(如ens33、enp0s3):ip -br link | grep UP
- 备份原配置(必须!):sudo cp /etc/netplan/*.yaml /etc/netplan/backup.yaml
编辑YAML文件设置静态IP
用nano或vim打开主配置文件(如01-network-manager-all.yaml),按规范重写网络段。注意:缩进必须用空格,冒号后加空格,列表用短横线+空格。
- 关闭DHCP:dhcp4: false
- 写IP和掩码(如/24代表255.255.255.0):addresses: [192.168.1.100/24]
- 指定网关:gateway4: 192.168.1.1
- 填DNS服务器:nameservers: {addresses: [8.8.8.8, 114.114.114.114]} 或分段写
应用与验证
保存后不能直接重启,必须用netplan命令触发渲染:
- 执行生效:sudo netplan apply
- 检查接口是否已绑定新IP:ip -br a show ens33
- 测试连通性:ping -c 3 8.8.8.8 和 ping -c 3 www.baidu.com
- 若SSH断开,立刻通过VNC或控制台登录排查——常见原因是网关错、缩进错或renderer不匹配
多IP或特殊路由场景
如果要加多个IP(如额外购买的公网IP),不要用多个addresses简单罗列,需配合routes确保回程路径正确:
- 同网段追加IP(如/32):addresses: [192.168.1.100/24, 203.0.113.30/32]
- 跨网段或机房路由的附加IP,必须显式写默认路由:routes: [{to: default, via: 192.168.1.1}]
- 避免用renderer: NetworkManager配server环境,优先选networkd


















