如何在我的 VirtualBox 虚拟机上访问我的本地服务器?

如何在我的 VirtualBox 虚拟机上访问我的本地服务器?

这是我的设置:

  • 我的机器(Mac OS,Snow Leopard)上运行着一个本地服务器。我可以通过浏览器访问它,方法是:

    本地主机:3000

  • 我有一台使用 Virtual Box 运行 Windows XP 的虚拟机。如果我尝试使用 localhost:3000 进行访问,则会失败。如果我使用 Mac 机器的 IP,情况也是如此。

  • 虚拟机可以访问互联网。

如何在虚拟机中访问本地服务器?

答案1

如何在虚拟机中设置网络?

听起来你可能使用 NAT 进行设置。在这种情况下,如果你的主机 (Mac) 有一个不可路由的 (私有) IP 地址,例如 192.168.xx,你将无法从虚拟机内访问主机。你无法从客户机访问主机的原因是你实际上是在设置 2 个独立的私有网络。你的 Mac 电脑在一个 (192.168.xx) 上,你的虚拟机在另一个 (可能是 10.xxx) 上,它们之间实际上有一个路由器。由于路由器不会路由私有 IP,因此这两个网络永远无法直接相互通信。

如果您希望主机和客户机能够通信,您可能需要将 VirtualBox 网络适配器设置为连接到“桥接适配器”。这将与虚拟机共享您的互联网连接,并允许您的客户机与主机通信。在这种情况下,您实际上是将您的 VM 作为附加节点添加到您的 Mac 已经所在的本地网络。

答案2

根据虚拟机的网络设置,您可能需要向主机操作系统添加一个额外的 IP,该 IP 与虚拟机位于同一子网中,以便它们可以通信。您的虚拟机可能有一个 192.168.xx 地址,因此请向 Mac 计算机添加一个类似的地址:

例如,如果虚拟机有 192.168.1.99 和子网掩码 255.255.255.0,您可以对主机执行以下操作:

ifconfig eth0:0 192.168.1.199 网络掩码 255.255.255.0 启动

您可能还需要重新启动适配器。

答案3

我也遇到了完全相同的问题,只是我是以 Windows 7 为客户机来使用。

我所做的是开始->运行->cmd调出命令行。

ipconfig显示连接详细信息。查找类似 10.xxx 的地址,这就是您的 Mac。

现在,使用它连接到 Mac 上的本地服务器。

对我来说,通常是这样的http://10.0.2.2:80/blah

相关内容