Ubuntu 设置固定 IP 地址完全指南
Ubuntu 设置固定 IP 地址完全指南
在服务器环境或局域网管理中,为 Ubuntu 配置静态 IP 是常见且必要的操作。本文将详细介绍从 Ubuntu 18.04 到最新版本的配置方法,涵盖桌面版和服务器版。
🚨 警告
本文由AI生成,本意为部分常见问题的笔记,作者已微调部分内容,方法一已经过实操测试,如若参考本博客,请谨慎操作自己的系统!尤其是生产环境,请慎之又慎!!!
目录
- 前言
- 查看当前网络信息
- 方法一:使用 Netplan(推荐,Ubuntu 18.04+)
- 方法二:修改 interfaces 文件(Ubuntu 16.04 及更早版本)
- 方法三:图形界面设置(桌面版)
- 验证配置
- 常见问题排查
- 总结
前言
默认情况下,Ubuntu 使用 DHCP(动态主机配置协议)自动获取 IP 地址。这在日常使用中很方便,但在以下场景中,固定 IP 更为必要:
- 🖥️ 服务器部署:确保服务始终通过同一地址访问
- 🏠 局域网设备管理:方便远程 SSH 连接
- 🌐 端口映射/DNS 绑定:需要稳定的内网地址
- 🔧 集群环境:多台机器间需要固定的网络标识
注意:配置前请确保你选择的 IP 地址在局域网内可用,不会与其他设备冲突。
查看当前网络信息
在修改配置之前,先记录当前的网络信息,确保配置正确。
1. 查看网卡名称
ip link show
或传统命令:
ifconfig -a
你会看到类似 eth0、ens33、enp0s3 的网卡名称。记下你的网卡名,后续配置需要用到。
2. 查看当前 IP 和网关
ip addr show
ip route show
或:
ifconfig
route -n
3. 查看 DNS 服务器
systemd-resolve --status
或查看 resolv.conf:
cat /etc/resolv.conf
你需要记录的信息:
- 网卡名称(如
ens33) - 当前 IP 地址(如
192.168.1.100) - 子网掩码/前缀(如
/24) - 网关地址(如
192.168.1.1) - DNS 服务器(如
8.8.8.8,114.114.114.114)
方法一:使用 Netplan(推荐,Ubuntu 18.04+)
从 Ubuntu 18.04 LTS 开始,Ubuntu 引入了 Netplan 作为默认的网络配置工具。它使用 YAML 格式的配置文件,语法简洁清晰。
步骤 1:定位配置文件
Netplan 的配置文件位于 /etc/netplan/ 目录下,通常文件名类似:
00-installer-config.yaml(服务器版)01-network-manager-all.yaml(桌面版)50-cloud-init.yaml(云服务器)
ls /etc/netplan/
步骤 2:备份原配置
重要! 修改前务必备份:
sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak
步骤 3:编辑配置文件
sudo nano /etc/netplan/00-installer-config.yaml
步骤 4:写入静态 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 # Google DNS
- 114.114.114.114 # 国内 DNS
search:
- localdomain
配置参数说明
| 参数 | 说明 | 示例 |
|---|---|---|
ens33 |
你的网卡名称 | eth0, enp0s3 |
dhcp4: no |
关闭 IPv4 的 DHCP | no 或 yes |
addresses |
静态 IP 地址列表 | 192.168.1.100/24 |
routes → via |
默认网关 | 192.168.1.1 |
nameservers |
DNS 服务器地址 | 8.8.8.8 |
YAML 语法注意:
- 严格使用空格缩进,不能用 Tab
- 冒号后面必须有一个空格
- 每行缩进建议 2 个空格
步骤 5:应用配置
保存文件后,执行以下命令进行测试:
sudo netplan try
此命令会在 120 秒内测试配置,如果期间没有确认,会自动回滚。如果没有问题,执行以下命令应用配置,请记住一定要确保配置无误再执行此命令,如果你写错了IP或配置,而且你是SSH连接到系统的,可能会导致你无法SSH,连不上服务器,这时就需要到机器旁物理机操作了,所以一定要慎而又慎!!!
sudo netplan apply
如果配置有误,Netplan 会提示错误信息。
步骤 6:验证
ip addr show ens33
ip route show
ping -c 4 8.8.8.8
方法二:修改 interfaces 文件(Ubuntu 16.04 及更早版本)
对于 Ubuntu 16.04 LTS 及更早版本,使用 /etc/network/interfaces 文件进行配置。
步骤 1:备份原文件
sudo cp /etc/network/interfaces /etc/network/interfaces.bak
步骤 2:编辑配置文件
sudo nano /etc/network/interfaces
步骤 3:添加静态 IP 配置
# 回环接口(保持默认)
auto lo
iface lo inet loopback
# 主网卡配置
auto eth0 # ⚠️ 替换为你的网卡名称
iface eth0 inet static
address 192.168.1.100 # 静态 IP
netmask 255.255.255.0 # 子网掩码
gateway 192.168.1.1 # 默认网关
dns-nameservers 8.8.8.8 114.114.114.114 # DNS 服务器
步骤 4:重启网络服务
sudo systemctl restart networking
或:
sudo /etc/init.d/networking restart
方法三:图形界面设置(桌面版)
如果你使用的是 Ubuntu 桌面版,可以通过 GUI 快速设置:
步骤 1:打开网络设置
- 点击右上角网络图标
- 选择 "设置"(Settings)
- 点击左侧 "网络"(Network)
步骤 2:配置有线连接
- 在 "有线连接"(Wired)旁点击齿轮图标 ⚙️
- 切换到 "IPv4" 标签页
- 将 "IPv4 方式" 改为 "手动"(Manual)
- 点击 "添加"(Add)填入:
- 地址:
192.168.1.100 - 子网掩码:
255.255.255.0或24 - 网关:
192.168.1.1
- 地址:
- 在 DNS 栏填入:
8.8.8.8, 114.114.114.114 - 点击右上角 "应用"(Apply)
- 关闭再重新打开有线连接,或重启电脑
验证配置
无论使用哪种方法,配置完成后都应验证:
1. 检查 IP 地址
ip addr show
确认你的网卡显示了配置的静态 IP。
2. 测试网关连通性
ping 192.168.1.1 # 替换为你的网关
3. 测试外网连通性
ping -c 4 8.8.8.8
ping -c 4 www.baidu.com
4. 检查 DNS 解析
nslookup www.baidu.com
5. 查看路由表
ip route show
常见问题排查
❌ 问题 1:netplan apply 报错
现象:Invalid YAML 或缩进错误
解决:
- 检查 YAML 缩进是否为空格,不能用 Tab
- 冒号后是否有空格
- 使用在线 YAML 校验工具检查语法
# 检查 YAML 语法
python3 -c "import yaml; yaml.safe_load(open('/etc/netplan/00-installer-config.yaml'))"
❌ 问题 2:配置后无法联网
排查步骤:
- 检查 IP 是否冲突:
ping一下你设置的 IP,看是否有其他设备回应 - 检查网关是否正确:确认路由器地址
- 检查网线/WiFi 连接
- 回滚配置:
sudo cp /etc/netplan/00-installer-config.yaml.bak /etc/netplan/00-installer-config.yaml
sudo netplan apply
❌ 问题 3:DNS 无法解析
解决:确保 nameservers 配置正确,或手动修改:
sudo nano /etc/resolv.conf
# 添加
nameserver 8.8.8.8
nameserver 114.114.114.114
注意:如果使用
systemd-resolved,应修改 Netplan 中的nameservers配置。
❌ 问题 4:云服务器配置后不生效
原因:云服务器(如阿里云、腾讯云)通常有安全组或 VPC 网络限制。
解决:
- 在云平台控制台中配置弹性公网 IP 或修改私有网络设置
- 不要直接在系统内修改公网 IP,这通常无效
总结
| Ubuntu 版本 | 推荐方法 | 配置文件位置 |
|---|---|---|
| Ubuntu 18.04+ / 20.04 / 22.04 / 24.04 | Netplan | /etc/netplan/*.yaml |
| Ubuntu 16.04 及更早 | interfaces | /etc/network/interfaces |
| 桌面版(所有版本) | GUI 设置 | 系统设置 → 网络 |
快速参考命令
# 查看网卡
ip link show
# 查看 IP
ip addr show
# Netplan 应用
sudo netplan apply
# 网络服务重启(旧版)
sudo systemctl restart networking
📌 提示:如果你在配置过程中遇到问题,欢迎在评论区留言,我会尽力帮助解决!
🔗 相关阅读:

浙公网安备 33010602011771号