Home / LinuxUser / 2004 / 04 / DHCP-Server fürs lokale Netzwerk

Newsletter abonnieren

Lies uns auf...

Folge LinuxCommunity auf Twitter

Top-Beiträge

Mandriva gibt Distribution in die Hände der Community
(268 Punkte bei 24 Stimmen)
Neues vom Systemd
(161 Punkte bei 4 Stimmen)
Mandriva in Nöten
(161 Punkte bei 4 Stimmen)

Heftarchiv

LinuxUser Heftarchiv

EasyLinux Heftarchiv

Ubuntu User Heftarchiv

Ubuntu User Heftarchiv

Partner-Links:

Shopping
Topsuche
 
Yatego Deutschlands größte Shoppingmall. 10000 Shops,
3.5 Mio Artikel. Alle Bestseller, Servertechnik und Technik Themenwelten.

Notebooks und Netzwerkhardware bei Mercateo günstig kaufen.
Internet Telefonie mit VoIP Telefonen von Gigaset
Das B2B Portal www.Linx.de informiert über Produkte und Dienstleistungen.
Günstige Digitalkameras finden Sie im Preisvergleich.

Entspannt ans Netz

DHCP-Server fürs lokale Netzwerk

Die Freiheit der Konfiguration

Allgemein gesprochen finden sich in der Konfigurationsdatei zwei Arten von Einträgen: solche, die mit dem Wort option beginnen und die anderen. Die "Optionen" (zusammengefasst in Tabelle 2) gibt der dhcpd unverändert an die anfragenden Rechner (Clients genannt) weiter. Ob ein Client mit dem Wert etwas anfangen kann, hängt jedoch von seinem Betriebssystem ab. Unter Umständen lässt ihn der Administrator mit einem extra geschriebenen Skript weiterverarbeiten.

Die anderen Angaben sind für den Serverprozess dhcpd selbst bestimmt – Tabelle 1 fasst sie zusammen.

Tabelle 1: dhcpd-Settings

Eintrag

Parameter

Bedeutung

default-lease-time Zeit in Sekunden Wie lange sind die vergebenen Daten gültig? Vor Ablauf dieser Zeit muss ein Client erneut um eine IP-Adresse bitten. Überschreitet er das Zeitfenster, kann diese spezielle IP-Adresse an andere Rechner vergeben werden.
max-lease-time Zeit in Sekunden Wie lange sind vergebene Daten maximal gültig? Falls der Client eine besonders lange default-lease-time anfordert, legt dieser Parameter die Obergrenze fest.
subnet Netzwerkadresse Netzsegment, für das die Konfiguration gilt (siehe Kasten 1).
netmask Netzwerkmaske Maske des Netzsegments (siehe Kasten 1).
range kleinste und größte zu vergebende IP-Adresse Bereich der vom DHCP-Server zu verwaltenden IP-Adressen.
fixed-address IP-Adresse oder Hostname Die einem bestimmten Client zugedachte feste Adresse.
filename Dateiname Bootimage eines bestimmten Clients (siehe Abschnitt "DHCP für Anspruchsvolle").
hardware ethernet MAC-Adresse Hardware-Adresse eines Clients.

Kasten 1: IP-Adresse, Netzwerkmaske und Netzwerk-Adresse

Neben der IP-Adresse gehören zur Konfiguration eines Netzwerkgeräts die Angaben zur Broadcast-Adresse und zur Netzwerkmaske. Die Netzwerkmaske sorgt für eine künstliche Aufteilung eines Netzwerks in kleinere Subnetze. Um den Zusammenhang zwischen IP-Adresse und Netzwerkmaske zu verstehen, muss man sich auf die unterste Bitebene begeben.

Zu diesem Zweck nimmt man sich jeweils die einzelnen, durch Punkt abgetrennten Dezimalzahlen vor und rechnet sie einzeln ins binäre Zahlensystem (zur Basis 2) um:

255=1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0

So wird aus der dezimalen Netzwerkmaske 255.255.255.0 die binäre Darstellung

11111111.11111111.11111111.00000000

Viel gerechnet wurde bisher nicht, es handelt sich jeweils nur um die Darstellung derselben Zahl in unterschiedlichen Zahlensystemen. Auffällig sind die 24 Einsen, man spricht von einem /24-Netz.

Aus der dezimalen IP-Adresse 192.168.2.3 wird auf dieselbe Weise die Binärdarstellung

11000000.10101000.00000010.00000011

Nach einer bitweisen Und-Verknüpfung von IP-Adresse und Netzwerkmaske erhält man die Netzwerkadresse. Dabei kommt immer an die Stelle eine 1, wo sowohl bei der IP-Adresse als auch bei der Netzmaske eine 1 steht:

