Firmware-Upgrade: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
(Die Seite wurde neu angelegt: „Diese Anleitung soll helfen einen veralteten Knoten sicher auf eine aktuelle Firmware zu bringen. == IPv6 Link Local berechnen == == Direktes verkabeln == =…“)
 
Zeile 20: Zeile 20:


=== Auf dem Knoten ===
=== Auf dem Knoten ===
* Alternativ erfolgt der Download direkt auf dem Router <tt>cd /tmp && wget http://[fe80::ff:feee:1%br-mesh]/dev/firmware/<version>/<image></tt>, z.B. <tt>cd /tmp && wget http://[fe80::ff:feee:1%br-mesh]/dev/firmware/0.5.1/openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-sysupgrade.bin</tt>
Wennd as Putty Fenster offen ist, einfach diesen Text kopieren:
 
<pre>
BOARD=$(cat /var/sysinfo/board_name)
case "$BOARD" in
    tl-wr1043nd)
        BOARD=tl-wr1043nd-v1
        ;;
    tl-wr741nd)
        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
        ;;
    tl-wr741nd-v4)
        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
        ;;
    tl-wr841n-v7)
        BOARD=tl-wr841nd-v7
        ;;
    tl-wr841n-v9)
        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
        ;;
    nanostation-m)
        BOARD=ubnt-nano-m
        ;;
    tl-wa860re)
        BOARD=tl-wa860re-v1
        ;;
    tl-wdr3500)
        BOARD=tl-wdr3500-v1
        ;;
    tl-wdr4300)
        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
        ;;
esac
 
case $BOARD in
    tl-wdr4900-v1 )
        SOC="mpc85xx" ;;
    * )
        SOC="ar71xx" ;;
esac
 
FILE="openwrt-${SOC}-generic-${BOARD}-squashfs-sysupgrade.bin"
echo "Loading $FILE"
cd /tmp/
wget http://$(uci get configurator.@api[0].ipv6_address)%$(uci get configurator.@api[0].ipv6_interface)/dev/firmware/current/${FILE}
wget http://$(uci get configurator.@api[0].ipv6_address)%$(uci get configurator.@api[0].ipv6_interface)/dev/firmware/current/${FILE}.md5
md5sum -c ${FILE}.md5 && sysupgrade ${FILE}
</pre>
 
Mit der rechten Maustaste ins Putty klicken und Enter drücken, wenn es irgendwo hängen bleibt nochmals mit Enter bestätigen bis das Update läuft und der Router neu startet


== SSH auf den Knoten ==
== SSH auf den Knoten ==

Version vom 19. Februar 2017, 15:38 Uhr

Diese Anleitung soll helfen einen veralteten Knoten sicher auf eine aktuelle Firmware zu bringen.

IPv6 Link Local berechnen

Direktes verkabeln

Firmware Download

SCP auf den Knoten

unter Linux

  • 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

unter Windows

  • 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.
    • 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.
  • Statt WinSCP kann auch PSCP verwendet werden: pscp -scp -6 <imagename> root@[<ipv6%iface>]:/tmp

Auf dem Knoten

Wennd as Putty Fenster offen ist, einfach diesen Text kopieren:

BOARD=$(cat /var/sysinfo/board_name)
case "$BOARD" in
    tl-wr1043nd)
        BOARD=tl-wr1043nd-v1
        ;;
    tl-wr741nd)
        grep "Atheros AR7240 rev 2" /proc/cpuinfo && BOARD=tl-wr741nd-v2 || BOARD=tl-wr741nd-v4
        ;;
    tl-wr741nd-v4)
        grep 740 /var/sysinfo/model && BOARD=tl-wr740n-v4
        ;;
    tl-wr841n-v7)
        BOARD=tl-wr841nd-v7
        ;;
    tl-wr841n-v9)
        grep "v10" /var/sysinfo/model && BOARD=tl-wr841n-v10
        ;;
    nanostation-m)
        BOARD=ubnt-nano-m
        ;;
    tl-wa860re)
        BOARD=tl-wa860re-v1
        ;;
    tl-wdr3500)
        BOARD=tl-wdr3500-v1
        ;;
    tl-wdr4300)
        grep "3600" /var/sysinfo/model && BOARD=tl-wdr3600-v1
        grep "4300" /var/sysinfo/model && BOARD=tl-wdr4300-v1
        grep "4310" /var/sysinfo/model && BOARD=tl-wdr4310-v1
        ;;
esac

case $BOARD in
    tl-wdr4900-v1 )
        SOC="mpc85xx" ;;
    * )
        SOC="ar71xx" ;;
esac

FILE="openwrt-${SOC}-generic-${BOARD}-squashfs-sysupgrade.bin"
echo "Loading $FILE"
cd /tmp/
wget http://$(uci get configurator.@api[0].ipv6_address)%$(uci get configurator.@api[0].ipv6_interface)/dev/firmware/current/${FILE}
wget http://$(uci get configurator.@api[0].ipv6_address)%$(uci get configurator.@api[0].ipv6_interface)/dev/firmware/current/${FILE}.md5
md5sum -c ${FILE}.md5 && sysupgrade ${FILE}

Mit der rechten Maustaste ins Putty klicken und Enter drücken, wenn es irgendwo hängen bleibt nochmals mit Enter bestätigen bis das Update läuft und der Router neu startet

SSH auf den Knoten

Windows

  • Danach loggt man sich via ssh (z.B. mittels PuTTY) auf dem Router ein, siehe auch hier.
    • TODO MEHR DETAILS

Linux

  • Man loggt sich per ssh auf dem Router ein: ssh root@<ipv6%iface>.
    • TODO MEHR DETAILS

sysupgrade -n

  • Dann wechselt mit cd /tmp in das Verzeichnis wo das Firmware-Image hochgeladen wurde.
  • Zuletzt führt man das Update aus: sysupgrade -n <imagename>.

Bitte beachten: Nach dem Flashen sollte der Router-Hash im Netmon gelöscht werden, damit Router und Netmon einen neuen Hash aushandeln können. Dazu einfach im Netmon einloggen: "Router" (Liste der Router) –> "Routerbezeichnung" (Router Bezeichnung) –> "Routeroptionen" -> "Konfig. bearbeiten" –> "Router auto assign Hash zurücksetzen".

Config

WebUi Login