Am Freitag habe ich noch bis spät in die Nacht hinein so einen seriellen Konverter gebaut, wie ich für mein kleines Netgear Router-Projekt benötigte. Ich hatte mir die Teile bei Reichelt bestellt und dann auf einer Lochrasterplatine zusammengelötet. Ich muss sagen, ich hab schon lange keine solche „Bastellösungen“ gebaut, ich glaube ich kann gar nicht mehr so richtig schön löten, jedenfalls sieht es nicht gerade aus wie ein Meisterstück… 🙂
Aber immerhin, ich hätte es nicht geglaubt, es funktioniert. Erst habe ich nur wirre Zeichen vom Router im Terminal gesehen, doch dann ist mir aufgefallen, dass ich noch eine kleine Brücke vergessen hatte. Dann kamen da tatsächlich ASCII über das serielle Kabel und ich konnte mit Ctrl-C den Bootvorgang abbrechen.
Cool, nicht? Hat dieser Router doch tatsächlich eine interne, nicht nach außen geführte serielle Schnittstelle. Ich habe dann mal testweise das Testimage für den Netgear von der OpenWrt-Homepage eingespielt. Das hat geklappt, man kann tatsächlich auf den Router zugreifen. Da man die boot-Zeile in CFE (sozusagen die OpenFirmware des Routers) anpassen kann, könnte man auch einen über tftp transportieren Kernel starten und dann das root-Filesystem über nfs einbinden, dann wird das Flash, also der Speicher auf dem sich das root-Filesystem des Routers befindet, nicht benötigt. Irgendwie habe ich es aber nicht geschafft, automatisch das nfs zu mounten, irgendwie benutzt er immer eine falsche IP-Adresse für den Kernel. Es fehlen da auch noch ein paar Dokus im Internet, muss ich mir mal bei Gelegenheit genauer anschauen. Das Projekt ist leider noch in einer frühen Alpha-Phase für den Netgear. Aber ich glaube, das wird noch richtig cool. Ich habe jedoch noch keine PPPoE-Verbindung mit meinem DSL-Anschluß gestartet bekommen.
Das Rückspielen der Netgear-Software ist nicht ganz einfach, da der tftp-Client des CFE nicht so große Dateien übertragen kann, muss man dies in mehreren Schritten durchführen. Ich habe das mal zu „Übungszwecken“ gemacht. Aber diese Vorgehensweise funktioniert und nur so sollte man es versuchen! Zum Testen kommt dann wieder OpenWrt drauf… 🙂
Interessant ist übrigens auch, dass man mit Hilfe der seriellen Schnittstelle den Bootvorgang der originalen Netgear-Software beobachten kann, und dann bekommt man tatsächlich einen Login-Screen, an dem man sich mit „root“ und „password“ anmelden kann. Dort kommt dann ein Menü, über das man verschiedenen config-Dateien des Routers analysieren kann. Im Übrigen wird tatsächlich die Firewall des Routers im Originalzustand mit dem OpenSource-Projekt Shorewall realisiert. Die verwendeten OpenSource-Programme von Netgear lassen sich ja auch auf der Homepage runterladen (nach GPL sind sie ja verpflichtet, die Veränderungen an den Sourcen zu veröffentlichen…).
Technorati Tags: Computer, Elektronik, Internet, Router
14. November 2005 um 22:13:30
Hi Micha,
Coool Man!
Dann bist Du ja bald soweit, den Router zu programmieren, nämlich so, dass man einem Rechner nur in einem festlegbaren Zeitfenster Zugang zum Netz gewähren kann.
Das muss DIE Marktlücke sein! Ich bin sicher, es gibt viele Eltern mit DSL-Anschluss, die den Internetkosnum ihrer Sprößlinge einschränken möchten
15. November 2005 um 16:54:38
Man könnte dann durchaus eine solche Funktion implementieren… 🙂 Zunächst sollte aber erstmal die Hardware richtig unterstützt werden. Leider ist man da beim Netgear noch in einem sehr frühen Stadium. Für die LinkSys-Router ist man da schon weiter…
Ich glaube, es fehlt aber – wie bei solchen Projekten immer – noch an einer vernüftigen Weboberfäche, vielleicht könntest Du da ja was beisteuern? 🙂