Unterbrechungsfreies WLAN: Roaming (Fast Transition)

Hinter dem Marketingbegriff Mesh-WLAN verbirgt sich hĂ€ufig der Wunsch nach einem WLAN das einfach ĂŒberall im Haus funktioniert. Doch was ist eigentlich ein Mesh-WLAN? Und was wird wirklich benötigt, damit WLAN ĂŒberall und auch wĂ€hrend dem Wechsel von einer Empfangsstation zur anderen funktioniert? Mein Setup besteht aus zwei Access-Points, welche als Einheit eine einzige WLAN-SSID zur VerfĂŒgung stellen. Als Access-Points verwende ich GerĂ€te von unterschiedlichen Herstellern und OpenWrt als Firmware. Die Access-Points liefern einen unterbrechungsfreien Empfang, wenn ich mich von einem Stockwerk zum anderen bewege und wechseln beim Verlassen des 5GHz-Empfangsbereichs auf eine langsamere 2,4GHz-Verbindung, damit das WLAN ĂŒberall bestmöglich funktioniert. Am Ende des Artikels erklĂ€re ich meine Einstellungen im Detail.
Mesh-WLAN
Der Begriff Mesh-WLAN ist nicht eindeutig definiert, dennoch werden damit mehrere WLAN-GerĂ€te verstanden, die zusammen ein einziges WLAN zur VerfĂŒgung stellen. Klassische Mesh-WLAN-Systeme kommunizieren untereinander meist auch ĂŒber WLAN, was nicht fĂŒr alle Gegebenheiten geeignet ist. Als Beispiel könnte eine LAN-Verkabelung zwischen verschiedenen Stockwerken eines GebĂ€udes oft eine schnellere und stabilere Verbindung der WLAN-Access-Points untereinander gewĂ€hrleisten.Â
Was brauche ich wirklich fĂŒr ein unterbrechungsfreies WLAN?
Das, was sich die meisten mit dem Begriff Mesh-WLAN erwarten, ist eigentlich die Funktion 802.11r Fast Basic Service Set (BSS) Transition: Die Basis, damit Clients möglichst schnell von einem WLAN Access Point zum anderen wechseln können: ohne Unterbrechung. AbhĂ€ngig von der eingesetzten Hardware, kann die Verbindung der Access-Points untereinander ĂŒber unterschiedlichste Verbindungen stattfinden, als Beispiel WLAN, PowerLine oder einer LAN-Verkabelung. Die Entscheidung welcher Access-Point fĂŒr die Verbindung verwendet wird liegt beim Client. Auch wenn aktuelle GerĂ€ten zusammen mit Access-Points und 802.11r bereits eine sehr gute Roaming-FunktionalitĂ€t besitzen, kann deren Verhalten beim Einsatz von 802.11k und 802.11v (Seamless Roaming: Access Point und Band Steering) weiter optimiert werden.Â
Wie funktioniert 802.11r?
Bei mehreren Access Points mit derselben SSID und demselben Key, entscheidet das EndgerĂ€t, wann es auf einen anderen Access-Point mit einem besseren Empfang wechseln soll. Verbindet sich ein EndgerĂ€t mit einem WLAN, muss dieses sich zunĂ€chst Authentifizieren und eine IP-Adresse vom DHCP-Server holen, was ein wenig Zeit kostet. Normalerweise mĂŒsste das GerĂ€t beim Wechsel von einem Access Point zum anderen erneut den kompletten Anmeldeprozess durchlaufen und den Datenverkehr anhalten, bis die Verbindung abgeschlossen ist. Der Standard 802.11r vereinfacht den Verbindungsprozess, indem der Anmeldevorgang beim Wechsel von einem Access Point zum anderen verkĂŒrzt wird. Zeitintensive Aufgaben werden dabei weggelassen. Ohne der Notwendigkeit eine neue IP-Adresse vom DHCP-Server zu holen, kann der Wechsel von einem Access-Point soweit reduziert werden, dass der Verbindungswechsel zu keiner spĂŒrbaren Unterbrechung fĂŒhrt.
Was ist Seamless Roaming?
Des Ăfteren taucht auch der Begriff Seamless Roaming fĂŒr den nahtlosen Wechsel von einer Funkzelle zur nĂ€chsten auf. Neben dem Standard 802.11r werden zusĂ€tzlich meist die Standards 802.11k und 802.11v eingesetzt, welche den Clients Informationen zu benachbarten WLAN Access Points zur VerfĂŒgung stellen damit diese in der Lage sind bessere Entscheidungen fĂŒr die Verbindung treffen zu können.Â
Was ist Access Point - Steering?
Access Point Steering ist eine Routerfunktion die alle WLAN-AccessPoints und deren verbundener EndgerĂ€te ĂŒberwacht und die EndgerĂ€te aktiv informiert, falls ein anderer Access-Point eine deutlich bessere Verbindung zur VerfĂŒgung stellen kann. Technisch gesehen benötigt ein Access Point Steering die Standards 802.11r, 802.11k und 802.11v als Basis.
Was ist Band Steering?
FĂŒr das WLAN kommen zwei verschiedene FrequenzbĂ€nder zum Einsatz: 2,4GHz und 5GHz. Das 5GHz-Band liefert einen höheren Datendurchsatz als das Ă€ltere 2,4GHz-Band, besitzt aber eine geringere Reichweite. Das sogenannte Band Steering ist eine Router-Funktion welche die EndgerĂ€te dabei unterstĂŒtzt das gerade am besten geeignete Frequezband fĂŒr die Verbindung zu verwenden und somit den meisten Durchsatz und die beste VerbindungsqualitĂ€t zu liefern.Â
Mein Setup: nahtloser WLAN-Empfang ĂŒber 2 Stockwerke mit 3 verschiedenen Access Points.Â
Die beiden Stockwerke meines Hauses sind durch eine Betondecke getrennt, wodurch es nicht möglich ist einen einzelnen WLAN-Access-Point so zu platzieren, dass dieser ĂŒberall ausreichend WLAN-Empfang zur VerfĂŒgung stellen kann. Nachdem der Router meines Providers nur begrenzte Möglichkeiten bietet, habe ich das WLAN darauf deaktiviert und verwende das GerĂ€t rein fĂŒr die Internetverbindung. Das WLAN im Erdgeschoss wird von einem zusĂ€tzlichen Router versorgt, diesen habe ich zentral im Erdgeschoss aufgestellt. Um den WLAN-Empfang im ersten Stock zu verbessern, habe ich dort einen weiteren Access-Point im Vorhaus platziert und zusĂ€tzlich einen Access Point im Wohnzimmer. Die Verbindung der GerĂ€te erfolgt ĂŒber eine LAN-Verkabelung, Ă€hnlich dem folgenden Versuchsaufbau:
Siehe auch: Verkabelung, Variante 2
Als Router verwende ich einen bereits in die Jahre gekommenen aber immer noch schnellen Linksys WRT3200ACM und als AccessPoints einen relativ neuen und relativ gĂŒnstigen Netgear WAC104 sowie einen Zyxel NWA50AX. Auf den drei GerĂ€ten habe ich die neueste OpenWrt-Firmware installiert: 24.10.2. AuĂerdem habe ich fĂŒr andere WLANs mehrere TP-Link RE650 v2, sowie einen alten Netgear EX3700 erfolgreich in Betrieb genommen. Sollte ich in Zukunft einen weiteren Access-Point benötigen, zum Beispiel um den Empfang im Keller zu verbessern, kann ich dafĂŒr eine beliebige Hardware mit OpenWrt-UnterstĂŒtzung verwenden, siehe: OpenWrt Hardware Empfehlung - verfĂŒgbare GerĂ€te 2025.Â
Im Artikel "LAN & WLAN im Heimnetzwerk: der ultimative Guide" habe ich einfach 802.11r in den OpenWrt-Optionen aktiviert, was bereits einen unterbrechungsfreien Wechsel von einer Empfangszone zur anderen ermöglicht. Zudem kann den GerĂ€ten mit dem Aktivieren von 802.11k/v geholfen werden, möglichst immer die beste Verbindung zu verwenden. Den Einsatz eines Client Steering Deamon wie Usteer wĂŒrde ich nicht pauschal empfehlen.
WLAN Einstellungen
Die Bash-Befehle fĂŒr die hier vorgestellten WLAN-Einstellungen können auch einfach ĂŒber das Terminal gesetzt werden, siehe:OpenWRT WLAN FT-Konfiguration - Online generierenÂ
Auf allen Access Points sollte fĂŒr jeweils 2,4GHz und 5GHz ĂŒberall dieselbe SSID, VerschlĂŒsselung, und derselbe Key verwendet werden. Der WLAN-Name befindet sich dazu im Reiter: "General Setup"
Die Sicherheitseinstellungen und das WLAN-Passwort werden im Reiter: "Wireless Security" eingestellt:
Bei meinem Setup verwende ich WPA2-PSK und AES als VerschlĂŒsselung. Die VerschlĂŒsselung auf "auto" machte bei bestimmten Clients Probleme.
Advanced Settings: DTIM Interval 1,2 oder 3?
Wird als DTIM Interval 1 verwendet, sendet der AP mit jedem Beacon zusĂ€tzlich Informationen zum WLAN-Netzwerk ĂŒber Broadcast und Multicast Frames. Der Standard DTIM Interval von OpenWrt ist 2. Apple empfiehlt fĂŒr deren GerĂ€te einen DTIM Interval von 3, da sich ein höherer Wert positiv auf den Standby-Stromverbrauch auswirkt. Bestimmte Hersteller verwendet fĂŒr das 2,4GHz Netzwerk einen DTIM Interval von 1 und fĂŒr das 5GHz Netzwerk einen Interval von 3.
WLAN Roaming Einstellungen
Falls nicht bereits geschehen, sollte in den WLAN-Einstellungen aller Interfaces mit demselben WLAN-Key 802.11r Fast Transition aktiviert werden:
Wichtig ist zudem, dass auf allen Access-Points dieselbe Mobility Domain - in Form eines 4-stelligen Hex-Codes - hinterlegt wird. Nachdem OpenWrt hier "4f57" auf allen GerÀten als Standardwert vorgibt, muss die Mobility Domain nicht zwingend angegeben werden.
"FT over the Air" sollte anstelle von "FT over DS" verwendet werden, damit auch Apple-GerĂ€te ohne Probleme funktionieren. FĂŒr WPA2 und "FT over the Air" wird die Einstellung "Generate PMK locally" empfohlen. Alternativ kann "Generate PMK locally deaktiviert werden, wenn R0 und R1 Key Listen verwendet werden, siehe: OpenWrt: Externe R0 und R1 Key Holder erzeugen - online. Wer UCI-Befehle im Terminal bevorzugt, sollte einen Blick auf den Online-Helper werfen: OpenWRT WLAN FT-Konfiguration - Online generieren
Wie bereits im Artikel LAN & WLAN im Heimnetzwerk: der ultimative Guide beschrieben, reicht das Aktivieren der "802.11r Fast Transition" - Option aus, damit sich die GerĂ€te ohne Unterbrechung beim Wechsel von einer Empfangszone zur anderen verbinden. Die Verantwortung fĂŒr den Wechsel auf eine andere Empfangszone liegt dabei rein beim EndgerĂ€t. Damit die EndgerĂ€te mit zusĂ€tzlichen Informationen zum Netzwerk und zu möglichen AccessPoints versorgt werden, kann 802.11r und 802.11v aktiviert werden:
Optional: 802.11k RRM und 802.11v
Damit OpenWrt alle WLAN-Funktionen verwenden kann, hatte ich lĂ€ngere Zeit wpad-basic-mbedtls mit der Vollversion: wpad-mbedtls ersetzt.Â
Die MenĂŒpunkte unter Interface Configuration / WLAN Roaming fĂŒr 802.11k werden erst nach dem Aktivieren von WPad-Full und einem Neustart des Routers sichtbar:
Aktuell betreibe ich mein WLAN wieder mit der Basic-Variante, da ich im Verhalten keine Verbesserung feststellen konnte und mit einem meiner Access Points StabilitÀtsprobleme hatte, die aktuell behoben sind.
Optional: Client Steering Daemon: usteer
Ein Client Steering Deamon ist nicht zwingend notwendig, da WLAN-Clients in der Regel sehr gut selbst entscheiden, welcher Access Point gerade am besten geeignet ist. Wer dennoch auch ĂŒber die AccessPoints in das Verhalten eingreifen möchte, kann "usteer" per Terminal, oder ĂŒber die GUI als Software-Paket auf allen Access Points installieren:
opkg update && opkg install usteer luci-app-usteer
luci-app-usteer bietet einen Ăberblick in der GUI welche Clients sich gerade auf welchem Access Point verbunden haben, bez. ĂŒber die "Hearing map": Welcher Client auf welchem Access Point sichtbar ist. AuĂerdem zeigt die Client-List, ob alle Access Points fĂŒr einen WLAN-Empfang bereit sind:
Damit AP Steering funktioniert, benötigt Usteer zumindest einen Wert fĂŒr "signal_diff_threshold"
In den Einstellungen (Settings) kann Usteer zudem auf ein bestimmtes WLAN beschrÀnkt werden:
Siehe dazu auch die offizielle Dokumentation und eine entsprechende Diskussion im OpenWRT-Forum.
Als Alternative zu "usteer" kann fĂŒr das Seamless Roaming auch "dawn" verwendet werden. Ich habe dawn eine kurze Zeit mit den Standardeinstellungen getestet: also nur die usteer-Pakete: "usteer" und "luci-app-usteer" gegen "dawn" und "luci-app-dawn" getauscht. Das Band Steering hat bei mir mit dawn etwas besser funktioniert, dafĂŒr finde ich die GUI-OberflĂ€che von Usteer wesentlich ĂŒbersichtlicher.
Zwischenzeitlich hatte ich so meine Probleme mit Usteer und keinen Steering Deamon eingesetzt, was im Grunde auch gut funktioniert. siehe:Â Client Steering: Usteer / DAWN mehr Schaden als Nutzen?
Einstellungen direkt im Terminal
Zwar können in den neuesten OpenWrt-Versionen alle relevanten Einstellungen auch in der VerwaltungsoberflĂ€che eingestellt werden, dennoch bietet das Terminal mitunter die Möglichkeit die Einstellungen schneller zu setzen, oder von einem GerĂ€t zum anderen zu ĂŒbertragen.Â
Das direkte Ăndern der Einstellungen ĂŒber das Terminal setzt eine Verbindung mit Putty oder einem anderen SSH-Client auf alle Router oder Access Points, bzw. auf deren IP-Adresse voraus:
Im Terminal können die WLAN-Einstellungen mit dem folgenden Befehl bearbeitet werden:
vi /etc/config/wireless
FĂŒr die Bedienung des Terminal-Editors VI, siehe:Â VI Editor - Befehle.
Die Einstellungen können zudem ĂŒber UCI-Befehle im Terminal gesetzt werden. Hier meine aktuellen Einstellungen inkl. der Möglichkeit diese per Online Wizard fĂŒr das eigene Setup anzupassen: OpenWRT WLAN FT-Konfiguration - Online generieren
Und: funktioniert es? Kontrolle im System Log
Bei der ersten Verbindung schaut die Anmeldung am Access-Point wie folgt aus: Das Smartphone meldet sich ĂŒber einen 4-Wege-Handshake an und bekommt vom DHCP-Server eine IP-Adresse:
OpenWrt hostapd: phy0-ap0: STA 11:22:33:44:55:00 IEEE 802.11: associated (aid 2)
OpenWrt hostapd: phy0-ap0: AP-STA-CONNECTED 11:22:33:44:55:00 auth_alg=open
OpenWrt hostapd: phy0-ap0: STA 11:22:33:44:55:00 RADIUS: starting accounting session 235E20F50584CA9B
OpenWrt hostapd: phy0-ap0: STA 11:22:33:44:55:00 WPA: pairwise key handshake completed (RSN)
OpenWrt hostapd: phy0-ap0: EAPOL-4WAY-HS-COMPLETED 11:22:33:44:55:00
...
OpenWrt dnsmasq-dhcp[1]: DHCPREQUEST(br-lan) 192.168.1.122 11:22:33:44:55:00
OpenWrt dnsmasq-dhcp[1]: DHCPACK(br-lan) 192.168.1.122 11:22:33:44:55:00 A53-von-Bernhard
OpenWrt hostapd: phy0-ap0: STA 11:22:33:44:55:00 IEEE 802.11: authenticated
Ist ein anderer Access Point mit einem besseren Empfang in Reichweite, wechselt das GerĂ€t ohne spĂŒrbarer Unterbrechung mit einer abgekĂŒrzten Anmeldung,Â
OpenWrtWZ hostapd: phy0-ap0: STA 11:22:33:44:55:00 IEEE 802.11: associated (aid 1)
OpenWrtWZ hostapd: phy0-ap0: AP-STA-CONNECTED 11:22:33:44:55:00 auth_alg=ft
woraufhin die Verbindung zum ursprĂŒnglichen Access Point getrennt wird:
OpenWrt hostapd: phy0-ap0: AP-STA-DISCONNECTED 11:22:33:44:55:00
OpenWrt hostapd: phy0-ap0: STA 11:22:33:44:55:00 IEEE 802.11: disassociated due to inactivity
Bestimmte Clients, speziell nicht mobile oder Ă€ltere GerĂ€te, sind mitunter nicht in der Lage ohne einem erneuten 4-Wege-Handshake von einem Access-Point zum anderen zu wechseln. Nachdem stationĂ€re GerĂ€te in der Regel nicht zwischen den Empfangszonen bewegt werden, sollte das normalerweise keine Probleme verursachen. Wer fĂŒr die GerĂ€te dennoch einen bestimmten Access-Points verwenden will, kann ĂŒber ein zusĂ€tzliches WiFi-Netzwerk fĂŒr diese GerĂ€te nachdenken:
Zudem könnten eigene WiFi-Kennungen fĂŒr die unterschiedlichen WLAN-KanĂ€le in ErwĂ€gung gezogen werden:
Eigene WLAN-Kennung fĂŒr 5Ghz?
Die Verantwortung fĂŒr den Wechsel von einem AP zum anderen bzw. die Entscheidung welches Frequenzband verwendet werden soll liegt zunĂ€chst beim EndgerĂ€t. AbhĂ€ngig von der verbauten WLAN-Hardware und dem verwendeten Treiber ist das Verhalten der GerĂ€te unter UmstĂ€nden nicht immer optimal. Ein Steering Deamon könnte an dieser Stelle unterstĂŒtzen, trifft mitunter aber auch nicht immer die besten Entscheidungen. Speziell beim Einsatz von 2,4GHz und 5GHz in derselben Mobility Domain. HĂ€ufig wird als Lösung der Einsatz einer eigenen WLAN-Kennung fĂŒr 5GHz mit einer eigenen Mobility Domain empfohlen. Um sicherzustellen, dass sich die GerĂ€te rein mit dem 5GHz-WLAN verbinden, kann auf den mobilen GerĂ€ten fĂŒr alle anderen WLAN-Netzwerke "Automatisch erneut verbinden" deaktiviert werden.
Troubleshooting
Wireless is disabled
Bei Problemen sollten in den Device-Einstellungen zudem der Country Code eingestellt werden:
Hintergrund: Mit der Standardeinstellung Country Code: "driver default" war es mir bei einem der Access Points nicht möglich das WLAN-Interface zu aktivieren.
Sollte das Problem bestehen, kann der Channel mal mit Auto oder eine andere Frequenz oder Width versucht werden:
Quellen
- openwrt.org/docs/guide-user/network/wifi/usteer
- forum.openwrt.org/t/lets-talk-about-usteer/124603/130?page=2
- openwrt.org/docs/guide-user/network/wifi/basic
Fazit
Beim Einsatz der WLAN-Standards 802.11r können mehrere Access-Points als gemeinsame Einheit auftreten und fĂŒr einen bestmöglichen WLAN-Empfang sorgen. Neben bestimmten GerĂ€ten eines Herstellers, können die Standards auch mit einer Open Source-Firmware wie OpenWrt genutzt werden und GerĂ€te von unterschiedlichen Herstellern zum Einsatz kommen: OpenWrt Hardware Empfehlung - verfĂŒgbare GerĂ€te 2025. FĂŒr ein einfaches Setup im Terminal, siehe: OpenWRT WLAN FT-Konfiguration - Online generieren

