Access Virtualbox guest from computer that is NOT host
我有一台电脑,我们称之为linux@home。我有一个专用的远程Linux服务器,我们称之为linuxhost@datacenter。我有一台在专用服务器上运行Windows7的虚拟机,我们称之为windowsguest@datacenter。
我通过VirtualBox Manager在WindowsGuest上设置了一个NAT网络接口。
windowsguest@datacenter正在运行一个服务,该服务需要访问linuxhost@datacenter上的SQL数据库,而且工作正常。windowshost上的同一个服务需要监听UDP端口上的连接,比如12345。WindowsGuest可以访问Internet,Web浏览工作正常(不需要,但工作正常)。
所以,现在我需要linux@home tu在windowsguest@datacenter的udp端口12345上运行一个客户端应用程序。我所做的是在我用于WindowsGuest的NAT网络上配置端口转发:
1 2 3 4 5 | -host ip : 127.0.0.1 -host port : 12346 -protocol : UDP -guest ip : 10.0.2.4 (which is windowsGuest@datacenter ip address) -guest port : 12345 |
我希望在UDP端口12346上的linuxhost@datacenter上的任何连接都会转发到windowsguest@datacenter udp端口12345,但这似乎没有发生。
更多信息:
1 2 3 4 5 | - windowsGuest@datacenter's firewall is turned OFF - linuxHost@datacenter runs iptables and is configured to allow any connection from linux@home, both tcp and udp. - linuxHost@datacenter 's iptables doesn't log any blocked packets. - I don't want to turn off iptables since linuxHost@datacenter is running other services and i don't want to expose that. - I cannot test the client application on linuxHost@datacenter |
我做错了什么?我应该手动将连接从Internet转发到端口udp 12346上的linuxhost@datacenter到127.0.0.1:12345吗?我应该以不同的方式配置NAT端口转发吗?我是不是完全错了,这不是我应付这种情况的方法?
多亏了这个答案,我可以随心所欲。我必须在virtualbox管理器首选项中修改nat端口转发。主机IP字段可以留空,这样来自任何IP地址的连接都会转发给来宾。