我不允许以桥接模式运行我的VMWare客户端,并且我想以某种方式从Mac的外部networking接口上的商定端口隧道到在VMWare融合客户端上运行的Web服务器。
我的猜测是,我可以以某种方式在Mac上运行的ipfw中build立隧道来支持这一点。
任何人都可以给我一些指针吗?
免责声明我没有试过这个,但这是为工作站,但我相信它应该工作
如果您正在计算机上运行虚拟机,则可能需要从另一台计算机访问该虚拟机。 让我们用一个例子:假设你有一个运行在80端口上的Apache的Ubuntu虚拟机,并且你想让networking上的其他人访问你正在托pipe的网站。
我们假设虚拟机正在使用NAT,并且分配了一个IP地址192.168.23.128。
首先打开pipe理虚拟networking开始菜单项:

点击NAT选项卡,然后点击编辑。 你会看到NAT设置对话框:

点击Port Forwardingbutton,你会看到这个对话框: 
现在我们终于可以在屏幕上实际使用了。 我们打算在主机上使用8080端口。 我们inputUbuntu虚拟机的IP地址和端口80.这些端口可以是任何端口。 
我们应该可以在我们的主机上通过http:// localhost:8080进行testing。 我们可以通过用主机IP地址replacelocalhost来给我们的主机发送url。
编辑:
如果您使用的是NAT,则虚拟机位于您的Internet路由器不了解的主机级NAT地址(172.xyz)之后。 您可以将80端口从路由器转发到您的主机的IP,然后configuration/库/应用程序支持/ VMware Fusion / vmnet8 / nat.conf将端口80请求端口转发到端口80上您的虚拟机的172地址。这需要closuresApache OS X,如果它正在运行,因为这会导致端口冲突。
另外一个select是将虚拟机从NAT更改为桥接,在这种情况下,您的OS X和您的Ubuntu VM将与Internet路由器分配的DHCP地址在同一个子网上。 路由器会将stream量直接转发给虚拟机,无需任何额外的端口转发。
我期待在OSX上做同样的事情(更具体地说,允许手机/平板电脑/设备/人员访问我的虚拟机进行testing),下面的工作是完美的:
我的设置:
Host OSX IP: 192.168.1.72 VM IP: 172.16.67.188
方法:
1)在VMWare Fusion的“networking适配器”设置中select“NAT”
2) cd到vmnet8目录
cd /Library/Application\ Support/VMware\ Fusion/vmnet8/
注意:如果找不到vmnet8目录,请尝试运行locate nat.conf ,通常是文件所在的位置。
3)编辑nat.conf文件(使用vim / vi等),在[incomingtcp]下面input:
EG: <external port number> = <VM's IP address>:<VM's port number>
就我而言,我进入了:
[incomingtcp] 8080 = 172.16.67.188:80
4)保存并退出nat.conf文件
5)通过运行重新启动VMWarenetworking:
/Library/Application\ Support/VMware\ Fusion/boot.sh --restart
在运行boot.sh ,所有到OSX主机上端口8080的tcpstream量将立即转发到IP 172.16.68.188虚拟机的目标端口80,并使您的虚拟机可用于本地networking192.168.1.72:8080。
注意:如果你已经在OSX上运行web服务器,可能会在端口80上发生冲突,所以使用8080(正如我在这里所示)或其他端口来避免出现问题。