我有一个专门的服务器运行在托pipe服务提供商的Ubuntu。 我已经configuration了OpenVPN和VirtualBox,并使用VirtualBox安装了Windows 7虚拟机。 该服务器具有以下接口:
eth0被分配公共IP地址 让Win7-VM从VM-Range(10.8.0.0/24)获得IP地址是否可以实现? 我希望这是可能的,以便系统是可以通过公共IP访问,如果我连接到VPN访问虚拟机,例如IP 10.8.0.7 ?
我听说过networking桥接,并已经尝试了几种configuration,但是当我这样做,使整个服务器无法访问。 也许有人可以解释我,如果它是现实的,哪种方法是最合适的。
谢谢
将networking适配器设置更改为桥接应该使用第一个可用IP地址将您的虚拟机与主机相同。 从现在开始,您可以像使用物理机器一样configuration静态IP,也可以使用DHCP将虚拟机的MAC地址固定为IP地址(例如使用路由器或名称服务器)。

希望这可以帮助!
通常情况下,解决scheme可能是使networking上的虚拟机可以从主机访问,并使用外部networking和虚拟networking之间的路由。
这给你最多的控制权,而对外部网不可见。 这避免了例如虚拟机进入主机提供商networking的问题和类似的问题。
一个示例configuration将例如使用iptables:
iptables -t nat -I PREROUTING -i external-net -p tcp --dport 80 -j DNAT --to-destination win7vm # route http traffic into the vm iptables -t nat -I POSTROUTING -i vmnet-interface -j MASQUERADE # replace vm-ip with external ip iptables -A FORWARD -j ACCEPT echo 1 >/proc/sys/net/ipv4/ip_forward
您的虚拟机需要使用vmnet-interface上的主机作为(默认)网关,但是如果您没有更改多个networking设置,则这应该是默认值。
当你设置路由,你可能想要添加更多的iptables规则,即防止其他接口之间的转发。
您需要在OpenVPNconfiguration中使用tap设备和模式bridge 。
然后你需要build立一个网桥,在OpenVPN中configurationtap设备,虚拟内部networking适配器作为成员。
您需要将主机IP地址分配给主机上的网桥接口。
在此之后,您的OpenVPN隧道和虚拟机networking适配器在同一个子网中,一旦连接到OpenVPN服务器,您将连接到同一个networking。
您必须离开具有公共IP地址的接口,因为它现在是。