Dhcpd

Aus wiki.archlinux.de

Bei dem DHCPD handelt es sich um einen Serverdaemon für das DHCP-Protokoll. Er findet sich im Paket dhcp in EXTRA.

Er wird durch die Datei /etc/dhcpd.conf konfiguriert.

Hinweis: Dieser Artikel ist noch unvollständig.

Beispielkonfigurationen

Klassisch

authoritative;

subnet 192.168.2.0 netmask 255.255.255.0
{
  range 192.168.2.100 192.168.2.199;
  option routers 192.168.2.1;
  option domain-name-servers 192.168.2.1;
  default-lease-time 600;
  max-lease-time 7200;
}

host server
{
  hardware ethernet 00:1b:b9:ba:79:b4;
  fixed-adress 192.168.2.10;
  option host-name "server"
}

PXE-Boot-Fähig

authoritative;

allow booting;
allow bootp;

subnet 192.168.2.0 netmask 255.255.255.0
{
  range 192.168.2.100 192.168.2.199;
  option routers 192.168.2.1;
  option domain-name-servers 192.168.2.1;
  default-lease-time 600;
  max-lease-time 7200;

  next-server 192.168.2.10;
  filename "/pxelinux.0"
}

host server
{
  hardware ethernet 00:1b:b9:ba:79:b4;
  fixed-address 192.168.2.10;
  option host-name "server"
}

Syntax

Die Syntax beschreibt sich so, dass in der Datei Direktiven vorhanden sind, auf welche durch Leerzeichen getrennte Parameter folgen. Die Direktiven lassen sich in Blöcke zusammenfassen. Durch ein Semikolon wird ein Ende einer Direktive definiert. Blöcke werden mithilfe von geschweiften Klammern umschlossen. Auf das Ende eines Blockes muss keine geschweifte Klammer folgen. Man kann alle Direktiven auch in einer Zeile zusammenfassen, dies ist jedoch aufgrund der Übersichtlichkeit im Interesse des Administrators zu entscheiden. Sollten mehrere Blöcke auf einen Host zutreffen, so werden diese miteinander addiert, sprich, zusammengefügt. Zeichenketten (Strings) werden in Anführungszeichen angegeben.

Blöcke

Einstellungen innerhalb eines Blockes betreffen nur diesen einen Block. Direktiven ausserhalb von Blöcken gelten als Global.

Subnet-Block

Der Subnet-Block definiert, wie der Name schon andeutet, ein Subnetz. Dieses besteht aus einem IP-Adressen-Bereich und einer Netzwerkmaske, und somit aus einer größeren Zahl von Rechnern. Diese müssen dem Server nicht näher bekannt sein. Dieser Block eignet sich daher ideal zum Beispiel auch für Gastsysteme, z.B. in WLANs.

Host-Block

Mithilfe des Host-Blocks lassen sich für einzelne Rechner Ausnahmen / Festzuweisungen festlegen.

Direktiven

allow

Allow erlaubt, wie der Name schon sagt, gewisse Funktionen. Mögliche Parameter:

  • booting - Erlaubt das Booten via Netzwerk
  • bootp - Erlaubt es, das BOOTP-Protokoll zu verwenden

authoritative

Diese Direktive, ohne Parameter, gönnt diesem Server eine höhere Priorität im Netzwerk. Grundgedanke davon ist, Piraten-DHCP-Server im Netz zu verhindern.

default-lease-time

Definiert die Lease-Time. Diese gibt an, nach wievielen Sekunden das Ticket erneuert werden soll, um den DHCP-Server zu informieren, dass die IP-Adresse noch verwendet wird.

filename

Nach dieser Direktive folgt ein Dateiname der Datei, die gebootet werden soll. Genauerere Informationen finden sich in Preboot eXecution Environment

fixed-adress

Diese Direktive ist nur in Host-Blöcken zu empfehlen und vergibt eine statische IP-Adresse an einen Host.

hardware ethernet

Diese Direktive findet sich normalerweise in Host-Blöcken wieder, und spezifiziert einen Host mithilfe der MAC-Adresse genauer.

max-lease-time

Gibt an, nach wievielen Sekunden ein Ticket verfällt, und die IP-Adresse als "nicht vergeben" deklariert wird.

next-server

Nach dieser Direktive folgt eine IP-Adresse des nächsten zu kontaktierenden Servers. In der Regel ist dies ein TFTP-Server. Genauerere Informationen finden sich in Preboot eXecution Environment

option

Diese Direktive spezifiziert, welche DHCP-Optionen mitgeliefert werden:

  • domain-name-servers: Nachfolgend folgt eine Liste der DNS-Server
  • host-name: Nachfolgend folgt als Zeichenkette der Name des Systems. Dieser muss vom Zielsystem allerdings nicht angenommen werden, und kann (z.B. durch die /etc/rc.conf) überschrieben werden.
  • routers: nachfolgend folgt eine Liste der Router und Gateways im Netzwerk