Anleitung:FirmwareUpdate: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
(Adresse herausfinden)
(Adresse herausfinden)
Zeile 12: Zeile 12:
 
Ist das nicht der Fall, gibt es mehrere Möglichkeiten.
 
Ist das nicht der Fall, gibt es mehrere Möglichkeiten.
  
Auf den Client Ports (meistens die zwei vom WAN-Port am weitesten entfernen) sollte immer die ***fdff::1*** funktionieren. (Apple Geräte haben einen Bug, siehe [[Anleitungen:macOS]])
+
Auf den Client Ports (meistens die zwei vom WAN-Port am weitesten entfernen) sollte immer die '''fdff::1''' funktionieren. (Apple Geräte haben einen Bug, siehe [[Anleitungen:macOS]])
  
 
Auf allen Ports funktioniert immer die Link-Local Adresse, die sich aber zwischen den Ports unterscheiden kann.
 
Auf allen Ports funktioniert immer die Link-Local Adresse, die sich aber zwischen den Ports unterscheiden kann.

Version vom 22. Februar 2020, 19:00 Uhr

Wege den eigenen Router zu erreichen

Adresse herausfinden

Ein Router mit Freifunk Firmware hat mehrere IP-Adressen, unter denen er erreichbar ist:

  • IPv6 Link Local (fe80::/64)
  • fdff::1
  • IPv6 ULA (fd43:5602:29bd::/48)

Wenn der Router schon im Monitoring aufgetaucht ist, kann man diese Adressen leicht im Monitoring herausfinden. Ist das nicht der Fall, gibt es mehrere Möglichkeiten.

Auf den Client Ports (meistens die zwei vom WAN-Port am weitesten entfernen) sollte immer die fdff::1 funktionieren. (Apple Geräte haben einen Bug, siehe Anleitungen:macOS)

Auf allen Ports funktioniert immer die Link-Local Adresse, die sich aber zwischen den Ports unterscheiden kann. Am leichtesten kriegt man diese über einen Multicast Ping heraus. Unter Windows funktioniert dies leider nicht. Mit der Link Local Adresse lässt sich auch das Webinterface nicht nutzen, weil Browser nicht richtig mit der Scope-ID umgehen können.

Webinterface

Die IPv6 Adresse eines Beispielrouters im Monitoring

Gebt in euren Browser die [fd43:xxx] IPv6 Adresse inklusive der eckigen Klammern ein.
Diese findet ihr im Monitoring unter "br-mesh".

Wenn ihr direkt mit dem Zielrouter verbunden seit könnt ihr immer die [fdff::1] IPv6 Adresse inklusive der eckigen Klammern benutzen.

Wenn ein Router nicht im Freifunknetz hängt sondern isoliert steht, gehen nur die fdff:: Adressen. fd43 Adressen funktionieren in diesem Fall nicht.

Auch könnt ihr im Monitoring euren Router auswählen und den Link "Web-UI" benutzen. Die IPv6 Adresse eines Beispielrouters im Monitoring

SSH

Verbindet euch über die fd43:xxx IPv6 Adresse mit dem Zielrouter (unter Linux keine [] verwenden).
Diese findet ihr im Monitoring unter "br-mesh".

Wenn ihr direkt mit dem Zielrouter verbunden seit könnt ihr immer die [fdff::1] IPv6 Adresse benutzen.

Firmware-Update

Wenn bereits eine Freifunk-Franken-Firmware auf dem Router installiert ist, geht man zum Updaten nach einer der folgenden Methoden wie beschrieben vor.

Ggf. muss der Dateiname gekürzt werden! Manche Router verweigern das Flashen der Firmware, wenn der Dateiname zu lang ist. Dafür einfach den Namen der Datei anpassen und nur 8 Zeichen stehen lassen.

Für Updates benötigt ihr die "sysupgrade" Version des aktuellsten Firmware-Images (nur bei Möglichkeit 2 und 3):

  • bin-Datei mit der Bezeichnung "sysupgrade" im Namen
  • z.B. "openwrt-ar71xx-generic-ubnt-nano-m-squashfs-sysupgrade.bin"

Möglichkeit 1: sysupgrade.sh

Dies ist die einfachste Möglichkeit und geht extrem schnell. Man muss weder etwas vorbereiten noch die Firmware zuvor erst umständlich herunterladen und auf den Router bekommen. Alle Einstellungen werden hier immer behalten.

  • Man loggt sich auf dem Router per ssh ein, siehe auch hier.
  • Und startet folgendes Skript /etc/sysupgrade.sh

Möglichkeit 2: Webinterface

Ruft im Browser das Webinterface auf und loggt euch dort mit eurem Benutzernamen+Passwort ein.

Im Menüpunkt "Update" lädt man dort die neueste Formware mit der Bezeichnung "sysupgrade" hoch.

