In letzter Zeit bekam ich mit den Geräten in meinem Heimnetzwerk vermehrt Probleme beim Übertragen großer Datenmengen über WLAN. Das außergewöhnliche daran:
- Es waren in meinem Fall nur Windows-Clients und Apple-Geräte betroffen (Windows 7 und Windows 8.1, bei den Apple-Geräten war es ein iPod Touch und ein iPad Air), Android-Geräte waren zum Teil 14 Tage am Stück einwandfrei verbunden
- Die Verbindung "schlief" nach einiger Zeit ein, aber es wurde kein Disconnect durchgeführt (in der WLAN Übersicht von DD-WRT wurde das Gerät noch als verbunden gelistet und das Gerät war auch mit dem WLAN verbunden)
- Unter Windows kam die Meldung "eingeschränktes Netzwerk" nach ein paar Minuten. In manchen Fällen hielt die Verbindung auch mehrere Stunden, bis der Fehler dann doch auftrat.
- Nach erneutem Herstellen der Verbindung funktionierte es wieder in voller Geschwindigkeit, bis nach (zufälliger) Zeit das gleiche Problem wieder auftrat.
Nun begab ich mich auf Fehlersuche. Da wir durch die Anzahl der WLAN-Clients ein WPA2-Enterprise-Netzwerk verwenden, hatte ich erst die Authentifizierung unter Verdacht. Doch es stellte sich heraus, dass sich Geräte zum Teil gerade neu angemeldet hatten und nach ca. 1 Minute keine Daten mehr übertragen werden konnten. Wenn es ein Authentifizierungsproblem gewesen wäre, müsste sich dies immer bei der (Neu)registrierung eines WLAN-Clients ereignen. Doch auch im RADIUS-Protokoll und im Debug-Modus des FreeRADIUS-Servers fanden sich hierzu keine Hinweise.
Die nächste Fehlerquelle war die dynamische IP-Adressvergabe. Viele Anwender im Internet berichten, durch die dynamische IP-Adressierung kann es unter Windows zu "eingeschränkten Netzwerken" kommen. Doch die Leastime ist in meinem Fall auf 3 Tage eingestellt, weshalb auch hier eigentlich keine Probleme vorliegen sollten, da zum Teil Clients an einem Tag mehrmals das besagte Problem hatten.
Als letztes hatte ich schon DD-WRT im Verdacht, da ich mich nicht erinnern konnte, das es mit der originalen Firmware diesbezüglich Probleme gegeben hatte. Nach langer Suche im Internet stieß ich schließlich auf einen interessanten Artikel: Tech Tip: DD-WRT iPhone And iPad Frequent Disconnect Solution.
Nach dem Artikel muss man wie folgt vorgehen, um die Verbindungsprobleme zu lösen:
- Eingabe des Beacon-Intervalls auf 50 mittels des Befehls nvram set ath0_bcn="50" nvram set ath1_bcn="50" nvram commit unter "Administration > Diagnose" und des Speicherns als Autostart-Befehl unter DD-WRT.
- Deaktivieren von dnsmasq. Achtung: Natürlich nur deaktivieren, wenn der Access-Point nicht als DHCP-Server fungiert! In diesem Falle evtl. einen alternativen DHCP-Server einrichten.
Nach der Übernahme der Einstellungen klappte eine mehrere Stunden lange Datenübertragung einwandfrei. Auch die Apple-Geräte hatten auf einmal keine Probleme mehr, die Verbindung aufrechtzuhalten. DD-WRT hat hier anscheinend einen ungünstigen Beacon-Intervall vorkonfiguriert. In wie weit sich dnsmasq auf dieses Verhalten auswirkt, kann ich im Moment noch nicht sagen, aber man kann es in diesem Fall auch testweise mal mit aktiviertem dnsmasq betreiben. In meinem Fall ist ein einfaches Ändern des Beacon-Intervalls über das Webmenü nicht möglich, da ich einen Atheros-Chip habe und man dort die Einstellungen nur über nvram ändern kann.