contents - main page - dd-wrt wiki

44
ENGLISH TRANSLATION Contents 1 Projektbeschreibung 2 Was ist DD-WRT? 3 Unterstützte Geräte 4 Komplette Featureliste 5 Die verschiedenen Pakete 6 Unterschiede zwischen den 6 verschiedenen Dateien 6.1 Betrieb als Access-Point 6.2 Betrieb als Client 7 Richtig Flashen 7.1 Der Hard-Reset oder 30/30/30-Reset 7.1.1 Hinweis Asus-Geräte 7.1.2 Hinweis WRT54 7.1.3 Umgang mit Backupkonfigurationen 7.2 Grundlagen 7.3 Vorgehensweise 7.4 Besonderheiten beim Flashen von... 7.4.1 WRT54G v2.2 7.4.2 WRT54G/S v4.0 WRT54GL 7.4.3 WRT54GS 7.4.4 WRT54G v5 - v6 7.4.5 Buffalo WHR-G54S,WHR-HP-G54 und WHR-G125 7.4.6 Buffalo WHR-HP-G54 - ändern der Boardflags 7.5 Wiederbeleben 8 Das Web-Interface 8.1 Beschreibung der einzelnen Einstellungen 9 Konfigurationsbeispiele 9.1 WRT54G im Client-Modus 9.2 WRT54GL als Repeater Bridge 9.2.1 Verschlüsselung des Virtuellen Interfaces 9.3 WRT an einer FritzBox (o.a.) für ein Nachbarschaftsnetz 9.4 DD-WRT Router als WDS einrichten um ein Netz mit mehreren Routern aufzubauen, an denen sich Clients anmelden können 9.4.1 Vorbereitungen 9.4.2 Einstellungen in DD-WRT 9.4.2.1 I. Folgende Daten sind im Vorfeld zu notieren 9.4.2.2 II. Für alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 9.4.2.3 III. Für den Internet-Router 9.4.2.4 IV. Für alle anderen (WDS) Router 9.4.2.5 V. Testen 10 Linux inside 10.1 Wichtige Linuxbefehle der Shell 10.2 Traffic control (traffic shaping) mit tc 10.3 selber compilieren 10.4 Skript-Schnipsel 10.5 Antennen ausrichten DD-WRT_Doku_(DE) Contents 1

Upload: khangminh22

Post on 15-Mar-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

ENGLISH TRANSLATION

Contents

1 Projektbeschreibungbull 2 Was ist DD-WRTbull 3 Unterstuumltzte Geraumltebull 4 Komplette Featurelistebull 5 Die verschiedenen Paketebull 6 Unterschiede zwischen den 6 verschiedenen Dateien

61 Betrieb als Access-Pointdiams 62 Betrieb als Clientdiams

bull

7 Richtig Flashen71 Der Hard-Reset oder 303030-Reset

711 Hinweis Asus-Geraumlteloz 712 Hinweis WRT54loz 713 Umgang mit Backupkonfigurationenloz

diams

72 Grundlagendiams 73 Vorgehensweisediams 74 Besonderheiten beim Flashen von

741 WRT54G v22loz 742 WRT54GS v40 WRT54GLloz 743 WRT54GSloz 744 WRT54G v5 - v6loz 745 Buffalo WHR-G54SWHR-HP-G54 und WHR-G125loz 746 Buffalo WHR-HP-G54 - aumlndern der Boardflagsloz

diams

75 Wiederbelebendiams

bull

8 Das Web-Interface81 Beschreibung der einzelnen Einstellungendiams

bull

9 Konfigurationsbeispiele91 WRT54G im Client-Modusdiams 92 WRT54GL als Repeater Bridge

921 Verschluumlsselung des Virtuellen Interfacesloz diams

93 WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetzdiams 94 DD-WRT Router als WDS einrichten um ein Netz mit mehreren Routern aufzubauen andenen sich Clients anmelden koumlnnen

941 Vorbereitungenloz 942 Einstellungen in DD-WRT

9421 I Folgende Daten sind im Vorfeld zu notierensdot 9422 II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS-Routern) gleich

sdot

9423 III Fuumlr den Internet-Routersdot 9424 IV Fuumlr alle anderen (WDS) Routersdot 9425 V Testensdot

loz

diams

bull

10 Linux inside101 Wichtige Linuxbefehle der Shelldiams 102 Traffic control (traffic shaping) mit tcdiams 103 selber compilierendiams 104 Skript-Schnipseldiams 105 Antennen ausrichtendiams

bull

DD-WRT_Doku_(DE)

Contents 1

1051 Client-Modusloz 1052 AP-Modusloz

106 Software installieren mit ipkgdiams 107 Port-Knocking

1071 Was ist Port-Knockingloz 1072 Wozu braucht man Port-Knockingloz 1073 Voraussetzungenloz 1074 Installation der benoumltigten Paketeloz 1075 Startskripte erstellen

10751 Erstellen eines Ordners fuumlr Skriptesdot 10752 Erstellen eines allgemeinen Startup-Skriptssdot 10753 Erstellen eines Skriptes fuumlr den Start von knockdsdot 10754 Automatischen Start einrichtensdot

loz

1076 knockdconf anpassenloz 1077 Anwendungsbeispieleloz 1078 Die Client-Toolsloz 1079 Quellenloz

diams

11 Bootvorgangbull 12 Hardware

121 Modifikationen1211 Dual Serial Portloz 1212 SD-Card Readerloz 1213 JTAG-Adapterloz 1214 WRT350N Serial Portloz 1215 WRT350N-Antennen Modloz

diams

122 Version herausfindendiams 123 Informationen uumlber Hardwarediams 124 NVRAMdiams 125 Overclocking der CPUdiams

bull

13 JFFS2bull 14 Erweiterungen

141 USB Supportdiams 142 Installation eines Samba Serversdiams 143 FTP-Serverdiams

bull

15 RFlow Collectorbull 16 Trouble Shootingbull 17 Ich moumlchte mitmachenbull 18 Alphabetischer Indexbull

Achtung Diese Wiki wurde schon lange nicht mehr aktualisiert Viele Artikel behandeln DD-WRTVersionen die nicht mehr aktuell sind (DD-WRT Version 22pre5) und Probelem die so nicht mehr existieren

Die Community hat wahrscheinlich kein Interesse mehr an einer Deutschen-Wiki

Attention This Wiki is out of date

it seems that the german community is not longer interested in this german-wiki

DD-WRT_Doku_(DE)

Contents 2

ProjektbeschreibungDieses Projekt beschaumlftigt sich mit der Dokumentation von DD-WRT einer freien Firmwaremodifikation diehaupsaumlchlich fuumlr den WRT54G(GS) von Linksys gedacht ist Wie jedes Media-Wiki lebt auch dieses vomMitmachen Jeder darf und soll Artikel verfassen editieren und diskutierenViel Spaszlig

Was ist DD-WRT

Das Interface der aktuellen DD-WRT v23v24 VersionenDD-WRT ist eine freie Firmware fuumlr die Router Linksys WRT54G und Linksys WRT54GS In der VersionV23SP1 vom 16052006 werden auch das Geraumlt Asus WL-500 Deluxe und verschiedene Router von AllnetBuffalo Belkin Motorola Siemens (Gigaset SE505) Ravo und Askey unterstuumltzt Mit der Version V24werden neue Geraumlte auf dem 80211N-Draft Standard basierend unterstuumltzt Siehe dazu auch die offizielleHardware-Support-Liste

DD-WRT basiert auf einem minimalen Linux und Code der von Linksys unter der Software Lizenz GPLveroumlffentlicht wurde

Zunaumlchst erweiterte die Firma Sveasoft die veroumlffentlichen Quelltexte um neue Funktionen Als Sveasoftjedoch 20 Dollar fuumlr den Zugriff auf die Supportforen ihrer Firmware und den Downloadbereich verlangtegruumlndeten die Dresdner Sebastian Gottschall (BrainSlayer BS) und Matthias Engel (mateng) auf Basisdieser Software das DD-WRT-Projekt Seither erschienen weiterentwickelte Versionen der Firmware auf derHomepage von DD-WRT Mit der Version 23 schlieszliglich orientierte sich Brainslayer staumlrker an openwrteiner modular angelegten Firmware die bis vor kurzem kein Webinterface hatte und bei GeschwindigkeitStabilitaumlt und Funktionalitaumlt Vorteile gegenuumlber Sveasoft als Firmwarebasis versprach Zwischen den beidenProjekten werden nach Brainslayers Angaben Ideen ausgetauscht so dass beide von einander profitieren

DD-WRT bietet einen deutlich groumlszligeren Funktionsumfang als die Original Firmware von Linksys Es sindauch einige versteckte Optionen freigeschaltet Desweiteren kommen noch einige Zusatzfunktionen hinzuwie etwa das Einbinden von Samba-Freigaben WDS RADIUS-Authentifizierung

Unterstuumltzte GeraumlteModell Version Prozessor Flash RAM USB

Avila GateworksGW2347 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 3

Avila GateworksGW2348-2 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

Avila GateworksGW2348-4 - XSCALE IXP 425 533

MHz 16 MB 64 MB keine

Linksys WRT54G 20 22 30 31 Broadcom 4712 200 MHz 4 MB 16 MB keineLinksys WRT54G 40 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GL 10 11 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GS 10 Broadcom 5352 200 MHz 8 MB 32 MB keineLinksys WRT54GS 11 Broadcom 4712 200 MHz 8 MB 32 MB keineLinksys WRT54GS 40 Broadcom 5352 200 MHz 4 MB 16 MB keine

LaFonera Atheros AR5315 183MHz 4 MB 16 MB keine

ASUS WL-500g Broadcom 4710 125 MHz 4 MB 16 MB 1x v11

ASUS WL-500gDeluxe

ab dem 2005-11-01Release vonv23beta2

Broadcom 5365 200 MHz 4 MB 32 MB 2x v20

ASUS WL-500gPremium Broadcom 4704 266 MHz 8 MB 32 MB 2x v20

Siemens SE 505 V1 Broadcom 4710 125 MHz 4 MB 16 MB keine

Siemens SE 505 V2 Broadcom 4712 200 MHz 4 MB 8 MB keine(USB-Mod)

SiemensSX550SX550i - Broadcom 4710 125 MHz 4 MB 16 MB keine

Motorola WR850G V1 Broadcom 4710 125 MHz 4 MB 16 MB keineMotorola WR850G V2 Broadcom 4712 200 MHz 4 MB 16 MB keineMotorola WR850G V3 Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WBR2G54S Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WHR-G54S Broadcom 5352 200 Mhz 4 MB 16 MB keineBuffaloWHR-HP-G54 Broadcom 5352 200 Mhz 4 MB 16 MB keine

Linksys WRT54G v10 v11 v20 v22 v30 v31 v40 v50 v51 v60 (ab v50 nur Micro)NICHT v70diams

bull

Linksys WRT54GL v10 v11 (ab dem 2005-11-24-Release von v23beta2)bull Linksys WRT54GS v10 v11 v20 v21 v30 v40 v50 v51 v60 (ab v50 nur Micro)bull Asus WL-500G Deluxe (ab dem 2005-11-01 Release von v23beta2)bull Asus WL-500g Premiumbull Siemens SE505 (Link zum Forum)bull Motorola WR850G (ab dem 2005-11-07 Release von v23beta2)bull Buffalo WBR2G54Sbull Buffalo WHR-G54Sbull Buffalo WHR-HP-G54bull

Hardware-Support-Liste

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 4

Komplette FeaturelisteHotspot-Portal (Sputnik Agent Chillispot)diams PPTP-VPN-Serverdiams 2-Wege-Bandbreiten-Management (inkl P2P VoIP IM)diams SSH-Client und -Server (Dropbear)diams Telnetdiams Startup- Firewall- und Shutdown-Skriptediams WDS-Repeater-Modusdiams Client-Modus (unterstuumltzt mehrere angebundene Geraumlte)diams Ad-Hoc-Modusdiams OSPF-Routingdiams RIP2-Routingdiams Power-Boost-Funktion (bis 251 mW Sendeleistung)diams Antennenauswahldiams Statische DHCP-Adresszuweisungdiams Zusaumltzliche DDNS-Unterstuumltzungdiams Wireless MAC-Adressen duplizierendiams VLAN-Unterstuumltzung (WAN-Port als normalen LAN-Port)diams WPA uumlber WDSdiams WPATKIP mit AESdiams WPA2-Unterstuumltzungdiams Client-Modus WPAdiams Client-Isolation-Modusdiams P2P Blocking amp Bandbreiten-Management (Gnutella Kazaa etc)diams Port Triggeringdiams Port Forwarding (30 Eintraumlge moumlglich)diams Wake-on-Landiams Remote Syslogdiams Remote Ntop-Statistikdiams XBOX-Kaid-Unterstuumltzungdiams SNMPdiams IPv6-Unterstuumltzungdiams Sicheres Backup und Restorediams Reset bei Firmware-Upgradediams Status-Anzeige fuumlr Wireless Clients und WDS mit Systembetriebszeit Prozessorlastu a

diams

Site Surveydiams Remote NTP-Serverdiams Webserverdiams QoSdiams FTP-Serverdiams 12 verschiedene Sprachendiams Unterstuumltzt auch die neuen WRT54G V3 V31 V4 und WRT54GS V21 V3 V4Modelle

diams

und vieles mehr diams

DD-WRT_Doku_(DE)

Komplette Featureliste 5

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

1051 Client-Modusloz 1052 AP-Modusloz

106 Software installieren mit ipkgdiams 107 Port-Knocking

1071 Was ist Port-Knockingloz 1072 Wozu braucht man Port-Knockingloz 1073 Voraussetzungenloz 1074 Installation der benoumltigten Paketeloz 1075 Startskripte erstellen

10751 Erstellen eines Ordners fuumlr Skriptesdot 10752 Erstellen eines allgemeinen Startup-Skriptssdot 10753 Erstellen eines Skriptes fuumlr den Start von knockdsdot 10754 Automatischen Start einrichtensdot

loz

1076 knockdconf anpassenloz 1077 Anwendungsbeispieleloz 1078 Die Client-Toolsloz 1079 Quellenloz

diams

11 Bootvorgangbull 12 Hardware

