Ubuntu 服务器 VM 网络的 Internet 连接问题

Ubuntu 服务器 VM 网络的 Internet 连接问题

所以我在网络方面还很陌生,想先在虚拟机中测试一些东西。

我用 Ubuntu 服务器搭建了一个小型 VM 网络。你可以看看网络图单击此链接(忽略交换机,它们仅用于说明目的)。所以基本上我想用配置为路由器的 Linux 服务器连接两个网络。问题是现在内部网络之间可以通信,我可以 ping 通例如 PC1 和 PC2,但我没有通过 NAT 连接到谷歌或其他方的互联网。使用ping google.comping 8.8.8.8发出以下消息:

ping:google.com:名称解析暂时失败

来自 192.168.1.1 icmp_seq=1 目标主机无法访问

这发生在 VM 网络中的每个设备上。我已经测试了一个全新的 VM,也使用了相同的发行版以及相同的 NAT 设置,它没有任何问题。我可以正常 ping google.com。因此,Virtual Box 设置不可能导致我的网络出现问题。

我按照以下步骤创建了网络:

  1. 我创建了每个虚拟机,并使用 ubuntu 服务器作为发行版,并且每个虚拟机都具有 NAT 连接和端口转发,以便访问主机。此外,每个虚拟机至少有 1 个用于内部网络的适配器。端口转发按预期成功运行,我可以使用主机 PC 上的 PuTTy 访问每个虚拟机。

  2. 我编辑了每台机器的静态 IP,以便它们可以互相看到。IP 如上图所示。PC1 的 /etc/netplan 中的 netplan 设置如下:

network:
  ethernets:
    enp0s3:
      dhcp4: true
    enp0s8:
      dhcp4: no
      addresses: [192.168.1.11/24]
      gateway4: 192.168.1.1
  version: 2

enp0s3 是 NAT 适配器,enp0s8 是内部网络适配器。

  1. 对于路由器设置,我再次使用了 2 个以太网适配器以及 NAT 适配器。netplan 如下所示:
network:
  ethernets:
    enp0s3:
      dhcp4: true
    enp0s8:
      dhcp4: no
      addresses:
        - 192.168.1.1/24
      gateway4: 192.168.1.1
    enp0s9:
      dhcp4: no
      addresses:
        - 192.168.2.1/24
      gateway4: 192.168.2.1
  version: 2

并且我已在 /etc/systctl.conf 中通过取消注释启用了 ip4 转发。net.ipv4.ip_forward=1 差不多就是这样。我真的很沮丧,因为我不知道为什么它现在不工作,花了 8 个多小时寻找它。我会很感激每一个帮助 :) 如果需要,我还可以提供更多信息。

`


嗨,谢谢你的回答!我的 PC1 路线如下:

default via 192.168.1.1 dev enp0s8 proto static
default via 10.0.2.2 dev enp0s3 proto dhcp src 10.0.2.15 metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15
10.0.2.2 dev enp0s3 proto dhcp scope link src 10.0.2.15 metric 100
192.168.1.0/24 dev enp0s8 proto kernel scope link src 192.168.1.11

我不完全确定对默认源使用两条路线是否有效。

我的路由器的路线如下:

default via 192.168.1.1 dev enp0s8 proto static
default via 192.168.2.1 dev enp0s9 proto static
default via 10.0.2.2 dev enp0s3 proto dhcp src 10.0.2.15 metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15
10.0.2.2 dev enp0s3 proto dhcp scope link src 10.0.2.15 metric 100
192.168.1.0/24 dev enp0s8 proto kernel scope link src 192.168.1.1
192.168.2.0/24 dev enp0s9 proto kernel scope link src 192.168.2.1

答案1

您是否检查过是否有默认路由?我认为它缺失了。

nabil@LAPTOP:~$ ip route
default via 172.30.80.1 dev eth0 -Default route
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.30.80.0/20 dev eth0 proto kernel scope link src 172.30.85.180

您也可以检查一下 PC1 和路由器吗?

在路由器 Netplan 配置中,请注释掉该gateway4行并执行 ˋsudo netplan apply`,然后检查是否可以从路由器 ping 互联网。如果可以,请从另一台计算机尝试。

相关内容