Mehrere 802.11-Verknüpfungen mit einer einzelnen physischen Antenne?

526
8zero2.ops

Meine Frage ist ein Zugriffspunkt mit einer einzelnen PHY # -Hardware-Antenne, die mehrere virtuelle Schnittstellen erstellen und mehrere SSIDs ankündigen kann

Da wir jetzt auch mehrere virtuelle Schnittstellen auf der STA-Seite erstellen können, können Sie den cfg80211-Code trotzdem einfach mit mehreren SSIDs aus einer einzigen STA verknüpfen.

Beide SSIDs haben jetzt die gleiche Frequenz.

Schritte, denen ich gefolgt bin

erstellte Vifs: -

iw dev wlan0 interface add vlan0 type station iw dev wlan0 interface add vlan1 type station 

Ich habe zwei separate wpa_supplicant-Konfigurationsdateien, die ich normalerweise jeweils einzeln verwende und beide gleichzeitig verwende

wpa_suppicant -ivlan0 -Dnl80211 -cNEXTRA4419.conf  wpa_suppicant -ivlan1 -Dnl80211 -cNEIGHBOUR.conf 

Aber etwas weiß ich nicht, was mir fehlt, und ich kann keine Verbindung herstellen, was dieses Setup nicht funktionieren lässt.

