Warum und was?
Seit mittlerweile 2 Monaten liegt bei mir ein LaFonera-Router rum. Anfangs war ich hellauf begeistert (nachdem ich fuer lando einen rs232-Adapter gebastelt habe). Ich selbst bin an der Konfigruation gescheitert, will meinen, habe es 1-2h lang versucht und nachdem es keinen sichtbaren Erfolg gab aufgegeben. Asche auf mein Haupt, aber es tat nicht und ueberhaupt anders als die Foneras die lando in der Mangel hatte. Irgendwann sagte selbiger mir, dass es damit zu tun haben koennte, dass ich eiene aeltere Version von OpenWRT nutze. Ich koenne es doch mal updaten. Spontan griff ich zum Adapter fuer eine serielle Verbindung. Aber ich koennte doch mal das unter http://wiki.freifunk-hannover.de/Fonera_mit_OLSR#Flashen_von_der_Konsole vorgeschlagene Verfahren probieren - ein serielles Kabel zum Retten liegt ja immerhin bereit. Also, auf auf. Bei riesigen Nebenwirkungen frage ich eine serielle Konsole meines Vertrauens.
Voraussetzungen
Zunaechst einmal der Stand, wie er war:
- Fonera ist mit einer eigenen IP (192.168.0.2) unterwegs und laesst sich pingen.
- Root-Login via ssh auf den Fonera ist moeglich.
route, hier in folgender Form genutzt:root@OpenWrt:~# route add default gw 192.168.0.1Dies fuehrt schonmal zu einer Default-Gateway.
root@OpenWrt:~# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 192.160.3.0 * 255.255.255.0 U 0 0 0 ath0 192.168.0.0 * 255.255.255.0 U 0 0 0 br-lan default 192.168.0.1 0.0.0.0 UG 0 0 0 br-lan root@OpenWrt:~#Nun soll als naechstes auch noch dafuer gesorgt werden, dass DNS-Aufloesung vorgenommen werden kann, ansonsten muessten die Server, von denen die neue Firmware geladen werden soll mit IP-Adresse bekannt sein. Also:
root@OpenWrt:~# echo "nameserver 139.30.8.7" > /etc/resolv.conf root@OpenWrt:~# ping heise.de PING heise.de (193.99.144.80): 56 data bytes 64 bytes from 193.99.144.80: icmp_seq=0 ttl=246 time=211.5 ms 64 bytes from 193.99.144.80: icmp_seq=1 ttl=246 time=88.4 ms --- heise.de ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 88.4/149.9/211.5 ms root@OpenWrt:~#Damit waeren die noetigen Voraussetzungen gegeben: Der Fonera kann nach draussen telefonieren und weiss, was wir meinen, wenn wir "heise.de" sagen.
Flashen
Nun ist es an der Zeit, sich die oben genannten Anweisungen der Freifunker aus Hannover anzuschauen und vorsichtig nachzuahmen. Einmal kurz wiederholt sind es die folgenden Anweisungen:
root@OpenWrt:~# wget http://downloads.openwrt.org/kamikaze/7.07/atheros-2.6/openwrt-atheros-2.6-wmlinux.lzma root@OpenWrt:~# wget http://downloads.openwrt.org/kamikaze/7.07/atheros-2.6/openwrt-atheros-2.6-root.jffs2-64k root@OpenWrt:~# mtd -e vmlinux.bin.l7 write openwrt-atheros-2.6-vmlinux.lzma vmlinux.bin.l7 root@OpenWrt:~# mtd -e rootfs write openwrt-atheros-2.6-root.jffs2-64k rootfs root@OpenWrt:~# rebootNun die spannende Frage: Was macht das eigentlich? Die ersten beiden Zeilen sind einfach: Sie benutzen das Programm
wget, um Dateien herunterzuladen (ich selbst habe die aktuelleren Versionen genutzt, die im Verzeichnis kamikaze/7.09/ liegen). Danach kommen zwei Aufrufe von mtd. Dabei handelt es sich um ein Programm zum Beschreiben der Firmware. Der erste Aufruf speichert den heruntergeladenen Kernel, der zweite den Rest der Umgebung. Diese beiden Aufrufe koennen einen Moment dauern, schliesslich soll das ganze auch orgendlich im nichtfluechtigen Speicher verstaut werden. Wenn das alles erledigt ist, wird der Fonera neu gestartet. Und dann?
Nichts geht mehr.
Auf der Seite der hannoveraner Freifunker wird davor gewanrt, dass schon viele sich so ihren Fonera "zerflasht" haetten. Da mein Fonera auch nicht mehr auf die IP-Adresse hoeren wollte, die ich ihm mal gegeben hatte, dachte ich, ich haette es auch geschafft.
Dachte ich.
Dann dachte ich nach.
Was genau habe ich da beim Flashen eigentlich ueberschrieben? Eigentlich alles. Also mit einer gewissen Sicherheit auch die Einstellunen, mit welcher IP mein Fonera erwacht und ob ueberhaupt das Ethernetdevice aktiviert ist. Also spontan mal das serielle Kabel geholt (ich wusste doch, dass ich es noch brauchen wuerde...) und mal greingeschaut, was der Fonera denn so treibt.. und siehe da, er bootete brav das neue System. Das einzige Problem war, dass er eine IP-Adresse besass, mit der ich nicht gerechnet habe: 192.168.3.1 ...
Schluss
Tja, nu laeuft er. Mittlerweile als kleiner DHCP-Server und hat damit ein altes Notebook (liebevoll "wecker" getauft) abgeloest. Eine nette Bastelei, die mich ohne serielles Kabel mal wieder fuerchterlich frustriert haette...