11000000.10101000.00000010.00000000

Diese Netzwerkadresse lautet in Dezimaldarstellung 192.168.2.0.

Da die IP-Adresse mit der 0 am Ende für das Netzwerk selbst und eine weitere Adresse (meist die .255) für Broadcasts reserviert bleibt, bietet das Netzwerk aus dem Beispiel 254 Rechnern Platz.

Tabelle 2: Werte für die Clients

Eintrag (ohne vorangestelltes option)

Parameter

Bedeutung

routers Hostname oder IP-Adresse Router bzw. Gateway ins Internet.
domain-name-servers Hostnamen oder IP-Adressen Domain-Nameserver.
host-name Hostname Rechnername des Clients.
ntp-servers Hostname oder IP-Adressen Timeserver für Zeitabgleich.
netbios-node-type 1, 2, 4 oder 8 (empfohlen) Methode der Namensauflösung unter Windows. 1 steht für Broadcast, 2 für Unicast, 4 für Mixed Mode (zuerst Broadcast, dann Unicast versuchen) und 8 für einen Hybridmodus, bei dem zuerst Unicast, alternativ Broadcast zum Einsatz kommt.
netbios-name-servers Hostname WINS-Server zur Internet-Naming-Service-Auflösung unter Windows.
domain-name Domainname Name der Netzwerkdomain.
nis-domain Domainname Name der NIS-Domain.
nis-servers Hostname oder IP-Adressen Zuständiger NIS-Server.
subnet-mask Netzwerkmaske Netzwerkmaske des Netzsegments.

Feste Bindung

Entschließt man sich dazu, im gesamten Netzwerk auf DHCP zu setzen, gibt es einige Rechner die ständig dieselbe IP-Adresse haben sollten. Schließlich möchte niemand erst die aktuelle Adresse eines Gateway- oder Multimediaservers ermitteln müssen, bevor er ihn nutzen kann.

Auch um eine solche, clientabhängige Adressvergabe kümmert sich die /etc/dhcpd.conf. Damit der dhcpd die um eine IP-Adresse bittenden Rechner richtig identifizieren kann, zieht er die eindeutige MAC-Adresse der Netzwerkkarte heran.

Auf PCMCIA-Netzwerkkarten oder Wireless-LAN-USB-Sticks ist sie stets aufgedruckt. Kommt man nicht so leicht an den Aufkleber der Netzwerkkarte, hilft Software dabei, die MAC-Adresse zu ermitteln. Unter unixoiden Betriebssystemen dient dazu der Befehl ifconfig, die Betriebssysteme aus dem Hause Microsoft bringen das Kommandozeilenprogramm ipconfig für diesen Zweck mit. Listing 2 zeigt das Beispiel eines Linux-Rechners, dessen MAC- oder "Hardware"-Adresse 00:02:2D:34:90:85 lautet.

Listing 2

MAC-Adresse mit

ifconfig

ermittelt

renner@lyra:~$ /sbin/ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:02:2D:34:90:85
          inet addr:10.32.130.79  Bcast:10.32.135.255  Mask:255.255.248.0
          UP BROADCAST NOTRAILERS RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15695 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10988 errors:204 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:5201433 (4.9 MiB)  TX bytes:1559490 (1.4 MiB)
          Interrupt:10 Base address:0x100

Aber auch, wer keinen direkten Zugriff auf den fraglichen Rechner hat, muss nicht verzagen – sofern der DHCP-Server ihm bereits auf Zufallsbasis eine Adresse zuordnet. In der Datei /var/lib/dhcp/dhcpd.leases protokolliert dhcpd nämlich, wer für welchen Zeitraum welche IP-Adresse bekommt.

Alternativ kann man einen ping auf das gesamte Netzwerk absetzen, um so eine Reaktion aller erreichbaren Rechner zu provozieren. Anschließend schaut man mit Befehl arp -a nach, welche Rechner und MAC-Adressen bekannt sind (Listing 3). Der einleitende ping ist notwendig, da die arp-Tabelle, die unter anderem die MAC-Adressen aller bekannten Computer im lokalen Netzwerk enthält, nur Rechner kennt, zu denen bereits ein wie auch immer gearteter Netzwerkkontakt bestand.

Listing 3

MAC-Adresse mit

ping

und

arp

ermittelt