121 Modifikationen1211 Dual Serial Portloz 1212 SD-Card Readerloz 1213 JTAG-Adapterloz 1214 WRT350N Serial Portloz 1215 WRT350N-Antennen Modloz

diams

122 Version herausfindendiams 123 Informationen uumlber Hardwarediams 124 NVRAMdiams 125 Overclocking der CPUdiams

bull

13 JFFS2bull 14 Erweiterungen

141 USB Supportdiams 142 Installation eines Samba Serversdiams 143 FTP-Serverdiams

bull

15 RFlow Collectorbull 16 Trouble Shootingbull 17 Ich moumlchte mitmachenbull 18 Alphabetischer Indexbull

Achtung Diese Wiki wurde schon lange nicht mehr aktualisiert Viele Artikel behandeln DD-WRTVersionen die nicht mehr aktuell sind (DD-WRT Version 22pre5) und Probelem die so nicht mehr existieren

Die Community hat wahrscheinlich kein Interesse mehr an einer Deutschen-Wiki

Attention This Wiki is out of date

it seems that the german community is not longer interested in this german-wiki

DD-WRT_Doku_(DE)

Contents 2

ProjektbeschreibungDieses Projekt beschaumlftigt sich mit der Dokumentation von DD-WRT einer freien Firmwaremodifikation diehaupsaumlchlich fuumlr den WRT54G(GS) von Linksys gedacht ist Wie jedes Media-Wiki lebt auch dieses vomMitmachen Jeder darf und soll Artikel verfassen editieren und diskutierenViel Spaszlig

Was ist DD-WRT

Das Interface der aktuellen DD-WRT v23v24 VersionenDD-WRT ist eine freie Firmware fuumlr die Router Linksys WRT54G und Linksys WRT54GS In der VersionV23SP1 vom 16052006 werden auch das Geraumlt Asus WL-500 Deluxe und verschiedene Router von AllnetBuffalo Belkin Motorola Siemens (Gigaset SE505) Ravo und Askey unterstuumltzt Mit der Version V24werden neue Geraumlte auf dem 80211N-Draft Standard basierend unterstuumltzt Siehe dazu auch die offizielleHardware-Support-Liste

DD-WRT basiert auf einem minimalen Linux und Code der von Linksys unter der Software Lizenz GPLveroumlffentlicht wurde

Zunaumlchst erweiterte die Firma Sveasoft die veroumlffentlichen Quelltexte um neue Funktionen Als Sveasoftjedoch 20 Dollar fuumlr den Zugriff auf die Supportforen ihrer Firmware und den Downloadbereich verlangtegruumlndeten die Dresdner Sebastian Gottschall (BrainSlayer BS) und Matthias Engel (mateng) auf Basisdieser Software das DD-WRT-Projekt Seither erschienen weiterentwickelte Versionen der Firmware auf derHomepage von DD-WRT Mit der Version 23 schlieszliglich orientierte sich Brainslayer staumlrker an openwrteiner modular angelegten Firmware die bis vor kurzem kein Webinterface hatte und bei GeschwindigkeitStabilitaumlt und Funktionalitaumlt Vorteile gegenuumlber Sveasoft als Firmwarebasis versprach Zwischen den beidenProjekten werden nach Brainslayers Angaben Ideen ausgetauscht so dass beide von einander profitieren

DD-WRT bietet einen deutlich groumlszligeren Funktionsumfang als die Original Firmware von Linksys Es sindauch einige versteckte Optionen freigeschaltet Desweiteren kommen noch einige Zusatzfunktionen hinzuwie etwa das Einbinden von Samba-Freigaben WDS RADIUS-Authentifizierung

Unterstuumltzte GeraumlteModell Version Prozessor Flash RAM USB

Avila GateworksGW2347 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 3

Avila GateworksGW2348-2 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

Avila GateworksGW2348-4 - XSCALE IXP 425 533

MHz 16 MB 64 MB keine

Linksys WRT54G 20 22 30 31 Broadcom 4712 200 MHz 4 MB 16 MB keineLinksys WRT54G 40 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GL 10 11 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GS 10 Broadcom 5352 200 MHz 8 MB 32 MB keineLinksys WRT54GS 11 Broadcom 4712 200 MHz 8 MB 32 MB keineLinksys WRT54GS 40 Broadcom 5352 200 MHz 4 MB 16 MB keine

LaFonera Atheros AR5315 183MHz 4 MB 16 MB keine

ASUS WL-500g Broadcom 4710 125 MHz 4 MB 16 MB 1x v11

ASUS WL-500gDeluxe

ab dem 2005-11-01Release vonv23beta2

Broadcom 5365 200 MHz 4 MB 32 MB 2x v20

ASUS WL-500gPremium Broadcom 4704 266 MHz 8 MB 32 MB 2x v20

Siemens SE 505 V1 Broadcom 4710 125 MHz 4 MB 16 MB keine

Siemens SE 505 V2 Broadcom 4712 200 MHz 4 MB 8 MB keine(USB-Mod)

SiemensSX550SX550i - Broadcom 4710 125 MHz 4 MB 16 MB keine

Motorola WR850G V1 Broadcom 4710 125 MHz 4 MB 16 MB keineMotorola WR850G V2 Broadcom 4712 200 MHz 4 MB 16 MB keineMotorola WR850G V3 Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WBR2G54S Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WHR-G54S Broadcom 5352 200 Mhz 4 MB 16 MB keineBuffaloWHR-HP-G54 Broadcom 5352 200 Mhz 4 MB 16 MB keine

Linksys WRT54G v10 v11 v20 v22 v30 v31 v40 v50 v51 v60 (ab v50 nur Micro)NICHT v70diams

bull

Linksys WRT54GL v10 v11 (ab dem 2005-11-24-Release von v23beta2)bull Linksys WRT54GS v10 v11 v20 v21 v30 v40 v50 v51 v60 (ab v50 nur Micro)bull Asus WL-500G Deluxe (ab dem 2005-11-01 Release von v23beta2)bull Asus WL-500g Premiumbull Siemens SE505 (Link zum Forum)bull Motorola WR850G (ab dem 2005-11-07 Release von v23beta2)bull Buffalo WBR2G54Sbull Buffalo WHR-G54Sbull Buffalo WHR-HP-G54bull

Hardware-Support-Liste

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 4

Komplette FeaturelisteHotspot-Portal (Sputnik Agent Chillispot)diams PPTP-VPN-Serverdiams 2-Wege-Bandbreiten-Management (inkl P2P VoIP IM)diams SSH-Client und -Server (Dropbear)diams Telnetdiams Startup- Firewall- und Shutdown-Skriptediams WDS-Repeater-Modusdiams Client-Modus (unterstuumltzt mehrere angebundene Geraumlte)diams Ad-Hoc-Modusdiams OSPF-Routingdiams RIP2-Routingdiams Power-Boost-Funktion (bis 251 mW Sendeleistung)diams Antennenauswahldiams Statische DHCP-Adresszuweisungdiams Zusaumltzliche DDNS-Unterstuumltzungdiams Wireless MAC-Adressen duplizierendiams VLAN-Unterstuumltzung (WAN-Port als normalen LAN-Port)diams WPA uumlber WDSdiams WPATKIP mit AESdiams WPA2-Unterstuumltzungdiams Client-Modus WPAdiams Client-Isolation-Modusdiams P2P Blocking amp Bandbreiten-Management (Gnutella Kazaa etc)diams Port Triggeringdiams Port Forwarding (30 Eintraumlge moumlglich)diams Wake-on-Landiams Remote Syslogdiams Remote Ntop-Statistikdiams XBOX-Kaid-Unterstuumltzungdiams SNMPdiams IPv6-Unterstuumltzungdiams Sicheres Backup und Restorediams Reset bei Firmware-Upgradediams Status-Anzeige fuumlr Wireless Clients und WDS mit Systembetriebszeit Prozessorlastu a

diams

Site Surveydiams Remote NTP-Serverdiams Webserverdiams QoSdiams FTP-Serverdiams 12 verschiedene Sprachendiams Unterstuumltzt auch die neuen WRT54G V3 V31 V4 und WRT54GS V21 V3 V4Modelle

diams

und vieles mehr diams

DD-WRT_Doku_(DE)

Komplette Featureliste 5

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

ProjektbeschreibungDieses Projekt beschaumlftigt sich mit der Dokumentation von DD-WRT einer freien Firmwaremodifikation diehaupsaumlchlich fuumlr den WRT54G(GS) von Linksys gedacht ist Wie jedes Media-Wiki lebt auch dieses vomMitmachen Jeder darf und soll Artikel verfassen editieren und diskutierenViel Spaszlig

Was ist DD-WRT

Das Interface der aktuellen DD-WRT v23v24 VersionenDD-WRT ist eine freie Firmware fuumlr die Router Linksys WRT54G und Linksys WRT54GS In der VersionV23SP1 vom 16052006 werden auch das Geraumlt Asus WL-500 Deluxe und verschiedene Router von AllnetBuffalo Belkin Motorola Siemens (Gigaset SE505) Ravo und Askey unterstuumltzt Mit der Version V24werden neue Geraumlte auf dem 80211N-Draft Standard basierend unterstuumltzt Siehe dazu auch die offizielleHardware-Support-Liste

DD-WRT basiert auf einem minimalen Linux und Code der von Linksys unter der Software Lizenz GPLveroumlffentlicht wurde

Zunaumlchst erweiterte die Firma Sveasoft die veroumlffentlichen Quelltexte um neue Funktionen Als Sveasoftjedoch 20 Dollar fuumlr den Zugriff auf die Supportforen ihrer Firmware und den Downloadbereich verlangtegruumlndeten die Dresdner Sebastian Gottschall (BrainSlayer BS) und Matthias Engel (mateng) auf Basisdieser Software das DD-WRT-Projekt Seither erschienen weiterentwickelte Versionen der Firmware auf derHomepage von DD-WRT Mit der Version 23 schlieszliglich orientierte sich Brainslayer staumlrker an openwrteiner modular angelegten Firmware die bis vor kurzem kein Webinterface hatte und bei GeschwindigkeitStabilitaumlt und Funktionalitaumlt Vorteile gegenuumlber Sveasoft als Firmwarebasis versprach Zwischen den beidenProjekten werden nach Brainslayers Angaben Ideen ausgetauscht so dass beide von einander profitieren

DD-WRT bietet einen deutlich groumlszligeren Funktionsumfang als die Original Firmware von Linksys Es sindauch einige versteckte Optionen freigeschaltet Desweiteren kommen noch einige Zusatzfunktionen hinzuwie etwa das Einbinden von Samba-Freigaben WDS RADIUS-Authentifizierung

Unterstuumltzte GeraumlteModell Version Prozessor Flash RAM USB

Avila GateworksGW2347 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 3

Avila GateworksGW2348-2 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

Avila GateworksGW2348-4 - XSCALE IXP 425 533

MHz 16 MB 64 MB keine

Linksys WRT54G 20 22 30 31 Broadcom 4712 200 MHz 4 MB 16 MB keineLinksys WRT54G 40 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GL 10 11 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GS 10 Broadcom 5352 200 MHz 8 MB 32 MB keineLinksys WRT54GS 11 Broadcom 4712 200 MHz 8 MB 32 MB keineLinksys WRT54GS 40 Broadcom 5352 200 MHz 4 MB 16 MB keine

LaFonera Atheros AR5315 183MHz 4 MB 16 MB keine

ASUS WL-500g Broadcom 4710 125 MHz 4 MB 16 MB 1x v11

ASUS WL-500gDeluxe

ab dem 2005-11-01Release vonv23beta2

Broadcom 5365 200 MHz 4 MB 32 MB 2x v20

ASUS WL-500gPremium Broadcom 4704 266 MHz 8 MB 32 MB 2x v20

Siemens SE 505 V1 Broadcom 4710 125 MHz 4 MB 16 MB keine

Siemens SE 505 V2 Broadcom 4712 200 MHz 4 MB 8 MB keine(USB-Mod)

SiemensSX550SX550i - Broadcom 4710 125 MHz 4 MB 16 MB keine

Motorola WR850G V1 Broadcom 4710 125 MHz 4 MB 16 MB keineMotorola WR850G V2 Broadcom 4712 200 MHz 4 MB 16 MB keineMotorola WR850G V3 Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WBR2G54S Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WHR-G54S Broadcom 5352 200 Mhz 4 MB 16 MB keineBuffaloWHR-HP-G54 Broadcom 5352 200 Mhz 4 MB 16 MB keine

Linksys WRT54G v10 v11 v20 v22 v30 v31 v40 v50 v51 v60 (ab v50 nur Micro)NICHT v70diams

bull

Linksys WRT54GL v10 v11 (ab dem 2005-11-24-Release von v23beta2)bull Linksys WRT54GS v10 v11 v20 v21 v30 v40 v50 v51 v60 (ab v50 nur Micro)bull Asus WL-500G Deluxe (ab dem 2005-11-01 Release von v23beta2)bull Asus WL-500g Premiumbull Siemens SE505 (Link zum Forum)bull Motorola WR850G (ab dem 2005-11-07 Release von v23beta2)bull Buffalo WBR2G54Sbull Buffalo WHR-G54Sbull Buffalo WHR-HP-G54bull

Hardware-Support-Liste

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 4

Komplette FeaturelisteHotspot-Portal (Sputnik Agent Chillispot)diams PPTP-VPN-Serverdiams 2-Wege-Bandbreiten-Management (inkl P2P VoIP IM)diams SSH-Client und -Server (Dropbear)diams Telnetdiams Startup- Firewall- und Shutdown-Skriptediams WDS-Repeater-Modusdiams Client-Modus (unterstuumltzt mehrere angebundene Geraumlte)diams Ad-Hoc-Modusdiams OSPF-Routingdiams RIP2-Routingdiams Power-Boost-Funktion (bis 251 mW Sendeleistung)diams Antennenauswahldiams Statische DHCP-Adresszuweisungdiams Zusaumltzliche DDNS-Unterstuumltzungdiams Wireless MAC-Adressen duplizierendiams VLAN-Unterstuumltzung (WAN-Port als normalen LAN-Port)diams WPA uumlber WDSdiams WPATKIP mit AESdiams WPA2-Unterstuumltzungdiams Client-Modus WPAdiams Client-Isolation-Modusdiams P2P Blocking amp Bandbreiten-Management (Gnutella Kazaa etc)diams Port Triggeringdiams Port Forwarding (30 Eintraumlge moumlglich)diams Wake-on-Landiams Remote Syslogdiams Remote Ntop-Statistikdiams XBOX-Kaid-Unterstuumltzungdiams SNMPdiams IPv6-Unterstuumltzungdiams Sicheres Backup und Restorediams Reset bei Firmware-Upgradediams Status-Anzeige fuumlr Wireless Clients und WDS mit Systembetriebszeit Prozessorlastu a