{{percentage}} % positiv

DANKE fĂŒr deine Bewertung!
Fragen / Kommentare
(sortiert nach Bewertung / Datum) [alle Kommentare(am besten bewertete zuerst)]
Hast Du das Ganze mal mit FreeRADIUS kombiniert? Das hätte ich gern mal, um die WLAN-Sicherheit noch etwas zu steigern. Hatte aber noch nie Zeit, mich da mal einzulesen. Wäre interessant, ob das auch seamless Roaming unterstützt oder verlangsamt. Vielen Dank jedenfallss, ich werde mich mal wieder meinem WLAN widmen ;-)
Ich bekomme nach der Einrichtung auf allen APs die Meldung "daemon.ERR hostapd: nl80211: kernel reports: key Addition failed". Woran könnte das liegen?
Endlich mal eine anständige Anleitung zu diesem Thema. Jetzt gibt es endlich Fast Roaming bei mir. Vielen Dank für diesen Beitrag!
Danke für deine Arbeit, wirklich toll gemacht und bin noch am abarbeiten der Einstellungen. Hier in den Artikel bitte noch einfügen: "Die Einstellung "FT over the Air" und "Reassociation Deadline" mit dem Wert 20000 hat das Problem gelöst." von hier: https://www.libe.net/heimnetzwerk#router-ap Habe ebenfalls das Problem das teilweise geräte, obwohl vollen Empfang, weder aufs Netzwerk noch aufs Internet zugreifen können, erst das Wechseln des W-Lan schafft dabei Abhilfe. Hoffe mit der Einstellung ist ín Zukunft das Problem behoben. Gruß Karsten
Danke dir! Ich werde den Screenshot in diesem Artikel demnächst anpassen.
Beitrag erstellt von Bernhard
Muss man usteer auf allen Access-Points installieren?
Ja, muss auf allen AccessPoints installiert werden.
Beitrag erstellt von Bernhard