Für viele Router (WLAN-Router) gibt es alternative Betriebssysteme. Eines davon ist OpenWrt. Auf dieser Seite steht kurz zusammengefasst, wie man OpenWrt auf einem TP-Link TL-WDR3600 (kleinere Version des TL-WDR4300 oder TL-WDR4310 mit "nur" 2 statt 3 Antennen) oder TL-WDR4300 installiert. Der TL-WDR3600 und der TL-WDR4300 wurden gewählt, weil sie schnelle Dualband-WLAN-Router (2.4GHz und 5GHz) mit 8MB Flash, 128MB RAM und 2(!) USB-2.0-Anschlüssen sind. Sie kosten mittlerweilen einiges unter CHF 100.-.
Die englische Anleitung dazu, man ist gut beraten, sie vorher zu lesen, ist hier auf der OpenWrt-Homepage: http://wiki.openwrt.org/toh/tp-link/tl-wdr3600 und http://wiki.openwrt.org/toh/tp-link/tl-wdr4300
Da hier noch nie schlechte Erfahrungen mit den aktuellen Snapshots gemacht wurden, bezieht sich das alles auf die Version Barrier Breaker (z.Z. bei Bleeding Edge, r39424). Neuere Geräte sind oft auf die neueren Snapshots angewiesen. Bitte vor der Installation die entsprechenden Seiten auf www.openwrt.org zum WLAN-Router lesen.
Den Router auspacken und am Netzwerk anschliessen, einen der gelben LAN-Anschlüsse verwenden. Der Router hat als Grundeinstellung die IP-Nummer: 192.168.1.1.
Die Netzwerkadresse des benutzten Computers auf eine Adresse im selben Netz setzen oder eine Alias-Adresse zufügen mit (2 Beispiele, eine Liste der Devices erhält man mit ifconfig -s):
ifcfg br0:0 add 192.168.1.5 oder ifcfg enp2s0:0 add 192.168.1.5
Immer ratsam ist es, kurz die Dokumentation zu lesen: http://wiki.openwrt.org/doc/howto/basic.config
Unter http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wdr3600-v1-squashfs-factory.bin findet sich die Firmware für den Router (die richtige für das benutzte Gerät wählen). Diese herunter laden. Man kann auch die aktuelle stabile Version verwenden. Es muss das Wort squash und factory im Namen enthalten sein. Die Firmware normal mit der originalen Weboberfläche unter der oben gesetzten IP-Nummer hochladen. Der Router wird automatisch neu gestartet (Besitzer des TL-WDR4300 wählen die entsprechende Firmware unter http://downloads.openwrt.org/snapshots/trunk/ar71xx/ )
Das es sich bei dieser Version um eine 'trunk'-Version handelt, sollte man darauf bedacht sein, alles notwendigen Kernel-Module gleich zu installieren. Die 'trunk'-Versionen werden regelmässig neu erstellt und wenn die Kernel-Version ändert und man ein Kernel-Modul nachinstallieren will, führt kein Weg an einer vollständigen Neuinstallation vorbei. Beispiele von solchen Kernel-Modulen sind: kmod-nls-cp850 oder kmod-pppoe.
Eine Neuinstallation ist aber mit diesen Anweisungen hier in kurzer Zeit wieder hergestellt. Die Konfigurationsdateien kann man ja vorher sichern (liegen in /etc).
telnet 192.168.1.1 passwd
passwd setzt ein neues Kennwort für 'root' und deaktiviert zugleich den telnet-Zugang. Ausloggen und mit
ssh root@192.168.1.1
wieder einloggen.
Das System zeigt:
BusyBox v1.19.4 (2014-01-30 20:48:26 CET) built-in shell (ash) Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- BARRIER BREAKER (Bleeding Edge, r39424) ----------------------------------------------------- * 1/2 oz Galliano Pour all ingredients into * 4 oz cold Coffee an irish coffee mug filled * 1 1/2 oz Dark Rum with crushed ice. Stir. * 2 tsp. Creme de Cacao ----------------------------------------------------- root@OpenWrt:~# df -h Filesystem Size Used Available Use% Mounted on rootfs 5.1M 1.4M 3.7M 27% / /dev/root 1.8M 1.8M 0 100% /rom tmpfs 61.7M 548.0K 61.2M 1% /tmp tmpfs 61.7M 16.0K 61.7M 0% /tmp/root tmpfs 512.0K 0 512.0K 0% /dev /dev/mtdblock3 5.1M 1.4M 3.7M 27% /overlay overlayfs:/overlay 5.1M 1.4M 3.7M 27% /
Der Router wird nun mit der blauen Buchse mit dem Internetzugang verbunden, die gelbe bleibt am lokalen Netzwerk. Den Router neu starten:
reboot
OpenWrt Dokumentation: http://wiki.openwrt.org/doc/howto/usb.essentials und http://wiki.openwrt.org/doc/howto/extroot und http://wiki.openwrt.org/doc/howto/usb.storage
Dieses Kapitel beschreibt zur gleichen Zeit, wie man USB-Sticks am OpenWrt-System anschliesst.
Bevor der knappe Flashspeicher voll ist, sollte das Root-FS vergrössert werden. Man benötigt wiederum einige Packete
opkg update opkg install block-mount kmod-usb-core kmod-usb2 kmod-usb-ohci kmod-usb-storage opkg install kmod-fs-ext4 kmod-fs-vfat kmod-fs-ntfs
Man sollte gleich folgendes Modul mit installieren. Es kann sein, dass die eine oder andere USB-Harddisk nicht erkannt wird. Hier war es eine ältere USB Lacie HD: "Cypress Semiconductor Corp. CY7C68300A EZ-USB AT2 USB 2.0 to ATA/ATAPI" mit ID 04b4:6830
opkg install kmod-usb-storage-extras
Der Befehl 'lsusb' zeigt eine Liste aller angeschlossenen USB-Geräte. Es braucht dafür:
opkg install usbutils
Nach der Installation aller dieser Pakete sehen die Platzverhältnisse so aus:
root@hades:~# df -h Filesystem Size Used Available Use% Mounted on rootfs 5.1M 1.5M 3.5M 31% / /dev/root 1.8M 1.8M 0 100% /rom tmpfs 61.7M 564.0K 61.2M 1% /tmp /dev/mtdblock3 5.1M 1.5M 3.5M 31% /overlay overlayfs:/overlay 5.1M 1.5M 3.5M 31% / tmpfs 512.0K 0 512.0K 0% /dev
An einen der beiden USB-Ports steckt man einen Stick mit bspw. 8GB. Diesen kann man gleich auf dem Gerät einrichten und ihn zugänglich machen. Aber zuerst herausfinden, wo er sich befindet:
ls /dev/sd* /dev/sda /dev/sda1
und zur Sicherheit:
block detect ... config 'mount' option target '/mnt/sda1' option uuid 'e546f8e0-435f-3623-caf5-64e429fbf98c' option enabled '0'
Der USB-Stick am Gerät ist das device: "sda", dieses einrichten (vorher die notwendigen Packete installieren):
opkg install e2fsprogs mkfs.ext4 /dev/sda1 mkdir /mnt/sda1 mount /dev/sda1 /mnt/sda1
Dann wird das "alte" root-Verzeichnis kopiert (man kann diese Aktion auch mit dem oben installiereten 'mc' sehr einfach durchführen):
cd / mkdir /tmp/cproot mount --bind / /tmp/cproot tar -C /tmp/cproot -cvf - . | tar -C /mnt/sda1 -xvf - sync umount /mnt/sda1 umount /tmp/cproot
Anschliessend wird OpenWrt mitgeteilt, beim Starten das erweitere root-FS zu nutzen. Hier vorgeschlagen ist das gesamte Kopieren des root-fs auf den Stick. Man kann auch nur das /overlay-fs verschieben (http://wiki.openwrt.org/doc/howto/extroot#duplicate.data2). Die Datei /etc/config/fstab wird ergänzt (oder abgeändert) durch:
config mount
option target /
option device /dev/sda1
option fstype ext4
option options rw,sync
option enabled 1
option enabled_fsck 0
Diese Änderung muss man nach dem Neustart im "neuen" root-Filesystem wiederholen, damit Luci im Webinterface die richtigen "mount points" anzeigt.
Ein 'df -h' (nach dem Neustart) zeigt nun z.B.:
Filesystem Size Used Available Use% Mounted on rootfs 6.9G 414.6M 6.2G 6% / /dev/root 1.5M 1.5M 0 100% /rom tmpfs 61.8M 100.0K 61.7M 0% /tmp tmpfs 512.0K 0 512.0K 0% /dev /dev/sda1 6.9G 414.6M 6.2G 6% /
Sollte das extroot-fs nicht sichtbar sein, hilft möglicherweise
option delay_root '5'
oder höher im 'global'-Bereich von /etc/config/fstab.
Was ist vorhanden. Man benutzt block info
block info /dev/mtdblock2: UUID="a1xxxx-xxxx-xxxxxxxxx-xxxxxxxx" VERSION="4.0" TYPE="squashfs" /dev/mtdblock3: TYPE="jffs2" /dev/sda1: UUID="yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy" NAME="EXT_JOURNAL" VERSION="1.0" TYPE="ext4"
Das lässt sich einfach 'mounten':
mkdir /mnt/overlay mount -t jffs2 /dev/mtdblock3 /mnt/overlay/
df -h /mnt/overlay Filesystem Size Used Available Use% Mounted on /dev/mtdblock3 12.4M 3.1M 9.3M 25% /mnt/overlay
Erst wird ein update der Quellen gemacht. Dann wird die Web-Oberfläche installiert (luci). Diese läuft aber nicht ohne einen Webserver (uhttpd) und einem passenden "Theme". WiFi wird nur funktionieren, wenn das fehlende Packet dazu nachinstalliert wird.
Es empfiehlt sich, mögliche weitere Kernel Module gleich zu installieren, wenn die Firmware aus den Snapshots kommt, sonst kommt man bei einer Nachinstallation nicht umhin, ein Sysupgrade (siehe: OpenWrt: Upgrade (Sysupgrade)) mit erneuter Installation aller Packete durchzuführen.
opkg update opkg install luci-mod-admin-full luci-theme-openwrt uhttpd libiwinfo-lua opkg install kmod-nls-cp850 kmod-nls-cp437 kmod-nls-cp850 opkg install kmod-nls-cp852 kmod-nls-iso8859-1 kmod-nls-utf8 opkg install kmod-usb-printer kmod-pppoe opkg install kmod-dm opkg install kmod-fs-hfs kmod-fs-hfsplus kmod-fs-isofs kmod-fs-ntfs kmod-fs-vfat opkg install kmod-fs-xfs kmod-fuse opkg install kmod-crypto-aes kmod-crypto-cbc opkg install kmod-loop kmod-loop-aes kmod-lib-zlib kmod-lib-lzo opkg install kmod-ledtrig-default-on kmod-ledtrig-usbdev kmod-ledtrig-oneshot kmod-ledtrig-timer opkg install kmod-ipv6 kmod-iptunnel6
Schreibzugriff auf NTFS-Partition bekommt man mit:
opkg install ntfs-3g
Eventuell fehlen noch die Kernel-Module für das Wifi-Modul. Diese installieren mit:
opkg install kmod-ath9k wpad-mini
Der Packetmanager wird die Abhängigkeiten auflösen und alle weitere benötigten Packete mitinstallieren.
opkg install luci-i18n-german luci-app-firewall luci-app-qos opkg install luci-app-upnp luci-app-hd-idle
Ein Zugriff auf die Weboberfläche (Luci) ist nur möglich, wenn der Webserver läuft. Damit der Webserver auch bei jedem Start des Routers gestartet wird, braucht es:
/etc/init.d/uhttpd enable
Man kann ihn auch gleich starten:
/etc/init.d/uhttpd start
Wem die Gundkonfiguration nicht passt, der kann die Einstellungen leicht ändern. Man kann dazu den 'vi'-Editor benutzen oder den midnight-commander, der einem das Leben sehr erleichtert (vor allem Anfängern auf Linux).
vi /etc/config/network
config interface 'lan'
option ifname 'eth0.1'
option type 'bridge'
option proto 'static'
option ipaddr '192.168.0.3'
option netmask '255.255.255.0'
Wenn das geschehen ist, den Router neu starten
reboot -f
und neu einloggen (auf der neuen Netzwerkadresse):
ssh root@192.168.0.3
Nun ist der Router bereit, via Webinterface konfiguriert zu werden. Oben ein Bildschirmfoto der Status-Seite.
Dokumentation: http://wiki.openwrt.org/doc/howto/generic.failsafe
Sollte sich der Router zu keiner Mitarbeit mehr überreden lassen, kann man innerhalb weniger Sekunden, nachdem man ihn anschaltet und nachdem die System-LED zu blinken anfängt, mit
telnet 192.168.1.1
einloggen. (Der Computer muss dafür im selben Netzwerk 192.168.1.0/24 sein.)
Was nun folgt, ist hier beschrieben: http://wiki.openwrt.org/doc/howto/generic.failsafe#in.failsafe.mode
Passwort vergessen? Neues erstellen:
passwd
IP-Adresse des Routers vergessen:
uci get network.lan.ipaddr
Wenn das Flash-Dateisystem JFFS2 voll ist und sich nichts mehr de-/installieren lässt, können damit alle Packete entfernt und die Grundeinstellungen wieder hergestellt werden ("factory reset"):
firstboot
oder
mtd -r erase rootfs_data
oder
rm -r /overlay/*
Dann kann der Router neu gestartet werden.
reboot -f
http://www.tp-link.com.de/products/details/?categoryid=2268&model=TL-WDR3600#spec
IEEE802.11a
IEEE802.11b
IEEE802.11g
IEEE802.11n
4 10/100/1000Mbps-LAN-Ports
1 10/100/1000Mbps-WAN-Port
2 USB2.0-Anschlüsse
5GHz: Bis zu 300Mbps
2,4GHz: Bis zu 300Mbps
Die Leistungsaufnahme des Gerätes ist um die 4 Watt. Das Steckernetzteil alleine braucht ca. 0.3 Watt.