Dhcpd: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
 
(3 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:


Er wird durch die Datei '''/etc/dhcpd.conf''' konfiguriert.
Er wird durch die Datei '''/etc/dhcpd.conf''' konfiguriert.
== Installation ==
{{ ic | dhcpcd }} kann durch {{ic | pacman}} ganz einfach installiert werden:
sudo pacman -S dhcpcd
== Verwendung ==
Damit er auch jedes Mal beim Booten die Internetverbindung herstellt, muss man den Service von {{ic | dhcpcd}} aktivieren:
sudo systemctl enable dhcpcd.service
{{Hinweis | Dies funktioniert nur für Ethernet-Verbindungen! Für WLAN sollte man stattdessen z.B. [[netctl]] verwenden!}}
Von nun an, wird er sich nach jedem boot um die Internetverbindung kümmern.
Wenn man aber gerade in einem gebootetem System ist, muss man ihn noch manuell starten:
sudo systemctl start dhcpcd.service
Man kann beide Befehle in einem zusammenfassen:
sudo systemctl enable --now dhcpcd.service
Somit startet {{ ic | dhcpcd}} sofort und er wird beim boot direkt aktiv.


=Beispielkonfigurationen=
=Beispielkonfigurationen=
Zeile 79: Zeile 95:
==filename==
==filename==
Nach dieser Direktive folgt ein Dateiname der Datei, die gebootet werden soll.
Nach dieser Direktive folgt ein Dateiname der Datei, die gebootet werden soll.
Genauerere Informationen finden sich in [[Preboot eXecution Environment]]
Genauere Informationen finden sich in [[Preboot eXecution Environment]]


==fixed-adress==
==fixed-adress==
Zeile 92: Zeile 108:
==next-server==
==next-server==
Nach dieser Direktive folgt eine IP-Adresse des nächsten zu kontaktierenden Servers. In der Regel ist dies ein TFTP-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]]
Genauere Informationen finden sich in [[Preboot eXecution Environment]]


==option==
==option==
Zeile 102: Zeile 118:


[[Kategorie:Netzwerk]]
[[Kategorie:Netzwerk]]
[[en:Dhcpd]]

Aktuelle Version vom 6. April 2020, 23:37 Uhr

Warn 16x16.png Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


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.

Installation

dhcpcd kann durch pacman ganz einfach installiert werden:

sudo pacman -S dhcpcd

Verwendung

Damit er auch jedes Mal beim Booten die Internetverbindung herstellt, muss man den Service von dhcpcd aktivieren:

sudo systemctl enable dhcpcd.service

Hinweis: Dies funktioniert nur für Ethernet-Verbindungen! Für WLAN sollte man stattdessen z.B. netctl verwenden!

Von nun an, wird er sich nach jedem boot um die Internetverbindung kümmern. Wenn man aber gerade in einem gebootetem System ist, muss man ihn noch manuell starten:

sudo systemctl start dhcpcd.service

Man kann beide Befehle in einem zusammenfassen:

sudo systemctl enable --now dhcpcd.service

Somit startet dhcpcd sofort und er wird beim boot direkt aktiv.

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-address 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. Genauere 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. Genauere 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