diams

Site Surveydiams Remote NTP-Serverdiams Webserverdiams QoSdiams FTP-Serverdiams 12 verschiedene Sprachendiams Unterstuumltzt auch die neuen WRT54G V3 V31 V4 und WRT54GS V21 V3 V4Modelle

diams

und vieles mehr diams

DD-WRT_Doku_(DE)

Komplette Featureliste 5

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Avila GateworksGW2348-2 - XSCALE IXP 425 266

MHz 8 MB 32 MB keine

Avila GateworksGW2348-4 - XSCALE IXP 425 533

MHz 16 MB 64 MB keine

Linksys WRT54G 20 22 30 31 Broadcom 4712 200 MHz 4 MB 16 MB keineLinksys WRT54G 40 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GL 10 11 Broadcom 5352 200 MHz 4 MB 16 MB keineLinksys WRT54GS 10 Broadcom 5352 200 MHz 8 MB 32 MB keineLinksys WRT54GS 11 Broadcom 4712 200 MHz 8 MB 32 MB keineLinksys WRT54GS 40 Broadcom 5352 200 MHz 4 MB 16 MB keine

LaFonera Atheros AR5315 183MHz 4 MB 16 MB keine

ASUS WL-500g Broadcom 4710 125 MHz 4 MB 16 MB 1x v11

ASUS WL-500gDeluxe

ab dem 2005-11-01Release vonv23beta2

Broadcom 5365 200 MHz 4 MB 32 MB 2x v20

ASUS WL-500gPremium Broadcom 4704 266 MHz 8 MB 32 MB 2x v20

Siemens SE 505 V1 Broadcom 4710 125 MHz 4 MB 16 MB keine

Siemens SE 505 V2 Broadcom 4712 200 MHz 4 MB 8 MB keine(USB-Mod)

SiemensSX550SX550i - Broadcom 4710 125 MHz 4 MB 16 MB keine

Motorola WR850G V1 Broadcom 4710 125 MHz 4 MB 16 MB keineMotorola WR850G V2 Broadcom 4712 200 MHz 4 MB 16 MB keineMotorola WR850G V3 Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WBR2G54S Broadcom 4712 200 MHz 4 MB 16 MB keineBuffalo WHR-G54S Broadcom 5352 200 Mhz 4 MB 16 MB keineBuffaloWHR-HP-G54 Broadcom 5352 200 Mhz 4 MB 16 MB keine

Linksys WRT54G v10 v11 v20 v22 v30 v31 v40 v50 v51 v60 (ab v50 nur Micro)NICHT v70diams

bull

Linksys WRT54GL v10 v11 (ab dem 2005-11-24-Release von v23beta2)bull Linksys WRT54GS v10 v11 v20 v21 v30 v40 v50 v51 v60 (ab v50 nur Micro)bull Asus WL-500G Deluxe (ab dem 2005-11-01 Release von v23beta2)bull Asus WL-500g Premiumbull Siemens SE505 (Link zum Forum)bull Motorola WR850G (ab dem 2005-11-07 Release von v23beta2)bull Buffalo WBR2G54Sbull Buffalo WHR-G54Sbull Buffalo WHR-HP-G54bull

Hardware-Support-Liste

DD-WRT_Doku_(DE)

Unterstuumltzte Geraumlte 4

Komplette FeaturelisteHotspot-Portal (Sputnik Agent Chillispot)diams PPTP-VPN-Serverdiams 2-Wege-Bandbreiten-Management (inkl P2P VoIP IM)diams SSH-Client und -Server (Dropbear)diams Telnetdiams Startup- Firewall- und Shutdown-Skriptediams WDS-Repeater-Modusdiams Client-Modus (unterstuumltzt mehrere angebundene Geraumlte)diams Ad-Hoc-Modusdiams OSPF-Routingdiams RIP2-Routingdiams Power-Boost-Funktion (bis 251 mW Sendeleistung)diams Antennenauswahldiams Statische DHCP-Adresszuweisungdiams Zusaumltzliche DDNS-Unterstuumltzungdiams Wireless MAC-Adressen duplizierendiams VLAN-Unterstuumltzung (WAN-Port als normalen LAN-Port)diams WPA uumlber WDSdiams WPATKIP mit AESdiams WPA2-Unterstuumltzungdiams Client-Modus WPAdiams Client-Isolation-Modusdiams P2P Blocking amp Bandbreiten-Management (Gnutella Kazaa etc)diams Port Triggeringdiams Port Forwarding (30 Eintraumlge moumlglich)diams Wake-on-Landiams Remote Syslogdiams Remote Ntop-Statistikdiams XBOX-Kaid-Unterstuumltzungdiams SNMPdiams IPv6-Unterstuumltzungdiams Sicheres Backup und Restorediams Reset bei Firmware-Upgradediams Status-Anzeige fuumlr Wireless Clients und WDS mit Systembetriebszeit Prozessorlastu a

diams

Site Surveydiams Remote NTP-Serverdiams Webserverdiams QoSdiams FTP-Serverdiams 12 verschiedene Sprachendiams Unterstuumltzt auch die neuen WRT54G V3 V31 V4 und WRT54GS V21 V3 V4Modelle

diams

und vieles mehr diams

DD-WRT_Doku_(DE)

Komplette Featureliste 5

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Komplette FeaturelisteHotspot-Portal (Sputnik Agent Chillispot)diams PPTP-VPN-Serverdiams 2-Wege-Bandbreiten-Management (inkl P2P VoIP IM)diams SSH-Client und -Server (Dropbear)diams Telnetdiams Startup- Firewall- und Shutdown-Skriptediams WDS-Repeater-Modusdiams Client-Modus (unterstuumltzt mehrere angebundene Geraumlte)diams Ad-Hoc-Modusdiams OSPF-Routingdiams RIP2-Routingdiams Power-Boost-Funktion (bis 251 mW Sendeleistung)diams Antennenauswahldiams Statische DHCP-Adresszuweisungdiams Zusaumltzliche DDNS-Unterstuumltzungdiams Wireless MAC-Adressen duplizierendiams VLAN-Unterstuumltzung (WAN-Port als normalen LAN-Port)diams WPA uumlber WDSdiams WPATKIP mit AESdiams WPA2-Unterstuumltzungdiams Client-Modus WPAdiams Client-Isolation-Modusdiams P2P Blocking amp Bandbreiten-Management (Gnutella Kazaa etc)diams Port Triggeringdiams Port Forwarding (30 Eintraumlge moumlglich)diams Wake-on-Landiams Remote Syslogdiams Remote Ntop-Statistikdiams XBOX-Kaid-Unterstuumltzungdiams SNMPdiams IPv6-Unterstuumltzungdiams Sicheres Backup und Restorediams Reset bei Firmware-Upgradediams Status-Anzeige fuumlr Wireless Clients und WDS mit Systembetriebszeit Prozessorlastu a

diams

Site Surveydiams Remote NTP-Serverdiams Webserverdiams QoSdiams FTP-Serverdiams 12 verschiedene Sprachendiams Unterstuumltzt auch die neuen WRT54G V3 V31 V4 und WRT54GS V21 V3 V4Modelle

diams

und vieles mehr diams

DD-WRT_Doku_(DE)

Komplette Featureliste 5

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Die verschiedenen Pakete(Achtung dieser Artikel ist nicht mehr aktuell)

Aktuelle Version 23 SP1 vom 16052006 (Changelog) wurden die Pakete folgendermaszligen aufgeteilt

dd-wrtv23_sp1_micro - beinhaltet nicht Chillispot NoCat RFlow Kaid Samba Client SNMPIPv6 MMCSD Card Support SSH PPTPPPTP Client UPnP HTTPS Support fuumlr WebManagement OpenVPN SIPatH Die Datei ist kleiner als 2MB Sie ist bestimmt fuumlr Router mitweniger als 2MB Flash Speicher (zB Linksys WRT54G version 5) Jeder Router sollte in der Lagesein diese Firmwareversion verwenden so auch die Routerversionen vor WRT54G v5 fuumlr Geraumlte diewenig Speicher und Flash Platz haben Es wird jetzt auch WRT54GGS v5 unterstuumlzt Fuumlrweitergehene Informationen zum Flashen von WRT54GGS v5 Geraumlten bitte die Vxworkskiller Seitebesuchen

bull

dd-wrtv23_sp1_mini - beinhaltet nicht chillispot nocat rflow kaid samba client SNMP IPv6MMCSD Card Support und HTTPS support fuumlr web management Es beinhaltet fast alles was manbraucht laumlsst aber noch genug flash Platz fuumlr Anpassungen mit jffs

bull

dd-wrtv23_sp1_std - beinhaltet nicht OpenVPN SIPatH Es beinhaltet fast alles was man fuumlr dieprofessionelle Nutzung braucht inklusive snmp hotspot features wie chillispot und sputnik (tm)

bull

dd-wrtv23_sp1_voip - beinhaltet nicht Kaid MMCSD Card Supp OpenVPN - beinhaltetzusaumltzlich SIP Gateway Routing system fuumlr managing SIP capable Geraumlte in einem privatenNetzwerk

bull

dd-wrtv23_sp1_vpn - beinhaltet nicht Kaid RADVD SIPatH - beinhaltet einen voll featuredopenvpn client fuumlr Netzwerke mit hohen Sicherheitsanforderungen

bull

Micro Mini Standard VOIP VPN

Chillispot X X X

HTTPS Support for Web Management X X X

IPv6 X X X

kaid X

MMCSD Card Support X X

NoCat X X X

OpenVPN X

PPTPPPTP Client X X X X

RADVD X X X X

RFlow X X X

DD-WRT_Doku_(DE)

Die verschiedenen Pakete 6

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Samba Client X X X

SIPatH X

SSH X X X X

UPnP X X X X

Unterschiede zwischen den 6 verschiedenenDateien

Dateiname Beschreibung

dd-wrtv23_lttypegt_asustrxWeb interface version zum flashen Siehe auchFlash_Your_Asus_WL-500G_Deluxe

dd-wrtv23_lttypegt_genericbin

Generic version zum flashen uumlber das web interface aufallen unterstuumltzten Geraumlten (inclusive LinksysWRT54GGLGS) und zum flashen von Siemens_SE505mit boot wait tftp on 19216821

dd-wrtv23_lttypegt_wrt54gbin

tftp versions fuumlr WRT54G You CAN use this to flash viaweb interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers (v5v6 noteSince the WRT54GGS v5-v6 uses a modifiedWAP54Gv3 once made linux ready it will not acceptthese standard WRT54GGS firmwares You must use thegeneric build for TFTPing to these units)

dd-wrtv23_lttypegt_wrt54gsbin

tftp versions for WRT54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrt54gsv4bin

tftp versions for WRTGSv4 You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_wrtsl54gsbin

tftp versions for WRTSL54GS You CAN use this to flashvia web interface but do so only AFTER you have done sousing the mini version These versions were just madespecifically for TFTPing to those routers

dd-wrtv23_lttypegt_mototrxFor initial Flash_Your_Motorola_WR850G (Micro andMini builds ONLY)

DD-WRT_Doku_(DE)

Unterschiede zwischen den 6 verschiedenen Dateien 7

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Betrieb als Access-Point

Als erstes sollte ich einen Computer haben Als naumlchstes sollte schon ein Internetanschluss vorhanden seinDieser sollte am Besten als DSL-Flatrate vorhanden sein Wenn diese Voraussetzungen gegeben sind sollteich mir einen Linksys WRT54GGSL der richtigen Hardwareversion (s u) anschaffen Diesen bekommeich im gut sortierten IT-Fachhandel

Betrieb als Client

Bei Nutzung des WRT54G im Client-Modus brauche ich neben einer Alternativ-Firmware wie DD-WRT oderAlchemy die den Client-Modus unterstuumltzt einen Internetprovider der in meiner Naumlhe (moumlglichst mitSichtkontakt) einen Access Point (AP) betreibt und dessen Zugangsdaten (Login bzw Freischaltung meinerMAC-Adressen am AP) Auszligerdem empfiehlt es sich die 2-dB-Stabantennen gegen leistungsstaumlrkereAntennen z B BiQuad-Antennen zu tauschen und diese Antennen auszligerhalb des Hauses anzubringenLeistungsstaumlrker heiszligt Antennen mit einem houmlheren dBdBi-Wert also statt mit nur 2 dB besser mit 12 dBDas wird durch eine staumlrkere Richtwirkung der Abstrahlung erreicht also statt kugel- oder diskusfoumlrmigerAbstrahlung (Beispiel Gluumlhbirne) bei der Stabantenne eine mehr keulenfoumlrmige Abstrahlung (BeispielTaschenlampe) Die Antenne muszlig zum WRT54G einen RP-TNC-Stecker haben (Gewinde innen mit Kelch)Diese werden bei Ebay bereits ab 199 Euro das Stuumlck angeboten

Drahtlos angebundene Computer sind am WRT54G im Client-Modus leider nicht zu betreiben - man brauchtdann einen zweiten Access Point bzw muszlig die PCs per LAN-Kabel an den vier LAN-Ports anbinden

Anleitung WLAN-Client mit DD-WRTdiams Anleitung Client lt-gt AP mit 2 WRT54G(S) (auf englisch)diams

Richtig FlashenNach dem Einspielen einer neuen Firmware arbeitet die neue Firmware erst einmal mit den Einstellwerten diein der vorhergehenden Firmware eingestellt waren Unguumlnstige Einstellungen koumlnnen dazu fuumlhren dass dasGeraumlt bereits beim Booten der neuen Firmware abstuumlrzt und auf keinerlei Eingaben reagiert

