说明

很多时候我们需要把主机和虚拟机配置到局域网同一个网段下,这样可以使一些在主机上运行的代理软件监听并转发来自局域网的流量,使虚拟机可以走主机的代理;也可以通过ssh连接到局域网内其他电脑中开启的虚拟机。所以这样的操作还是有很大意义的。下面我将分别在桥接模式和NAT模式中实现这一功能。

桥接模式

桥接模式下的设置比较简单,只需在虚拟机设置的网络适配器选项中将网络模式改成桥接模式即可,同时要复制物理网络连接状态。

虚拟机和主机网络不同_虚拟机和主机网络不同

此时,我们可以查看一下虚拟机和主机的IP地址,看看是否成功。

首先我们在windows下按下快捷键WIN+R打开运行,输入cmd回车,随后在cmd中输入ipconfig命令,得到如下画面,我用红色圈出来的即为主机的IP地址。若主机不是通过wifi连接,而是有线连接,则对应寻找下即可。

虚拟机和主机网络不同_桥接模式_02


再打开虚拟机,通过快捷键Ctrl+Alt+T打开终端,输入hostname -I命令,获得的即为虚拟机的IP地址,如下图所示。

虚拟机和主机网络不同_桥接模式_03


可以看到,此时虚拟机和主机的IP地址都是192.168.8.xxx,位于同一网段,可以在cmd中ping一下虚拟机的IP地址来进一步验证,正常情况应如下图所示:

虚拟机和主机网络不同_IP_04


在网上冲浪的过程中,我也发现有的朋友改成了桥接模式,复制了网络连接状态还是无法使虚拟机和主机位于同一网段,我找到了一个我认为比较有道理的解决方法,但由于我的电脑经过上面的操作已经好使,所以我没有尝试过,大家可以谨慎尝试一下。在VMware中,单击编辑-虚拟网络编辑器,并用管理员权限编辑,将VMnet0桥接到主机的网卡上面,如下图所示:

虚拟机和主机网络不同_桥接模式_05


网卡的查找如下图所示,打开控制面板-网络和Internet-网络连接窗口:

虚拟机和主机网络不同_IP_06

NAT模式

首先要在虚拟机设置中把网络连接模式改成NAT模式。

虚拟机和主机网络不同_虚拟机和主机网络不同_07


然后打开虚拟网络编辑器,找到VMnet8,进行如下设置,首先选择好NAT模式,然后选择将主机虚拟适配器连接到此网络使用本地DHCP服务将IP地址分配给虚拟机,这一步可能需要安装,耐心等待即可(新安装的朋友可能需要重启一下电脑才能在网络连接中找到VMnet8)若发现无法勾选该选项,解决方法见该博文:VMware虚拟机中 无法勾选’将主机虚拟适配器连接到此网络’的问题。最后要设置子网IP,否则虚拟机的IP地址就会被分配成别的网段,这里我们首先要查看主机的IP地址(方法在桥接模式里面说了),我的主机的IP地址是192.168.8.8,所以这里的子网IP我就要填192.168.8.0,子网IP的前三个数字要和主机IP地址一样,最后一个数字是0。

虚拟机和主机网络不同_桥接模式_08


最后打开控制面板-网络和Internet-网络连接窗口,确保VMnet8处于已启用状态。

虚拟机和主机网络不同_NAT_09


这时再打开虚拟机,虚拟机和主机应该就在同一个网段了,可以按照我在桥接模式中说的方法验证一下。

参考资料

VM虚拟机桥接模式无法联网解决办法

VMware虚拟机中 无法勾选’将主机虚拟适配器连接到此网络’的问题

在 Windows 主机中更改仅主机模式或 NAT 模式网络的子网设置

在仅主机模式和 NAT 模式网络中分配 IP 地址的 DHCP 约定