DHCP-Server auf dem Raspberry Pi einrichten

ELektronik-KOmpendium.de
Online

Preis auf Anfrage
Vergleichen Sie diesen Kurs mit ähnlichen Kursen
Mehr ansehen

Wichtige informationen

  • Kurs
  • Online
Beschreibung

DHCP-Server auf dem Raspberry Pi einrichten In einem Netzwerk dient ein DHCP-Server dazu, die IP-Adressen zu verwalten und die IP-Konfiguration zu verteilen. Zu einer IPv4-Konfiguration gehört jeweils eine IPv4-Adresse, die Subnetzmaske und die IPv4-Adressen von Standard-Gateway und DNS-Server. Diese Konfiguration bekommt ein anfragender Host zusammen mit der Lease-Time vom DHCP-Server mitgeteilt. Die Lease-Time gibt an, wie lange die IP-Konfiguration gültig ist und benutzt werden darf. Mehr Informationen über DHCP

Wichtige informationen

Themenkreis

Aufgabe
  1. Ermitteln Sie die IPv4-Konfiguration für den DHCP-Server.
  2. Installieren und konfigurieren Sie einen DHCP-Server für das lokale Netzwerk.
  3. Prüfen Sie den Status des DHCP-Servers und wie viele IP-Konfigurationen er verteilt hat.
Hinweis

Die folgende Konfiguration sieht vor, dass man diesen DHCP-Server zusätzlich zu einem bereits vorhandenen DHCP-Server betreibt. Mit dem Ziel, die interne Netzwerk-Kommunikation aufrechtzuerhalten, wenn der primäre DHCP-Server, meist ein Netzzugangsrouter, außer Betrieb geht.
Selbstverständlich ist es möglich, den primären DHCP-Server abzuschalten und die IPv4-Konfiguration von dem folgenden einzurichtenden DHCP-Server verteilen zu lassen.

Vorbereitungen

Grundsätzlich empfiehlt sich, den DHCP-Server mit einer statischen/festen IPv4-Adresse zu betreiben.

  • Statische IPv4-Adresse konfigurieren

Bevor es ans Installieren und Konfigurieren geht muss noch die DHCP-Konfiguration festgelegt werden. Gefragt sind IPv4-Adressbereich, Subnetzmaske, IPv4-Adresse von Standard-Gateway und DNS-Server.

IP-Adressbereich festlegen

Zuerst muss der Adressbereich festgelegt werden, aus dem der DHCP-Server die Adressen verteilen darf. Verteilt bereits ein DHCP-Server den selben Adressbereich, dann muss man sich darum kümmern, dass die beiden DHCP-Server nicht die gleichen Adressbereiche verteilen. Hier darf es keine Überschneidungen geben. Sonst wird eine IP-Adresse unter Umständen zweimal verwendet, was zu seltsamen Netzwerkfehlern führt.
Wenn man nicht weiß, wie die Adressbereiche aufzuteilen sind, dann sollte man die Finger von der Einrichtung eines zweiten DHCP-Servers lassen. Falsche Einstellungen führen zu Störungen im Netzwerk.

Subnetzmaske und Standard-Gateway festlegen

Die Subnetzmaske und die IP-Adresse des Standard-Gateways bekommt man aus der bestehenden Installation. Hierzu muss man die IP-Konfiguration an einem Client ermitteln.

  • Netzwerk- und IP-Konfiguration des eigenen Clients ermitteln
  • Netzwerk- und IP-Konfiguration des Raspberry Pi ermitteln
DNS-Server festlegen

Die IPv4-Adresse von Standard-Gateway und DNS-Server sind in einem lokalen Netzwerk meist identisch. Die IPv4-Adresse des DNS-Servers ist also die IPv4-Adresse des Internet-Zugangs-Router.
In manchen IPv4-Konfigurationen findet man ab und zu auch die IPv4-Adresse "8.8.8.8" für den DNS-Server. Es handelt sich dabei um die IPv4-Adresse eines offenen DNS-Server der von Google betrieben wird. Das ist natürlich sehr bequem. Es stellt sich nur die Frage, ob es Sinn macht DNS-Namensauflösungen aus dem lokalen Netz zu Google rauszuschicken. Wenn Google die eigene IPv4-Adresse durch Suchanfragen bekommen hat, dann weiß Google auch welche Webseiten man sonst noch so besucht. Die Frage ist, will man das wirklich?
Technisch gesehen macht es keinen Unterschied, ob man den Google-DNS-Server verwendet, oder den im eigenen lokalen Netz. Aus Datenschutzgründen sollte man immer den eigenen DNS-Server verwenden. Die Adresse ist meistens die des Standard-Gateways. Es spricht vieles dafür genau diese Adresse zu verwenden und keinen DNS-Server außerhalb des lokalen Netzwerks.

Lease-Time festlegen

Am Schluss muss noch die Lease-Time festgelegt werden. Sie gibt die Gültigkeit einer Adresszuteilung an. Vor Ablauf der Lease-Time muss sich der Client beim DHCP-Server melden, damit er die zugewiesene Adresse weiterhin behalten darf. Tut er das nicht, dann darf der DHCP-Server die IP-Adresse anderweitig vergeben.

Welcher Wert ist für die Lease-Time sinnvoll? In einem Heimnetz, wo nur selten neue Rechner hinzukommen, kann die Lease-Time durchaus mehrere Tage betragen. In Netzen mit häufig wechselnden Clients und eventuell knappem Vorrat an IP-Adressen kann man die Lease-Time auch auf wenige Stunden herabsetzen. Dann werden nicht verlängerte Adressen schneller frei und können an neue Client vergeben werden.

Lösung: DHCP-Server von ISC