Von einer Firmwareversion die als Up- bzw Downgrade fuumlr eine bestimmte Firmware angeboten wird darfman minimal erwarten dass das nicht passiert wenn die Einstellwerte der Ausgangsfirmware vor demFlashen auf die Standardwerte zuruumlckgesetzt werden Allerdings darf man nicht erwarten dass die neueFirmware mit den Standard-Einstellwerten der alten Firmware fehlerfrei arbeitet Es wird lediglichsichergestellt dass die neue Firmware soweit funktioniert dass sich die Standardwerte fuumlr die neue Firmwaresetzen lassen

Der Hard-Reset oder 303030-Reset

Um Fehlern beim Flashen vorzubeugen sollte die alte Firmware vor dem Flashen und die neueFirmware nach dem Flashen auf ihre Standardwerte gesetzt werden Dazu muss der Hard- oder auch303030-Reset vor und nach jedem Firmware-Upgrade Downgrade durchgefuumlhrt werden Er bewirktdas Loumlschen der Einstellungen im NVRAM und setzt die DD-WRT-Firmware auf Standard-Werte zuruumlck

DD-WRT_Doku_(DE)

Richtig Flashen 8

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

1 Das Geraumlt ist eingeschaltet (am Strom angestoumlpselt) nun druumlckt und haumllt man die Reset-Taste auf derRuumlckseite fuumlr 30 Sekunden

2 Ohne Loslassen der Reset-Taste trennt man das Geraumlt vom Strom und haumllt die Reset-Taste fuumlr weitere 30Sekunden

3 Ohne Loslassen der Reset-Taste das Geraumlt wieder in Betrieb nehmen und erst nach weiteren 30 Sekundendie Reset-Taste loslassen

Hinweis Asus-Geraumlte

Bei Asus-Geraumlten ist zu beachten dass der normale 303030-Reset das Geraumlt nach dem 3 Schritt in denRecovery-Mode wechselt Daher muss der Router nach den 30 Sekunden des 3 Schrittes nochmals vomStrom getrennt werden und nach ein paar Sekunden wieder angeschlossen werden damit er normal startet

Hinweis WRT54

Beim WRT54 kann es passieren dass nach dem 3 Schritt die Power-Leuchte durchgaumlngig blinkt Einfachnochmals fuumlr 5 Sekunden vom Strom trennen und wieder anstoumlpseln Dann sollte der Router normal startenund leuchten

Umgang mit Backupkonfigurationen

Aus den oben genannten Gruumlnden sollten sie eine Backupkonfigurationen nur in die gleiche Firmwareversionzuruumlckspielen mit der die Backupkonfiguration erstellt wurde Verwenden Sie keine gespeichertenBackupkonfigurationen wenn Sie ein anderes Firmware-Build nutzen (verschiedene svnBuild-Nummern)

Grundlagen

Wer es noch nicht weiszlig Die Linksys-Router koumlnnen eine andere Firmware aufgespielt bekommen dieweitere ungeahnte und zum Teil vielleicht auch unnoumltige Einstellungsmoumlglichkeiten bieten Jedoch erweistsich dieses Aufspielen einer anderen Firmware oumlfter als fehlerhaft Den derzeitigen Fehlerberichten zufolgefunktioniert dann der Router vorerst nicht mehr jedoch gibt es in so einem Fall auch Loumlsungen 2 3

Doch um diesem falschen Flashen vorzubeugen diene diese Anleitung (da dieses Wiki aber noch imAufbau ist so sei beachtet dass diese Art und Weise richtig zu flashen nur EINE Moumlglichkeit von vielen istWer sich also strikt an diese Anleitung haumllt und trotzdem Probleme bekommt kann diesen Beitrag selbstaumlndern dem Editor dieses Beitrages eine Ruumlge geben oder sonstwas gemaumlszlig der Vernunft tun)Uumlbrigens sind die Links zum Teil wie httprouteripManagementasp notiert fuumlr routerip sollte hier dieeigene Router-IP eingegeben werden In der Regel 19216811 bzw nach Schritt 4 sowieso

DD-WRT_Doku_(DE)

Der Hard-Reset oder 303030-Reset 9

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Vorgehensweise

1 Sich zum einen die gewuumlnschte DD-WRT-Firmware herunterladen und entpacken so dass die bin-Dateiim Ordner des PCs liegt Diese gibts zur Zeit hier DD-WRT

1b DD-WRT Version 22pre5 gibt es in drei Versionen generic basic und full Generic ist wie der Nameschon sagt eine generische Version auch fuumlr andere Router die mit aumlhnlichen Chipsaumltzen ausgestattet sindund auf denen DD-WRT auch laumluft (z B Asus WL500g Deluxe) Basic ist die normale Standardversionund full eine erweiterte Version die zusaumltzlich Dropbear Chillispot Samba und kaid enthaumllt Wer die nichtbraucht ist mit der Basic-Version gut bedient Zusaumltzlich sind noch jeweils fuumlr den WRT54g oder WRT54gsangepasste Basic- und Full-Versionen erhaumlltlich Infos Desweiteren sei angemerkt dass Prefinal-Versionenteilweise noch kleinere Bugs (Funktionsfehler) aufweisen koumlnnen daher werden sie immer vorerst zuTestzwecken herausgegeben Gleichzeitig enthalten sie aber auch die meisten Verbesserungen und viele altebehobene Fehler Unversierte Benutzer sollten also nach persoumlnlichen Beduumlrfnissen abwaumlgen welche Versionfuumlr sie in Frage kommt

