netplan bridge:没有与虚拟机的连接

netplan bridge:没有与虚拟机的连接

我想在我的主机(Ubuntu 18.04 服务器)上设置一个桥接器,以便从/到我的虚拟机(也是 Ubuntu 18.04 服务器)建立到互联网的连接,两者都使用 netplan。主机是 Hetzner 的专用机器。Hetzer 的星座:

主持人:

  • IP:94.130.131.162
  • 网络掩码:255.255.255.192
  • 网关:94.130.131.129
  • 广播:94.130.131.191

虚拟机(单独的 IP 和 MAC):

  • IP:94.130.131.132
  • 网关:94.130.131.129
  • 广播:94.130.131.191
  • 单独 MAC:00:50:56:00:20:B9

/etc/netplan/50-bridge.yaml的主人:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s31f6:
      dhcp4: no
      dhcp6: no
  bridges:
    br0:
      interfaces: [enp0s31f6]
      dhcp4: no
      addresses: [94.130.131.162/26]
      gateway4: 94.130.131.129
      nameservers:
          addresses: [213.133.98.98,213.133.99.99]
      dhcp6: no

/etc/netplan/01-netcfg.yaml的虚拟机上:

network:
  version: 2
  renderer: networkd
  ethernets:
    ens3:
      addresses:
        - 94.130.131.132/26
      dhcp4: no
      gateway4: 94.130.131.129
      nameservers:
        addresses: [213.133.98.98,213.133.99.99]

在虚拟机上我无法连接互联网:-(

networkctl status -a在主机上:

● 1: lo
       Link File: /lib/systemd/network/99-default.link
    Network File: n/a
            Type: loopback
           State: carrier (unmanaged)
         Address: 127.0.0.1
                  ::1

● 2: enp0s31f6
       Link File: /lib/systemd/network/99-default.link
    Network File: /etc/systemd/network/10-enp0s31f6.network
            Type: ether
           State: routable (configured)
            Path: pci-0000:00:1f.6
          Driver: e1000e
          Vendor: Intel Corporation
           Model: Ethernet Connection (2) I219-LM
      HW Address: 90:1b:0e:e0:d5:eb (Fujitsu Technology Solutions GmbH)
         Address: 94.130.131.162
                  2a01:4f8:13b:385d::2
                  fe80::921b:eff:fee0:d5eb
         Gateway: 94.130.131.129 (Juniper Networks)
                  fe80::1 (Juniper Networks)

● 3: br0
       Link File: /lib/systemd/network/99-default.link
    Network File: /run/systemd/network/10-netplan-br0.network
            Type: ether
           State: routable (configured)
          Driver: bridge
      HW Address: 4e:7e:7e:53:85:b2
         Address: 94.130.131.162
                  fe80::4c7e:7eff:fe53:85b2
         Gateway: 94.130.131.129
             DNS: 213.133.98.98
                  213.133.99.99

● 4: vnet0
       Link File: /lib/systemd/network/99-default.link
    Network File: n/a
            Type: ether
           State: degraded (unmanaged)
          Driver: tun
      HW Address: fe:50:56:00:20:b9
         Address: fe80::fc50:56ff:fe00:20b9

我在/var/lib/libvirt/quemu/name_of_virtual_machine.xml虚拟机上设置了单独的MAC。

networkctl status -a在虚拟机上:

截屏

有人知道为什么我无法通过互联网与虚拟机建立连接吗?我可以从虚拟机 ping 主机 IP,但无法 ping 互联网上的服务器。

答案1

我找到了在 VSwitch 上启用混杂模式的解决方案。您可以添加另一个网络,在该交换机上启用混杂模式,然后将客户机连接到该交换机。

答案2

我遇到过类似的问题,即客户虚拟机只能访问主机,而不能访问网络上的任何其他机器。运行sudo iptables -vL显示FORWARD策略是DROP,所以我添加了一条ACCEPT规则sudo iptables -A FORWARD -p all -i br0 -j ACCEPT。之后,我的客户虚拟机对网络的其余部分可见。我过去常常iptables-persistent在重新启动之间保留这些设置。

相关内容