我正在 Ubuntu 18.04.3 上设置虚拟机主机。我安装了 KVM,并成功设置了一个通过桥接网络连接的 qemu vm。它在我的网络中显示为常规机器。
虚拟机主机:192.168.178.14 虚拟机客户机:192.168.178.15
因此,我使用 netplan 成功实现了桥接。那是在一台装有测试虚拟机的测试机上。现在,我在生产服务器上添加了第二张包含四个网络接口的网卡。
主机的“自身”网络接口是 enp7s0。额外的网络接口称为 enp4s0f0、enp4s0f1、enp5s0f0 和 enp5s0f1。我连接了 enp5s0f1,我想做的是桥接 enp5s0f1 以供虚拟机使用。
/etc/netplan/50-cloud-init.yaml 如下所示:
network:
ethernets:
enp7s0:
dhcp4: no
dhcp6: no
addresses: [192.168.178.14/24]
gateway4: 192.168.178.1
nameservers:
addresses: [192.168.178.1]
enp5s0f1:
dhcp4: no
version: 2
bridges:
br0:
interfaces: [enp5s0f1]
dhcp4: no
addresses: [192.168.178.17/24]
gateway4: 192.168.178.1
nameservers:
addresses: [192.168.178.1]
我没有忘记执行 netplan apply。那里没有错误。
我安装了虚拟机,一切顺利。它是从互联网存储库安装的,所以我确信它具有网络连接。我安装了 openssh-server,就像在我的测试环境中一样。
但是,当我尝试通过 ssh 连接到新虚拟机时,它不起作用。(主机在非标准端口(而不是 22)上运行 ssh;客户机在端口 22 上运行 ssh。)
如果我查看客户端的 arp 表,我会发现 192.168.178.17 的 mac 地址与 192.168.178.14 相同。因此看起来桥接不起作用。
不确定是否有必要,但也创建了一个 xml 文件
<network>
<name>host-bridge</name>
<uuid>d90796c6-f38f-42cd-ad55-6f95a8feebe6</uuid>
<forward mode='bridge'/>
<bridge name='br0'/>
</network>
导入它并且现在它显示在 virsh net-list -all 中:
Name State Autostart Persistent
----------------------------------------------------------
default active yes yes
host-bridge active yes yes
没有快乐。
我究竟做错了什么?