我正在将一台机器从 Debian 迁移到 Ubuntu 20.4。
除了我无法让 KVM VM 直接连接到网络之外,一切似乎都运行良好。切换到“NAT”可以工作,但 VM 提供的服务需要对网络的其余部分可见。
我尝试过的方法:传统的 Debian 方式(过去这种方法在几十台机器上都有效):更新 /etc/network/interfaces 以包含一个网桥
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
重启网络(/etc/init.d/networking restart),然后在 virt-manager 中选择网桥并启动机器。没有运气。
因此我回滚了这些更改并尝试在网络源中使用适当的网络接口的 macvtap 选项,但没有成功。
接下来我找到了这个页面: https://www.answertopia.com/ubuntu/creating-an-ubuntu-kvm-networked-bridge-interface/
我按照说明使用 netplan,但出现的行为与编辑网络接口文件完全相同。
页面下方是命令行设置的选项,因此我尝试手动设置:
nmcli con add ifname br0 type bridge con-name br0
nmcli con add ifname br0 type bridge con-name br0
nmcli con down "Wired connection 2"
nmcli con up br0
桥接器显示运行 nmcli con-show 命令并且处于活动状态,但客户机上的行为相同。
之后我确实使用 virsh 确保桥是可见的:
virsh net-start br0
virsh net-list
确实,它处于活动状态,但在虚拟机中不起作用。
最后,我找到了进入网络管理器 GUI 的方法,并使用它设置了网桥。行为相同。主机使用网桥连接到网络,但客户机却死机了。dhclient 没有获得 IP 地址,日志只显示没有连接。
我确实找到了一个解决方案,表明这可能是主机上的防火墙问题,但我验证防火墙已被禁用。
所以我有点陷入困境。
我倾向于在配置方面匹配其他机器并在 /etc/network/interfaces 中设置网桥,但目前我对任何事情都持开放态度。
如能得到任何帮助我将非常感激,提前谢谢!
答案1
经过大量的阅读和测试后,我发现了我的问题。
这听起来很奇怪,但在我没有其他主意之后,我读到不应该在 wifi 卡上使用桥接,因为它们通常不支持桥接。
虽然这是一张有线卡,但我换了另一台服务器上的卡,结果它就正常工作了!所以问题似乎是这张卡出了问题!
我撤销了所有实验性更改,今天上午一切进展顺利。
谢谢!