单wifi卡,同时连接多个接入点

Moh*_*dar 8 networking access-point virtual-interface iw

众所周知,我们可以使用iw dev (1)创建虚拟无线接口。此外,我们可以使用ifconfig <ifname> hw ether <Address>. 然后我们可以使用网络管理器为这些接口中的每一个设置两个不同的接入点 (SSID)。例如:

(Real)    wlan0: 00:16:b6:ab:cd:e7  ->  AP(1)
(Virtual) wlan1: 00:16:b6:ab:cd:e8  ->  AP(2)
Run Code Online (Sandbox Code Playgroud)

但是每当 wlan0 连接到 AP(1),而我尝试连接到 AP(2) 时,首先 wlan0 断开连接,然后 wlan1 连接到它自己的 AP。

我需要同时连接它们。是否可以?如何?

编辑:我的特定卡是 Lisco/Linksys RTL8191SEvB。我运行 Linux 4.4.38

Ale*_*ies 11

一些(大多数在 2021 年?)Wifi 芯片可以同时在多种模式下工作,都在相同的频率上,因为它们使用相同的无线电。现在,如果您的芯片上连接了 2 个无线电,则您可以在多个频率/频道上拥有多个功能。

2021 年更新:有些卡可以同时在 2 个频道上工作。这些是2.4 / 5GHz的组合设备,以及那些最能做到1 2.4,另有1从在相同的5GHz的频道。某些设备通过固件升级获得此功能,例如某些英特尔卡。

其他一些卡,例如 PI ZeroW 卡,可以同时执行 2.4Ghz 组中的 2 个通道。

例如,Intel 3160可以同时是 1 个站、1 个接入点和 1 个 P2P 设备。这用于WiDiMiracast,同时仍连接到“其他”网络。

您的芯片的有效组合可以被视为根:
iw list | grep -A 8 'interface combination'

一些例子:

  • 英特尔 3160

    有效接口组合:* #{ managed } <= 1, #{ AP, P2P-client, P2P-GO } <= 1, #{ P2P-device } <= 1, total <= 3, #channels <= 2

  • Qualcomm Atheros QCA986x/988x 802.11ac 无线网络适配器

* #{ AP, mesh point } <= 8, #{ managed } <= 1,
total <= 8, #channels <= 1, STA/AP BI must match
Run Code Online (Sandbox Code Playgroud)
  • Qualcomm Atheros QCA9377 802.11ac 无线网络适配器(修订版 31)
* #{ managed } <= 2, #{ AP, mesh point, P2P-client, P2P-GO } <= 2, #{ P2P-device } <= 1,
total <= 4, #channels <= 1
* #{ managed } <= 2, #{ P2P-client } <= 2, #{ AP, mesh point, P2P-GO } <= 1, #{ P2P-device } <= 1,
total <= 4, #channels <= 2
* #{ managed } <= 1, #{ IBSS } <= 1,
total <= 2, #channels <= 1
Run Code Online (Sandbox Code Playgroud)
  • PI 零无线
* #{ managed } <= 1, #{ P2P-device } <= 1, #{ P2P-client, P2P-GO } <= 1,
  total <= 3, #channels <= 2
* #{ managed } <= 1, #{ AP } <= 1, #{ P2P-client } <= 1, #{ P2P-device } <= 1,
  total <= 4, #channels <= 1
Run Code Online (Sandbox Code Playgroud)
  • USB MediaTek Inc.,驱动程序 mt76x0u
* #{ IBSS } <= 1, #{ managed, AP, mesh point, P2P-client, P2P-GO } <= 2,
total <= 2, #channels <= 1, STA/AP BI must match
Run Code Online (Sandbox Code Playgroud)
* #{ AP, mesh point } <= 8,
total <= 8, #channels <= 1
Run Code Online (Sandbox Code Playgroud)
  • rtl8192cu 与您的设备使用相同芯片的加密狗,大多数 Realtek 设备报告:

interface combinations not supported

此消息表示您的卡只能同时执行1 项功能。

对于某些 wifi 芯片,可以使用多种具有不同功能的签名固件。AFAICT,但不适用于您的 rtl819x。

对于英特尔 IWLWifi,解决方案可能是将(其中一个)连接切换到作为 AP 的您,或使其成为“Ad-Hoc”

否则,您必须用具有#{managed}<5或类似放宽限制的卡替换您的卡。

或者,添加一个(另一个)10 欧元 WUSB-WiFi-dongle 以连接到第二个 AP。