renner@lyra:~$ ping -c3 192.168.2.0
PING 192.168.2.0 (192.168.2.0): 56 data bytes
64 bytes from 192.168.2.1: icmp_seq=0 ttl=64 time=0.2 ms
64 bytes from 192.168.2.52: icmp_seq=0 ttl=64 time=3.5 ms (DUP!)
64 bytes from 192.168.2.53: icmp_seq=0 ttl=64 time=4.2 ms (DUP!)
64 bytes from 192.168.2.62: icmp_seq=0 ttl=64 time=4.7 ms (DUP!)
[…]
renner@lyra:~$ /usr/sbin/arp -a
? (192.168.2.1) at 00:03:E3:00:18:F1 [ether] on eth0
? (192.168.2.52) at 00:30:05:55:02:ED [ether] on eth0
? (192.168.2.53) at 00:0C:6E:1F:32:C4 [ether] on eth0
? (192.168.2.62) at 00:30:05:55:03:7F [ether] on eth0

Welche der vielen MAC-Adressen nun die richtige ist, muss man jedoch raten oder im Ausschlussverfahren ermitteln. In ganz verzwickten Fällen sucht man in einer speziellen Datenbank [3] den zu einer MAC-Adresse gehörenden Netzwerkkartenhersteller (Abbildung 1), um mit diesem Wissen bei der Zuordnung weiterzukommen.

Abbildung 1: MAC-Adresse und Kartenhersteller lassen sich über MAC-Find zuordnen.

Hat man die Hardware-Adresse herausgefunden, lässt sich dhcpds Konfiguration um eine feste IP-Zuordnung zum jeweiligen Rechner ergänzen:

host lyraA  {
  hardware ethernet 00:02:2D:34:90:85;
  fixed-address lyra.mtr.mynet;
}

Verfügt ein Rechner über mehrere Netzwerkkarten (z. B. eine zusätzliche Wireless-LAN-Karte), darf man die MAC-Adressen beider Karten demselben Hostnamen zuordnen, sofern sie nie gleichzeitig zum Einsatz kommen:

host lyraB  {
  hardware ethernet 00:80:C7:C1:3D:76;
  fixed-address lyra.mtr.mynet;
}

Unter Umständen lässt sich das Netzwerkmedium im laufenden Betrieb wechseln, ohne dass bestehende Verbindungen abbrechen! Statt eines Hostnamens, der eine funktionierende Adressauflösung voraussetzt, kann man auch die IP-Adresse angeben.

Einem Freund empfehlen    Druckansicht Bookmark and Share
Kommentare

Hits
Wertung: 110 Punkte (2 Stimmen)

Schlecht Gut

Infos zur Publikation

Infos zur Publikation

LinuxUser 06/2012

Aktuelle Ausgabe kaufen:

Heft bestellen Heft als PDF kaufen

LinuxUser erscheint monatlich und kostet in der Nomedia-Ausgabe EUR 5,50 und mit DVD EUR 8,50. Weitere Informationen zum Heft finden Sie auf der LinuxUser-Homepage.

Im LinuxUser-Probeabo erhalten Sie drei Ausgaben für 3 Euro. Das Jahresabo (ab EUR 56,10) können Sie im LNM-Shop bestellen.

Tipp der Woche

Adobe AIR
Adobe-AIR-Programme installieren und (manuell) starten
Tim Schürmann, 14.05.2012 13:09, 0 Kommentare

Es gibt sie noch: neue Anwendungen, die Adobes Integrated Runtime voraussetzen. Aktuellstes und vermutlich auch größtes Beispiel ist das Adventure Botanicula

Aktuelle Fragen

gibt es ein Kommandozeilen Tool, um ein X11-Fenster in ein Anderes einzubetten?
GoaSkin , 21.05.2012 16:44, 0 Antworten
Das XEmbed-Protokoll ist u.A. dazu gedacht, dass man eine X11-Anwendung in eine andere wie ein Wi...
Apache2, Options -Indexes geht nicht
no no, 12.05.2012 19:01, 8 Antworten
Habe in apache2.conf folgendes stehen: Options -Indexes ...
LInux auf Dell LS H500
Andreas Endresl, 09.05.2012 08:54, 2 Antworten
Habe einen alten Dell Latitude LS H500 nur mit ext. Floppy und CD es geht nur immer eines von den...
Datenwiederherstellung unter Ubuntu 12.04 mit "Simple Backup" nach Umzug von Linux Mint
Christian Lottmann, 07.05.2012 13:33, 0 Antworten
Vor dem Umzug auf Ubuntu 12.04 habe ich unter Linux MInt mit "Simple Backup" voll (15.4.2012) und...
DKMS für den propritären NVIDIA-Treiber
Commander Data, 26.04.2012 22:02, 2 Antworten
Hallo an die Gemeinde. Ich habe hier ein interessantes Stück openSuSE gefunden. http://forums.op...