Freetz auf 7490 installieren
1. Image bauen
Das geht am komfortabelsten mit https://github.com/pfichtner/pfichtner-freetz
Dazu unter Windows 10/11 die Docker Engine nutzen und folgende Befehle ausführen
# start docker container (will start /bin/bash)
docker run --rm -it -v freetz-workspace:/workspace pfichtner/freetz
# clone (checkout) the remote repo into the current directory (only needed once/the first time)
git clone https://github.com/Freetz-NG/freetz-ng.git
# cd into the cloned repo
cd freetz-ng
# configure image
make menuconfig
# make image - on error try again
make
Abhängig davon ob es sich um einen NAND Router (7490) handelt, muss das Image noch als "In-Memory-Image" aufbereitet werden
builduser@a744b2c9009d:~/freetz-ng/tools$ ./image2inmemory
Reading /workspace/freetz-ng/images/7490_07.59.all_freetz-ng-24803-b2015be9aa_20241025-071013.image
Writing /workspace/freetz-ng/images/7490_07.59.all_freetz-ng-24803-b2015be9aa_20241025-071013.image.inmemory
Success!
Das Image kann nun aus dem Container "exportiert werden"
2. Image auf FritzBox hochladen
Da es sich bei der 7490 um eine NAND Version handelt, können wir das "push_firmware" tool aus dem Freetz-Docker nicht verwenden. PeterPawn hat passende PowerShell Scripte geschrieben. Folgendes Repository lokal clonen: https://github.com/PeterPawn/YourFritz
Die nachfolgenden Punkte sind eine Zusammenfassung aus folgender Quelle: https://web.archive.org/web/20190529205946/https://www.ip-forum.eu/howto-fritz-box-firmware-images-auch-unsignierte-ueber-den-bootloader-installieren-577
Bootloader (EVA) per FTP erreichen und anhalten
geschrieben Da es sich bei der 7490 um eine NAND Version handelt, können wir das "push_firmware" tool aus dem Freetz-Docker nicht verwenden. PeterPawn hat passende P
Vorbereitung
Prinzipiell gibt es mehrere Möglichkeiten den Bootloader zu erreichen. Man verbindet als allererstes einen LAN-Port der FRITZ!Box per Patch-Kabel mit dem LAN-Port des verwendeten PC/Notebook. Da der Bootloader und somit auch die LAN-Ports der FRITZ!Box nur kurz (ca. für 5s) nach dem Einschalten der FRITZ!Box aktiviert sind, kann es passieren, dass der PC/Notebook z.B. aufgrund des MediaSensing oder "Trägheit" des LAN-Ports des PC/Notebook nicht rechtzeitig Kenntnis davon nimmt, dass der LAN-Port der FRITZ!Box eingeschaltet ist. In solchen Fällen hilft z.B. der Einsatz eines einfachen Ethernet-Switches den man zwischen PC/Notebook und FRITZ!Box anschließt (also PC/Notebook <Patchkabel> Switch <Patchkabel> FRITZ!Box).
Zu beachten ist außerdem, dass der Bootloader i.d.R. auf die IP-Adresse 192.168.178.1 hört und zwar unabhängig davon, welche IPv4-Einstellungen man bei der Konfiguration im WebIf der FRITZ!Box eingestellt hat! Der Bootloader hat dbzgl. seine eigene (Vor)-Einstellung welche nicht über das WebIf der FRITZ!Box bzgl. IPv4-Einstellungen geändert werden kann!
Die IPv4-Einstellung/Adresse des Bootloader ist in der Variable "my_ipaddress" abgelegt, diese kann also z.B. auch über die Support-Daten ausgelesen werden (falls diese Einstellung z.B. mal geändert wurde, m.W.n. macht das z.B. das ruKernelTool gerne, warum auch immer).
Ich gehe davon aus, dass der Bootloader auf die IP-Adresse 192.168.178.1 reagiert. Ist dieser (siehe Support-Daten) evtl. auf eine andere IP-Adresse eingestellt sind die IP-Einstellungen und Kommandozeilen Befehle entsprechend anzupassen.
Es bietet sich also an oder ist je nach verwendeter Methode erforderlich, die IPv4-Einstellungen der verwendeten LAN-Schnittstelle des PC/Notebook (manuell, kein DHCP) entsprechend dem Bootloader einzustellen. Wenn also der Bootloader über 192.168.178.1 erreichbar ist dann bekommt der PC/Laptop eine:
- IPv4-Adresse zwischen 192.168.178.2-254,
- als Subnetzmaske bietet sich 255.255.255.0 an und
- als Gateway kann 192.168.178.1 eingetragen werden (darauf kann auch verzichtet werden wenn man z.B. in den erweiterten Einstellungen dieses Subnetz zusätzlich anlegt).
4. Methode (für Windows-Systeme, mit PowerShell-Script)
Mit folgendem Kommando wechseln wir in den Ordner mit dem PowerShell-Script:
-
Code: Alles auswählen
Ergebnis:cd c:\YourFritz\master\eva_tools\Code: Alles auswählen
Windows PowerShell Copyright (C) 2016 Microsoft Corporation. Alle Rechte vorbehalten. PS C:\Users\MaxMuster> cd c:\YourFritz\master\eva_tools\ PS C:\YourFritz\master\eva_tools> - Nun beginnt man zum Beispiel mit folgendem Befehl die Suche nach dem Bootloader der FRITZ!Box:
Code: Alles auswählen
.\EVA-Discover.ps1 -maxWait 120 -Debug -Verbose - Innerhalb der eingestellten Wartezeit (120s / 2 Minuten) verbindet man nun die FRITZ!Box mit dem Stecker-Netzteil, nach einer Weile sollte die Box gefunden werden:
Code: Alles auswählen
PS C:\YourFritz\master\eva_tools> .\EVA-Discover.ps1 -maxWait 120 -Debug -Verbose AUSFÜHRLICH: Sending discovery packet (1) ... AUSFÜHRLICH: Sending discovery packet (2) ... AUSFÜHRLICH: Sending discovery packet (3) ... AUSFÜHRLICH: Sending discovery packet (4) ... AUSFÜHRLICH: Sending discovery packet (5) ... AUSFÜHRLICH: Sending discovery packet (6) ... AUSFÜHRLICH: Sending discovery packet (7) ... AUSFÜHRLICH: Sending discovery packet (8) ... AUSFÜHRLICH: Sending discovery packet (9) ... AUSFÜHRLICH: Sending discovery packet (10) ... AUSFÜHRLICH: Sending discovery packet (11) ... AUSFÜHRLICH: Sending discovery packet (12) ... DEBUG: Received UDP packet from 192.168.178.1:5035 ... AUSFÜHRLICH: Trying to connect to the FTP port to hold up the device in bootloader ... DEBUG: Error during FTP connection attempt ... EVA_IP=192.168.178.1 True PS C:\YourFritz\master\eva_tools> - Nun ist der Bootloader der FRITZ!Box angehalten und hat somit alle Zeit der Welt z.B. mit einem FTP-Client oder auch mit dem PowerShell-Script "EVA-FTP-Client.ps1" auf den Bootloader der FRITZ!Box zuzugreifen.
Firmware-Image in den RAM hochladen und installieren lassen - 7490
Voraussetzung: Die Box ist bereits im Bootloader angehalten
Zu beachten ist, dass sich das in den RAM der FritzBox hochgeladene Firmware-Image üblicherweise in das gerade aktive Partitionsset schreibt (das bestimmt nicht der Bootloader sondern das verwendete Firmware-Image, also theoretisch könnte man das entsprechende Script in der Firmware dbzgl. auch abändern). Wenn man das nicht möchte also z.B. vorher die Environment-Variable "linux_fs_start" entsprechend abändern.Man startet die PowerShell (Voraussetzungen s.h. Beitrag #3), falls diese vom vorhergehenden Schritt nicht mehr offen sein sollte:
-
Code: Alles auswählen
Windows PowerShell Copyright Microsoft Corporation. Alle Rechte vorbehalten. PS C:\Users\MaxMuster> - Bei Bedarf auslesen des aktiven Partitionsset (Variable "linux_fs_start") per folgendem Kommando:
Code: Alles auswählen
Das Ergebnis sieht dann z.B. so aus:c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -ScriptBlock { GetEnvironmentValue linux_fs_start }Code: Alles auswählen
PS C:\Users\MaxMuster> c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -ScriptBlock { GetEnvironmentValue linux_fs_start } 1 PS C:\Users\MaxMuster> - Den Wert der Variable linux_fs_start (hier im Beispiel "1") bei Bedarf ändern wenn man die Firmware im anderen (derzeit inaktiven) Partitionsset installieren möchte (ansonsten diesen Schritt einfach überspringen):
Code: Alles auswählen
In diesem Beispiel ist der aktuelle Wert 1. Das bedeutet, das Script setzt den Wert auf 0, das sieht dann so aus:c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -Verbose -ScriptBlock { SwitchSystem }Code: Alles auswählen
PS C:\Users\MaxMuster> c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -Verbose -ScriptBlock { SwitchSystem } AUSFÜHRLICH: current setting - linux_fs_start=1 AUSFÜHRLICH: new setting - linux_fs_start=0 AUSFÜHRLICH: new value set successfully True PS C:\Users\MaxMuster> - Hochladen des In-Memory Images mit folgendem Kommando:
Code: Alles auswählen
c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -Verbose -Debug -ScriptBlock { BootDeviceFromImage c:\YourFritz\Images\firmware.image.in-memory }- Alternativ für die IPQ4019-Modelle (FRITZ!Box 7520, 7530 und FRITZ!Repeater 3000) mit zusätzlichem Parameter 0 (Null oder False):
Code: Alles auswählen
Weiteres dazu siehe Beitrag von @PeterPawn im IPPF: https://www.ip-phone-forum.de/posts/2320843/c:\YourFritz\master\eva_tools\EVA-FTP-Client.ps1 -Verbose -Debug -ScriptBlock { BootDeviceFromImage c:\YourFritz\Images\firmware.image.in-memory 0 }
- Alternativ für die IPQ4019-Modelle (FRITZ!Box 7520, 7530 und FRITZ!Repeater 3000) mit zusätzlichem Parameter 0 (Null oder False):
Hinweis
Nach dem Hochladen des Image kann die PowerShell-Konsole geschlossen werden aber die Box darf noch nicht von der Stromversorgung getrennt werden!
Die Box nach dem hochladen der Firmware in den RAM eine Weile in Ruhe zu lassen (nicht die Stromzufuhr unterbrechen), es ist normal, dass die Box während des Vorganges zweimal neu startet.
3. Login
Nachdem die Fritzbox neu gebootet hat (192.168.178.1), kann man nun entweder über Port 81 oder im Webinterface über den Button auf die Freetz Oberfläche:
Das Standartlogin lautet:
Benutzername: root
Passwort: freetz


Keine Kommentare vorhanden
Keine Kommentare vorhanden