2 Als naumlchstes sicher gehen dass kein anderer PC per WLAN oder auch LAN auf den Router zugreift auszligerder welcher die Firmware aufspielen soll Dieser Flash-PC sollte per LAN - also verkabelt - an den Routerangeschlossen sein Es soll zwar Benutzer geben die per WLAN flashen und es klappt aber von dieserMethode wird dringlichst abgeraten Also alle Kabel - auch am WAN-Port - auszliger dem desStromanschlusses abziehen und nach Moumlglichkeit alle WLAN-User informieren sie sollen mal ihr WLANabschalten und auch keine Verbindunsversuche starten (die Verbindung wird ja sowieso gleich gekappt (inSchritt 3)

3 Jetzt kann wenn erwuumlnscht noch von den Einstellungen ein Backup gemacht werden und zwar unterAdministrationBackup und dort unter HERE (gilt nur fuumlr DD-WRT-Versionen) die Datei auf dem Rechnergespeichert werden Aber Auch wenn es bei manchen funktioniert Es wird davon abgeraten diesesEinstellungen-Backup fuumlr die neue Firmware zu benutzen Es sollte alles neu eingestellt werden Das Backupdient also nur dazu bei der Wiederherstellung der noch in diesem Schritt genutzen Firmware sich das zumTeil muumlhselige Einstellen zu ersparen

3b Wer schon eine andere 3rd Party Firmware wie etwa DD-WRT installiert hat sollte noch boot-waiteinschalten Bei DD-WRT-Firmware unter administrationmanagement

4 Nun muss ein Factory-Reset durchgefuumlhrt werden Bei manchen geht es auch ohne aber wir wollen jarichtig flashen Der Reset ist ganz einfach An der Ruumlckseite des Routers den Resetknopf mit einemspitzen Werkzeug (ein Bleistift tuts auch aber aufpassen dass nichts von der Mine abbricht und im Geraumltbleibt besser einen Kugelschreiber nehmen) fuumlr etwa 30 Sekunden lang gedruumlckt halten und danach loslassendass etwas passiert sieht man am Blinken der LEDs an der Vorderseite des Routers Infolgedessen auf derSetup-Hauptseite pruumlfen ob auch alle Einstellungen auf Default-Werten sind also die eigenen Einstellungenverworfen wurden Andernfalls den Reset-Vorgang nochmals durchfuumlhren Sollte nach Loslassen dieDMZ-LED konstant 5 Sekunden an - 5 Sekunden aus blinken so muss der Router einmal kurz vom Stromnetzgenommen und wieder angesteckt werden Faumlngt sich der Router immer noch nicht dann nochmals dieReset-Taste aber nur kurz druumlcken Wenn auch danach die DMZ-LED blinkt nochmals einen FactoryReset probieren Andernfalls stimmt da etwas nicht und das Forum hilft da bestimmt weiter (Solche Faumlllesind mir aber nicht bekannt)

5 Jetzt kann die Firmware geflasht werden auf der AdministrationFirmware Upgrade-Seite Die bin-Dateivon 1 auswaumlhlen auf den Upgrade-Button klicken und warten - richtig lange warten mitunter Wer abbrichtund den Stromstecker zieht ist selbst schuld denn dann kann es sein dass das Geraumlt nicht ohne Muumlhe wieder

DD-WRT_Doku_(DE)

Vorgehensweise 10

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

zum Laufen gebracht werden kann DD-WRT Versionen haben mitunter noch eine Option vor dem Flashenauszuwaumlhlen ob Reset after flashing to ausgefuumlhrt werden soll Hier empfiehlt es sich auf FirmwareDefaults zu stellen

5b Sollte wie unter 4 die DMZ-LED blinken so auch wie in 4 beschrieben vorgehen Das Upgrade solltekomplett sein wenn entweder eine Bestaumltigung upgrade complete oder aumlhnliches erscheint oder die Power-und die Lan-Port-LED leuchten und euch nichts komisch vorkommt Ein kurzes Trennen vom Stromnetz kannmitunter schon kleinere Problemchen loumlsen

6 Jetzt koumlnnen alle Einstellungen vorgenommen werden UserPassw fuumlr die Weboberflaumlche des Routers istrootadmin

Wenn es nach dem Flashen Probleme gab so hilft derzeit im Forum auf Englisch eventuell dieser BeitragEine Anleitung hier im Wiki ist im Aufbau

Besonderheiten beim Flashen von

WRT54G v22

Es scheint beim Flashen via TFTP noumltig zu sein die vergebene ip-adresse zu missachten und tftp auf die19216811 zu setzen

$ ifconfig eth1eth1 ProtokollEthernet Hardware Adresse 0004614C4505 inet Adresse192168120 Bcast1921681255 Maske2552552550

Bei Erfolg sieht der ganze Vorgang dann so aus

$ tftptftpgt mode binarytftpgt statusNot connectedMode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put dd-wrtv23_mini_wrt54gbinNo target machine specifiedtftpgt connect 19216811tftpgt put dd-wrtv23_mini_wrt54gbinSent 2417664 bytes in 43 secondstftpgt

(ab dem put-befehl duumlrfte es um die 5sec dauern) Der Put-Befehl fuumlhrte bei einigen Geraumlten auch schon vordem Erloumlschen der vier LAN_LEDs zum Erfolg der sich in kurzzeitigem sehr schnellen Blinken der LED 1zeigte

DD-WRT_Doku_(DE)

Besonderheiten beim Flashen von 11

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL

Nur die DD-WRT Versionen v23 und houmlher unterstuumltzen diese Router Version Desweiteren kann aufgrundeiner Limitierung der Original Linksys Firmware (laumlsst nur ein Update mit einer Firmware bis zu 3MByte zu)fuumlr dieses Geraumlt zunaumlchst nur eine v23 mini Version aufgespielt werden (siehe generelle Anleitung oben)Sobald diese jedoch erfolgreich eingespielt wurde besteht diese Begrenzung nicht mehr und man kannbeliebig zu anderen Firmware Versionen wie v23 basic oder voip (nicht v2X oder v1X sonst ist der Linksysv40 kaputt) wechseln

WRT54GS

ACHTUNG bei TFTP-Uploads WRT54 GS - Modelle koumlnnen NUR am Port 1 per TFTP geflasht werdenBei einigen Hardware-Revisionen ist der Port 1 am Switch der 4 Slot

WRT54G v5 - v6

Sehen hierzu Vxworkskiller_de

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125

Bitte fuumlr die Buffalo Router WHR-G54S und WHR-HP-G54 nur die DD-WRT v23 SP1 und houmlherverwenden Fruumlhere Versionen unterstuumltzen diese beiden Geraumlte nicht Der Buffalo Router WHR-G125 wirdab DD-WRT v24 unterstuumltzt

Die Standard-IP-Adresse der Buffalo-Router lautet 192168111 mit Benutzernamen root ohne PasswortNach dem Flashen lautet die Standard-IP-Adresse 19216811 mit Benutzernamen root und Passwort adminDies gilt es am Ende des Flashens zu beachten Die heruntergeladene Binaumlrdatei der DD-WRT Firmwarebefindet sich im Pfad LWDokumente und EinstellungenBenutzername wobei LW meist dasLaufwerk C ist und Benutzername stellvertretend fuumlr den aktuellen Benutzer ist

Anmerkungen vor dem Flashen

Haben Sie einmal auf die DD-WRT Firmware gewechselt koumlnnen Sie die normale Firmware vonBuffalo nicht mehr einspielen Weitere Informationen findet man unterhttpforumbsr-clandeviewtopicphpt=8184amphighlight=whrg54s+back+firmware

bull

Die von der Buffalo-Firmware verwendete LED in Form eine Bruumlcke wenn der WHR-G54S oder derWHR-HP-G54 als Bridge arbeitet - der Schiebeschalter auf der Unterseite - steht mit der DD-WRTFirmware nicht mehr zur Verfuumlgung und ist nur waumlhrend des Bootprozesses kurz in Betrieb

bull

Es ist nicht noumltig die zweistufige Flashprozedur aumlhnlich des WRT54G durchzufuumlhren Die BuffaloRouter akzeptieren das komplette Image in einem Rutsch

bull

Innerhalb der DD-WRT Firmware kann die Weboberflaumlche zum UpgradenDowngraden zwischenden DD-WRT Versionen verwendet werden Vorsicht unterhalb der DD-WRT Version v23 SP1 istder Support fuumlr die Buffalo Router noch nicht enthalten

bull

Flashen auf die DD-WRT Firmware

DD-WRT_Doku_(DE)

WRT54GS v40 WRT54GL 12

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Um unnoumltigen Problemen aus dem Weg zu gehen sollte man vor dem Flashen den Router in dieWerkseinstellungen zuruumlcksetzen Auf der Unterseite befindet sich der INIT-Knopf Dieser muss beiangeschaltetem Router gedruumlckt gehalten werden bis auf der Frontblende die rote LED erscheint InAusnahmefaumlllen muss er bis zu 30 Sekunden gedruumlckt gehalten werden bis der kompletteReset-to-Default durchgelaufen ist

1

Den Stromstecker am Router abziehen2 Da der Router beim Starten auf der IP-Adresse 192168111 steht muss derjenige PC von dem ausgeflasht werden soll eine statische IP-Adresse aus dem 19216811024 Netzwerk haben Dies kanndie IP-Adresse 192168112 mit Subnetzmaske 2552552550 sein Fuumlr Windows XP sollte dieserScreenshot (in englischer Sprache) weiterhelfen Zuerst uumlber Start -gt Einstellungen -gtSystemsteuerung die Netzwerkverbindungen oumlffnen Dort mit der rechten Maustaste dieLAN-Verbindung auswaumlhlen und im Kontextmenuuml Eigenschaften anklicken Internetprotokoll(TCPIP) doppelklicken Die Einstellungen wie im Screenshot gezeigt vornehmen Keine Eintraumlgebei Standardgateway und DNS-Serveradressen vornehmen diese sind hier nicht notwendig OKuumlbernimmt die Einstellungen

3

Unter Windows Vista muss zunaumlchst noch das Programm TFTPEXE aus dem VerzeichnisWINDIRwinsxsx86_microsoft-windows-t-deployment-package_31bf3856ad364e35_60600016386_none_5c96ddb586a46863in das Verzeichnis WINDIRsystem32 kopiert werden Bei aumllteren Windows-Versionen ist das nichtnotwendig

Nun wird das Senden der Firmware vorbereiten Uumlber Start -gt Ausfuumlhren in die Zeile Oumlffnencmd eintragen und ENTER druumlcken Die Kommandozeile oumlffnet sich Das TFTP-Kommando ist hiereinzugeben jetzt noch NICHT die ENTER-Taste druumlcken das kommt spaumlter erst tftp -i192168111 PUT (Dateiname also genericbin minibin usw) Hier nochnicht ENTER druumlcken

1

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 13

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Den Stromstecker wieder in den Router einstecken Die LEDs der Switchports fangen an zu leuchten2 Im Kommandozeilenfenster in dem Augenblick wenn die Switch-Port LEDs nicht mehr leuchtenjetzt ENTER druumlcken War der Flashvorgang erfolgreich kommt eine Meldung uumlber dieuumlbertragene Datenmenge War das Flashen nicht erfolgreich kommt ein Timeout Wiederholen Siebitte die letzten beide Schritte (Strom raus Strom rein TFTP mit ENTER starten)

3

Nach dem erfolgreichen Flashen muss man nun 1-2 Minuten warten da erst jetzt der eigentlicheFlashvorgang im Inneren des Routers beginnt

4

Der Router bootet nach erfolgreichem Flashen durch und steht dann unter der IP-Adresse 19216811zur Verfuumlgung Sollte dies nicht der Fall sein ziehen Sie bitte den Stromstecker ab und stecken Sie inerneut ein (der so genannte Powercycle im Englischen)

5

Setzen Sie die manuell vergebene statische IP-Adresse zuruumlck auf IP-Adresse automatischbeziehen UND setzen Sie die Auswahl bei DNS-Server automatisch beziehen um eineDHCP-IP-Adresse vom Router zu erhalten Oder wechseln Sie in das 1921681024 Netzwerk

6

Die Weboberflaumlche des Routers oumlffnet sich uumlber http19216811 mit Benutzernamen root undPasswort admin

7

TFTP Anweisungen fuumlr Linux

tftptftpgt binarytftpgt connect 192168111tftpgt statusConnected to 192168111Mode octet Verbose off Tracing offRexmt-interval 5 seconds Max-timeout 25 secondstftpgt put pathtodd-wrtv23_mini_genericbin

Ein alternatives tftp Kommando fuumlr Linux (bitte entweder das Eine oder das Andere aber nicht beide)

tftp 192168111 -m binary -c put dd-wrtv23_genericbin

Bis zur letzten Zeile eintippen (ohne Enter zu druumlcken)1 den Router einschalten und warten bis die Switch-Port LEDs ausgehen und2 jetzt ltENTERgt druumlcken3

Die status Ausgabe ist etwas missverstaumlndlich formuliert Der Router muss einmal vom Stromgenommen und wieder angesteckt werden nach dem Flashen

bull

Problembehebung

Sollten Probleme auftreten koumlnnte das NVRAM geloumlscht werden muumlssen Oumlffnen Sie dazu eineTelnet-Session auf den Router und fuumlhren Sie eine (oder beide) dieser Optionen durch

bull

Option 1 bull

mtd erase nvram

Option 2 (uumlbernommen von OpenWrt FAQ)bull

cd tmpwget httpopenwrtinffh-brsde~nbdnvram-cleanshchmod a+x tmpnvram-cleanshtmpnvram-cleanshnvram commit

DD-WRT_Doku_(DE)

Buffalo WHR-G54SWHR-HP-G54 und WHR-G125 14

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Suchen Sie im Forum nach Postings die den Suchbegriff WHR-G54S und Ihr Problem enthaltenEnglischkenntnisse sind Pflicht

Wenn Ihr Router zerschossen ist suchen Sie im Forum forums nach WHR-G54S brickedEs gibt ausreichend Hilfe in diesen Threads Sie muumlssen es nicht auf eigenen Wegenversuchen

diams

bull

Buffalo WHR-HP-G54 - aumlndern der Boardflags

Telnet auf den Routerbull folgendes Kommando eingebenbull

nvram show | grep boardflags boardflags=0x1758

~

erscheint 0x1758 aumlndern in 0x2758bull dazu dieses Kommando benutzenbull

nvram set boardflags=0x2758 nvram commit reboot

Diese Einstellung aktiviert ein Feature auf der Empfangsseite des High Power Routers DieEmpfangsempfindichkeit steigt extrem an

bull

Dieses Feature wird nicht zusammen mit dem GUI Backup gespeichert Es muss nach jedemReset-to-Default neu eingestellt werden

bull

Wiederbeleben

Verschiedene Methoden zum Wiederbeleben eines kaputt geflashten WRT findet ihr hierWiki Sektion Wiederbeleben

Das Web-Interface

DD-WRT_Doku_(DE)

Das Web-Interface 15

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Das aktuelle Standard-Interface von DD-WRT v23v24

DD-WRT hebt sich gegenuumlber anderen Projekten wie zum Beispiel OpenWRT dadurch heraus dass es eineGUI besitzt die eine einfache Konfiguration der manigfaltigen Optionen erlaubt So lassen sich alleStandardfunktionen von DD-WRT leicht uumlber das Webinterface erreichen ohne auf die Konsolezuruumlckgreifen zu muumlssen (was natuumlrlich weiterhin moumlglich ist) Auch wenn sich noch immer nicht alles uumlberdas web interface machen laumlsst ist die komplett redesignte Variante fuumlr die DD-WRT Versionen v23v24 einweiterer Schritt in diese Richtung Es unterstuumltzt sowohl mehrere Sprachen als auch verschiedene Designs

Man kann sich durch die verschiedenen Interfaces der verschiedenen Versionen unter folgenden Linksdurchklicken

Alchemy 5a (fast identisch mit dem Interface der DD-WRT-v22-Version)httpwww0711-stuttgartde192168123(Auch wenn es nicht mehr taufrisch ist kann man durchaus Parallelen zwischen den Benutzeroberflaumlchenziehen)

DD-WRT V22finalR2 (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV22R2indexhtml(dort dann unten rechts GUI Setup auswaumlhlen)

Version DD-WRT V23final (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV23finalindexhtml

DD-WRT_Doku_(DE)

Das Web-Interface 16

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Version DD-WRT V24betaVPN (Sorry wegen des Popups der Webspace ist dafuumlr kostenlos)

httpwwwinformationegmxhomedeDDWRTStandardV24BetaVPNindexhtml

Bei diesen Versionen kann man direkt auf die Links klicken Die Passwortabfrage ist beim Original natuumlrlichvorhanden

Beschreibung der einzelnen Einstellungen

Hier findet man eine Beschreibung der einzelnen Einstellungen

Konfigurationsbeispiele

WRT54G im Client-Modus

Wiki-Beitrag

Hier auszligerhalb des wiki eine Musterkonfiguration (leider noch auf Basis Alchemy pre53) fuumlr den Betrieb desWRT54G im Client-Modus an einem Access-Point

WRT54GL als Repeater Bridge

Mit dieser Konfiguration wird ein WRT54GL zu einer WLAN-Bridge die ein WLAN-Signal eines beliebigenRouters weiterverteilt Es muszlig nur der WRT54GL konfiguriert werden Vom ersten Router benoumltigt man nurIPSSID und gegebenfalls den Key fuumlr die Verschluumlsselung Ich habe festgestellt dass die Firmware V24 aufWRT54GL wohl nicht funktioniert mit der V24 beta funktioniert es aber wunderbar Im folgenden wird derWRT54GL als zweiter Router bezeichnet Des weiteren gehe ich davon aus das der erste Router die IP19216821 hat Ich habe die Beschreibung aus dem englischen DDWRT-Wiki

Fuumlhre einen Reset des zweiten Routers durch1 Verbinde deinen Rechner via Kabel oder Wlan mit dem Router und logge Dich ein2 Oumlffne den Wireless -gt Basic Settings Tab

Wireless Mode Repeater Bridgediams Wireless Network Mode Passend zum ersten Routerdiams Wireless Network Name(SSID) Passend zum ersten Routerdiams Wireless Channel Passend zum ersten Routerdiams Wireless SSID Broadcast Enablediams Network Configuration Bridgeddiams Save Settingsdiams

3

Virtual Interfaces SectionAdd[Bemerkung] kann unter Umstaumlnden zu Problemen fuumlhren Sollte der Repeater Routerden ersten Router nicht finden diesen Schritt ruumlckgaumlngig machen War z B so an meinemdlink DIR-600 ki

diams 4

DD-WRT_Doku_(DE)

Konfigurationsbeispiele 17

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Wireless Network Name(SSID) Anders als der erste Router[Bemerkung] - being a bridgedsetup and all DHCP is being done by the host AP - it is possible to use the same SSID as theHost AP for this Virtual SSID name This will allow roaming hand-offs between the 2 unitsredhawk Confirmed --ChuckMcB 0034 31 March 2008 (CEST)

diams

Wireless SSID Broadcast Enablediams AP Isolation Disablediams Network Configuration Bridgeddiams Save Settingsdiams

Oumlffne denSetup -gt Basic Setup TabConnection Type will be Disableddiams Set STP for Disabled (Enabled sometimes can cause connection problems) redhawkdiams IP Address 19216822 (Wenn die IP vom ersten Router 19216821 ist)diams Mask 2552552550diams Gateway 19216821 (Wenn die IP vom ersten Router 19216821 ist)diams Assign WAN Port to Switch Haumlckchen oder nicht -gtegaldiams Save Settingsdiams

5

Oumlffne den Security -gt Firewall TabAlle Haumlckchen wegmachendiams Disable SP1 firewalldiams Save Settingsdiams

6

Oumlffne den Administration TabAPPLY Settingsdiams

7

Dann noch bitte unter Setup-gt Netzwerke bei Punkt DHCPD einen multiblen DHCP ServerhinzufuumlgenAPPLY Settings

8

Am Client noch DHCP einstellen so hat es bei mir funktioniert Viel Erfolg Mfg9

Nun solltest Du in der Lage sein kabellose und kabelgebunden Clients an den neu konfigurierten zweitenRouter anzuschlieszligen Diese erhalten ihre IP-Adressen vom ersten Router und sollten in der Lage sein eineInternetverbindung uumlber den ersten Router aufzubauenturol 2359 11 June 2008 (CEST)

Verschluumlsselung des Virtuellen Interfaces

Solltet ihr den Wunsch verspuumlren das Virtuelle Interface verschluumlsseln zu wollen muumlsst ihr darauf achten dasdas Virtuelle und das Physische Interface absolut identische Verschluumlsselungs-Einstellungen haben auch diePasswoumlrter muumlssen identisch sein

WRT an einer FritzBox (oa) fuumlr ein Nachbarschaftsnetz

Hier ein extra Wiki-Beitrag

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen

DD-WRT_Doku_(DE)

WRT54GL als Repeater Bridge 18

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Mit Hilfe von WDS (Wireless Distribution Service) kann ein Netzerk von mehreren (WLAN) Routerneingerichtet werden die alle unter der gleichen SSID erscheinen und somit ein groszliges Netz darstellen Eshandelt sich hier nicht um die Bridging-Funktion es ist hier im Gegensatz dazu moumlglich daszlig sich WLANClients am gesamten Netz anmelden koumlnnen und die Router nicht nur (wie eben beim Bridging) einedirekte Verbindung zum uumlberwinden groumlszligerer Distanzen herstellen sollen Das WLAN Netzwerk kann sonahezu beliebig erweitert werden wobei der Anwender nicht mehrkt in welchem der angeschlossenen Routerer sich befindet (ausser er moumlchte es wissen)

Ich habe Informationen gesammelt um dieses Vorhaben mit Linksys WRT54x Routern und DD-WRT zurealisieren ich weiszlig nicht ob dies auch mit anderen Routern und DD-WRT funktioniert

Vorbereitungen

Im Vorfeld ist ein

DD-WRT-Router als Internet-Router der eben mit dem Internet verbunden ist und eine beleibige Zahl von

DD-WRT-Routern als WDS-Router zu bestimmen die das WLAN-Netz des Internet Routers erweiternDiese Unterscheidung ist wichtig da es verschiedene Einstellungen fuumlr den einen Internet-Router und dievielzahl WDS-Routern gibt

Falls notwendig koumlnnt Ihr die Konfiguration Eures DD-WRT Routers absichern um diesen Zustand spaumlterwieder zu erreichen (Administration -gt Backup) Ich werde im uumlbrigen die englischen Navigationspunkteverwenden daszlig Ihr ggf diese Anleitung mit anderen aus dem Internet verwenden koumlnnt

Ich sehe es weiterhin als ideal an wenn Ihr Eure Router (ja alle) auf die Werkseinstellungen zuruumlcksetzt(Administration -gt Factory Default - Klick auf yes - und Save Settings) Jeder Router ist jetztunter der TCPIP (im Browser eingeben) 19216811 und den Zugangsdaten rootadmin erreichbar

WICHTIG Nur der Hauptrouter darf mittels Netzwerkkabel mit dem internen Netz verbunden sein Dieanderen Router nehmen untereinander per WLAN zueinander Verbindung auf

Einstellungen in DD-WRT

I Folgende Daten sind im Vorfeld zu notieren

1 (Wireless -gt WDS) Die MAC Adressen Eurer Router auf die Ihr am Beginn dieser Seite findetVerwendet unbedingt die MAC Adressen wie Ihr sie auf der WDS Seite ablesen koumlnnt denn dieseAdresse kann von der die Ihr auf der Ruumlckseite oder auf der Packung Eures Routers findet abweichen

2 (Status -gt Router -- Internet) am Router der (tatsaumlchlich aber testweise) mit dem Internet verbunden istnortiert Ihr die ISP-DNS 1-3

DD-WRT_Doku_(DE)

DD-WRT Router als WDS einrichten um ein Netz mitmehreren Routern aufzubauen an denen sich Clientsanmelden koumlnnen19

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich

1 (Setup -gt Basic Setup) Hier wird jedem Router eine andere TCPIP Adresse zugewiesen Also zB19216811 19216812 19216813 usw Weiterhin wird dem Router unter Router name ein eindeutigerName zugewiesen zB WDS-1 WDS-2 WDS-3usw

2 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Start IP Address) Es istnotwendig festzulegen ab welcher TCPIP Adresse jeder Router uumlber DHCP die Adressen an die Clientsvergibt So koumlnnt Ihr feststellen uumlber welchen Router im gesamten Netz ein Client angemeldet ist Ich habebspw dem Router mit der TCPIP 19216811 eingetragen daszlig er mit 1921681100 beginnt Der mit19216812 mit 1921681200 bitte beachten bis max 254 verstanden Dieser Schritt ist zudem wichtigdaszlig in Eurem Netzt keine TCPIP Adressen doppelt vergeben werden

3 (Wireless -gt Wireless Security -gt Security Mode -gt Disabled) Deaktiviert das WLAN Kennwort EurerRouter Wenn alles funktioniert koumlnnt (und solltet) Ihr es spaumlter aktivieren

4 (Wireless -gt Basic Settings) Hier gibt es einiges einzustellen Bei allen Routern muss AP mode angewaumlhltwerden und es muss der gleiche channel fuumlr alle Router gewaumlhlt werden Dann wird fuumlr alle Router ein SSID(WLAN Name) gewaumlhlt

5 (Wireless -gt WDS) Von dieser Seite habt Ihr bereits die MAC Adressen abgeschrieben Jetzt tragt Ihr indie vorgegebene Liste darunter die MAC Adressen aller anderen Router (die Ihr bereits notiert habt) undwaumlhlt unter Type LAN Als Namen habe ich den Namen des Routers wie unter (Setup -gt Basic Setup --Router name) - siehe Schritt 1 - festgelegt verwendet Lasst die Pfoten von Lazy WDS und WDS subnetbzw lasst die auf Disabled

III Fuumlr den Internet-Router

Hier gilt es nur zu testen ob der Router auch die Internetverbindung herstellt dazu muss regelmaumlszligig unter(Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt) DHCP gewaumlhlt sein aber dasshaumlngt von Eurem Internet bzw DSL- oder Kabelmodem ab Probiert es einfach mit DHCP Probiert an dieserStelle ob Ihr euch an diesem Router anmelden koumlnnt und ob das Internet verfuumlgbar ist --gt Auf Eurem Laptop(wenn Ihr leider keinen Apple haben solltet) muss DHCP aktiviert sein

IV Fuumlr alle anderen (WDS) Router

1 (Setup -gt Basic Setup -gt Internet Setup -gt Internet Connection Type -gt Disable)

2 (Setup -gt Basic Setup -gt Network Setup -gt Router IP -gt Gateway) Hier die oben unter II 1 festgelegteTCPIP Adresse des Internet-Routers eingeben

3 (Setup -gt Basic Setup -- Network Address Server Settings (DHCP) -- Static DNS 123) Hier die unterI 2 notierte ISP DNS eintragen

4 (Security -gt Firewall -gt Firewall Protection -gt Disable)

DD-WRT_Doku_(DE)

II Fuumlr alle Router (Den einen Internet- und die Vielzahl von WDS- Routern) gleich 20

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

V Testen

Schaltet die Router alle an und goumlnnt ihnen einige Zeit um die WDS Verbindungen aufzubauen Die neurenLinksys WRT54x quittieren diese Vorgang mit der orangenen LED an der Vorderseite Zur Kontrolle koumlnntIhr auch die einzelnen Router (uumlber die unter II 1 festgelegten) TCPIP Adressen pingen Weiterhin sehr Ihrauf der Statusseite der Router (die Ihr natuumlrlich auch uumlber die in II 1 festgelegte TCPIP erreicht) ob sich dieWDS Router gegenseitig finden

Jetzt wird es zeit unter (Administration -gt Router Management) ein Passwort fuumlr das DD-WRTAdministrationsprogramm zu vergeben (anstatt rootadmin)

Linux insideBekanntlich ist die DD-WRT-Firmware ein Mini-Linux d h neben allem was man mit der Web-Oberflaumlchemittels Browser einstellen kann gibts auch noch eine Linux-Shell mit noch mehr Moumlglichkeiten und BefehlenZugriff darauf bekommt man (auch unter Windows) nachdem man unter administration -gt managementenabled mittels telnet oder SSH also z B in die Eingabeaufforderung

telnet 19216811 (richtige IP-Adresse des Routers einsetzen)

eingeben LoginPasswort sind standardmaumlszligig rootadmin oder je nachdem was man sonst vorher eingestellthat Fuumlr SSH muss man unter Windows ein SSH-Programm verwenden z B Putty Terraterm usw nach demgleichen Muster

Momentan laumluft die Firmware mit Kernel 2420 Das kann man sich in einer Telnet-Sitzung ausgeben lassenmit dem Befehl cat procversion

Linux version 2420 (rootcolinux) (gcc version 335) 766 Thu Jun 23 163031 UTC 2005

Unter der Shell befindet sich auch noch eine komplette Verzeichnisstruktur mit einzelnen Ordner und Dateien

Wichtige Linuxbefehle der Shell

Grundsaumltzlich gibt die Eingabe von help die eingebauten also von der Shell selbst bereitgestellten Befehleaus zusaumltzlich kann man sich noch mittels zweimaligen Druumlckens der Tab-Taste eine Vielzahl weitererBefehle ausgeben lassen

Traffic control (traffic shaping) mit tc

Manchmal moumlchte man den Verkehr auf bestimmten Ports (z B FTP-Port 21 oder P2P-Ports) drosseln damitdiese zwar laufen aber noch ausreichend Bandbreite fuumlr andere Zwecke uumlbrig bleibt Da der WRT54G unterLinux laumluft kann man auch Standard-Linux-Traffic-Shaping-Tools wie tc (traffic control) einsetzen Leider istdie Bedienung mit den vielen Parametern sehr kryptisch Das Samba-Share-Laufwerk derDD-WRT-Firmware kann dabei das Laden des Shell-Skripts vereinfachen Im Berliner Quake-Forum gab esfolgendes Beispiel welches Port 1234 auf 8 kBits begrenzt und einen Eindruck der tc-Parameter gibt

DD-WRT_Doku_(DE)

Linux inside 21

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

tc qdisc add dev eth0 root handle 1 cbq avpkt 1000 bandwidth 10mbittc class add dev eth0 parent 1 classid 11 cbq rate 8kbit allot 1500 prio 5 bounded isolatedtc filter add dev eth0 parent 1 protocol ip prio 16 u32 match ip sport 1234 0xffff flowid 11tc qdisc add dev eth0 parent 11 sfq perturb 10

Weiterfuumlhrende Links

Linux Advanced Routing amp Traffic Control (lartc) (engl)diams TC a tool for Routing amp Traffic Controldiams Traffic Shaping with Linuxdiams Das WonderShaper-Skriptdiams

selber compilieren

DD-WRT compilieren

Skript-Schnipsel

Eine kleine Sammlung von nuumltzlichen Shell-Skripten

Antennen ausrichten

Client-Modus

Um die Antennen Richtung Access-Point genau auszurichten kann man sich die Signalstaumlrke seines APkontinuierlich ausgeben lassen RSSI sollte moumlglichst hoch sein (-63 dB ist besser als -86 dB) Noisemoumlglichst gering (-91 dB ist besser als -81 dB) die Differenz zwischen beiden (Signal-Noise-Ratio (SNR))sollte mindestens 10 dB betragen

Man startet eine Telnet-Sitzung zum Router und fuumlgt das folgende Skript mit Copy amp Paste ein

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` MAC=`wl assoclist|cut -d -f2` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

Das Skript fuumlhrt in einer Endlosschleife nacheinander die Befehle wl channel wl assoclist wl rate wl rssi wlnoise aus formatiert das Ergebnis mittel grep und cut zu der Ausgabezeile und wartet dann 1 s bis zurnaumlchsten Wiederholung Da die Formatierungsbefehle auf die Firmware abgestimmt sind funktioniert dasSkript nicht mit x-beliebigen Firmwares (hier getestet mit DD-WRT22pre5) Das Ergebnis sieht dannbeispielsweise so aus (knapp eine Zeile pro Sekunde)

DD-WRT_Doku_(DE)

Traffic control (traffic shaping) mit tc 22

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

Anstelle der MAC kann man sich auch die SSID ausgeben lassen mit folgendem Skript

while [ 1 ] do CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

AP-Modus

Um das Skript im AP-Modus zu nutzen um die Antenne Richtung Client auszurichten muszlig man beim wlrssi-Befehl die MAC-Adresse eines Clients angeben und den Befehl wl assoclist und die MAC-Ausgabeentfernen

while [ 1 ]do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-`RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho MAC=$MAC Kanal $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNRsleep 1done

Wenn die MAC-Adresse eines bekannten Clienten bei 000B6B32A783 eingesetzt wird ergibt sichfolgendes

MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-63 Noise=-91 SNR=28MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-91 SNR=27MAC=000B6B32A783 Kanal 10 Rate=11 RSSI=-64 Noise=-90 SNR=26

das 2 Beispiel umgeschrieben auch wieder mit einer bekannten MAC-Adresse eines Clienten (hier000B6B32A783)

while [ 1 ] do MAC=000B6B32A783CH=`wl channel|grep target|cut -c16-` SID=`wl ssid|cut -c15-` RA=`wl rate|cut -d -f3`RSSI=`wl rssi $MAC|cut -d -f3`

DD-WRT_Doku_(DE)

Client-Modus 23

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

NOISE=`wl noise|cut -d -f3`let SNR=$RSSI- $NOISEecho SSID=$SID Ch $CH Rate=$RA RSSI=$RSSI Noise=$NOISE SNR=$SNR sleep 1 done

SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-64 Noise=-91 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-90 SNR=27SSID=SiROTTER Ch 10 Rate=11 RSSI=-62 Noise=-91 SNR=29SSID=SiROTTER Ch 10 Rate=11 RSSI=-63 Noise=-91 SNR=28

Getestet im WDS-Betrieb mit

2 x WRT54GSv4

2 x WRT45GL

Software installieren mit ipkg

IPKG ist eine Debian-aumlhnliche Paketarchitektur die die Installation von Software sehr vereinfacht

Port-Knocking

Dieser Abschnitt stellt ein kleines How-To zur Installation und Konfiguration des OpenWRT-Paketes knockddar Der Autor erhebt keinen Anspruch auf Vollstaumlndigkeit oder Perfektion aber da es sich sowieso um einWiki handelt lasst eurer Kritik freien Lauf und aumlndert was ihr fuumlr noumltig haltet -) by Age_M

Was ist Port-Knocking

Port-Knocking hat wie der Name bereits impliziert etwas mit Klopfzeichen zu tun Die meisten kennensicherlich den beruumlhmten Ausruf Sesam oumlffne dich aus Ali Baba und die 40 Raumluber mit dem sich AliBaba den Zutritt zur Houmlhle der 40 Raumluber verschafft hat Aumlhnlich funktioniert auch das Port-Knockingallerdings nicht durch Sprache sondern durch eine vorher definierte Sequenz aus TCP- und UDP-Paketen EinDaemon der knockd uumlberwacht den eingehenden Netzwerkverkehr einer Schnittstelle und uumlberpruumlft diesenauf die in der Konfigurationsdatei festgelegten Sequenzen Wird eine Sequenz erkannt zum Beispiel einTCP-Paket auf Port 6666 dann ein UDP-Paket auf Port 4444 und schlieszliglich wieder ein TCP-Paket auf Port6666 so wird der in der Konfigurationsdatei festgelegte Befehl ausgefuumlhrt Die Befehle sind dabei vomBenutzer frei waumlhlbar

Wozu braucht man Port-Knocking

Port-Knocking kann in vielerlei Hinsicht eingesetzt werden Eine Anwendungsmoumlglichkeit ist zum Beispieldie Abwehr von Portscans Da Portscanner haumlufig einen Port nach dem anderen durchprobieren koumlnnen dieseerkannt und wirksam durch das dynamische Anpassen der Firewallkonfiguration oder durch eine Trennungder Internetverbindung vereitelt werden Eine weitere Anwendungsmoumlglichkeit ist die Fernadministration DerSystemadministrator ist mit Port-Knocking in der Lage einzelne Befehle oder Skripte auszufuumlhren ohne das

DD-WRT_Doku_(DE)

AP-Modus 24

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

ein direkter Zugriff auf den Host benoumltigt wird Am haumlufigsten jedoch wird Port-Knocking dazu verwendetDienste wie zum Beispiel SSH HTTP oder FTP zu verstecken und so das Angriffsrisiko zu minimierenDafuumlr wird ebenso wie bei der Abwehr von Portscans das dynamische Anpassen der Firewallkonfigurationverwendet

Voraussetzungen

-WRT54GGS oder DD-WRT-kompatibles Geraumlt (Autor verwendet WRT54GS_v11)-DD-WRT_Firmware (Autor verwendet DD-WRT_v23_alpha_VoIP_2005-08-22)-JFFS muss aktiviert sein und noch uumlber mindestens 700 kB Speicher verfuumlgen

Bei dd-wrt-v23-sp2 vom 300806 scheint es Probleme bei der Aktivierung von jffs2 per Web-GUI zu gebenDie manuelle Variante uumlber eine ssh-Konsole funktioniert allerdings Jffs hilft weiter

Installation der benoumltigten Pakete

Zunaumlchst muss eine Remote-Shell via SSH oder Telnet auf dem Router geoumlffnet und die Paketdatenbank vonipkg aktualisiert werden Dies geht mit dem Befehl

~ ipkg update

Das benoumltigte Paket knockd findet man uumlber den OpenWRT-Package-Tracker Alternativer Download uumlberhttpvoidmainis-a-geeknetfilesipkg Installiert wird es mit dem Befehl

~ ipkg install httpopenwrtalphacorenetknockd_04_mipselipk

Nach der installation von knockd fehlt nun noch das Paket libpcap welches mit dem Befehl

~ ipkg install libpcap

installiert wird Alle installierten Dateien liegen nun unterhalb von jffs und die Konfigurationsdateiknockdconf befindet sich in jffsetc Als naumlchstes sollte die Funktion von knockd mit dem Befehl

~ knockd --help

uumlberpruumlft werden Sollte es hierbei zu der Fehlermeldung knockd cant load library libpcapso08kommen muumlssen lediglich die Pfade fuumlr die Librarys erneut exportiert werden Dies geht mit dem Befehl

~ export LD_LIBRARY_PATH=libusrlibjffsusrlib

Sollte einen neuere Version von libpcapso installiert sein so hilft ein symbolischer Link darauf

ln -s libpcapso09 libpcapso08

Dies sollte natuumlrlich im entsprechenden Verzeichnis jffsusrlib ausgefuumlhrt werden Nun sollte eine erneuteFunktionsuumlberpruumlfung von knockd zum Erfolg fuumlhren

DD-WRT_Doku_(DE)

Wozu braucht man Port-Knocking 25

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Startskripte erstellen

Zunaumlchst sei gesagt das die ersten zwei Schritte nicht zwingend notwendig jedoch der Uumlbersichtlichkeitdienlich sind

Erstellen eines Ordners fuumlr Skripte

In diesem Fall jffsscripts

~ mkdir jffsscripts

Erstellen eines allgemeinen Startup-Skripts

Dieses kann wiederum weitere Skripte starten

~ echo binsh gt jffsscriptsstartupsh~ echo Insert startup-scripts here gtgt jffsscriptsstartupsh

Erstellen eines Skriptes fuumlr den Start von knockd

Als naumlchstes wird das Skript fuumlr den Start von knockd erstellt

~ echo binsh gt jffsscriptsstart_knockdsh~ echo export LD_LIBRARY_PATH=libusrlibjffsusrlib gtgt jffsscriptsstart_knockdsh~ echo knockd -d -i ppp0 -c jffsetcknockdconf gtgt jffsscriptsstart_knockdsh

Die Verwendung des Parameters -i ist von der zu verwendenden Schnittstelle abhaumlngig Bei einerDSL-Verbindung mit PPPoE lautet diese Schnittstelle ppp0 Wird der Parameter weggeleassen wird dieSchnittstelle eth0 verwendetDa die Skripte bisher nur regulaumlre Dateien sind muumlssen diese noch ausfuumlhrbar gemacht werden

~ chmod 755 jffsscripts

Automatischen Start einrichten

Damit knockd automatisch beim Bootvorgang des Routers ausgefuumlhrt wird muss die variable rc_startup desNVRAM noch uumlberarbeitet werden Wenn die Schritte 51 und 52 uumlbersprungen wurden lautet der Befehl

~ nvram set rc_startup=jffsscriptsstart_knockdsh~ nvram commit

Bei der Verwendung des allgemeinen Startskriptes muumlssen folgende Befehle verwendet werden

~ nvram set rc_startup=jffsscriptsstartupsh~ nvram commit~ echo jffsscriptsstart_knockd amp gtgt jffsscriptsstartupsh

Sollte das Script beim Start nicht ausgefuumlhrt werden muss vorher eine kleine Pause eingelegt werden (evtl ist

DD-WRT_Doku_(DE)

Startskripte erstellen 26

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

das jffs-Dateisystem noch nicht gemountet)

~ nvram set rc_startup=sleep 30 jffsscriptsstartupsh~ nvram commit

knockdconf anpassen

Das Anpassen der knockdconf ist schnell erledigt Hierfuumlr verwendet man am besten den Editor vi da dieserBestandteil der DD-WRT-Firmware ist Also

~ vi jffsetcknockdconf

Unter [options] braucht man lediglich die vorhandenen Optionen loumlschen und folgendes eintragen

[options] UseSyslog

Damit ist die allgemeine Konfiguration des Dienstes abgeschlossen jedoch fehlen nun noch dieAnwendungen

Anwendungsbeispiele

Da es sich hier um ein Wiki handelt hoffe ich das jeder der interessante Anwendungsbeispiele fuumlr dasPort-Knocking findet diese hier mit kurzer Beschreibung auffuumlhrt Informationen zur Konfiguration derAnwendungsmoumlglichkeiten gibts HIER Viel Spass beim Klopfen )