Es gibt mehrere DHCP-Server für Linux. Der DHCP-Server von ISC ist der gebräuchlichste, leistungsfähigste DHCP-Server, und ist gleichzeitig auch noch einfach zu konfigurieren.

Zuerst installieren wir den DHCP-Server.

sudo apt-get install isc-dhcp-server

Unter Umständen erscheint bei der Installation eine Fehlermeldung. Das ist an der Stelle korrekt, weil der Server mit der Default-Konfiguration nicht lauffähig ist. Die Installation war in diesem Fall trotzdem erfolgreich.

Weiter geht es mit der Konfiguration. Vorher sichern wir die Default-Konfigurationsdatei und erstellen eine neue.

sudo mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf_alt sudo nano /etc/dhcp/dhcpd.conf

Danach öffnet sich der Editor mit einer leeren Datei, in die wir die folgende Konfiguration eintragen.

authoritative; default-lease-time 86400; max-lease-time 86400; subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.201 192.168.1.250; option routers 192.168.1.1; option domain-name-servers 192.168.1.1; option domain-name "local"; }

Bei jeder Zeile handelt es sich um eine Direktive, also eine Anweisung für den DHCP-Server, die jeweils mit einem Semikolon bzw. Strichpunkt abgeschlossen wird. Ausnahmen bilden Zeilen mit sich öffnenden oder schließenden geschweiften Klammern.

Die hier dargestellte Konfiguration ist beispielhaft und darf nicht einfach so übernommen werden. Ein fehlerhaft konfigurierter DHCP-Server kann in einem Netzwerk Störungen verursachen.

Die Konfigurationsdatei beginnt mit der Direktive "authoritative;". Das bedeutet, dass der DHCP-Server für das Netzwerk verantwortlich ist und das Sagen hat.
Die Direktive "default-lease-time" bestimmt die Dauer, die eine IP-Konfiguration gültig ist. "max-lease-time" ist die maximal gültige Dauer für eine IP-Konfiguration. Beides sollte gesetzt sein, sonst würde die Lease-Time theoretisch unendlich sein. Die Angabe erfolgt in Sekunden.
Dann folgt die Definition des Subnetzes mit Netzadresse, der Subnetzmaske und der Adressbereich, der verteilt bzw. verwaltet werden soll.
Innerhalb des Subnetzes befindet sich die Direktive für das Standard-Gateways mit "option routers", den DNS-Server mit "option domain-name-servers" und die lokale Top-Level-Domain mit "option domain-name".
Wenn eine der Direktiven außerhalb des Subnetzes steht, dann gilt diese Option generell und nicht nur für dieses Subnetz.

Wenn eine Zeile geändert wird, dann ist darauf zu achten, dass jede Zeile, außer bei einer geschweiften Klammer, mit einem Semikolon/Strichpunkt (";") endet.

Wenn man fertig ist, dann speichern und schließen: Strg + O, Return, Strg + X.

Anschließend muss der DHCP-Server neu gestartet werden, damit die geänderte Konfiguration übernommen wird.

sudo service isc-dhcp-server restart

Wenn die Befehlseingabe ohne Meldung zurückkehrt, dann hat es geklappt. Bei einer Fehlermeldung, sollte man noch mal die Konfigurationsdatei öffnen und prüfen. Es handelt sich ziemlich sicher um einen Fehler in dieser Datei.

Lösung: Status des DHCP-Servers abfragen

Wenn man nicht genau weiß, ob der DHCP-Server richtig arbeitet, kann man sich den Status anzeigen lassen.

sudo service isc-dhcp-server status

Die vergebenen Leases werden in einer Datei verzeichnet:

cat /var/lib/dhcp/dhcpd.leases Hinweis zum ISC-DHCP-Server

Der ISC-DHCP-Server ist bezüglich der IP-Adress-Vergabe sehr konservativ. Gemeint ist, dass er versucht dem selben Client immer wieder die selbe IP-Adresse zu geben. Solange er einen Anhaltspunkt findet, zum Beispiel die MAC-Adresse oder eine konkrete Anfrage des Clients nach einer IP-Adresse, wird er diese zuteilen.
Warum könnte das wichtig sein? In einem lokalen Netzwerk ist das nahezu bedeutungslos. Anders sieht es aus, wenn ein ISP Kunden per dynamischer Adressvergabe an sein Netz anbindet und darüber Services für die Kunden betreibt. Beispielsweise Voice over IP oder Video-Streaming. Wenn die dynamisch zugeteilte IP-Adresse des Kundennetzes seine Gültigkeit verliert und der Router des Kunden eine neue anfordert und auch eine neue bekommt, dann brechen alle laufenden Verbindungen mit der alten IP-Adresse ab. Zum Beispiel Telefongespräche und Video-Streams. Das will man natürlich vermeiden, weil es dem Kunden suggeriert, dass der Internet-Anschluss nicht richtig funktioniert und sich öffentliche Beschwerden und beim Support einstellen.

Weitere verwandte Themen:
  • Schritt für Schritt den Raspberry Pi als Server einrichten
  • Raspberry Pi als Server im Dauerbetrieb (24/7, headless)
  • Raspberry Pi als WLAN-Access-Point einrichten
  • File-Server auf dem Raspberry Pi einrichten
  • Print-Server mit CUPS und AirPrint auf dem Raspberry Pi einrichten

Hinweis: Dieses Tutorial ist Teil einer Aufgaben und Übungen mit dem Raspberry Pi-Reihe, die für Lern- und Ausbildungszwecke erstellt wurde. Die dargestellte Lösung ist Teil einer konkreten Aufgabenstellung, die Schüler, Auszubildende und Studenten, lösen sollen. Deshalb muss der hier aufgezeigte Weg nicht der Optimalfall sein.


Vergleichen Sie diesen Kurs mit ähnlichen Kursen
Mehr ansehen