我在 Debian Squeeze 盒子上使用 Virtualbox 4.0.10。我有一台 Windows 7 VM,用于托管游戏服务器。设置 NAT 和端口重定向后,客户端可以连接到 VM,但游戏服务器显示它正在从 NAT 网关 IP(10.0.2.2)获取连接。我需要游戏服务器从实际的公共互联网客户端 IP 获取连接,因此我可以在游戏服务器中设置 IP 白名单。
这台 Debian 机器直接连接到互联网。我该怎么做才能让它工作?猜测这不是 VirtualBox 的问题,可以使用虚拟网络接口等解决,但不知道如何做。猜测这不是 Virtualbox 的问题,我可以使用桥接接口等让它工作。
答案1
将网络适配器设置为桥接模式。
在 VirtualBox 中,转到 Windows 7 设置,选择网络,然后您应该看到适配器设置为 NAT。将其更改为Bridged adapter
。
答案2
无需桥接模式即可实现!出于某些奇怪的原因,VirtualBox 中的默认 NAT 模式会重写原始源。
您需要使用以下方法将 NAT 切换为透明模式
VBoxManage modifyvm <your-vm name> --nataliasmode1 proxyonly
更多信息请点击此处
答案3
可能无法在 VirtualBox 中改变该行为。
以下任一方法均可解决您的问题:
- 最简单、最好的方法:只需使用 Debian 机器上的 iptables 设置您的白名单,而不是在 VM 上管理您的白名单。
- 使用具有更多选项的不同虚拟机管理程序来配置虚拟网络和 NAT 行为。
- 将 Debian 盒放在物理防火墙或路由器后面,在那里配置 NAT 规则,并将 VM 桥接到物理网络适配器。
- 从您的 ISP 获取第二个公共 IP 地址。将该 IP 地址分配给虚拟机并将其桥接到您的物理网络适配器。