虚拟机手动指定固定IP的核心方法就三步:先确认虚拟网络模式,再在虚拟机系统内配置静态IP,最后重启网络验证连通性。很多朋友在虚拟机里装完系统,发现IP地址总是变来变去,要么连不上宿主机,要么和局域网其他设备冲突,今天咱们就抛开那些复杂的理论,直接动手把固定IP这件事彻底搞定,不管是VMware还是VirtualBox,思路大同小异,我会把每一步的操作细节和容易踩的坑都给你指出来。
网络模式怎么选?NAT还是桥接模式
动手配IP之前,先要搞清楚虚拟机用了哪种“联网方式”,这就像你租房,是住在房东家里共用宽带,还是自己单独拉了一条专线,选错模式,后面怎么配都是白费功夫。
NAT模式适合哪些场景
如果你只是想让虚拟机通过宿主机上网,比如跑个测试环境、装个Linux练手,NAT模式就是最省心的选择,这个模式下,虚拟机躲在宿主机背后,共享宿主机的网络出口,外面的设备无法直接访问到虚拟机,安全性相对好,但问题也很明显,虚拟机默认使用VMware或VirtualBox提供的虚拟网卡和网关,IP地址段是固定的(比如VMware默认是192.168.xx.0网段),而且默认开启了DHCP,所以虚拟机每次开机IP都可能变。
桥接模式适合哪些场景
当你想让虚拟机在局域网里“抛头露面”,比如搭建一个Web服务,让手机或同事的电脑直接访问,那就得选桥接模式,这个模式下,虚拟机就像是一台独立的电脑,直接连接到你的路由器,和自己家里其他设备在同一个网段,这里有个常见误区:很多人以为选了桥接模式IP就自动固定了,其实不然,桥接模式默认通常也走DHCP,IP依然可能变化。
那手动指定固定IP,日常到底用哪种模式? 业内专家指出,如果你主要是为了开发和测试,NAT模式配合固定IP就足够了,方便且不易引发局域网冲突,如果你需要对外提供网络服务,或者参与局域网内的文件共享、打印机访问,那就必须选桥接模式,并且配置一个和其他设备同网段的静态IP,选择好了模式,下面进入正题。
在虚拟机系统内配置固定IP
Windows虚拟机固定IP配置步骤
这部分操作和你设置物理机IP一样,但有几个细节要注意,以Windows Server或Win10虚拟机为例。
- 打开“控制面板”“网络和共享中心”“更改适配器设置”。
- 右键点击“以太网”(有时显示为“本地连接”),选择“属性”。
- 选择“Internet 协议版本 4 (TCP/IPv4)”,点击“属性”。
- 选择“使用下面的 IP 地址”,然后依次填写。

