OpenWRT auf Fritzboxen flashen - 7490 und 7430
Der Versuch, OpenWRT auf die Fritzbox 4790 zu flashen ist leider gescheitert. Obwohl die Fritzbox 4790 supported ist hat es leider nicht geklappt.
Der erste Schritt, das Booten des initramfs-Images hat noch geklappt. Der zweite Teil, das Flashen des eigentlichen Images, hat dann nicht mehr geklappt.
Doch Schritt für Schritt. Zuerst das Flashen des initramfs-Images. Um dies durchzuführen, ist es sinnvoll, zwei Terminals offen zu haben. Voraussetzung ist, dass die Fritzbox zuvor auf die Werkseinstellungen zurückgesetzt wurde.
Im ersten Terminal wird versucht die Fritzbox anzupingen:
> ping <IP-Adresse der Fritzbox im Werkszustand>
bspw:
> ping 192.168.178.1
In einem zweiten Terminal wird das Ausführen des Python-Scripts eva_ramboot.py (ds Python-Script und die notwendigen Images sind auf den Seiten von OpenWRT verfügbar) vorbereitet:
> python eva_ramboot.py <IP-Adresse der Fritzbox im Werkszustand> <Image-Name>
bspw:
> python eva_ramboot.py 192.168.178.1 openwrt-lantiq-xrx200-avm_fritz7490-initramfs-kernel.bin
Im folgenden Schritt wird nun der Stromstecker der Fritzbox entfernt, worauf es im ersten Terminalfenster Fehlermeldungen hagelt (Von 192.168.178.1 icmp_seq=3 Zielhost nicht erreichbar), kurz gewartet und der Stecker wieder eingesteckt.
Sobald im ersten Terminalfenster ping Erfolgsmeldungen zurückgibt, wird das im zweiten Fesnter vorbereitet Kommando ausgeführt:
> python eva_ramboot.py 192.168.178.1 openwrt-lantiq-xrx200-avm_fritz7490-initramfs-kernel.bin
> SETENV memsize 0x079b9000
< 200 SETENV command successful
> SETENV kernel_args_tmp mtdram1=0x879b9000,0x88000000
< 200 SETENV command successful
> MEDIA SDRAM
< 200 Media set to MEDIA_SDRAM
Danach bootet die Fritzbox neu und verteilt IP-Adressen aus dem Bereich 192.168.1.0/8.
Um dann das eigentlich Image auf die Box zu flashen, muss zunächst das Image (in meinem Fall openwrt-lantiq-xrx200-avm_fritz7490-squashfs-sysupgrade.bin) auf die Box gebracht werden.
Da die Box einen SCP-Client mitbringt, aber keinen SSH-Server, bietet es sich an, dass Image auf einem Rechner abzulegen, auf dem ein SSH-Server läuft.
Dann kann per SSH auf die Fritzbox gesprungen werden (Username root, Passwort leer), und dort das Image per scp kopiert werden (wichtig: nach /tmp kopieren):
> ssh root@192.168.1.1
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
ED25519 key fingerprint is SHA256:wVHTuix+zdter3QPOIgdnA2msT/UwiL8dguyegiP4SU.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.1' (ED25519) to the list of known hosts.
BusyBox v1.36.1 (2024-08-16 18:37:41 UTC) built-in shell (ash)
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
OpenWrt SNAPSHOT, r27159-8208d36220
-----------------------------------------------------
=== WARNING! =====================================
There is no root password defined on this device!
Use the "passwd" command to set up a new password
in order to prevent unauthorized SSH logins.
--------------------------------------------------
root@OpenWrt:~# cd /tmp/
root@OpenWrt:/tmp# scp <User>@<IP>:<PFAD>/openwrt-lantiq-xrx200-avm_fritz7490-squashfs-sysupgrade.bin .
Dann sollte eigentlich nur noch das Image per sysupgrade geflasht werden, hier kommt es dann zu einem Fehler:
> ssh root@192.168.1.1
cd /tmp
sysupgrade -n /tmp/openwrt-lantiq-xrx200-avm_fritz7490-squashfs-sysupgrade.bin
Thu Jan 1 00:06:21 UTC 1970 upgrade: Commencing upgrade. Closing all shell sessions.
Command failed: Connection failed
root@OpenWrt:/tmp# Connection to 192.168.1.1 closed by remote host.
Danach war die Fritzbox nicht mehr erreichbar. die INFO-LED blinkt rot: Zweimal kurz hintereinander, dann einige Sekunden Abstand und wieder von vorne. Auch ein Neustart brachte keine Abhilfe. Es half nur, die Fritzbox mit dem Windows-Recovery-Tool von AVM wiederherzustellen.
Interessant: Das gleiche Vorgehen mit einer Fritzbox 7430 war erfolgreich - natürlich unter Zuhilfenahme der korrekten Images für dide Fritzbox 7430.