Beispiel 1 Hiermit koumlnnt ihr den SSH-Port zum Router oumlffnen Der Verbindungsaufbau zum Port 22 wird nurfuumlr die IP-Adresse des anklopfenden Host (dafuumlr ist die Variable IP zustaumlndig) akzeptiert und nach 30Sekunden wieder verweigert Da SSH allerdings das verbindungsorientierte Protokoll TCP verwendet wirddie bereits aufgebaute Verbindung nicht geschlossen es koumlnnen lediglich keine weiteren Verbindungenaufgebaut werden

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 22 -j ACCEPT

Beispiel 2 Im Prinzip das gleiche wie Beispiel 1 aber anstelle des SSH-Ports wird der HTTPS-Port geoumlffnet

[opencloseWEB] sequence = 44444udp33333tcp44444udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -A INPUT -s IP -p tcp --dport 443 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -D INPUT -s IP -p tcp --dport 443 -j ACCEPT

DD-WRT_Doku_(DE)

Automatischen Start einrichten 27

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Beispiel 3 Im Prinzip auch das gleiche wie Beispiel 1 diesmal wird allerdings der SSH-Port auf einenRechner im Lan geleitet (die beiden iptables-Befehle in start_command und stop_command gehoumlren bei derKonfiguration natuumlrlich in eine Zeile)

