Hallo kriegaex,
nach unserer privaten Korrespondenz hier nun mein erstes Feedback in IPPF (Premiere).
Nachdem ich schon mit einer früheren ds-mod-Version erfolgreich eine Firmware für die T-Com Speedport W701V gebaut und per Adam2-FTP-Service geflasht habe, musste ich die neue Version 14.3 ausprobieren.
Ich bin mit der neuen Namenskonvention des Patches d'Accord.
Ich hätte jetzt "ds-0.2.9_26-14.3" erwartet, aber der ist wirklich zu lang?
ds26-14.3 gefällt mir ;-).
Auch wenn viele Informationen schon an anderer Stelle zu finden sind, gibt es einige Feinheiten im Zusammenspiel von ds-mod und W701V zu berücksichtigen.
In diesem Posting schildere ich nun
meine Vorgehensweise.
HINWEIS W701V:
Es handelt sich dabei um ein AVM-OEM-Produkt, vermutet wird eine FritzBox 7141.
TO-BE-PATCHED:
Leider lädt der Build-Prozess noch die alte TCom-W701V-Firmware v33.04.25 herunter.
Mit der 26er-Firmware funktionierte schon der 14.2er-ds-mod.
Meine verwendete dot-config-Datei ist diesem Posting (unten) angehängt.
Code:
Diese Zeile ist in .config (nach make menuconfig)...
DS_DL-SOURCE="fw_Speedport_W_701_V.33.04.25.image"
...zu ändern in...
DS_DL-SOURCE="fw_Speedport_W701V_V33.04.26.image"
HINWEIS BUSYBOX:
In Sektion Coreutils habe ich noch diff ausgewählt (vor make precompiled).
Code:
[bofh@friboli]$ make busybox-menuconfig
HINWEIS DS-MOD-PACKAGES:
Als Packages habe ich dropbear (SSH-Server) und syslogd (Protokollierung von Systeminformationen) ausgewählt.
Die Auswahl der Packages hat Einfluss auf die Grösse der Firmware-Datei.
Die Firmware (flashsize) der W701V darf bis zu 8 MByte gross sein.
Der verfügbare maximale Speicher (memsize) ist 32 MByte gross, der Rest (memsize abzüglich flashsize) kann z.B. für selbst-compilierte Programme genutzt werden.
HINWEIS BUILD-PROZESS:
Die zuvor für den 14.2er-ds-mod-Build-Prozess benötigten Dateien (Packages, Toolchain, TCom-Firmware etc.) lagen bereits in $HOME/ds-mod_dl vor.
Nur neuere Dateien wurden heruntergeladen.
Der Build-Prozess auf Basis der 25er- und 26er-TCom-W701V-Firmware laufen sauber durch.
Folgende Firmware-Image- und Kernel-Image-Datei wurden erzeugt:
"W701V_04.26-ds-0.2.9_26-14.de_20070418.image" mit 4,43 MByte (4.648.960 Byte) im ds-mod-Root-Verzeichnis
"kernel.image" mit 4,18 MByte (4.392.200 Byte) im Verzeichnis build/modified/firmware/var/tmp unterhalb vom ds-mod-Root-Verzeichnis
HINWEIS FIRMWARE-UPDATE ÜBER TCOM-WEBUI:
Leider konnte schon die mit 14.2er-ds-mod erzeugte 26er-Firmware nicht über die TCom-WebUI geflasht werden.
Ich vermute dass sowohl die T-Com als auch AVM inzwischen dem Modding bewusst einen Riegel vorschieben wollen.
Ähnliche Probleme melden Modding-Willige z.B. über die FritzBox 7050 mit Firmware-Version 14.04.30 und 14.04.31.
Meine Lösung nutzt das Flashen über den Adam2-FTP-Service (empfohlen nur für erfahrene User).
DISCLAIMER:
!!! KEINE HAFTUNG FÜR SCHÄDEN DIE BEIM/NACH FLASHEN GEMÄSS DIESER ANLEITUNG ENTSTEHEN (KÖNNEN) !!!
WARNUNG #1 ZUM FLASHEN ALLGEMEIN:
Wer wenig Erfahrung mit Flashen an sich und Linux hat, sollte das Flashen nicht wie hier aufgezeigt machen (evtl. Garantieverlust!!!).
WICHTIGE HINWEISE ZU ADAM2-FTP-SERVICE (KURZ A2FS):
Auf den Adam2-Bootloader kann per Passive-FTP-Protokoll über den sog. Adam2-FTP-Service (kurz A2FS) zugegriffen werden.
Nach dem Einloggen gibt es die Möglichkeit Konfigurationsdaten dauerhaft zu verändern, z.B. das sog. Branding oder den ADSL-Standard.
Im Zusammenspiel von Adam2-FTP-Service und Windows- bzw. Linux-Systemen gibt es Einiges zu berücksichtigen.
Nach Reboot der W701V steht der A2FS nur für einige Sekunden (2 bis 6 ping-Antworten) zum Einloggen zur Verfügung.
Der A2FS ist stets unter der IP-Adresse <192.168.178.1> erreichbar.
Ich erwähne das nur, da die W701V per Werkseinstellung (TCom-Firmware) auf die IP-Adresse <192.168.2.1> horcht.
Bei den AVM-FritzBox-Produkten horcht sowohl die FritzBox als auch der A2FS auf IP-Adresse <192.168.178.1>.
TIPP: Am besten in einem separaten Konsole-Fenster einen Dauerping starten....
Code:
CMD> ping -t 192.168.178.1
[bofh@friboli]$ ping -b 192.168.178.1
WICHTIGE HINWEISE ZU ADAM2-FTP-SERVICE UND WINDOWS-SYSTEM:
Einige Win32-FTP-Clients unterstützen kein sog. Passive-FTP, z.B. der in WinXP enthaltene FTP-Client.
Mit NcFTP-Client (win32-Version) klappte es bei mir nicht.
Allerdings ist ein telnet auf Port #21 geschwätziger.
Code:
CMD> telnet 192.168.78.1 21
Auch mit der Benutzung von TFtpd32-Server hatte ich keinen Erfolg.
Die Kernel-Image-Datei konnte nicht erfolgreich übertragen und somit geflashed werden (evtl. TFtpd32 von mir falsch konfiguriert).
WICHTIGE HINWEISE ZU ADAM2-FTP-SERVICE UND LINUX-SYSTEM:
Einfacher und sicherer ging es mir unter Linux.
Ein Linux-System kann auch unter Windows als sog. Virtuelle Maschine eingesetzt werden: Einfach FriBoLi mit VMware-Player benutzen (übrigens auch die Entwicklungs-Umgebung des Autors) !
Aber auch unter FriBoLi gab es mit einigen Linux-FTP-Clients Schwierigkeiten, z.B. NcFTP-Client (Linux-Version).
Mit dem Default-FTP-Client (/usr/bin/netkit-ftp) klappte es schliesslich.
HINWEIS FRIBOLI:
Mein FriBoLi-System läuft bereits auf Debian Etch (v4.0) mit aktualisierten Debian-Paketen.
Code:
[bofh@friboli]$ apt-get update && apt-get upgrade && apt-get dist-upgrade
Ich habe den FriBoLi-Linux-Kernel gegen den offiziellen 2.6.18er-Debian-Kernel mit SquashFS-Kernel-Modul ausgetauscht.
Code:
[root@friboli]# apt-get install linux-image-2.6.18-4-686
[root@friboli]# apt-get install squashfs-modules-2.6.18-4-686 squashfs-tools
Jetzt starten wir die Adam2-FTP-Session...
Code:
[bofh@friboli]$ ftp 192.168.178.1
Nach FTP-Login (USER: adam2 und PASS: adam2) muss BINARY, PASSIVE UND MEDIA_FLASH MODE gesetzt werden.
Code:
ftp> bin
ftp> passive
ftp> quote MEDIA FLSH
WARNUNG #2 ZU FIRMWARE-UPDATE-ÜBERTRAGUNG (KRITISCHER TEIL):
Vor dem Flashen wird stets empfohlen die Geräte auf Werkseinstellungen (Factory-Default) zu setzen.
Bei mir war es auch ohne Factory-Default erfolgreich.
Per put-Kommando wird die Kernel-Image-Datei "kernel.image" - nicht zu verwechseln mit Firmware-Image-Datei (s.w.o.) - auf die Partition mtd1 geflashed!!!
kernel.image ist übrigens ein TAR-Archiv, einfach mal umbenennen und entpacken.
Bis der eigentliche Datei-Transfer losgeht, dauert es ein paar Minuten.
Also Geduld und keine Panik (und hoffentlich kein Stromausfall)...
Code:
ftp> put ./ds-latest/build/modified/firmware/var/tmp/kernel.image mtd1
local: ./ds-latest/build/modified/firmware/var/tmp/kernel.image remote: mtd1
227 Entering Passive Mode (192,168,178,1,5,45)
150 Opening BINARY data connection
226 Transfer complete
4392200 bytes sent in 18.98 secs (226.0 kB/s)
WICHTIGER HINWEIS ZU BRANDING UND WEBUI:
Nach erfolgreichem Flashen wird die TCom-WebUI durch die von AVM mit erweitertem Funktionsumfang und neuen Konfigurationsmöglichkeiten ersetzt!
Im Build-Prozess ist per Default das Branding auf "tcom" gesetzt.
Ich hatte das Branding jedoch manuell auf "avm" gesetzt, so bekam ich nach dem Flashen gar keine WebUI zu Gesicht.
Mein Internet-Zugang über LAN funktionierte dennoch auf Anhieb (kein Factory-Default vor dem Flashen und Branding "avm").
Falls das Branding auf "tcom" geändert werden muss (in meinem Fall auch nachträglich)...
Code:
ftp> quote GETENV firmware_version
ftp> quote SETENV firmware_version tcom
If you have to change the ADSL-Standard (e.g. Italy requires Annex A)...
Code:
ftp> quote GETENV annex
ftp> quote SETENV annex A
Eventuell soll die W701V auf eine andere IP-Adresse horchen...
Code:
ftp> quote GETENV my_ipaddress
ftp> quote SETENV my_ipaddress 192.168.178.1
Reboot der W701V und Ende der Adam2-FTP-Session...
Code:
ftp> quote REBOOT
221 Thank you for using the FTP service on ADAM2
ftp> quit
221 Goodbye
Nach dem Reboot sollte die W701V die neuen Konfigurationsdaten dauerhaft übernommen haben.
Die ds-mod-WebUI sollte jetzt unter
http://192.168.178.1:81 (Default-HTTP-Port #81) erreichbar sein.
telnetd (Telnet-Daemon) starten.
Als unmittelbar nächster Schritt sollten für die AVM-WebUI und ds-mod-WebUI neue (sichere) Passwörter vergeben werden.
Dazu loggt man sich auf die W701V per SSH (Port #22) oder Telnet (Port #23) ein, z.B. mit PuTTY unter Windows.
Den Reboot nicht vergessen!
Code:
[root@w701v]# modpasswd
[root@w701v]# modpasswd dsmod
[root@w701v]# reboot
That's it, folks.
Dickes Lob an die Macher der neuen ds-mod-Version,
insbesondere an kriegaex, der stets kompetent, schnell und zu (sehr!) später Stunde meine Fragen beantworten konnte,
dileks