我想将我使用 aqemu 设置的 QEMU/KVM 虚拟机配置为与运行 Debian/KDE 的主机位于同一本地网络上。
我是否必须在主机上配置桥接器?如果需要,如何配置?或者有没有办法使用 aqemu GUI 或 qemu 控制台命令来执行此操作?
我正在使用 VPN、nftables 防火墙和网络管理器,但我没有如上所述的名为 eth0 的网络接口这里以及下面评论中的链接。
当我跟随本指南在该指南的“如何打开桥接口”步骤中不起作用:运行ip a s br0
桥时没有 inet 设置,运行后sudo nmcli con up br0
桥为橙色,而不是绿色,桥从属为灰色,而不是绿色。 (我只能做到这样,当我运行nmcli connection show --active
Internet 连接时,我的 VPN 连接为绿色,bridge-br0 为橙色。)当我运行 时nmcli con up bridge-slave-ifname
,我得到:Error: Connection activation failed: No suitable device found for this connection (device enp0... not available because profile is not compatible with device (mismatching interface name)).
我还尝试了 libvirt(虚拟机管理器)和本指南但随后我在虚拟机中只收到错误“有线接口 (eth0) IP 配置不可用”,并且 virbr0 网桥不会位于 LAN 上。
或者是通过此方法通过 WiFi 连接时无法使虚拟机处于同一本地网络?那么另一种方法是什么?
答案1
到目前为止,对我有用的是:
- 使用 aqemu 使用虚拟机通过 VPN 连接访问 Internet。
在虚拟机的网络选项卡中,我选择了启用网络和连接模式使用用户模式网络堆栈。我还没有找到在 aqemu 中设置访问本地网络的桥的方法。与 Debian 存储库中的 aqemu 版本不同,如果没有其他更改,最新版本的 aqemu 无法在 Debian 中运行,因为会出现错误qemu-system-x86_64: Invalid parameter 'vlan'
(可能是由于 qemu 版本不匹配)。您可能还可以设置 libvirt 以进行 VPN-Internet 访问(在启动之前更改 NIC 设置或为同一虚拟机磁盘创建两个虚拟机),但我更喜欢使用 aqemu(可能部分是因为 Debian 存储库中的版本非常过时)。 - 使用 Virtual Machine Manager (libvirt) 来使用无需 VPN 即可访问本地网络和 Internet 的虚拟机。
在 NIC:... 下的虚拟机设置中,将网络源设置为具有本地 IP 设置 (ip a
) 的接口,并将源模式设置为桥接。
使用 libvirt 后,必须运行sudo chown username:username path-to-vm-disk-file
以允许 qemu 访问 aqemu 中的 vm 磁盘。我不知道如何让虚拟机通过 VPN 访问互联网和本地网络,也不知道为什么上面链接的指南没有在虚拟机管理器中提及此设置(我使用的是 aqemu之前)。