Bericht zum WLAN-Ausfall an der Brueckenstrasse am 15. und 16.11.
Daniel Baumann
daniel.baumann at bfh.ch
Sun Nov 20 17:04:26 CET 2022
Hallo zusammen
Kurzfassung
===========
* am 15.11. Nachmittags (ca. 14 bis 16 Uhr) und am 16.11. Vormittags
(ca. 9 bis 11 Uhr) waren in der Brueckenstrasse die Mehrheit der
WLAN Accesspoints offline.
* Grund fuer den Ausfall war das Volllaufen der DHCP Pools im AP
Transport-Netz, wahrscheinlich ausgeloest durch Nacharbeiten im
Rahmen des Core-Ersatzes Ende der Vorwoche.
* wir haben die DHCP Pools fuer die Brueckenstrassem Mittwoch
Abend/Nacht aufgeraeumt und verifiziert, dass das Problem nicht mehr
auftreten kann.
* alle anderen 15 Pools haben wir gestern und heute proaktiv
ebenfalls bereinigt, so dass das gleiche Problem an keinem Standort
auftreten kann.
Hintergrund
===========
1. DHCP
-------
* WLAN APs ziehen per DHCP eine Adresse aus einem Pool in einem
Subnet.
* Auf den neuen DHCP Servern haben wir wie schon erwaehnt eine kurze
Lease-time (10min), d.h. alle Geraete ziehen spaetestens alle 10min
eine neue Adresse (oder verlaengern die die sie haben, ignorieren
wir der Einfachheit halber):
- Client verlangt eine Adresse
- Server bietet eine freie Adresse an
- Client bestaetigt die Annahme der vom Server genannten Adresse
- Server merkt sich Adresse fuer Dauer der Lease-time als benutzt
* In der speziellen Situation dass Traffic zum DHCP funktioniert,
nicht aber der Rueckweg, tritt folgendes ein:
- Clients verlangt eine Adresse
- Server bietet eine freie Adresse an
- Client bekommt keine Antwort vom Server
- Server merkt sich die Adresse fuer eine "kurze" Dauer als benutzt
- Client verlangt nochmals eine Adresse
- Server bietet eine neue, freie Adresse an
- [...]
* Die "kuerzere" Dauer die eine nicht-bestaetigte Adresse als benutzt
markiert ist, ist zwar viel kuerzer als die Lease-time, reicht aber
bei uns aus um bestimmte DHCP Pools fuer WLAN APs volllaufen zu
lassen, weil:
- einige Transport-Netze fuer die WLAN APs sind historisch sehr
knapp bemessen und sind nicht viel groesser als gerade die Anzahl
der APs darin
- da die meisten Geraete (und so auch die WLAN APs) mehrfach
probieren eine Adresse zu erhalten, werden von einem Client
kurzfristig mehrere Adressen "verbrannt", bis er eine kurze
Pause einlegt und es wieder (mehrfach) versucht
- die kurze Lease-time laesst die anderen WLAN APs sehr schnell
eine neue Adresse holen. Wenn keine mehr frei sind fliegen auch
sie aus dem Netz und beschleunigen den Ausfall in einer kleinen
Kettenreaktion
* Vorteil dafuer ist, dass das Problem schnell und isoliert entdeckt
werden kann. Nach manuellem Freigeben der "blockierten" Adressen
im DHCP Server erholen sich die WLAN APs innerhalb von ein paar
Sekunden.
* Ebenso einfach ist auch die "richtige" Loesung: alle WLAN APs mit
fixer IP Adresse im DHCP reservieren, so kriegt jeder AP immer
seine eigene Adresse exklusiv, so dass selbst ein Volllaufen des
Pools keine Auswirkung hat.
2. Nacharbeiten Core-Ersatz
---------------------------
Wir haben fast die gesamte letzte Woche mit Nacharbeiten vom Core-Ersatz
in der Vorwoche verbracht und mussten noch einige Spezialfaelle und
Spezialnetze nachkonfigurieren. Hoechstwahrscheinlich muss es dabei zu
kurzen Unterbruechen (1 bis max. 2min) gekommen sein in der
Erreichbarkeit der DHCP Server.
Diese waren fuer die normalen Clients nicht spuerbar weil jeweils
ausreichend grosse DHCP Pools vorhanden sind und Clients etwas
"toleranter" sind als WLAN APs und bei nicht-erreichen des DHCP Servers
einfach die vorherige IP (laenger) behalten und weitermachen.
Warum genau der DHCP kurzzeitig nicht erreichbar war, wissen wir nicht
und laesst sich im Nachhinein nicht mehr herausfinden:
- die alten Netze der Standorte sind via temporaere Core-Router-Ersatz
an die BFH.ch Firewall und den Border angeschlossen
- via Border koennen die neuen Netze in Cage A (und Cage B) erreicht
werden (das solange bis die Standorte neues Netz kriegen und damit
Anschluss an die Transit-Fabric erhalten).
- im alten Netz sind die Verbindungen innerhalb der Standorte
geswitched, d.h. wir sehen vom AP bis zum Standort-Router nichts
(erste Blackbox), sowie vom Standort-Router via Core bis zur
Firewall sehen wir ebenso nichts (zweite Blackbox).
- Am Mittwoch Vormittag haben wirs vergeblich zu debuggen versucht
und konnten aufgrund beider Blackboxen nichts sehen, wo genau die
Pakete verschluckt wurden.
Das neue Netz ist (u.a. deshalb, wie jedes moderen Netz) ein
vollstaendiges Layer3 Netz (d.h. Routing und nirgendwo Switching von
Traffic der ein Netzwerk-Geraet verlaesst), so dass in einem solchen
Fall die Nachvollziehbarkeit und Debuggung einfach gegeben ist weil
jeder einzelne Hopp "eine Spur im Netzwerk" hinterlaesst.
3. Monitoring
-------------
* Bisher war aus historischen Gruenden das Setup so, dass die APs eine
beliebige Adresse zugewiesen bekommen.
Das hatte den Vorteil von wenig(er) Aufwand/Konfiguration, hat aber
den Nachteil dass grundsaetzlich kein sinnvolles Monitoring moeglich
ist:
- im DNS sind nur die APs ersichtlich, die online sind und sich
ihren Namen via DDNS eintragen konnten.
- im Cisco Wireless Controller und Cisco Prime die nur sehr
rudimentaeres Monitoring ermoeglichen, sind nur APs ersichtlich,
die online sind und sich ensprechend mit dem Wireless Controller
verbinden konnten.
- im richtigen Montoring (bei uns Icinga) bringts nichts die APs
einzutragen wenn sich die IP Adressen aendern (gibt dauernd
False-positive Ausfaelle; DNS-Eintraege fuer Monitoring zu
benutzen ist keine sinnvolle Loesung).
Faellt also ein Accesspoint aus, bemerken wir das an der kleineren
Nummer der APs die online sind im Controller, wissen aber nicht
welcher fehlt oder wo er fehlt.
* Da neu alle APs statisch eine Adresse und dazugehoerigen DNS Namen
haben, koennen wir automatisch die (dynamische) Liste der APs in
Icinga monitoren, d.h.:
- faellt ein AP aus, wissen wir welcher und wo er fehlt
- kommt ein neuer AP dazu, wird er vollautomatisch in Icinga
hinzugefuegt
- wird ein AP abgebaut und seine Reservation entfernt, wird er
vollautomatisch in Incinga ausgetragen
Das ist, meiner Meinung nach zumindest, die Betriebs-
Grundvoraussetzung. Damit wir das machen konnten, mussten wir zuerst
DHCP Migrieren (sonst haetten wir 800 APs von Hand "klicken"
muessen). Schoen dass wir das jetzt haben :)
Gruesse,
Daniel
--
Berner Fachhochschule / Bern University of Applied Sciences
Services / IT-Services
Daniel Baumann
Teamleiter Linux & Infrastructure Services
___________________________________________________________
Dammweg 3, CH-3013 Bern
Telefon direkt +41 31 848 48 22
Telefon Servicedesk +41 31 848 48 48
daniel.baumann at bfh.ch
https://bfh.ch
https://bfh.science
More information about the bfh-linux-announce
mailing list