Ubuntu 系统静态网络配置
Ubuntu 系统静态网络配置指南
应用场景
适用于服务器/长期运行设备需要固定IP地址的场景:
- 需要稳定网络连接的数据库服务器
- 对外提供固定访问地址的Web服务
- 需要持续监控的网络设备
- 避免DHCP租约到期导致的IP变更
配置步骤详解
步骤1 - 禁用Cloud-init网络管理
sudo mkdir -p /etc/cloud/cloud.cfg.d
sudo tee /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg <<EOF
network: {config: disabled}
EOF
作用说明:
- 创建配置文件阻止cloud-init自动生成网络配置
- 防止系统重启后自动配置覆盖手动设置
步骤2 - 清理旧配置
sudo rm -f /etc/netplan/50-cloud-init.yaml
注意:该文件可能不存在于新安装系统
步骤3 - 创建静态配置
sudo tee /etc/netplan/01-netcfg.yaml <<EOF
network:version: 2renderer: networkdethernets:ens160:dhcp4: noaddresses: - 192.168.0.99/24gateway4: 192.168.0.1nameservers:addresses: [223.5.5.5, 8.8.8.8]
EOF
参数说明表:
参数项 | 示例值 | 说明 |
---|---|---|
网卡名称 | ens160 | 需通过ip a 命令确认实际接口名 |
IP地址/掩码 | 192.168.0.99/24 | CIDR表示法,24对应255.255.255.0 |
网关地址 | 192.168.0.1 | 通常为路由器内网地址 |
DNS服务器 | 223.5.5.5,8.8.8.8 | 阿里云和Google公共DNS |
步骤4 - 应用配置
sudo netplan apply
sudo reboot
验证方法:
ip addr show ens160
ping -c4 8.8.8.8
注意事项
- 网卡名称可能因硬件不同而差异(如enp0s3, eth0等)
- 配置前建议备份原文件:
sudo cp /etc/netplan/50-cloud-init.yaml ~/
- 子网掩码换算方法:/24=255.255.255.0,/16=255.255.0.0
- 若配置错误导致断网,可通过恢复模式或物理控制台访问
扩展配置建议
可添加多IP地址:
addresses:- 192.168.0.99/24- 192.168.0.100/24
或设置多网关:
routes:- to: 0.0.0.0/0via: 192.168.0.1metric: 100