VirtualBox来宾OS访问主机OS上的本地服务器


107

在我的Ubuntu主机上,我有本地网络服务器。我以访客身份安装了VirtualBox和Debian。

我希望Debian来宾能够访问在Ubuntu主机上运行的Web服务器(例如,我只是http://localhost:8080/在Debian下键入浏览器)。

如何才能做到这一点?

Answers:


176

启用一个网络适配器。将其设置为NAT并启动计算机。不需要配置任何东西。

在来宾计算机的浏览器上,键入http://10.0.2.2,它将在主机OS中为您显示与“ localhost”相同的内容。

10.0.2.2是用于NAT连接的“默认网关”,并且客户机OS的IP为10.0.2.15

当然,您可以设置“仅主机”或“内部网络”,这将允许您进行其他高级配置。我建议继续使用NAT。

请享用

M.


1
“启用一个网络适配器”。在哪里做?
jshen 2014年

1
注意:如果您在主机上的apache中配置了基于名称的虚拟主机,则可以通过在来宾计算机的主机文件中为10.0.2.2 yourvirtualhostname.local (or whatever)
用户

@User您确定您的最后一条评论有用吗?我在VB主机上将虚拟主机设置为http://example.dev,并且映射10.0.2.2到VB guest 虚拟机上的任何内容根本无济于事。
ТомицаКораћ

1
@ТомицаКораћ它确实起作用。例如,请参见:askubuntu.com/questions/36183/…但是,您可能应该打开一个单独的问题以解决此问题。
用户

1
“启用一个网络适配器”表示在虚拟机的网络设置下(在VirtualBox内)仅启用其中一个适配器。初读时让我有些困惑。
Marquez 2015年

5

使用10.0.2.2的IP地址时要注意的一点是,例如,如果您使用的是MAMP,则添加端口号:8888,以便读取完整的地址 http://10.0.2.2:8888


3

允许不间断地访问VirtualBox Guest计算机的最简单方法是将网络设备设置为通往eth0到LAN的“桥梁”。

来宾计算机将通过路由器从DHCP获取LAN IP。


需要说明的是:这是客户端应用程序中的设置。它对我有用-我花了一段时间才意识到这一点,因为IE太愚蠢,以至于我在地址栏中键入IP地址和端口时都不希望我想要HTTP连接。
Michael Scheper 2015年

2

我发现为我解决的问题是确保将Windows VirtualHost-Only适配器设置为ip范围的.1地址,以便我的虚拟盒主机专用适配器为192.168.58.20,但Windows适配器的ip为192.168。 58.1


2

如果@Melvyn的解决方案不起作用,则可以选择将网络适配器设置为桥接。
转到Settings-> Network->,然后更改Attached to为桥接适配器。

在此处输入图片说明

您应该能够通过主机名或外部IP地址来调用parent,可以通过在命令提示符下键入 ipconfig /all 在此处输入图片说明

在此处输入图片说明

更新如果您正在使用Visual Studio调试并使用IIS Express。

C:\Users\[uesername]\Documents\IISExpress\config\applicationhost.config

在中找到您的网站<configuration>/<system.applicationHost>/<sites>/<site> (名称可能具有欺骗性,请在physicalPath属性中检查磁盘上的位置)

然后在<bindings>部分添加新的绑定

<bindings>
    <binding protocol="http" bindingInformation="*:50766:localhost" />
    <binding protocol="http" bindingInformation="*:50766:48qzr12" />
</bindings>

在哪里bindingInformation *:[port]:[machineName]

希望这可以节省您一些时间。


-1

好吧,您可以让Debian进入您的Web服务器,但不使用localhost。您必须使用Ubuntu主机的IP地址。

假设访客操作系统已连接到网络,要获取IP,请打开终端并输入ifconfig。应该看起来像192.168.0.2


嗨!对不起,回复太晚了。我的主机上的ifconfig显示eth0为192.168.0.102。当我在来宾中的firefox中输入此IP时,它尝试连接一段时间,然后连接终止:“ 192.168.0.102处的服务器响应时间过长” ...那么,我接下来应该尝试什么?提前致谢。
Maxim
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.