JensDiemer

Mein Blog...

Tag Cloud 3dsmax [+] | 64bit [+] | addons [+] | Aptana [+] | ASUS [+] | AVI [+] | backup [+] | BeOS [+] | bilder [+] | blog [+] | browser [+] | CPU [+] | creole [+] | django [+] | django-dbpreferences [+] | django-dbtemplates [+] | django-tagging [+] | django-tools [+] | django-weave [+] | dokumentation [+] | Eclipse [+] | fernsehen [+] | firefox [+] | forms [+] | formset [+] | foto [+] | git [+] | Haiku [+] | handy [+] | hardware [+] | i18n [+] | javascript [+] | jquery [+] | Kino [+] | lame [+] | links [+] | linux [+] | locales [+] | Loveparade [+] | mac [+] | markup [+] | mencoder [+] | merkwürdig [+] | modul [+] | mp3 [+] | netzwerk [+] | nokia [+] | online [+] | opensource [+] | ovi [+] | Petition [+] | pip [+] | plugin [+] | plugins [+] | podcast [+] | pydev [+] | pylucid [+] | pys60 [+] | python [+] | relase [+] | release [+] | router | settings [+] | sicherheit [+] | software [+] | sqlite [+] | standalone [+] | svn [+] | thunderbird [+] | Tip [+] | ubuntu [+] | ubuntuusers [+] | unittest [+] | video [+] | virtualbox [+] | virtualenv [+] | vista [+] | web [+] | webspace [+] | win7 [+] | windows [+] | xfce [+] | xp [+] | xvid [+]

↑ DD-WRT: DHCP static leases  #

Vor 1 Jahr, 2 Monate veröffentlicht, durch jens.

Auf meinem Router ist die freie Firmware DD-WRT in der aktuellen v24.

Ich setzte im DHCP Server gern statische IP Zuweisungen, anhand der MAC Adresse. So haben die Rechner immer die selbe IP, ohne das ich auf dem Client das extra einstellen muß.

Leider kann man in der Web GUI die DHCP Statische Zuweisungen nur schlecht verwalten :( Es ist nicht möglich einen Eintrag zu ändern. Man kann auch immer nur den letzten Eintrag löschen. Somit ist die GUI dafür praktisch unbrauchbar.

Somit muß man das ganze per SSH erledigen. Den SSH Zugriff muß man unter "Services" erstmal einschalten und kann dabei am besten seinen Public Key (z.B. /.ssh/id_rsa.pub) unter "Authorisierte Schlüssel" einfügen.

Nun kann man sich einloggen, mit ssh root@192.168.1.1 (IP evtl. anpassen).

Die Datei /etc/lease_update.sh ist recht interessant. Dort kann man ein wenig die funktionsweise von /usr/sbin/nvram abschauen. Das Skript selber setzt allerdings dnsmasq Einträge und nicht die vom "DHCP Server".

Generell werden alle Einstellungen im NVRAM gespeichert. Alle Einstellung kann man einsehen mit nvram show. Interessant für die DHCP Leases ist:

Bash
1
nvram show | grep "lease"

Das ganze geht natürlich auch ohne eingeloggt zu sein:

Bash
1
ssh root@192.168.1.1 "nvram show" | grep "lease"

Die normalen DHCP Server Einstellungen sind static_leasenum (Anzahl der Einträge in der Web GUI) und static_leases beinhaltet die eigentlichen Regeln.

Mit einem kleinen Skript kann man sich das leben erleichern:

Bash
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
#!/bin/bash

ROUTER_IP=192.168.1.1

ssh root@${ROUTER_IP} nvram set static_leasenum=9
ssh root@${ROUTER_IP} nvram set static_leases=\"00:xx:xx:xx:xx:xx=Rechner1=192.168.1.2 \
    00:xx:xx:xx:xx:xx=Rechner2=192.168.1.3 \
    00:xx:xx:xx:xx:xx=Rechner3=192.168.1.4\"
echo ----------------------------------------------------------------------
ssh root@${ROUTER_IP} nvram show | grep "static_leases="

Wichtig: Man muß aufpassen, wie die Leerzeichen und Anführungszeichen gesetzt sind. Ansonsten werden schnell Einträge abgeschnitten. Deswegen sollte man die Einstellungen nochmal in der Web Gui http://192.168.1.1/Services.asp überprüfen und dort dann mit "Anwenden" die neuen Einstellung auch scharf stellen ;)

So kann man gemütlich mit seinem bevorzugten Editor die Datei editieren. Nach einem ausführen, landen die Daten auf dem Router ;)

(Last update: 20. Nov. 2009, 11:01 by jens.)

tags router | software [+] | Tip [+]
0 comments...
Syndication-Feed-Format: