连接另一台宿主机的VMware虚拟机

场景

公司给配的这台A电脑配置一般,32G DDR3的,开多个虚拟机还是会卡,正好有一台大内存64G DDR4的B机器空闲着可以用,就准备在空闲机器上开几个大配置虚拟机,但调试想在A机器上连接B机器

准备

  • 首先需要A机本机和包含虚拟机的B机宿主机处在同一个局域网下,同一wifi下或同样的公司内网都可以,即网段前三位是相同的。
  • 宿主机B准备好虚拟机搭建平台,VMware、,并创建好虚拟机。
  • 本机准备好ssh连接工具,windows系统可以使用xshell,macos可以使用Royal TSX。
  • 关闭本机、宿主机、虚拟机的防火墙,避免请求被拦截,或者自己做好控制,这点很重要,连不上的话大概率就是防火墙问题。

操作

方法1 桥接模式

这种方法比较简单。桥接模式下,虚拟机相当于局域网的一台物理机,有自己的IP地址,所以处在同一局域网的本机可以直接访问虚拟机的端口,通过虚拟机IP+虚拟机的相关工具端口号+虚拟机的用户名和密码即可连接。个人不大喜欢这种方式,因为这相当于直接把虚拟机的所有端口都暴露出来了。

方法2 NAT模式

重点说说NAT模式。由于NAT模式下,虚拟机只能跟宿主机进行通信,所以如果我的本机A需要访问这个虚拟机的话,需要通过宿主机B的转发端口来访问。因此,通过设置转发端口,本机直接连接该宿主机的转发端口即可。

1、在VMWare的网络编辑器中设置转发端口:

每个虚拟机的连接22端口都对应一个宿主机的端口,如图中的2201和2202

image-20230605144014763

2、查看宿主机的IP地址

可以通过网络和internet设置查看,也可以使用命令ipconfig/ifconfig/ip addr等查看

例如图中的ip地址是192.168.3.11

image-20230605144049115

3、本机使用ssh连接工具进行连接

可以使用xshell、royalTSX等。

使用宿主机IP+宿主机的转发端口号+虚拟机的用户名和密码即可连接

image-20230605144228021

4、补充说明

该方法同样可以用于远程访问一些工具的端口

比如虚拟机上的redis工具的端口号是6379,则可以把该端口映射到宿主机的6310端口,此时本机只需要访问宿主机ip+6310端口即可调用虚拟机上的redis