2
Denken Sie an SSIDs wie VLANs. Die meisten Endgeräte verstehen keine VLAN-Tags. Daher können sie nur ein VLAN pro Schnittstelle verwenden. Ron Maupin vor 7 Jahren 0
wie ist es dann möglich, mehrere ssid auf derselben Hardware mit hostapd zu hosten? 8zero2.ops vor 7 Jahren 0
Sie können sich auch fragen, wie Bridges (Switches und WAPs sind Bridges) VLANs verstehen. Die Hardware ist im Wesentlichen die gleiche wie in einem Endgerät. Es gibt nichts, was einen PC davon abhält, VLANs zu verstehen, da einige Server-Software auf demselben PC laufen kann wie ein Desktop-Betriebssystem, das dies nicht tut. Ron Maupin vor 7 Jahren 0
Darüber hinaus kann ich es nicht mit vlans verstehen und korrelieren, da dot1q-Tagging in Linux-Maschinen durchaus möglich ist 8zero2.ops vor 7 Jahren 0
Es gibt Endgeräte, die auf Linux-Versionen basieren und VLAN-Tags nicht verstehen. Ron Maupin vor 7 Jahren 0
Es ist kein Problem fast alle Hardware-Unterstützung. Sie müssen kernal aktualisieren oder das 8021q-Modul laden. Lassen Sie uns nicht dorthin gehen, lassen Sie uns die oben genannten Möglichkeiten besprechen 8zero2.ops vor 7 Jahren 1
Sie haben mir gesagt, dass Sie die richtige Software benötigen, um das zu tun, was Sie wollen. Ich weiß nichts von meinem Kopf. Ron Maupin vor 7 Jahren 1
OK, lass uns warten, wenn jemand anders antworten kann, ich gebe Kopfgeld an 8zero2.ops vor 7 Jahren 1
Nun, @RonMaupin Danke, ich verstehe, was du zu sagen hast. Aber ich suche nur den fehlenden Teil 8zero2.ops vor 7 Jahren 1
Mögliches Duplikat von [Verbindung zu mehreren WLAN-Netzwerken kann über mehrere virtuelle Schnittstellen nicht hergestellt werden] (http://superuser.com/questions/977618/unable-to-connect-to-multiple-wifi-networks-via-multiple-virtual-interfaces ) Daniel B vor 7 Jahren 1
@RonMaupin 802.1q ist hier überhaupt nicht beteiligt. Dies ist 802.11, nicht 802.3. Das drahtlose Medium bietet solche Möglichkeiten, die mit einer physischen Punkt-zu-Punkt-Verbindung nicht möglich sind. Daniel B vor 7 Jahren 1
@DanielB, das verstehe ich. Ich habe eine Parallele gezeichnet. Ron Maupin vor 7 Jahren 0
@RonMaupin Es ist nur so, dass Sie nicht können. Ethernet und Wireless LAN sind nicht gleich. Daniel B vor 7 Jahren 1
@DanielB, das weiß ich absolut. Sie scheinen einfach nicht zu verstehen, was ich wollte. Ron Maupin vor 7 Jahren 0
Nein, weil es nichts zu bekommen gibt. * Jedes * WiFi-Gerät versteht SSIDs. Innerhalb der Treibergrenzen (wie in meiner Antwort angegeben) können WLAN-Geräte mehrere SSIDs bedienen oder verbinden. Es ist * nichts * wie VLANs. Es gibt auch keine Notwendigkeit für wilde Spekulationen, da er die virtuelle Schnittstelle überhaupt nicht erstellt hätte, wenn der Treiber sie nicht unterstützt hätte. Der Fahrer * unterstützt * es also und diese ganze Diskussion und der Versuch, (ungeeignete) Parallelen zu ziehen, waren völlig sinnlos. Daniel B vor 7 Jahren 1

1 Antwort auf die Frage

3
Daniel B

Das ist natürlich möglich. Ihre Konfiguration scheint korrekt zu sein. Sie können eine Verbindung zu so vielen Netzwerken herstellen, wie es der Treiber zulässt. Zum Beispiel berichtet mein Router ( 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 [...] 

Aber es gibt auch den Haken: #channels <= 1- Ein einzelnes Radio kann auch jeweils einen Kanal unterstützen. Das bedeutet, dass sich alle 2048 Netzwerke auf einem einzigen Kanal befinden müssen. Während das Radio zwischen den Kanälen springen konnte, habe ich keinen Treiber gesehen, der dies implementiert.


Also habe ich es mit meinem vertrauten Thinkpad versucht. Es verfügt über eine Intel Centrino Advanced-N 6205-Karte, die folgende Spezifikationen liefert:

valid interface combinations: * #{ managed } <= 1, #{ AP } <= 1, total <= 2, #channels <= 1, STA/AP BI must match * #{ managed } <= 2, total <= 2, #channels <= 1 

Kaum genug für einen Test! Ich habe die Arch Linux Live-CD 2016.10.01 verwendet. Ich habe nur eine zusätzliche Schnittstelle erstellt und auch die Hauptschnittstelle verwendet:

iw dev wlp3s0 interface add vlan0 type managed 

Während ich mehr Schnittstellen erstellen kann, können nur zwei gleichzeitig aufgerufen werden.

Ich habe dann eine Verbindung zu meinem realen Netzwerk hergestellt (mit dem wifi-menuBefehl, weil ich faul bin), damit ich SSH in:

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 

Mit einem anderen Router habe ich dann ein anderes Netzwerk auf Kanal 6 angelegt (keine Verschlüsselung) und eine Verbindung dazu hergestellt:

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 

Ich konnte dies replizieren, während beide Verbindungen ebenfalls verschlüsselt waren.

So geht's wifi-menulos wpa_supplicant:

wpa_supplicant -q -B -P /run/wpa_supplicant_wlp3s0.pid -i wlp3s0 -D nl80211,wext -c/run/network/wpa_supplicant_wlp3s0.conf 

Und dies ist die von ihm generierte Konfigurationsdatei:

ctrl_interface=/run/wpa_supplicant ctrl_interface_group=wheel network={ proto=RSN WPA psk="123456789" ssid="OpenWrt-1" } 
Aber ich nehme an, dass beide Zugriffspunkte SSIDs mit der gleichen Frequenz und auf demselben Kanal senden 8zero2.ops vor 7 Jahren 0
Aber sind sie Bitte geben Sie den Abschnitt "Gültige Schnittstellenkombinationen" der "iw list" -Ausgabe an. Auch die (relevante) Ausgabe von "iw dev wlan0 scan". Ich werde auch später versuchen, dieses Ganze zu wiederholen. Daniel B vor 7 Jahren 0
in Ordnung @Daniel 8zero2.ops vor 7 Jahren 0
@ 8zero2.ops Ich habe es ausprobiert, es funktioniert wie erwartet. Aktualisieren Sie Ihre Frage mit dem Abschnitt "Gültige Schnittstellenkombinationen" der Ausgabe von iw list und der entsprechenden Ausgabe von "iw dev wlan0 scan". Daniel B vor 7 Jahren 0