带桥接网络的 vBox 服务器仅能连接家庭 Wifi

带桥接网络的 vBox 服务器仅能连接家庭 Wifi

如果我不在家中使用 WiFi 网络,ubuntu 20.04 主机上的 debian 10.5 vBox 服务器将无法连接到互联网,也无法连接到客户机。(vBox 6.1)

我无法从主机 ping 通服务器。

一切都正确启动,启动时没有服务故障......(意思是没有错误消息来帮助我排除故障。)

我尝试切换到 nat 网络并配置端口转发。我能够通过 ssh 进入盒子,但无法从主机 ping 通,并且盒子内部没有外部互联网连接。

有人能提供一个完整的解决方案,让我可以随意使用不同的 wifi 网络吗?

我的 debian 10.5 服务器在 /etc/notwork/interfaces 中有这个

auto enp0s3
iface enp0s3 inet static
        address 192.168.0.84  #My server is running a bind DNS server, so I added its address
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1
        dns-nameservers 192.168.0.84 100.100.2.136 100.100.2.138 8.8.8.8 `

仅供参考,这是一个解决相同问题的教程,但我无法将其“翻译”为 Ubuntu Host 和 Debian 10.5 服务器 https://marcus.4christies.com/2019/01/how-to-create-a-virtualbox-vm-with-a-static-ip-and-internet-access/

答案1

根本原因:

您的家庭网络使用的是 192.168.0.0/24 网络。这意味着家庭网络中设备的地址从 192.168.0.1(您的路由器)到 192.168.0.254。

其他地方的另一个网络可能/将会使用另一个网络范围。

您的工作站大概配置为使用 DHCP,即它将获得一个属于网络地址范围的 IP 地址,例如在家中为 192.168.0.100 或在其他地方为 192.168.67.45。

您的虚拟机具有固定 IP,超出了您的家庭网络范围,因此无法连接到使用不同范围的网络。

当您切换到 Virtualbox 中的 NAT 网络时,情况也是如此。据我所知,Virtualbox 上的 NAT 网络(即提供给 VM 的物理适配器后面的网络)是 10.0.2.0/24,网关(您的工作站)是 10.0.2.2。

考虑到这一点,有多种可能的解决方案:

解决方案 1:使用 Bridge 和 DHCP

你没有指定是否需要在虚拟机中使用固定 IP 地址。如果不这样做,请将 /etc/network/interfaces 更改为

auto enp0s3
iface enp0s3 inet dhcp

解决方案 2:使用 DHCP 和 NAT

客户端的配置与上述相同,但使用 NAT 网络

解决方案3:NAT网络上的固定IP

首先使用解决方案 2。然后找出您被分配了哪个 IP/子网,然后更改 /etc/network/interfaces 中的配置以反映更改:

auto enp0s3
iface enp0s3 inet static
        address 10.0.2.84
        netmask 255.255.255.0
        network 10.0.2.0
        broadcast 10.0.2.255
        gateway 10.0.2.2
        dns-nameservers 10.0.2.84 100.100.2.136 100.100.2.138 8.8.8.8 `

但是,您需要将端口从外部世界转发到虚拟机。

解决方案 4:使用两个网络适配器

从你的问题来看,你为什么在虚拟机上运行 bind 并不完全清楚。我猜你想将它用作 LAN 中的 DNS 服务器,用于过滤等?如果你想保留上述配置,只需删除以下行

gateway 192.168.0.1

并添加第二个网络接口,该接口可能被称为 enp1s45,例如使用 dhcp 作为互联网网关:

auto enp1s45
iface enp1s45 inet dhcp

这样,第二个接口就提供了通往互联网的网关。在家里,你的机器仍然是 192.168.0.84

答案2

因此,您的家庭网络允许您将主笔记本电脑操作系统(虚拟机管理程序)的 wlan 接口连接到 Wifi,并提供一个 IP 地址,然后当您以桥接方式运行 VM(来宾)时,还会提供一个额外的 IP 地址,但在网吧等其他地方,这种情况不会发生。我想说这是大多数路由器配置中的预期行为。正常行为是每个 MAC 在使用凭据成功登录 Wifi 后只获得一个 IP(就像笔记本电脑的虚拟机管理程序一样)。

相关内容