| 项目 | NAT模式填写值 | 桥接模式填写值 |
|---|---|---|
| IP地址 | 168.xx.101(xx为虚拟网卡网段,VMware常见为128或224) | 168.1.101(与路由器网段一致,最好用100以上的静态区) |
| 子网掩码 | 255.255.0 | 255.255.0 |
| 默认网关 | 168.xx.2(VMware的虚拟网关) | 168.1.1(路由器网关) |
| 首选DNS | 168.xx.2 | 168.1.1或223.5.5.5 |
注意: NAT模式下,很多教程让你填网关为192.168.xx.1,但VMware Workstation里NAT网关实际上是168.xx.2,填错了网关,虚拟机只能上局域网,上不了公网,填完之后点击“确定”,然后在CMD命令行里输入ipconfig,看看是不是已经变成了静态地址。
Windows里这样配了,如果宿主机换了网络环境,或者虚拟网卡重置了,这个固定IP可能就失效了,如果你想让虚拟机IP绝对不变,还需要关掉虚拟机系统里的DHCP服务依赖,并确保虚拟网络编辑器里的DHCP设置不与你的静态IP冲突,这一点很多人忽略,导致IP偶尔还是会被抢占。
Linux虚拟机固定IP配置命令
Linux下配置静态IP,不同发行版方法差异较大,但原理一致,现在主流发行版如Ubuntu 20.04+使用netplan,CentOS 7使用network-scripts,CentOS 8/9使用NetworkManager,别急,咱们分别说。
Ubuntu 20.04及以上使用netplan
- 找到配置文件:
ls /etc/netplan/,一般是00-installer-config.yaml。 - 用
sudo nano /etc/netplan/00-installer-config.yaml编辑,把内容改成下面这样(注意缩进):
network:
version: 2
ethernets:
ens33:
dhcp4: no
addresses:
- 192.168.128.101/24
routes:
- to: default
via: 192.168.128.2
nameservers:
addresses:
- 192.168.128.2
- 223.5.5.5
注意: ens33是你的网卡名,可以用ip addr查看,NAT模式的网关地址填192.168.128.2(取决于你的VMware网段),桥接模式填路由器网关。
- 应用配置:
sudo netplan apply,然后ip addr
验证。
CentOS 7及以下使用network-scripts
- 编辑网卡文件:
vi /etc/sysconfig/network-scripts/ifcfg-ens33(网卡名可能不同)。 - 修改或添加以下关键行:
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.128.101
NETMASK=255.255.255.0
GATEWAY=192.168.128.2
DNS1=192.168.128.2
DNS2=223.5.5.5
- 重启网络服务:
systemctl restart network或service network restart。
这里有不少朋友遇到过一个问题: 配置完重启网络后,发现SSH连接直接断开了,原因可能是你的Xshell连接用的旧IP,或者防火墙没放行,更常见的是,你在NAT模式下把DNS配置错了,导致域名解析失败但IP能通,建议配置完后,先ping网关确认内网通,再ping baidu.com确认DNS生效。
防止IP冲突和虚拟网络编辑器相关设置
VMware虚拟网络编辑器里的固定IP关联设置
如果你用VMware,强烈建议你顺手把虚拟网络的DHCP范围改一下,免得你手动指定的IP和DHCP自动分配的IP撞上。
- 打开VMware菜单“编辑”“虚拟网络编辑器”。
- 选择VMnet8(NAT模式)或VMnet1(仅主机模式),点击“NAT设置”,记下网关IP。
- 点击“DHCP设置”,把起始IP地址和结束IP地址,设置成不包含你手动指定的那个IP,比如你想把虚拟机IP设为192.168.128.101,那DHCP范围可以设为192.168.128.128到192.168.128.254,这样DHCP永远不会把101分配给别人。
这个操作非常关键,很多情况下,虚拟机IP反复横跳,问题根本不在虚拟机内部,而是虚拟网络编辑器的DHCP池和你的静态IP冲突了。
VirtualBox的固定IP配置差异
VirtualBox用户默认用的是NAT网络,这个模式下虚拟机只有10.0.2.x网段,而且默认网关是10.0.2.2,如果你想在VirtualBox里手动指定固定IP,其实不太推荐改NAT模式的IP,因为VirtualBox的NAT网段和DNS都有固定逻辑,改错容易断网,更推荐你使用“桥接网卡”模式,然后在虚拟机系统内设置局域网静态IP,操作路径和上文一样。
VirtualBox里换成桥接模式很简单:虚拟机设置网络连接方式选择“桥接网卡”,界面名称选你宿主机的真实网卡(如Realtek PCIe GbE Family Controller或Wi-Fi),这里有个细节:如果你是笔记本且用Wi-Fi上网,选桥接模式后虚拟机的IP依赖Wi-Fi热点的网段,如果Wi-Fi信号变化,IP也会重新获取,这种情况下,固定IP最好设置成路由器DHCP池之外的地址段,比如你路由器DHCP是192.168.1.100-199,你可以给虚拟机设192.168.1.88,永不被占用。

配完IP后验证连通性的标准步骤
配置完成后,别急着关窗口,按照下面的顺序做一个快速体检,能帮你判断到底哪里出了问题。
- 在虚拟机里执行
ip addr或ipconfig,确认IP、掩码、网关已经生效 - 在虚拟机里ping网关,比如
ping 192.168.128.2,不通说明网络模式选错或网卡没激活 - 在虚拟机里ping宿主机IP,NAT模式下通常能通,桥接模式下需要宿主机防火墙放行
- 在宿主机里ping虚拟机IP,除非虚拟机有防火墙,一般都能通
- 最后测试DNS:
ping www.baidu.com,如果解析失败,检查DNS配置里是否填了网关地址或公共DNS
当你看到“来自 192.168.xx.101 的回复: 字节=32 时间=1ms”这样的输出时,恭喜你,固定IP已经彻底生效。
常见问题解答:固定IP配置故障排查
为什么我配置了固定IP之后虚拟机无法上网?
优先级最高的排查点依次是:网关是否与虚拟网络编辑器的NAT网关一致(VMware的NAT网关通常是.x.2,VirtualBox是10.0.2.2)、DNS是否可达、虚拟机防火墙是否拦截了外网请求,建议先用ping 114.114.114.114检测公网IP连通性,能通说明网络没问题,问题在DNS。
桥接模式下固定IP选什么网段比较合适?
桥接模式下,你的虚拟机IP必须和宿主机在同一个网段,且不能占用路由器DHCP正在分配的地址,如果家里路由器是192.168.3.x网段,DHCP池是100-199,那你可以把虚拟机设为192.168.3.50或192.168.3.200,这类地址不容易与手机、电视等设备冲突。
宿主机换了网络环境后,虚拟机固定IP还能用吗?
如果用的是NAT模式,宿主机换了Wi-Fi或网线,虚拟机的NAT网段不受影响,固定IP依然有效,如果用的是桥接模式,宿主机从家里到了公司,网段从192.168.3.x变成了10.10.x.x,固定IP就会失效,需要重配,多数情况下,日常移动办公不推荐桥接模式,建议用NAT并固定IP,省心很多。
最后咱们把核心结论再钉一遍:手动指定虚拟机固定IP,首先要确定NAT还是桥接模式,然后按照对应系统的配置路径填好IP、网关和DNS,最后到虚拟网络编辑器或路由器DHCP池里避开冲突地址。 只要这三步走对,你的虚拟机IP就会像钉在木板上一样稳,下次重启,它还会在原位等你。