好的,文件为空是正常的,说明系统目前没有通过这个文件进行任何网络配置。我们可以直接在这个空文件里写入固定 IP 的配置。
请按照以下步骤操作:
步骤 1:编辑配置文件
-
打开终端,执行以下命令,用
nano编辑器打开这个空文件:sudo nano /etc/netplan/50-cloud-init.yaml -
将下面的完整配置内容,一字不差地复制并粘贴到
nano编辑器中。yaml
network: ethernets: ens33: dhcp4: no addresses: [192.168.3.25/24] gateway4: 192.168.3.218 nameservers: addresses: [114.114.114.114, 8.8.8.8] version: 2⚠️ 特别注意:
- 确保
ens33是你正确的网卡名称(从你之前的ifconfig看,是的)。 - YAML 格式对缩进非常敏感! 请确保粘贴后的格式和上面的示例完全一致,所有的缩进都使用空格,而不是 Tab 键。
- 确保
步骤 2:保存并应用配置
-
粘贴完成后,按
Ctrl + O保存文件,然后按Enter键确认文件名。 -
按
Ctrl + X退出nano编辑器。 -
在终端中执行以下命令,让新的网络配置生效:
sudo netplan apply这个命令执行后,你的网络会短暂中断并重新连接。
步骤 3:验证配置是否成功
-
执行以下命令,查看 IP 地址是否已设置为我们指定的固定 IP:
ifconfig你应该能看到
ens33的inet地址已经变成了192.168.3.25。 -
测试网络是否畅通:
ping www.baidu.com如果能收到回复,说明你的固定 IP 配置成功,并且网络连接正常。
现在,你的 Ubuntu 系统每次开机都会自动使用 192.168.3.25 这个 IP 地址,再也不需要手动获取了。
换 WiFi 后,需针对新 WiFi 的局域网环境重新配置固定 IP,具体步骤如下:
步骤 1:连接新 WiFi,获取新网络的关键信息
先连接目标新 WiFi,在终端执行以下命令,获取新 WiFi 的局域网参数:
# 1. 获取新网关(新WiFi路由器的IP)
ip route show
# 输出示例:default via 192.168.1.1 dev ens33 → 新网关是192.168.1.1
# 2. 获取新网段、可选的固定IP
ip a
# 输出示例:ens33的inet为192.168.1.100/24 → 新网段是192.168.1.0/24,可选择192.168.1.100作为新固定IP
步骤 2:修改 Netplan 配置文件
编辑之前的 Netplan 配置文件,替换为新 WiFi 的参数:
-
打开配置文件:
sudo nano /etc/netplan/50-cloud-init.yaml -
将原配置中的
addresses(固定 IP)、gateway4(新网关)替换为新 WiFi 的参数(以 "新网关 192.168.1.1、新固定 IP192.168.1.25" 为例):yaml
network: ethernets: ens33: # 保持你的网卡名不变 dhcp4: no addresses: [192.168.1.25/24] # 新固定IP+新网段(/24对应子网掩码255.255.255.0) gateway4: 192.168.1.1 # 新WiFi的网关 nameservers: addresses: [114.114.114.114, 8.8.8.8] # DNS可保持公共服务器 version: 2⚠️ 注意:
addresses中的 IP 需在新网段内(比如新网段是 192.168.1.x,IP 就填 192.168.1.xx),且不能与局域网内其他设备 IP 重复。
步骤 3:应用配置并验证
-
保存并退出编辑器(
Ctrl+O→回车→Ctrl+X); -
应用新配置:
sudo netplan apply -
验证是否生效:
- 执行
ip a,查看 ens33 的 inet 是否为新固定 IP; - 执行
ping www.baidu.com,测试新 WiFi 下的网络连通性。
- 执行
重复以上步骤,即可在不同 WiFi 的局域网环境下,配置对应的固定 IP。