Freifunk-Firmware automatisch einspielen

30 Apr

ICVPN

Zur Einrichtung eines neuen WLAN-Routers als Freifunk-Router muss man die Freifunk-Firmware einspielen und anschließend den Router einrichten. Ist bereits ein funktionierender Freifunk-Router vorhanden, kann für die meisten Router, vor allem für solche vom Hersteller TP-Link, das Einspielen der Firmware automatisch erfolgen. Und das geht so:

Schließe den neuen Router in ausgeschaltetem Zustand mit einem LAN-Kabel an einem funktionierenden Freifunk-Router an (Gelbe Buchse – LAN-Kabel – Gelbe Buchse). Die zwei Router müssen dazu nicht baugleich sein. Halte am neuen Router während des Einschaltens die Reset-Taste für etwa 5 Sekunden gedrückt. Lasse dann die Reset-Taste los. Die Freifunk-Firmware wird nun auf den neuen Router eingespielt. Es wird automatisch die richtige Firmware aus dem Freifunk-Netz geladen.

Dieser Vorgang dauert recht lange. Du brauchst aber keinen PC, musst keine passende Firmware raussuchen und der neue Router bekommt die aktuelle Version der Firmware. In einem Test unter bewusst ungünstigen Bedingungen hat das Einspielen der Firmware 17 Minuten gedauert, unter guten Bedingungen dauert es weniger als 5 Minuten.

Dass der Router fertig ist siehst du daran, dass das Kontrolllämpchen für die LAN-Verbindung angeht. Nachdem die Firmware eingespielt wurde wird der Router neu starten. Du kannst nun direkt zu Schritt 2 übergehen und den neuen Router einrichten.

Tipp: Startet man einen bereits eingerichteten Freifunk-Router mit gedrückter Reset-Taste, wird die Firmware ebenfalls neu eingespielt. Eventuell bereits vorgenommene Einstellungen auf dem Gerät gehen dadurch verloren. Natürlich kann man auch bei diesem Vorgehen wie gewohnt erneut den Router einrichten.

Edit: Technischer Hintergrund

Peter hat nach Veröffentlichung dieses Artikels via Facebook-Kommentar darum gebeten, dass der technische Hintergrund dieser Neuerung beschrieben wird. Danke Tobias für die folgende Beschreibung!

BitteAuchTechnikBeschreiben

Aktuelle TP-Link-Geräte verfügen in Ihrem sog. Bootloader (dem Teil der Firmware, der als allererstes beim Starten ausgeführt wird und dann das normale Betriebssystem lädt) über eine Notfall-Funktion, die die Firmware überschreiben kann wenn man mal was darin so kaputt gemacht hat, dass es die normale Funktionalität nicht mehr zulässt.

Das kann beispielsweise passieren, wenn man sich bei der Netzwerkkonfiguration vertan hat und den Router nicht mehr im Netzwerk erreicht. Passiert das bei einem normalen PC, kann man einfach einen Monitor und eine Tastatur anschließen und das Problem damit beheben, bei einem Router ist das aber bauartbedingt nicht möglich.

Daher haben die guten Menschen bei TP-Link einen Notfallmodus in der Bootloader eingebaut, der das Folgende macht, nachdem man ihn wie oben beschrieben im Notfallmodus startet (Infos aus dem OpenWRT-Wiki):

  1. Der Router weist sich selber die IP-Adresse 192.168.0.86 zu
  2. Versucht über das TFTP-Protokoll eine Verbindung zu einem TFTP-Server unter der IP 192.168.0.66 herzustellen
  3. Versucht über diese Verbindung eine Datei mit einem vorgegebenen Namen anzufragen (zB wr841nv10_tp_recovery.bin beim TL-WR841n v10)
  4. Der Router lädt diese Datei dann runter und installiert sie anstelle der aktuellen Firmware.
  5. Wenn irgendwas schief geht (oder die Schritte 1-3 zu lange dauern) wird die aktuelle Firmware nicht angefasst.

Im Freifunk-Netz wurde ein TFTP-Server auf dem Management-Server aufgesetzt und intern im Freifunk-Netz die o.g. IP-Adresse zugewiesen. Die Firmwaredateien sind die Gleichen wie die auf der Webseite zum Download angebotenen Dateien, nur dass Verknüpfungen (Symbolische Links) von dem fest vorgegebenen Dateinamen zu den Stable-Versionen der Firmware erstellt wurden, sodass die unterstützten Geräte immer ihre eigene, stabile und aktuellste Firmware finden.