Der Haken bei "Konfiguration behalten" bewirkt, dass alle Einstellungen (wie Passwort, Koordinaten, Beschreibung etc.) auch nach dem flashen noch vorhanden sind.


Möglichkeit 3: manuelles Vorgehen

unter Linux

  • Man loggt sich per ssh auf dem Router ein: ssh root@<ipv6%iface>, siehe auch hier.
  • Man wechselt mit cd /tmp in das richtige Verzeichnis. Das aktuelle Verzeichnis kann man sich mit pwd anzeigen lassen.
    • Das Image wird auf den lokalen PC heruntergeladen und dann auf den Router hochgeladen, dazu gibst du auf deinem Rechner diesen Befehl in die Linux-Konsole ein: scp <imagename> root@[<ipv6%iface>]:/tmp, das sieht dann z.B. so aus: scp openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-sysupgrade.bin root@[fe80::fad1:11ff:fe90:3e6e%wlan0]:/tmp
    • Alternativ erfolgt der Download direkt auf dem Router cd /tmp && wget http://[fe80::ff:feee:1%br-mesh]/dev/firmware/<version>/<image>, z.B. cd /tmp && wget http://[fe80::ff:feee:1%br-mesh]/dev/firmware/0.5.1/openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-sysupgrade.bin
  • Zuletzt führt man das Update aus: sysupgrade -n <imagename>. Wenn du -n mit drinnen lässt, wird der Router komplett neu geflasht und es bleiben keine Einstellungen behalten. Möchtest du die Einstellungen behalten lasse die Option -n weg.

unter Windows

  • Um die Fimrware auf den Router spielen zu können muss man sich zuerst mit dem Freifunk-Netz verbinden (via WLAN oder LAN).
  • Mit WinSCP kann man die Datei auf das Gerät kopieren.
    • Dazu startet man WinSCP und wählt als Übertragungsprotokoll "SCP", gibt IPv6-Adresse des Routers, sowie "root" als User und das dazugehörige Passwort ein.

Winscp-connection-settings.jpg

    • Dann wechselt man im linken Explorer (eigener Rechner) in das Verzeichnis wo man das Image heruntergeladen hat und im rechten Explorer in das Verzeichnis "/tmp". Dann kann man die Datei mit Drag 'n Drop auf den Router hochladen.

Winscp-copy-firmware.jpg

  • Statt WinSCP kann auch PSCP verwendet werden: pscp -scp -6 <imagename> root@[<ipv6%iface>]:/tmp
  • Danach loggt man sich via ssh (z.B. mittels PuTTY) auf dem Router ein, siehe auch hier.
  • Dann wechselt mit cd /tmp in das Verzeichnis wo das Firmware-Image hochgeladen wurde.
  • Zuletzt führt man das Update aus: sysupgrade -n <imagename>. Wenn du -n mit drinnen lässt, wird der Router komplett neu geflasht und es bleiben keine Einstellungen behalten. Möchtest du die Einstellungen behalten lasse die Option -n weg.

Besonderheiten beim Update

Update von 20170918 (oder älter) auf 20180802 (oder neuer)

Besonderheiten beim Update von Ubiquiti Routern von 0.5.0 auf 0.5.1

Es ist nötig, erneut die Funktionsweise der LAN-Schnittstelle zu konfigurieren.

Sofern die Netzwerkschnittstelle des Routers als WAN konfiguriert war, wird dringend empfohlen vor dem Flashen den Router am Heimrouter vom Internet / WAN zu trennen.

Besonderheiten beim Update auf 0.4.0

Wenn bereits 0.4.0rc3f oder neuer installiert ist, einfach mit sysupgrade (ohne -n Schalter) updaten. Die vorherigen Versionen benötigen zum Flashen noch das sysupgrade -n (mit -n Schalter). Die alten Images (ab 0.3.999) weisen bei der Verwendung von Sysupgrade bereits auf diesen Umstand hin.

Einfache Regel: Solange du kein sehr altes Image (vor 0.3.999) auf dem Router hast, versuche, ohne -n zu flashen. Sollte die Firmware dies noch nicht unterstützen, meldet sie sich mit einer Fehlermeldung. Es geht ansonsten auch nichts kaputt, wenn du mit -n flashst.

Besonderheiten beim Update auf 0.3.999

Durch den geänderten WLAN-Kanal 1 ist nach dem Flashen die Verbindung zu Routern mit der alten Version über Funk nicht mehr möglich. Sollen also Router aus der Ferne upgedated werden, sollte dies beachtet werden. Nach dem Update bitte im Netmon den Router-Hash zurücksetzen.

Besonderheiten beim Update von einer Firmware vor 0.4.0rc4f

Gilt nur, wenn auf dem Router eine Firmware vor 0.4.0rc4f installiert ist:

Beim Sysupgrade bitte mit -n flashen, damit die alte Config durch die neue überschrieben wird. Dies ist nötig, damit die Daten nicht falsch vermischt werden und am Ende das Passwort nicht mehr stimmt.