Linksys WAP

Aus wiki.freifunk.net
Zur Navigation springenZur Suche springen

WAP 54 G vs. WRT 54 G

Vorteile des WAP gegenüber dem WRT

  • Der WAP hat nur ca. den halben Stromverbrauch im Vergleich zum WRT. Ein Fakt, der für alle interessant sein könnte, die das Gerät an einer Solaranlage betreiben wollen.
  • Der WAP tut auch noch bei relativ geringer Versorgungsspannung seinen Dienst. Das macht es relativ einfach, ihn mit einer kleinen POE-Bastelei auch über relativ lange Strecken mit dem Original-Netzteil ausreichend mit Spannung zu versorgen.
  • Die Platine des WAP ist sehr klein, sie braucht etwa die halbe Breite des Gehäuses. BastlerInnen könnten also theoretisch 2 solcher Platinen in ein Gehäuse verbauen bzw. ein "Allwettergehäuse" müßte wesentlich kleiner sein als für einen WRT. Auch zusätzliche Einbauten (z. B. Akkus) wären relativ unkompliziert im Originalgehäuse realisierbar.

Nachteile des WAP gegenüber dem WRT

  • Das Gerät hat keine WAN-Schnittstelle. Für Freifunk-NutzerInnen, die nicht selbst einen Internet-Zugang bereit stellen wollen/können, stellt das jedoch kein Problem dar.

Neupreis

  • Was den Neupreis betrifft unterscheiden sich WAP und WRT kaum

WAP54G und Freifunk-Firmware

Dieses Gerät gibt es in wenigstens 3 Versionen. Es existiert eine ältere Version, die nicht mit der Freifunk-Firmware oder mit OpenWrt läuft. Die Version WAP54G-Ver 2.0 gibt es mit 4 Mb AMD-Flash-Speicher, 16 Mb RAM-Speicher und 7 LEDs in der Frontplatte. Und es gibt eine Version mit mit nur 2 Mb Intel-Flash-Speicher, 8 Mb RAM-Speicher und 3 LEDs in der Frontplatte. Für die Freifunk-Firmware nur Geräte mit den Reset-Taster links vom Ethernet-Anschluss verwenden! WAP54G - Reset Taster

