从外部网络上的系统访问主机和 VirtualBox

从外部网络上的系统访问主机和 VirtualBox

好的,情况是这样的。

我正在 Windows 7 中将 Ubuntu 操作系统作为 VirtualBox 实例运行。

主系统 Windows 7 和 Ubuntu 操作系统均安装了 Apache。

现在我的主系统(Windows 7)有一个公共 IP 地址 //whatismyip

如果我让两个 Apache 服务器 [在 Windows 和 Ubuntu 中] 都运行,是否可以使用不同的物理 IP 来标识每个服务器,并分别访问每个服务器?

基本上,是否可以让 VirtualBox 操作系统获得一个新的物理 IP,以使其与主机区分开来?

我的目标是从外部网络访问它们每一个,而不是在 LAN /同一个 WAN 中。

抱歉,如果太明显的话。我是初学者,我的网络知识很差!

答案1

您无法为 VM 分配额外的公共 IP(至少在经典配置中不能,并且您必须为额外的 IP 付费),但有一种解决方法。

HTTP 服务器默认在端口 80 上运行。您可以将主机的任何端口转发到虚拟机的 80。这样,它就可以在同一个公共 IP 下访问,但在另一个端口上。

要对端口 81 执行此操作(仅作为示例),请打开虚拟机的设置,然后单击“网络”选项卡并展开“高级选项”。单击“端口转发”按钮并添加新规则。将主机端口设置为 81,将客户机端口设置为 80。

例如,如果您的 IP 地址是192.0.2.1,那么192.0.2.1将指向在主机上运行的服务器,并且192.0.2.1:81将成为客户的服务器。

答案2

是的,你需要配置 VirtualBox 客户机以使用桥接适配器,而不是 NAT 或仅主机或其他任何方式。这将导致物理适配器在实际网络上为主机和客户机拾取数据包,并允许单独的 IP。

完成此操作后,当您启动您的客户机时,它将有一个适配器,其作用就像它连接到与主机相同的网络一样。

在此处输入图片描述

答案3

虽然我不太了解虚拟盒。如果您进入 NIC 的设置,您可以进入 IPV4 选项,然后在高级下,您可以配置计算机的 IP 地址。通常,当使用 DHCP 时,您的计算机将采用分配的任何 IP,但如果您在内部使用静态 IP,则可以指定多个静态 IP。从那里,您必须查看 VirtualBox 中的绑定选项,看看它是否允许您独占地绑定到其中一个 IP。如果您有多个物理 NIC,另一个选项可以是为每个系统使用单独的 NIC。

相关内容