584 字
3 分钟
Vmware虚拟机改静态IP
2025-08-17

设置静态地址#

如果虚拟机里运行了一个服务,windows想访问这个服务还是需要看一下虚拟机的ip地址,所以不如配置成静态的地址

首先在VMware中查看子网IP并修改网关,我这里子网IP为192.168.142.0,网关设置为192.168.142.1,该虚拟机对应的网卡名为VMnet8

PixPin_2025-08-13_17-04-39

然后在「网络和Internet设置」>「更改适配器选项」>「VMnet8」>「属性」>「Internet 协议版本 4 (TCP/IPv4)」>「属性」>「修改IP地址」

PixPin_2025-08-13_10-25-06

PixPin_2025-08-13_10-27-58

修改后打开虚拟机,修改/etc/netplan路径下的网络配置文件

PixPin_2025-08-13_10-33-45

这里可能不同虚拟机的文件名是不同的,可以看一下文件内容,默认的内容大概是这样的

PixPin_2025-08-13_10-32-49

注意这里的ens33,自己原来文件中是什么用什么,其它的有是ens32的,修改后的内容:

# This is the network config written by 'subiquity'
network:
renderer: networkd
ethernets:
ens33: # 上面 ip addr 命令查看到的网卡编号
addresses:
- 192.168.142.100/24 # 子网 CIDR 由 “子网 IP 地址” 192.168.142.0 和 “子网掩码” 255.255.255.0 计算得到:本机私有 IP 地址,在子网允许的 IP 范围内自定义(注意如果有多个虚拟机的,不要互相冲突)
#gateway4: 192.168.142.1 # IPv4 网关 IP,上面“NAT 设置”可查看得到,注:gateway4 配置已过时,使用以下的 default routes 配置代替
routes:
- to: default
via: 192.168.142.1 # IPv4 网关 IP,上面“NAT 设置”可查看得到
nameservers:
addresses:
- 114.114.114.114 # 首选 DNS 服务器
- 8.8.8.8 # 备用 DNS 服务器
search: [] # 搜索域,这里为空
version: 2

修改后使用netplan apply应用网络配置

重启被覆盖问题#

我这里修改/etc/netplan路径下的文件并netplan apply应用后,通过ifconfig查看是生效的,但是重启又会恢复,后来发现是Cloud-Init 覆盖了配置,所以还需要修改这个的配置文件

我这里查看/etc/cloud/cloud.cfg.d/路径,发现90-installer-network.cfg这个文件的内容和上面默认的50-cloud-init.yaml是一样的,所以修改了90-installer-network.cfg这个文件

PixPin_2025-08-13_17-15-44

将该文件的内容修改为和上面50-cloud-init.yaml完全一致即可,以下是不带注释的代码:

# This is the network config written by 'subiquity'
network:
renderer: networkd
ethernets:
ens33:
addresses:
- 192.168.142.100/24
routes:
- to: default
via: 192.168.142.1
nameservers:
addresses:
- 114.114.114.114
- 8.8.8.8
search: []
version: 2
Vmware虚拟机改静态IP
https://fuwari.cbba.top/posts/vmware虚拟机改静态ip/
作者
Chen_Feng
发布于
2025-08-17
许可协议
CC BY-NC-SA 4.0