为什么需要配置静态IP
在Ubuntu系统中,默认使用DHCP(动态主机配置协议)自动获取IP地址。这种方式在大多数家庭或办公网络中足够方便,但当你需要搭建服务器、进行远程SSH连接、或者确保设备在网络中的地址固定不变时,静态IP就显得尤为重要。静态IP可以避免因DHCP租约过期导致的IP变化,从而保证服务的持续可达性。

配置前的准备
在开始配置之前,你需要确认以下信息:
- 网络接口名称(如eth0、ens33、wlp2s0等)
- 目标IP地址(例如192.168.1.100)
- 子网掩码(通常为255.255.255.0)
- 默认网关(例如192.168.1.1)
- DNS服务器(例如8.8.8.8或114.114.114.114)
可以通过ip addr或ifconfig命令查看当前网络接口名称和已有的IP信息。
方法一:使用图形界面(适用于桌面版)
如果你使用的是Ubuntu桌面版,图形界面是最直观的配置方式。
步骤1:打开网络设置
点击屏幕右上角的网络图标,选择“有线设置”或“Wi-Fi设置”,进入设置面板。
步骤2:修改IPv4设置
在对应的网络连接旁边,点击齿轮图标,选择“IPv4”选项卡,将“方法”改为“手动”,然后点击“地址”栏旁边的“添加”按钮,依次填写IP地址、子网掩码和网关。在“DNS”栏中输入DNS服务器地址,多个DNS用逗号分隔。
步骤3:应用并验证
点击“应用”按钮,然后关闭设置窗口。你可以使用ip addr命令检查IP是否已经变为设定的静态地址。
方法二:命令行配置(适用于服务器版或无桌面环境)
对于服务器版或习惯使用命令行的用户,推荐使用netplan工具(Ubuntu 18.04及以上版本)或修改/etc/network/interfaces文件(旧版本)。
使用netplan(推荐)
netplan是Ubuntu新的网络配置工具,配置文件位于/etc/netplan/目录下,通常是一个.yaml文件。
- 查看配置文件:
ls /etc/netplan/,常见的文件名为01-network-manager-all.yaml或50-cloud-init.yaml。 - 编辑配置文件,例如:
sudo nano /etc/netplan/01-network-manager-all.yaml - 写入如下配置(以有线网络为例):
network:
version: 2
ethernets:
ens33: # 替换为你的网络接口名
dhcp4: no
addresses:
- 192.168.1.100/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses:
- 8.8.8.8
- 114.114.114.114
注意:addresses中的/24是子网掩码的CIDR表示,相当于255.255.255.0。
- 应用配置:
sudo netplan apply - 验证配置:
ip addr show ens33,确认IP地址已更新。
使用/etc/network/interfaces(旧版本)
对于Ubuntu 16.04及更早版本,可以编辑/etc/network/interfaces文件:
auto ens33
iface ens33 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 114.114.114.114
保存后重启网络服务:sudo systemctl restart networking(或sudo service networking restart)。
常见问题与排查
配置后无法上网
首先检查网关是否设置正确,可以使用ip route查看路由表。其次,检查DNS是否可解析,使用ping 8.8.8.8测试网络连通性,如果ping通但无法解析域名,则是DNS问题。
IP冲突
如果设定的IP已经被其他设备占用,会导致网络异常。可以在配置前使用ping 目标IP测试是否有人响应,或者使用arping工具检测。
netplan配置不生效
检查YAML文件的缩进是否正确,netplan对缩进非常敏感。另外,如果使用的是桌面版,可能被NetworkManager接管,需要确保配置文件中没有renderer: NetworkManager,或者将其改为renderer: networkd。
总结
静态IP配置是Linux网络管理的基础技能。通过图形界面或命令行,你可以轻松为Ubuntu分配固定地址。建议在配置前备份原有配置,并记录好网络参数。对于生产环境,务必测试配置的稳定性,并考虑使用DHCP保留地址作为替代方案,以减少手动管理的负担。