qemu kvm VM需要通过桥接wifi上网

qemu kvm VM需要通过桥接wifi上网

我有一些 Qemu KVM 虚拟机(主要是 CentOS 和 Debian),我的主机是 Ubuntu。我使用 virtio virbr0 配置了虚拟机网络,还通过创建虚拟接口、将虚拟机连接到该虚拟接口(使用 dnsmasq 分配 IP)以及通过主机进行 NAT 流量来使其工作。

现在,出于学习的目的,我真的很想创建一个桥接器,将我的 WiFi 接口添加为端口之一并将我的虚拟机连接到桥接器中,但我没有成功。正如上面提到的,我也使用了 Debian 的桥接教程尝试让 ebtables“伪装”我的 VM MAC 地址(因为 AP 不会接受与之前验证的 MAC 地址不同的 MAC 地址)。但我的问题是我什至无法将我的 wifi 添加为桥接端口。

我的/etc/network/interfaces:

auto lo
iface lo inet loopback

# this is my wifi card (god knows why udev gave this name)
auto wlx44334c371663
iface wlx44334c371663 inet manual

# of course I added my wifi real MAC in bridge_hw option
auto br0
iface br0 inet dhcp
        pre-up iwconfig wlx44334c371663 essid myESSID
        bridge_hw 11:11:11:11:11:11
        bridge_ports wlx44334c371663
        bridge_stp off
        bridge_waitport 0
        bridge_fd 0
        bridge_maxwait 0

当我启动它时:

$ sudo ifup br0

Waiting for a max of 0 seconds for wlx44334c371663 to become available.
can't add wlx44334c371663 to bridge br0: Operation not supported
Internet Systems Consortium DHCP Client 4.3.3
Copyright 2004-2015 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/br0/11:11:11:11:11:11
Sending on   LPF/br0/11:11:11:11:11:11
Sending on   Socket/fallback
DHCPDISCOVER on br0 to 255.255.255.255 port 67 interval 3 (xid=0xe1868a4f)
DHCPDISCOVER on br0 to 255.255.255.255 port 67 interval 8 (xid=0xe1868a4f)
DHCPDISCOVER on br0 to 255.255.255.255 port 67 interval 8 (xid=0xe1868a4f)
...

上面的通知:

无法将 wlx44334c371663 添加到桥 br0:不支持操作

当然,当我检查网桥时,我的wifi不是br0的一个接口:

$ brctl show
bridge name bridge id           STP enabled interfaces
br0         8000.44334c371663   no
virbr0      8000.000000000000   yes

当我启动 br0 时,我的 wifi 是打开还是关闭似乎并不重要,它只是不会将其添加为一个接口

如果我尝试使用 brctl 添加 wifi,也会发生同样的情况:

$ sudo brctl addif br0 wlx44334c371663
can't add wlx44334c371663 to bridge br0: Operation not supported

PS:这是一个外部 wifi 设备(rt2800usb),我也有笔记本电脑板载 wifi(ath10k_pci),但似乎都不起作用。虽然以太网可以工作(但我所在的地方没有以太网电缆)。那么,我做错了什么?

相关内容