D-Link DIR-300: Unterschied zwischen den Versionen
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 3: | Zeile 3: | ||
Folgende Beischreibung bezieht sich auf Linux als Betriebssystem. Am einfachsten benutzt Du ein Laptop zur Arbeit mit dem Router Du kannst dann einfacher zwischen LAN und WLAN hin und her wechseln. | Folgende Beischreibung bezieht sich auf Linux als Betriebssystem. Am einfachsten benutzt Du ein Laptop zur Arbeit mit dem Router Du kannst dann einfacher zwischen LAN und WLAN hin und her wechseln. | ||
− | Außerdem solltest Du diese Seite bereits geöffnet haben, wenn Du loslegst, denn zwischendurch wirst Du kein Internet am Rechner haben. | + | Außerdem solltest Du diese Seite bereits geöffnet haben (oder einfach ausdrucken :-), wenn Du loslegst, denn zwischendurch wirst Du eventuell kein Internet am Rechner haben. |
== Vorbereitung == | == Vorbereitung == | ||
Du brauchst: | Du brauchst: | ||
Zeile 25: | Zeile 25: | ||
sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.ram | sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.ram | ||
sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.rom | sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.rom | ||
− | sudo wget http://freifunk.tumelum.de/ | + | sudo wget http://freifunk.tumelum.de/stabil/atheros/openwrt-atheros-vmlinux.lzma |
− | sudo wget http://freifunk.tumelum.de/ | + | sudo wget http://freifunk.tumelum.de/stabil/atheros/openwrt-atheros-root.squashfs |
Stelle sicher, dass die Daten für den TFTP-Daemon lesbar sind: | Stelle sicher, dass die Daten für den TFTP-Daemon lesbar sind: | ||
Zeile 109: | Zeile 109: | ||
DD-WRT>reset | DD-WRT>reset | ||
+ | == Freifunk-Firmware aufspielen == | ||
+ | |||
+ | |||
Der Router startet neu. Nachdem ca. 5s nach dem Reboot (den korrekten Zeitpunkt erkennst Du an den nacheinander aufblinkenden LEDs), führst Du dann wieder den folgenden Befehl aus: | Der Router startet neu. Nachdem ca. 5s nach dem Reboot (den korrekten Zeitpunkt erkennst Du an den nacheinander aufblinkenden LEDs), führst Du dann wieder den folgenden Befehl aus: | ||
+ | telnet 192.168.1.1 9000 | ||
+ | |||
+ | Danach musst Du dann wieder eine etwas längere Befehlsfolge ausführen: | ||
+ | |||
+ | DD-WRT>fis init | ||
+ | About to initialize [format] FLASH image system - continue (y/n)? y | ||
+ | *** Initialize FLASH Image System | ||
+ | ... Erase from 0xbffe0000-0xbfff0000: . | ||
+ | ... Program from 0x807f0000-0x80800000 at 0xbffe0000: . | ||
+ | |||
+ | DD-WRT>ip_address -h 192.168.1.10 | ||
+ | IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0 | ||
+ | Default server: 192.168.1.10 | ||
+ | |||
+ | DD-WRT>load -r -b %{FREEMEMLO} openwrt-atheros-vmlinux.lzma | ||
+ | Using default protocol (TFTP) | ||
+ | Raw file loaded 0x80040800-0x801007ff, assumed entry at 0x80040800 | ||
+ | |||
+ | DD-WRT>fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7 | ||
+ | ... Erase from 0xbfc30000-0xbfcf0000: ............ | ||
+ | ... Program from 0x80040800-0x80100800 at 0xbfc30000: ............ | ||
+ | ... Erase from 0xbffe0000-0xbfff0000: . | ||
+ | ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . | ||
+ | |||
+ | DD-WRT>load -r -b %{FREEMEMLO} openwrt-atheros-root.squashfs | ||
+ | Using default protocol (TFTP) | ||
+ | Raw file loaded 0x80040800-0x802207ff, assumed entry at 0x80040800'' | ||
+ | |||
+ | DD-WRT>fis create rootfs | ||
+ | ... Erase from 0xbfcf0000-0xbffe0000: ............................................... | ||
+ | ... Program from 0x80040800-0x80220800 at 0xbfcf0000: .............................. | ||
+ | ... Erase from 0xbffe0000-0xbfff0000: . | ||
+ | ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . | ||
+ | |||
+ | DD-WRT>fconfig boot_script_timeout 5 | ||
+ | |||
+ | DD-WRT>fconfig boot_script true | ||
+ | Run script at boot: true | ||
+ | |||
+ | DD-WRT>fconfig | ||
+ | Run script at boot: true | ||
+ | Boot script: | ||
+ | Enter script, terminate with empty line | ||
+ | >> fis load -l vmlinux.bin.l7 | ||
+ | >> exec | ||
+ | >> | ||
+ | Boot script timeout (1000ms resolution): 5 | ||
+ | Use BOOTP for network configuration: false | ||
+ | Gateway IP address: 192.168.1.254 | ||
+ | Local IP address: 192.168.1.1 | ||
+ | Local IP address mask: 255.255.255.0 | ||
+ | Default server IP address: 192.168.1.10 | ||
+ | Console baud rate: 9600 | ||
+ | GDB connection port: 9000 | ||
+ | Force console for special debug messages: false | ||
+ | Network debug at boot time: false | ||
+ | Update RedBoot non-volatile configuration - continue (y/n)? y | ||
+ | ... Erase from 0xbffe0000-0xbfff0000: . | ||
+ | ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: .'' | ||
+ | |||
+ | DD-WRT>reset | ||
+ | Und fertig. Der erste Start dauert ein wenig (ca. 5 Minuten). Danach geht es dann mit der Konfiguration normal weiter, indem Du einen Browser öffnest und Dich mit der IP-Adresse 192.168.1.1 verbindest. | ||
[[Kategorie:Hardware]] | [[Kategorie:Hardware]] |
Aktuelle Version vom 2. Oktober 2012, 19:10 Uhr
Der D-Link DIR-300 ist ein günstiges Einsteiger-Gerät, das leider nicht ganz einfach konfigurierbar ist. Einige Zeit wurden die von verschiedenen DSL-Anbietern als Standard-Gerät Neukunden gegeben. Jetzt findest Du die für 10-20,- EUR zum Beispiel bei Ebay.
Folgende Beischreibung bezieht sich auf Linux als Betriebssystem. Am einfachsten benutzt Du ein Laptop zur Arbeit mit dem Router Du kannst dann einfacher zwischen LAN und WLAN hin und her wechseln.
Außerdem solltest Du diese Seite bereits geöffnet haben (oder einfach ausdrucken :-), wenn Du loslegst, denn zwischendurch wirst Du eventuell kein Internet am Rechner haben.
Vorbereitung
Du brauchst:
- Deinen D-Link Router
- Stromversorgung für den Router
- ein LAN-Kabel
Dann:
- Der Router lässt sich nur ausschalten, wenn man den Stecker aus dem Router zieht. Steck deswegen das Stromkabel in die Steckdose, aber noch nicht in den Router.
- Verbinde den Internet-Port (WAN) des Routers per LAN-Kabel mit Deinem Laptop
TFTP installieren
Um OpenWRT auf den Router zu bekommen, kannst Du es per Telnet und TFTP übertragen. Telnet ist in der Regel schon installiert. Das Trivial File Transfer Protocol (TFTP) ist ein sehr einfaches Dateiübertragungsprotokoll, dass nur das Lesen oder Schreiben von Dateien unterstützt.
Installiert TFTP im Terminal:
sudo apt-get install tftpd-hpa
Software herunterladen
Wechsel ins TFTP-Verzeichnis:
cd /var/lib/tftpboot
Lade die nötige Software herunter:
sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.ram sudo wget http://www.dd-wrt.com/dd-wrtv2/downloads/v24/Atheros%20WiSoc/Airlink%20101%20AR430W/ap61.rom sudo wget http://freifunk.tumelum.de/stabil/atheros/openwrt-atheros-vmlinux.lzma sudo wget http://freifunk.tumelum.de/stabil/atheros/openwrt-atheros-root.squashfs
Stelle sicher, dass die Daten für den TFTP-Daemon lesbar sind:
chmod a+r ap61* openwrt*
.telnetrc anlegen
Leg in Deinem Homeverzeichnis eine Datei mit dem Namen .telnetrc an und schreibe hinein:
192.168.1.1 mode line 192.168.20.81 mode line
IP umschalten
Der Router wird gleich unter 192.168.20.81 zu erreichen sein. Entsprechend stellst Du die IP für Deinen Rechner auf 192.168.20.80. Hier am besten unter Linux immer mit Interface-Aliases arbeiten, d.h.
sudo ifconfig eth0:1 192.168.20.80
Da manche Interfaces nachdem ein Link da ist (z.B. beim Reboot des Routers) einige Sekunden brauchen, bis sie wieder da sind, ist es manchmal besser, einen kleinen Switch dazwischen zu haben. Achte bitte darauf, dass in dem dann aufgebauten Netz kein DHCP-Server läuft (z.B. von Deinem Internet-Router), ansonsten kann es beim Flashen später zu Problemen kommen.
Firmware des Bootloaders verändern
Damit wir unsere eigene Firmware auf den Router bringen können, muss zunächst der Bootloader des Routers aktualisiert werden.
Verbinde hierzu den Router mit dem Netzteil und warte dann ca. 5 Sekunden (bei den meisten Routern siehst Du einen "Countdown", bei dem die LEDs an der Vorderseite nacheinander aufblinken), bevor Du den folgenden Befehl ausführst:
telnet 192.168.20.81 9000
Du bekommst dann mit ein wenig Glück und dem richtigen Timing die folgende Anzeige:
RedBoot>
Führe dann die folgenden Befehle aus:
Redboot> load ap61.ram Redboot> go
Jetzt musst Du Deinem Rechner eine zusätzliche IP-Adresse vergeben:
ifconfig eth0:2 192.168.1.10
Dann steckst Du das LAN-Kabel vom WAN-Anschluss des Routers an einen der LAN-Ports und führst den folgenden Befehl aus:
telnet 192.168.1.1 9000
Es kann sein, dass Du durchaus einige Minuten warten musst, bevor dieser Befehl funktioniert.
Letzendlich solltest Du dann die folgende Anzeige bekommen:
DD-WRT>
Und dann wird es etwas kryptisch. Im folgenden siehst Du die Befehle, die Du eintippen musst:
DD-WRT>fis init About to initialize [format] FLASH image system - continue (y/n)? y *** Initialize FLASH Image System ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x807f0000-0x80800000 at 0xbffe0000: . DD-WRT>ip_address -h 192.168.1.10 IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0 Default server: 192.168.1.10 DD-WRT>load -r -b %{FREEMEMLO} ap61.rom Using default protocol (TFTP) Raw file loaded 0x80080000-0x800a8717, assumed entry at 0x80080000 DD-WRT>fis create -l 0x30000 -e 0xbfc00000 RedBoot An image named 'RedBoot' exists - continue (y/n)? y ... Erase from 0xbfc00000-0xbfc30000: ... ... Program from 0x80080000-0x800a8718 at 0xbfc00000: ... ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x807f0000-0x80800000 at 0xbffe0000: . DD-WRT>fconfig bootp false bootp: Setting to false Update RedBoot non-volatile configuration - continue (y/n)? y ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . DD-WRT>reset
Freifunk-Firmware aufspielen
Der Router startet neu. Nachdem ca. 5s nach dem Reboot (den korrekten Zeitpunkt erkennst Du an den nacheinander aufblinkenden LEDs), führst Du dann wieder den folgenden Befehl aus:
telnet 192.168.1.1 9000
Danach musst Du dann wieder eine etwas längere Befehlsfolge ausführen:
DD-WRT>fis init About to initialize [format] FLASH image system - continue (y/n)? y *** Initialize FLASH Image System ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x807f0000-0x80800000 at 0xbffe0000: .
DD-WRT>ip_address -h 192.168.1.10 IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0 Default server: 192.168.1.10
DD-WRT>load -r -b %{FREEMEMLO} openwrt-atheros-vmlinux.lzma Using default protocol (TFTP) Raw file loaded 0x80040800-0x801007ff, assumed entry at 0x80040800
DD-WRT>fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7 ... Erase from 0xbfc30000-0xbfcf0000: ............ ... Program from 0x80040800-0x80100800 at 0xbfc30000: ............ ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . DD-WRT>load -r -b %{FREEMEMLO} openwrt-atheros-root.squashfs Using default protocol (TFTP) Raw file loaded 0x80040800-0x802207ff, assumed entry at 0x80040800 DD-WRT>fis create rootfs ... Erase from 0xbfcf0000-0xbffe0000: ............................................... ... Program from 0x80040800-0x80220800 at 0xbfcf0000: .............................. ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . DD-WRT>fconfig boot_script_timeout 5 DD-WRT>fconfig boot_script true Run script at boot: true DD-WRT>fconfig Run script at boot: true Boot script: Enter script, terminate with empty line >> fis load -l vmlinux.bin.l7 >> exec >> Boot script timeout (1000ms resolution): 5 Use BOOTP for network configuration: false Gateway IP address: 192.168.1.254 Local IP address: 192.168.1.1 Local IP address mask: 255.255.255.0 Default server IP address: 192.168.1.10 Console baud rate: 9600 GDB connection port: 9000 Force console for special debug messages: false Network debug at boot time: false Update RedBoot non-volatile configuration - continue (y/n)? y ... Erase from 0xbffe0000-0xbfff0000: . ... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . DD-WRT>reset
Und fertig. Der erste Start dauert ein wenig (ca. 5 Minuten). Danach geht es dann mit der Konfiguration normal weiter, indem Du einen Browser öffnest und Dich mit der IP-Adresse 192.168.1.1 verbindest.