DHCP: Anlegen eines neuen Subnetzes mit Optionen und Adress-Pool

Basierend auf der hier vorgestellten DHCP-Installation sollen nun weitere Subnetze eingerichtet werden, für die der Server DHCP-Leases bereitstellen soll. Dies kann nun entweder direkt über die Kommandozeile oder über die Webmin-GUI erfolgen. In beiden Fällen werden entsprechende Abschnitte in der Datei /etc/dhcp/dhcp-networks.conf angelegt.

Anlage über die Webmin-GUI

Nach der Anmeldung im Webmin findet sich die DHCP-Server Konfiguration unter Servers -> DHCP Server.

Hier sind die schon angelegten Subnetze aufgelistet, ein neues kann mit einem Klick auf ‘Ein neues Subnet hinzufügen’ angelegt werden. Man gelangt so in ein zunächst leeres Formular, welches mit den entsprechenden Werten gefüllt wird.

Im Normalfall brauchen hier nur die Felder für Beschreibung, Netzwerkadresse und Subnetzmaske gefüllt werden. Die weiteren Optionen folgen nach einem Klick auf den Button ‘Bearbeite Client-Einstellungen’.

Auch hier reichen meist wenige Angaben aus. Wichtig sind Standard-Router (Default-Gateway), DNS- und Zeit-Server.
Damit sind die wichtigsten Optionen für den Client-Betrieb gemacht, die Konfiguration wird mit einem Klick auf ‘Speichern’ abgelegt und man gelangt wieder in den Subnetz-Bildschirm.
Nun braucht nur noch definiert werden aus welchem Bereich ein Client eine IP-Adresse erhalten soll. Genau dazu dienen Adress-Pools. Um einen solchen Pool anzulegen klickt man auf ‘Füge  einen Adress-Pool hinzu’.

Unter Adressbereiche gibt man einen Bereich für IP-Adressen an, die der DHCP-Server verteilen kann. Mehr einzutragen ist eigentlich nicht notwendig.
Interessant ist aber ggfls. der Eintrag unter Failover-Peer. Wenn der DHCP-Server Teil eines Failover-Systems ist, kann hier dessen Name eingetragen werden und der Adressbereich wird ins HA übernommen, die vergebenen Leases werden zwischen den Failover-Partnern ausgetauscht, so dass der DHCP-Betrieb im Fehlerfall nahtlos weiter läuft.
Sind die Angaben vollständig, kann gespeichert werden, auch das Subnetz wird gespeichert und man gelangt wieder in das Einstiegsfenster des DHCPd. Ein Klick auf ‘Änderungen anwenden’ aktiviert die neue Konfiguration.
Ist das System Teil eines Failover-Systems muss noch die Datei /etc/dhcp/dhcp-networks.conf auf das andere System kopiert und der Dienst dort ebenfalls neu gestartet werden.

Anlage via Shell

Das Anlegen eines Subnet erfolgt in der Datei /etc/dhcp/dhcp-networks.conf.

nano /etc/dhcp/dhcp-networks.conf

Hier kann das Subnet eingetragen werden:

# ClientA WLAN-Users 
subnet 172.16.211.0 netmask 255.255.255.0 { 
       
       }

Dies entspricht dem Subnet-Dialog im Webmin. Die weiteren Deklaration folgen nun im Bereich zwischen den geschweiften Klammern.

# ClientA WLAN-Users 
subnet 172.16.211.0 netmask 255.255.255.0 { 
       option time-offset 1; 
       option ntp-servers 192.168.10.20; 
       option time-servers 192.168.10.20; 
       option domain-name-servers 1.1.1.1 , 9.9.9.9 , 8.8.8.8; 
       option broadcast-address 172.16.211.255; 
       option routers 172.16.211.1; 
       default-lease-time 600; 

       }

Die Option Einträge wurden eben per Webmin im Bereich Client-Einstellungen vorgenommen. Eine ausführliche Dokumentation der Optionen ist unter https://www.isc.org zu finden.
Zu guter Letzt fehlt noch der Adress-Pool, damit auch die Leases vergeben werden können.

# ClientA WLAN-Users 
subnet 172.16.211.0 netmask 255.255.255.0 { 
       option time-offset 1; 
       option ntp-servers 192.168.10.20; 
       option time-servers 192.168.10.20; 
       option domain-name-servers 1.1.1.1 , 9.9.9.9 , 8.8.8.8; 
       option broadcast-address 172.16.211.255; 
       option routers 172.16.211.1; 
       default-lease-time 600; 
       pool { 
               max-lease-time 600;
               failover peer "Beispiel-System";
               range 172.16.211.30 172.16.211.39; 
               } 
       }

Damit ist die Definition komplett und kann mittels

systemctl restart isc-dhcp-server
systemctl status isc-dhcp-server

aktiviert und der Betriebsstatus des DHCP geprüft werden.

Bei einem Failover-System muss die Datei noch auf den Partner-Rechner kopiert und mittels systemctl (s.o.) aktiviert werden.