使用 NAT 在 VirtualBox 中安装 Ubuntu 后,客户系统的 IP 为 10.0.2.15。可以浏览并 ping 主机
在全局设置中,我发现了一个虚拟主机专用接口,其 IP 为 169.254.203.239。这似乎是 VirtualBox“路由器”的 IP,可以 ping 通,我知道有效的方法是使用转发到某些端口来访问客户系统。
但是 - 我记得 vmware - 我想访问客户机,因为它就像一个物理客户机。所以我尝试为客户机(ubuntu)提供一个来自我的主机网络的 IP(192.168.178.x)
因此无法再浏览,也无法 ping 通
我只添加了:
自动 eth0 iface eth0 inet 静态地址 192.168.178.155 网络掩码 255.255.255.0 网关 192.168.178.1
到 etc/network/interfaces - 名称服务器位于 etc/resolv.conf 中
有任何想法吗?!
答案1
有多种方法可以解决这个问题:
不要使用 NAT 适配器。我知道这可能不可行或不可取,但如果您可以选择“桥接”适配器并从同一子网获取 IP,所有这些问题(gust->host 和 host->guest)都会消失。
使用两个虚拟适配器,常规 NAT 适配器用于互联网访问,第二个“环回”适配器在您自己的私有子网上以桥接模式使用。环回将用于主机和客户机之间的通信,而 NAT 适配器将处理主机外部的流量。
有许多技巧可以将端口转发到主机,以及打开来宾以查看主机。默认情况下,我相信这两者都被阻止,以提供更好的沙盒。这里有很多关于 Server Fault 的问题(带有标签虚拟盒) 中讨论了打孔的相关内容。
答案2
这是不可能的。VBox 不允许从主机/外部访问客户系统。
然而,我正在寻找解决方案,如何解决这个问题。
用户手册上写道:
NAT 模式的缺点是,就像路由器后面的专用网络一样,虚拟机在外部互联网上是不可见的,无法访问,除非您设置端口转发(如下所述),否则您无法以这种方式运行服务器。(第 92 页)
因此,如果需要 NAT,那么为了处理没有端口转发的情况,使用 2 个虚拟适配器的解决方案将是最好的。