[opencloseSSH] sequence = 33333udp22222tcp33333udp seq_timeout = 5 tcpflags = SYN start_command = usrsbiniptables -t nat -I PREROUTING 4 -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -I FORWARD 10 -p tcp -m tcp -s IP --dport 22 -j ACCEPT cmd_timeout = 30 stop_command = usrsbiniptables -t nat -D PREROUTING -s IP -p tcp --dport 22 -j DNAT --to 1921681xx22 _ usrsbiniptables -D FORWARD -p tcp -m tcp -s IP --dport 22 -j ACCEPT

Hinweis zu beiden Beispielen

usrsbiniptables -A

setzt eine Filterregel ans Ende der iptables Wenn zuvor eine DROP-Regel fuumlr den eingefuumlgten Dienst stehtso geht diese nachgelagerte ACCEPT-Regel verloren Um dies zu umgehen sollten die Befehle mit

usrsbiniptables -I

an den Anfang der iptables eingefuumlgt werden

Die Client-Tools

Die Verwendung von knockd alleine reicht natuumlrlich nicht aus Die Client-Seite muss ja schlieszliglichirgendwie anklopfen koumlnnen HIER bekommt man die noumltigen Tools um erfolgreich Klopfzeichen senden zukoumlnnen Wer wie der Autor Gentoo-Linux auf der Clientseite verwendet kann einfach

emerge knock

verwenden um das benoumltigte Paket zu installieren Um anschliessend eine Verbindung aufbauen zu koumlnnenbraucht man einfach nur folgende Befehle ausfuumlhren

knock ltrouter-wan-ipgt -u 44444knock ltrouter-wan-ipgt 33333knock ltrouter-wan-ipgt -u 44444

um die Sequenz von Beispiel 2 zu generieren Der Parameter -u generiert dabei UDP-Pakete wenn dieserweggelassen wird werden TCP-Pakete generiert Ein erfolgreiches Anklopfen stellt sich im Router-Logfolgendermaszligen dar

knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 1knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 2knockd 70240252241 (p642CFCF4dipt-dialinnet) opencloseWEB Stage 3knockd 70240222241 (p642CFCF4dipt-dialinnet) opencloseWEB OPEN SESAME

Zumindest fuumlr die Windows-Version des knock-clients funktioniert auch die folgende Semantik

DD-WRT_Doku_(DE)

Anwendungsbeispiele 28

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

knock ltrouter-wan-ipgt 44444udp 33333tcp 44444udp

Quellen

httpwrt-wikibsr-clandeindexphptitle=Knockdhttpwwwzerofluxorgcgi-bincvstraccgiknockhttpwikidd-wrtcomwikihttpwwwportknockingorg

BootvorgangViele interessante Details zum Bootvorgang eines WRT54G v22

HardwareAutopsy Linksys WRT54GGS Hardware Versions Under the Knife (auf englisch) gibt ein detailliertenUumlberblick uumlber die Hardware und das Innenleben der einzelnen Versionen der WRT54G und GS Routereinschlieszliglich Bilder

Modifikationen

Dual Serial Port

Einbau eines Dual-Serial-Ports in Linksys WRT54GWRT54GS Es gibt verschiedene Realisierungen desVorhabens

Intern mit Konsolediams Extern mit LEDs (auf deutsch)diams

SD-Card Reader

Den Router mit einem SD-Card Reader ausstatten

SD-Card Reader WRT54G v22 und 31 (deutsch Fotos)diams kielkooldk (auf Englisch) (down hat wer ein Backup)diams Tutorial Hinzufuumlgen eines SD-Kartenlesers an den Linksys WRT54G (deutsch)diams Tutorial SD-Card Reader im WRT45GS v4GL (deutsch)diams

Ab der V23 SP1 von DD-WRT ist kein zusaumltzliches manuelles Aktivieren des MMC-Treibers notwendigEinfach unter Administration - Management - MMCSD Card Support - Enable MMC Device

httpcascadedyndnsorg~datagarbagedd-wrt-enable-mmcpng

DD-WRT_Doku_(DE)

Hardware 29

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

JTAG-Adapter

Anleitung fuumlr einen JTAG-Adapter zum Wiederbeleben eines kaputt geflashten WRT

WRT350N Serial Port

The pinout of the serial is the same as for most linksys stuff The wrt54g-series have it that way or if thehave two of them they are just doubled up

You will still need a level shifter from TTL Level to PC-Port-Serial but that is common for such devicesLook around for information about adding a serial port to an WRT54G it is exactly the same stuff you need

DD-WRT_Doku_(DE)

JTAG-Adapter 30

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

If you get it then open serial connection and press Ctrl+C during bootup you will end up in CFE there youwill have to

nvram set boot_wait=on nvram commit

and see if it gets pingable again during boot (only for 3secconds so like always connect it to a switch ensureyour pc has got 1921681X as ip and do a constant ping [normal in most nix systems -t for windoze]) if it isthen try uploading firmware the normal tftp-way If it ends up in some errors in the serial console about the

DD-WRT_Doku_(DE)

WRT350N Serial Port 31

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

flash not being verified than try

flash -noheader flash1trx

and tftp imidiatly after typing it

Worked for me

WRT350N-Antennen Mod

Anleitung fuumlr einen Antennen-Mod an einem Linksys WRT350N Achtung dies ist kein Anfaumlnger-Mod Beimoumlffnen des Geraumltes verliert ihre eure Garantie Ich uumlbernehme keine Haftung oder sonstige Gewaumlhrleistungenfuumlr defekte Geraumlte Ihr macht diesen Mod auf eigene Verantwortung

Wie oumlffne ich einen Linksys WRT350N

Anleitung How to open a WRT350N

Allgemeine Informationen

Forum-Thread

Fotos

Was bringt der Mod

Groumlszligere Antennen bringen laumlngere Reichweite und ein besseres Signal

Achtung bitte beachten Sie die maximale Sendeleistung von 100 mW dies ist in Deutschland die erlaubteObergrenze fuumlr nicht anmeldepflichtige Funk-Hardware im 24-GHz-Frequenzband

Wie es am Ende aussehen sollte

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 32

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Was wird benoumltigt

Schraubenzieher Loumltkolben 2x passende Pigtails

Ich hab ein UFL auf --gt RP-SMA (maumlnnlich) Pigtail benutzt Das UFL Ende des Pigtails wurdeabgeschnittenabisoliert der UFL Stecker ist wertlos uns interessiert nur der Draht und das andere RP-SMAEnde

Die Idee ein Pigtail zu finden welches ihr direkt auf die Platine anstecken koumlnnt koumlnnt ihr euch gleich wiederaus dem Kopf schlagen Es handelt sich zwar um einen Hirose MS-156NB Anschluss (danke an adisor19)aber dieser ist nicht geeignet um dort ein Pigtail anzuschlieszligen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 33

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Deswegen brauchen wir einen Loumltkolben Hier seht ihr die Anschluumlsse an den rot markierten Punkten setzenwir an )

Beim rausloumlten des alten Pigtails bitte aufpassen eine Halterung zwischen welcher das Pigtail am Loumltpunktliegt haumllt das Pigtail festes umklammert Einzige Moumlglichkeit ist das Pigtail nach hinten raus zu ziehennachdem wir den gesamten Punkt erwaumlrmt haben

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 34

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Jetzt nur noch die Pigtails hinloumlten Bitte aufpassen das der Isolator (Gummi) zwischen Hauptader in derMitte und dem Geflecht auszligen rum noch sauber isoliert

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 35

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Und so in der Art solltet ihr des dann machen

DD-WRT_Doku_(DE)

WRT350N-Antennen Mod 36

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Achtung - Hinweise zum obigen Bild So in der Art sollte es besser nicht aussehen da ihr evtl zu hoheVerluste wegen mangelnder Schirmung habt Ich werde demnaumlchst neue Fotos posten in denen diese Problemausgemerzt wurde

