Это конечно возможно. Ваша конфигурация кажется правильной. Вы можете подключить столько сетей, сколько позволяет драйвер. Например, мой маршрутизатор сообщает ( iw list
):
valid interface combinations: * #{ managed } <= 2048, #{ AP, mesh point } <= 8, #{ P2P-client, P2P-GO } <= 1, #{ IBSS } <= 1, total <= 2048, #channels <= 1, STA/AP BI must match [...]
Но есть #channels <= 1
еще одна загвоздка: - одно радио может одновременно поддерживать один канал. Это означает, что все сети 2048 должны находиться на одном канале. Хотя радио могло переключаться между каналами, я не видел ни одного драйвера, который бы реализовывал это.
Итак, я попробовал с моим верным Thinkpad. Он имеет карту Intel Centrino Advanced-N 6205, обеспечивающую следующие характеристики:
valid interface combinations: * #{ managed } <= 1, #{ AP } <= 1, total <= 2, #channels <= 1, STA/AP BI must match * #{ managed } <= 2, total <= 2, #channels <= 1
Едва достаточно хорош для теста! Я использовал Arch Linux live CD 2016.10.01. Я создал только один дополнительный интерфейс и тоже использовал основной интерфейс:
iw dev wlp3s0 interface add vlan0 type managed
Пока я могу создать больше интерфейсов, одновременно можно открыть только два.
Затем я подключился к своей реальной сети (используя wifi-menu
команду, потому что я ленивый), поэтому я могу использовать SSH:
root@archiso ~ # iw dev phy#0 Interface vlan0 ifindex 5 wdev 0x2 addr 08:11:96:01:82:49 type managed channel 6 (2437 MHz), width: 20 MHz, center1: 2437 MHz txpower 15.00 dBm Interface wlp3s0 ifindex 4 wdev 0x1 addr 08:11:96:01:82:48 type managed txpower 15.00 dBm
Используя другой маршрутизатор, я затем создал другую сеть на канале 6 (без шифрования) и подключился к нему:
root@archiso ~ # ip link set wlp3s0 up root@archiso ~ # iw dev wlp3s0 connect -w OpenWrt-1 wlp3s0 (phy #0): connected to e0:91:f5:08:12:9d root@archiso ~ # ping -I wlp3s0 -c 3 fe80::e291:f5ff:fe08:129d PING fe80::e291:f5ff:fe08:129d(fe80::e291:f5ff:fe08:129d) 56 data bytes 64 bytes from fe80::e291:f5ff:fe08:129d%wlp3s0: icmp_seq=1 ttl=64 time=2.33 ms 64 bytes from fe80::e291:f5ff:fe08:129d%wlp3s0: icmp_seq=2 ttl=64 time=2.53 ms 64 bytes from fe80::e291:f5ff:fe08:129d%wlp3s0: icmp_seq=3 ttl=64 time=1.38 ms --- fe80::e291:f5ff:fe08:129d ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 1.382/2.084/2.537/0.504 ms
Я смог повторить это, пока оба соединения были зашифрованы тоже.
Вот как wifi-menu
начинается wpa_supplicant
:
wpa_supplicant -q -B -P /run/wpa_supplicant_wlp3s0.pid -i wlp3s0 -D nl80211,wext -c/run/network/wpa_supplicant_wlp3s0.conf
И это файл конфигурации, который он сгенерировал:
ctrl_interface=/run/wpa_supplicant ctrl_interface_group=wheel network={ proto=RSN WPA psk="123456789" ssid="OpenWrt-1" }