hostapd mehrere SSIDs mit einer BSSID

hostapd mehrere SSIDs mit einer BSSID

Ich habe einwl12xxWLAN-Adapter, der leider die Erstellung mehrerer Zugriffspunkte nicht zu unterstützen scheint. Wenn ich iw listihn ausführe, wird diese Zeile ausgegeben:

    interface combinations are not supported

Wenn ich hostapdmehrere SSIDs eingerichtet habe, läuft es manchmal und manchmal bekomme ich too many files are open, oder device or resource busy. In jedem Fall habe ich immer nur erlebt, dass es ein WLAN-Netzwerk erstellt.

So wie ich es verstehe, ist eine BSSID im Grunde die MAC-Adresse der WLAN-Karte, und die Standardmethode zum Erstellen mehrerer APs besteht darin, hostapdmehrere Netzwerkschnittstellen mit jeweils eigener BSSID (MAC-Adresse) und SSID zu erstellen. Es ist, als ob Sie mehrere physische Netzwerkkarten hätten.

Dieser Modus scheint von meiner Hardware nicht unterstützt zu werden, aber ich möchte eigentlich nur ein Netzwerk (BSSID) mit mehreren SSIDs. Ist das möglich? Wird hostapdes unterstützt (es gibt nur sehr wenig Dokumentation dazu)? Erlaubt der WLAN-Standard das?

Anders ausgedrückt:

# First network on wlan0.ap1
interface=wlan0.ap1
ssid=my_first_ssid

# Second network. `bss=X` starts a new section, using the network interface X.
# I think that's how it works anyway. Documentation is very unclear and the config
# file format is idiotic.
bss=wlan0.ap2
ssid=my_second_ssid

# Third network.
bss=wlan0.ap3
ssid=my_third_ssid

Ich möchte so etwas. Ein einzelnes Netzwerk, das sich selbst als drei SSIDs sendet.

# Single network on wlan0.ap1 with three ssids.
interface=wlan0.ap1
ssid=my_first_ssid, my_second_ssid, my_third_ssid

Oder würde vielleicht so etwas funktionieren?

interface=wlan0.ap1
ssid=my_first_ssid

bss=wlan0.ap1 # Same interface
ssid=my_second_ssid

bss=wlan0.ap1
ssid=my_third_ssid

Oder dieses?

interface=wlan0.ap1
ssid=my_first_ssid
bssid=02:01:03:04:05:06

bss=wlan0.ap2
ssid=my_second_ssid
bssid=02:01:03:04:05:06 # Same BSSID

bss=wlan0.ap3
ssid=my_third_ssid
bssid=02:01:03:04:05:06

Muss ich den Quellcode lesen?

Antwort1

Ich fürchte, Sie brauchen wirklich Hardware, die Schnittstellenkombinationen unterstützt. Mit hostapd können Sie nicht mehrere SSIDs auf derselben Schnittstelle haben. Ich kann nicht sagen, ob das aus Sicht der Standards richtig oder falsch ist.

So sieht es mit meiner WLAN-Karte aus

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

und mit dieser Hostapd-Konfiguration

interface=wlp5s0
ssid=ap1

bss=wlan-ap2
ssid=ap2

bss=wlan-ap3
ssid=ap3

Die zusätzlichen Netzwerkgeräte werden beim Start von hostapd erstellt. ip linkzeigt:

10: wlp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br0 state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:40 brd ff:ff:ff:ff:ff:ff permaddr xx:xx:xx:xx:xx:42
11: wlan-ap2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:41 brd ff:ff:ff:ff:ff:ff permaddr xx:xx:xx:xx:xx:42
12: wlan-ap3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether xx:xx:xx:xx:xx:42 brd ff:ff:ff:ff:ff:ff permaddr xx:xx:xx:xx:xx:42

Beachten Sie, dass ich die MAC-Adresse ändern musste, wlp5s0damit dies funktioniert.

verwandte Informationen