Das RP-SMA-Ende koumlnnt ihr dann wie ich mit Power-Knete befestigen Ansonsten Heiszligkleber dass bleibtaber euch uumlberlassen Der Rest sollte klar sein wieder alles schoumln zusammenbauen und Spaszlig haben

Version herausfinden

Die ersten vier Stellen der Seriennummer (zu finden auf der Unterseite des Routers) repraumlsentieren dieHardware-Version

CDF0 = WRT54G v10CDF1 = WRT54G v10CDF2 = WRT54G v11CDF3 = WRT54G v11CDF5 = WRT54G v20CDF7 = WRT54G v22CDF8 = WRT54G v30CDF9 = WRT54G v31CDFA = WRT54G v40CDFB = WRT54G v50CDFC = WRT54G v51CDFB = WRT54G v52CDFD = WRT54G v60CDFE = WRT54G v70 (Atheros AR2317 Chipset) Nicht DD-WRT kompatibelCDFK = WRT54G v72CDFF = WRT54G v80MDF0 = WRT54G v81

DD-WRT_Doku_(DE)

Version herausfinden 37

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

CDFJ = WRT54G v82

CGN0 = WRT54GS v10CGN1 = WRT54GS v10CGN2 = WRT54GS v11CGN3 = WRT54GS v20CGN4 = WRT54GS v21CGN5 = WRT54GS v30CGN6 = WRT54GS v40CGN7 = WRT54GS v50CGN8 = WRT54GS v51CGN9 = WRT54GS v60CGNA = WRT54GS v70CGNB = WRT54GS v70CGNC = WRT54GS v70CGNE = WRT54GS v72

CL7A = WRT54GL v10CL7B = WRT54GL v11CL7C = WRT54GL v11CF7C = WRT54GL v11

Informationen uumlber Hardware

Infos uumlber die Hardware erhaltet ihr auf folgenden Seiten

httpRouter-IPSysInfohtm (die Versionsangabe hier ist nicht immer zuverlaumlssig -sicherer ist die Seriennummer)

diams

httpRouter-IPCysajaaspdiams httpRouter-IPInfohtm (Um diese Seite als Startseite unter httpRouter-IP zusehen kann man sie im GUI unter Administration -gtManagement -gtRemote RouterAccess -gt Enable Status Site aktivieren)

diams

NVRAM

NVRAM steht fuumlr non volatile random access memory (nichtfluumlchtiger Speicher) und ist sozusagen derKonfigurationsspeicher des WRT Hier werden saumlmtliche Parameter und gesetzte Optionen gespeichert DieShell stellt dazu den Befehl nvram bereit Mit

nvram show

kann man sich den gesamten Inhalt auflisten Mittels grep kann man die Ausgabe auf die Variablen einzelnerBereiche eingrenzen und uumlbersichtlicher darstellen zB

nvram show | grep jffs2

Mit nvram get und nvram set kann man Parameter auslesen bzw aumlndern nvram commit fuumlhrt dieAnderungen dann aus

erase nvram

DD-WRT_Doku_(DE)

Informationen uumlber Hardware 38

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Mit erase kann man NVRAM Loumlschen

Overclocking der CPU

Mit folgendem Befehl wird die CPU uumlbertaktet (hier auf 240 MHz)

nvram set clkfreq=240nvram commitreboot

Um die aktuelle MHz-Einstellung zu erhalten folgenden Befehl eingeben

nvram get clkfreq

oder

cat proccpuinfo

Uumlbertakten ist insbesondere eine Loumlsung wenn es bei Netzwerklast zwischen WLANlt=gtLAN ploumltzlich zuReboots WLAN-Disconnects usw kommt Betroffen sind besonders die Modelle WRT54G v22 v3 und GSv1 v20 bei denen meistens nach ein paar Sekunden einer halben Stunde oder auch mehreren Stunden beidurchgaumlngiger Last (~30 kBs) diese Probleme auftreten

JFFS2Journaling DateisystemJournaled File System (JFS)Journaling Flash File System (mtd-jffs-HOWTO)

Erweiterungen

USB Support

Installation

Fuumlr die Unterstuumltzung von USB muumlssen folgenden Pakete installiert werden

ipkg install kmod-usb-uhci fuumlr USB 11ipkg install kmod-usb-coreipkg install kmod-usb2ipkg install kmod-usb-storage fuumlr USB-Massenspeicher

Bei DD-WRT v23 oder niedriger muss noch eine kleinigkeit in die NVRAM Variable rc_startup geschriebenwerden Dies fuumlhrt beim Start alle startup Scripte unter jffsetcconfig aus

In einer Shell auf dem Router

DD-WRT_Doku_(DE)

Erweiterungen 39

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

gt ~ nvram set rc_startup=gt for I in `binls jffsetcconfigstartup`gt dogt sh $I ampgt donegt gt ~ nvram commitgt

Uumlber das Webinterface

for I in `binls jffsetcconfigstartup` do sh $I ampdone

Dies ist das Script mit dem die fuumlr USB noumltiegen Kernel Module beim ausfuumlhren geladen werden Einfach denText auschneiden und in jffsetcconfigusbstartup ablegen

binshinsmod jffslibmodules2430usbcoreoinsmod jffslibmodules2430ehci-hcdoinsmod jffslibmodules2430scsi_modoinsmod jffslibmodules2430usb-storageo Fuumlr USB 11 Support die Raute () vor der naumlchsten Zeile entferneninsmod jffslibmodules2430uhcioinsmod jffslibmodules2430sd_modo

das Script ausfuumlhrbar machen

chmod +x jffsetcconfigusbstartup

Auf einem Asus WL-500gPremium sollte es bei eingabe von dem Komando dmesg nun so aussehen

SCSI subsystem driver Revision 100Initializing USB Mass Storage driverusbc registered new driver usb-storageUSB Mass Storage support registereduhcic USB Universal Host Controller Interface driver v11PCI Enabling device 01030 (0000 -gt 0001)uhcic USB UHCI at IO 0x100 IRQ 2usbc new USB bus registered assigned bus number 2hubc USB hub foundhubc 2 ports detectedPCI Enabling device 01031 (0000 -gt 0001)uhcic USB UHCI at IO 0x120 IRQ 2usbc new USB bus registered assigned bus number 3hubc USB hub foundhubc 2 ports detected

Je nachdem welches Dateisystem auf dem Datentraumlger eingesetzt wird muumlssen noch die Filesystem(FATEXTXFS) Module installiert werden

ipkg install kmod-vfatipkg install kmod-ext2

DD-WRT_Doku_(DE)

USB Support 40

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

ipkg install kmod-ext3ipkg install kmod-xfs

Damit diese Module beim Neustart mitgeladen werden muss der folgende Text noch anjffsetcconfigusbstartup angehaumlngt werden

FATinsmod jffslibmodules2430fatoinsmod jffslibmodules2430vfato XFSinsmod jffslibmodules2430xfso EXTinsmod jffslibmodules2430jbdoinsmod jffslibmodules2430ext2oinsmod jffslibmodules2430ext3o

Die Partitionen der ersten USB Platte sind nun uumlber devscsihost0bus0target0lun0part1 bis partNerreichbar

Installation eines Samba Servers

Wenn man einen Router mit schneller CPU genug Speicher und funktionierenden USB 20 Ports (wie denASUS WL-500P) sein eigen nennt moumlchte man sicher die vorzuumlge der Windows Datei Freigabe nutzen Umdies zu tun muss man Samba installieren

ipkg install samba

nach einigem ruminstallieren ist alles fertig fuumlr einen ersten Test Leider bricht jffsetcinitdsamba start mitdiesem Fehler ab

nmbd cant resolve symbol fopen64smbd cant resolve symbol stat64

Durch eine Installation von uclibc_0928-6_mipselipk laumlsst sich dies beheben Ein nettes Howto hierzu leiderin Englisch httpwwwdd-wrtcomhttpwikidd-wrtcomwikiindexphpOptware

Zum Abschluss braucht noch die smbconf einige Anpassungen (jffsetcsambasmbconf)

FTP-Server

Loumlsung 1

von Helmutoh

Um einen FTP-Server auf dem Router laufen zu lassen sind die folgenden Schritte notwendig

Zunaumlchst sollte sichergestellt sein dass genuumlgend Speicherplatz im JFFS-Verzeichnis vorhanden ist um dienotwendigen Pakete zu installieren Sollte dies nicht der Fall sein (vor allem wenn man auch noch Daten perFTP irgendwo speichern moumlchte) empfiehlt sich das Einbinden einer SMB-Windows-Freigabe oder gar derEinbau einer SD-Karte Um diese Erklaumlrung einfach zu halten verwende ich bei allen Pfadangaben hier nur

DD-WRT_Doku_(DE)

Installation eines Samba Servers 41

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

den zur SD-Karte Zudem zeige ich die Installation der Zusatzpakete auch auf der SD-Karte

Vorbereitungen

Da die Pakete nicht im Standard-JFFS installiert werden benoumltigen wir die entsprechenden Verzeichnisse (werim JFFS genuumlgend Platz hat braucht diesen Schritt natuumlrlich nicht)

mkdir mmcjffs mkdir mmcjffstmp mkdir mmcjffstmpipkg

Schritt 1

Installation des vsftpd-Server Packages von downloadsopenwrtorg

ipkg -d mmcjffs install httpURL_2_vsftpd

Achtung hier bitte jeweils die URL der aktuellsten Version des vsftpd-Paketes einsetzen Bei der Installationmit ipkg ggf die Warnmeldungen ignorieren

Schritt 2

Installation der zusaumltzlichen Library

Da der FTP-Server leider nicht mit den Standard-Libs in DD-WRT startet benoumltigen wir ein zusaumltzlichesPaket (uclibc)

ipkg -d mmcjffs install httpURL_2_uclibc

Auch hier wieder die Version beachten und richtige URL zum uclibc-Paket einsetzen

Schritt 3

Start-Skript fuumlr den FTP-Server

Zum Start des FTP-Server gehoumlrt nun ein Start-Skript welches kurzzeitig die Lib aktiviert und den Serverdamit startet

export LD_PRELOAD=mmcjffsliblibuClibc-0927so mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf unset LD_PRELOAD env gt devnull

In der zweiten Zeile wird der FTP-Server mit seiner Config-Datei gestartet Hier sollte unbedingt festgelegtwerden welcher USER was darf Die Optionen dieser Config finden sich am besten hier vsftpd manpage

Dieses Skript an beliebiger Stelle speichern (hier mmcprogsftpserverstart)

Schritt 4

Das erstellte Start-Skript kann nun nach erfolgreichem Test auch im Startup-Bereich des Router eingetragenwerden

DD-WRT_Doku_(DE)

FTP-Server 42

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

Im Bereich Administration - Diagnostics der Router-Konfiguration

cd mmcprogsftpserver start

mit Save Startup abspeichern

Schritt 5

Soll der FTP-Server nun auch noch im WAN (Internet) sichtbar sein so muss der Port 21 fuumlr passiveFTP-Verbindungen noch in der Firewall geoumlffnet werden

Im Bereich Administration - Diagnostics

usrsbiniptables -I INPUT 1 -p tcp --dport 21 -j logaccept

mit Save Firewall abspeichern

Loumlsung 2 von moscito

vorweg erstmal ein dickes DANKE fuumlr die infos aus dem forum

mein geraumlt ist ein (WRT54GL) mit DD-WRT v23_sp2 und sp3 habe es mit beiden versionen gemacht ichselber habe mit der Loumlsung 1 nichts erreicht

Vorbereitung MMC in das jffs mounten

mount -o bind mmc jffs mount -o bind mmcoptopt opt

Pakete installieren erstmal den Paketmanager frisch machen

ipkg update ipkg install vsftpd ipkg install uclibc

das startscript erstellen

cd mmc

mit touch ftpstartup wir die datei erzeugt mit vi ftpstartup editiert man die datei

die taste i bringt dich in den schreibmodus mit ESC wir der beendet und dann gehts mit wq wieder rausverlassen ohne zu speichern geht mit q bzw q

Einfach die sachen zwischen den mit vi eintippen zweite moumlglichkeit waumlre ohne vi auf der console

echo sleep 60 gtgt mmcftpstartup echo mount -o bind mmc jffs gtgt mmcftpstartup echo mount -o bind mmcoptopt opt gtgt mmcftpstartup echo echo nobodyPasswort00Usermmcbinsh gtgt tmpetcpasswd gtgt mmcftpstartup echo export LD_PRELOAD=mmcjffsliblibuClibc-0927so gtgt mmcftpstartup echo mmcjffsusrsbinvsftpd mmcjffsetcvsftpdconf gtgt mmcftpstartup echo unset LD_PRELOAD gtgt mmcftpstartup

DD-WRT_Doku_(DE)

FTP-Server 43

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)

echo env gt devnull gtgt mmcftpstartup

Nun starte den ftp server mit

ftpstartup

wenn das script automatisch starten soll dann in der GUI des DD-WRT Administration----Diagnoseaufsuchen und die folgenden 2 zeilen eintragen und speichern als startup

cd mmc ftpstartup

mit ps sollte vsftp in der prozessliste zu sehen sein

soll der ftp aus dem www erreichbar sein dann bitte den schritt 5 dieser wiki nutzen drann denken das esnicht ganz ungefaumlhlich ist den root fuumlr ftp frei zu geben also bitte immer fein die backups machenvorher )

RFlow CollectorMit diesem Programm kann man die Aktivitaumlt des Routers uumlberwachen Es gibt Auskunft uumlber verbundeneClients und zeigt auch die Empfangsstaumlrke an

Trouble ShootingDer WRT54-g(s)(L) macht kaum Probleme

Ich moumlchte mitmachenGanz einfach Den edit-Button druumlcken editieren speichern und uns erfreuen )

Alphabetischer IndexHier sind alle projektbezogenen Artikel alphabetisch gelistet DD-WRT Doku(DE) Index

Anpassen der Ports des Switches auf Halbduplex und Einstellung von Geschwindigkeiten

DD-WRT_Doku_(DE)

Alphabetischer Index 44

  • DD-WRT_Doku_(DE)