Versucht man die Freifunk Firmware über die Web-Oberfläche der WAP54G-Original-Firmware aufzuspielen, so erscheint die Fehlermeldung "Cannot downgrade" - eine Folge des verwendeten LZMA-Bootladers. Allerdings kann man (wenn die Original Firmware aufgespielt ist) durch aufrufen folgender Seite: "http://[AP-Address]/fw-conf.asp" Hier kann man schön die Downgrade-Header Funktion setzen. Dann funktioniert auch der Upload der FFF via Web-Frontend. Alternativ über TFTP: Um die "boot_wait"-Einstellung für den TFTP-Upload zu setzen, zunächst eine präparierte Original-Firmware einspielen (Download: http://styx.commando.de/sven-ola/wap54gv2.2.06-with-boot_wait-on.trx). Dann die Funktion "Reset to Factory Defaults" ausführen um "boot_wait" zu aktivieren.

http://openwrt.org/

**Hinweis**: Dies ist eine Anleitung für Interessierte und Technik-Begeisterte. Willst du einfach nur OpenWrt installieren, empfehle ich dir entweder ein offizielles Binary unter http://openwrt.org/downloads/snapshots/ zu laden oder die auf OLSR spezialisierte Freifunk Firmware/FFF.

Voraussetzungen für die Übertragung von Freifunk/OpenWrt

Der Access-Point (AP) WAP54G ist der "kleine Bruder" des WRT54G. Er hat nur eine Ethernet-Schnittstelle. Die neuere Version 2.0 (seit ca. Mitte 2004 im Handel) hat 4 Mb Flash-Speicher und deshalb kann problemlos mit OpenWrt ausgerüstet werden. Die ältereren Version (1.x) haben nur 2 Mb Flash-Speicher, was für OpenWrt evt. zu wenig ist. **Achtung**: In Deutschland werden mittlerweile Linksys "WAP54G V2" verkauft. Diese Version hat ebenfalls nur 2 Mb Flash und kann somit nur unter Schwierigkeiten / gar nicht mit OpenWrt bzw. FreiFunk-Firmware betrieben werden. Du benötigst die folgenden Dinge, um diese Beschreibung nachzuvollziehen: - Einen PC. Keine Antiquitäten. Komplett mit CD-Rom-Laufwerk, leitungsgebundener Netzwerk-Karte und 128 Mb RAM. - Eine Knoppix-CD. Diese kannst du kaufen, z.B. die LinuxTag-DVD bei Lehmanns Buchhandlung für 10,-- Euro. Wahlweise kannst Du Knoppix auch herunterladen und anschließend die Datei knoppix.iso auf eine CD brennen. - Der Linksys WAP54G sowie das mitgelieferte Netzteil und die dazugehörige Netzwerk-Leitung.

Den Rückweg sichern

Wenn mal was schief geht, ist es wirklich prima wenn man die Original-Software wieder einspielen kann. Dazu muss am Gerät eine kleine Änderung in der Konfiguration vorgenommen werden, die **nicht** über die Web-Oberfläche eingestellt werden kann.

  • Lade mit Deinem PC das Quelltext-Archiv für das Gerät von der Linksys GPL-Seite herunter. Speichere die Datei wap54gv2.2.06.tar.gz in beispielsweise das Verzeichnis C:\TMP (ca. 150 Mb).
  • Nimm das Gerät aus der Packung und schalte es ein.
  • Auf der Rückseite ist der Reset-Taster mit einem spitzen Gegenstand erreichbar. Mit diesem Taster kann die Werkskonfiguration wiederhergestellt werden. Drücke mit einem Kugelschreiber so lange auf den Reset-Taster, bis die Leuchtdioden auf der Vorderseite zu blinken beginnen.
  • Verbinde das Gerät und Deinem PC mit der Ethernet-Leitung.
  • Starte Knoppix mit Hilfe der Knoppix-CD. Eine genaue Beschreibung findest Du auf der Seite [OpenWrtfuerWRT54G] unter der Überschrift "Den Rückweg sichern".
  • Gib in der Root-Eingabeaufforderung den Befehl ping 192.168.1.245 ein. Es müssen mehrere Antwort-Pakete angezeigt werden. Brich den Ping-Befehl mit ![Ctrl-C] ab. 0. Öffne den Dateimanager für Deine Windows-Festplatten-Partition. Klicke dazu einmal auf das entsprechende Icon auf dem Desktop. Dadurch wird die Windows-Festplatten-Partition schreibgeschützt in das Knoppix-Verzeichnissystem eingehängt. Hebe den Schreibschutz auf. Klicke dazu mit der rechten Maustaste auf das Festplatten-Icon und wähle im Menü Aktionen den Befehl Lese/Schreibmodus ändern.
  • Richte eine neue virtuelle Festplatte zum Kompilieren ein. Gib folgende Befehle in der Root-Eingabeaufforderung ein:

cd /mnt (In diesem Verzeichnis befinden sich die Mount-Unterverzeichnisse für alle Festplatten)mount hda3 (Bei mir ist die Windows-Festplatte "C:" auf 3. Partition der ersten IDE-Festplatte. Welche Festplatten auf Deinem System vorhanden sind, zeigen die Festplatten-Icons auf dem Desktop an.)ls hda3 (Schaue nach, ob Du in die richtige Partition eingehängt hast. Bei mir gibt es dort ein C:\TMP, das dann als "tmp" ebenfalls angezeigt wird.) cd hda3/tmp (In das Windows-Verzeichnis "C:\TMP" wechseln)dd if=/dev/zero of=linux.dsk bs=1000000 count=1000 (Erzeuge eine ca. 1 Gb große leere Datei. Diese dient als virtuelle Festplatte zum Erstellen der neuen Firmware.)mke2fs linux.dsk (Erzeuge ein Linux-Dateisystem innerhalb der neuen Datei. Bestätige die Sicherheits-Abfrage mit "y".)mkdir /mnt/mnt (Lege ein neues Mount-Unterverzeichnis an.)mount -o loop linux.dsk /mnt/mnt (Hänge die neue virtuelle Festplatte in das Dateisystem ein.)cp /mnt/hda3/tmp/wap54g.2.07.tar.gz . (Das heruntergeladene Quelltext-Archiv auf die virtuelle Festplatte kopieren.)

**Hinweis**: Die virtuelle Festplatte wurde vom Benutzer root eingehängt. Es ist daher nicht möglich, darauf mit dem Datei-Manager schreibend zuzugreifen.

  • Stelle eine neue Firmware aus dem Quelltext her. Rufe dazu wieder die Root-Eingabeaufforderung auf.

cd /mnt/mnt (In das Verzeichnis mit der virtuellen Festplatte wechseln)tar xvzf wap54gv2.2.06.tar.gz (Das Quelltext-Archiv auspacken)rm /opt (Entferne diesen Link auf ein Verzeichnis der Knoppix-CD. Unter anderen Linux-Varianten existiert hier ein Verzeichnis, das dann natürlich nicht gelöscht werden darf. Der nächste Befehl würde dann auch "ln -s /opt/brcm /mnt/mnt/tools/brcm" lauten.)ln -s /opt /mnt/mnt/tools (Unter Knoppix überschreibt dies den in der RAM-Disk gespeicherten Link, so dass "ls /opt/brcm/" funktioniert.)cd release/src/linux/linux (Wechsele in das Verzeichnis mit dem Linux-Kernel-Quellen.)make dep (Richte die Quelltext-Abhängigkeiten ein.)cd /mnt/mnt/release/srcexport PATH=$PATH:/opt/brcm/hndtools-mipsel-linuxexport PATH=$PATH:/opt/brcm/hdntools-mipsel-uclibc (Richte Pfad-Angaben für Erstellungs-Werkzeuge ein.)joe router/shared/defaults.c (Bearbeite die angegebene Textdatei. Ganz am Ende der Datei befindet sich ein Eintrag "boot_wait". Ändere den Wert dieses Eintrages von "off" auf "on". Drücke [Ctrl-K][X] für Datei-Speichern und Beenden.)joe router/www/LinksysWAP54G-Cisco/status.asp (Bearbeite die angegebene Webseiten-Datei. Drücke [Ctrl-K][F], um nach der Zeichenkette "Version" zu suchen. Bestätige die Eingabe der Zeichenkette zweimal mit [Ret]. Gib vor dem Doppelpunkt von "Firmware Version:" folgendes ein: "(<% nvram_get("boot_wait"); %>)". Der neue Zeilenumbruch, den der Texteditor dabei selbstständig erzeugt, stört nicht. Drücke wieder [Ctrl-K][X] für Speichern und Beenden.make (Dieser Befehl bewirkt das Erstellen der geänderten Firmware.)

  • Starte nun den Linux-Browser mit einem einfachen Klick auf das Icon (siehe Bild). Gib in das Adressfeld die IP-Adresse des Gerätes ein: "http://192.168.1.245/". Das Kennwort im folgenden Dialog lautet "admin".

Knoppix-browser.gif

  • Navigiere auf der Web-Oberfläche des Gerätes zur Seite Help. Klicke auf den Button Firmware Update. Mit dem Button Durchsuchen wählst Du die Datei "/mnt/mnt/release/image/linux.trx" aus. Bestätige mit dem Button Update.
  • Warte den Abschluss des Firmware-Updates ab. Navigiere danach auf die Seite Status. Prüfe, ob bei Firmware Version nun das erwartete "(Off)" angezeigt wird.
  • Stelle durch langen Druck auf den Reset-Taster nun ein zweites mal die Grundkonfiguration für das Gerät her. Überprüfe nach dem Neustart des Gerätes, ob sich auf der Seite Status die Anzeige in "(on)" geändert hat.

Und jetzt? Folgende Schritte:

  • OpenWrt kompilieren. So wie auf der Seite [OpenWrtfuerWRT54G] unter der Überschrift "OpenWrt kompilieren" beschrieben. - Damit der Druck auf den Reset-Taster erkannt wird: im Build-Verzeichnis die Datei buildroot/build_mipsel/busybox/miscutils/resetmon.c ändern: Statt #define RESET (1<<6) muss es #define RESET (1<<0).
  • Dann "cd buildroot/build_mipsel/busybox" und danach "make clean" eingeben.
  • Es gibt keine DMZ-LED, daher muss der FAILSAFE-Mode-Zeitpunkt (siehe [OpenWrtfuerWRT54G] unter "Wenn es mal nicht klappt") mit der Stopuhr erkannt werden. Ändere die Text-Datei buildroot/build_mipsel/root/etc/preinit und ändere sleep 1 in sleep 10.
  • Die vlan-Interfaces vom WRT54G stören den Aufruf des "telnetd". Ändere die Datei buildroot/build_mipsel/root/etc/nvram.overrides und füge vor der Zeile mit # hacks for 1.x hardware folgendes ein:
# hacks for wap54g hardware[ "$(nvram get boardnum)" 
 = "2" ] && \[ "$(nvram get boardtype)" = "bcm94710dev" ]
 && {  debug "### wap54g hardware hack ###"  wan_ifname="none"}
  • OpenWrt nochmal kompilieren. Anschließend die Datei buildroot/openwrt-linux.trx per TFTP übertragen. Im Unterschied zum WRT54G lautet dazu die Befehlsfolge:
cd buildroot
tftp 192.168.1.245
binary
rexmt 1
put openwrt-linux.trx (Noch nicht Return!)
(Jetzt WAP54G einschalten. Wenn LAN-LED aufleuchtet, [Ret].  Dann mind. 1 Min warten bis der Flash-Vorgang ok ist)
quit
ping 192.168.1.254 (sollte was ergeben)
  • Nun im FAILSAFE starten: WRT54G ausschalten. Wieder einschalten. Warte 5 Sek. bis die LEDs stabil leuchten. Drücke den Reset-Taster solange, bis WLAN-LED flackert. Jetzt mit "ping 192.168.1.1" prüfen, ob FAILSAFE erreicht. (Im FAILSAFE ändert sich die IP auf 192.168.1.1). Nun "telnet 192.168.1.1", "firstboot" & "reboot". - Ipkg einrichten (siehe [OpenWrt fuer WRT54G]). - OLSR installieren: "ipkg install olsrd", "ipgk install libpthread" und "install wl". - OLSR einrichten: "mv /etc/init.d/S53olsrd /etc", "vi /etc/S53olsrd" und folgendes vor dem Aufruf von "olsrd" eingeben:
brctrl delbr br0
ifconfig eth1 192.168.1.254
ifconfig eth2 104.x.x.x 
netmask 255.0.0.0
wl ap 0
wl scan
sleep 5
wl join olsr.freifunk.net
iptables -F 
iptables -t nat -F  
/bin/olsrd -d 1 -f /etc/olsrd.conf
  • Dann die /etc/olsrd.conf anpassen:
USE_HYSTERESIS yes
INTERFACES eth2
IP4BROAD 255.255.255.255
  • **Achtung**: Dein Router kann per Telnet nun ohne Passwort ferngesteuert werden. Du solltest später noch "install dropbear" und das Konfigurieren des SSH-Daemons vornehmen! Siehe: [OpenWrt fuer WRT54G].
  • Den Daemon starten: "/etc/S53olsrd" eingeben. Wenn alles so klappt, kann die "S53olsrd" wieder nach "/etc/init.d".
  • Deine (neue) IP unter olsr.freifunk.net/">http://olsr.freifunk.net/ (aus 104.x.x.x siehe oben) eintragen.

weitere infos

mtd -r write openwrt-freifunk-1.6.36-de.trx linux kann zum flashen via telnet benutzt werden

Siehe Auch

Links