LF 3 · Clients ins Netz · 10/50 · 52 Min. angesetzt – Langform, jedes Wort zählt
DHCP: vom Schrei bis zum Lease
Dieses Kapitel erklärt DHCP vollständig hier. Kein Verweis auf später. Wenn du keine Ahnung hast, reicht der Text, um den Dienst zu verstehen, ihn auf Windows und Linux zu erkennen und einen toten Lease zu finden.
DHCP heißt Dynamic Host Configuration Protocol. Der Client bittet um Konfiguration, ein Server antwortet. Die Konfiguration ist mindestens: IPv4-Adresse, Subnetzmaske, Default-Gateway, DNS-Server, Gültigkeitsdauer. Zusätzlich können Domainname, Zeitserver und PXE-Angaben kommen. DHCP erlaubt den Zugang nicht im Sinne einer Firewall. Es füllt die Felder, ohne die der Client stumm bleibt.
Warum der Client schreien muss
Ohne Adresse kennt der Client niemanden persönlich. Unicast setzt Nummern voraus. Also Broadcast: Ethernet-Ziel ff:ff:ff:ff:ff:ff, IP-Ziel 255.255.255.255, UDP-Zielport 67, Quellport 68, Quell-IP oft 0.0.0.0. Jeder DHCP-Server im selben Segment darf antworten. Ein Router leitet den Schrei nicht weiter. Sitzt der Server in einem anderen VLAN, braucht es ein Relais.
DORA
Discover sucht Server. Offer bietet Adresse und Optionen. Request verlangt genau dieses Angebot. Ack macht den Lease gültig. Nak schickt an den Start. Decline: die Adresse lebt schon, gesehen per ARP.
Lease
Zeitlich begrenztes Nutzungsrecht. Nach etwa 50 Prozent (T1) Verlängerung beim gebenden Server. Nach etwa 87,5 Prozent (T2) Frage an andere Server. Läuft die Zeit ab, muss die Adresse weg.
Scope
Pool plus Optionen für ein Netz. Der Server wählt ihn nach dem Netz der Frage: lokal über das Empfangsinterface, über Relais über giaddr.
giaddr
Adresse des Router-Interfaces, an dem der Discover ankam. Daran erkennt der Server das Quellnetz. Ohne giaddr liegt der Lease oft im falschen Scope.
Option
Zusatz im Paket. 3 = Router (Gateway). 6 = DNS-Server. 15 = Domain-Name. 51 = Lease-Zeit. 66/67 = PXE. Falsche Option 6: Ping auf 9.9.9.9 geht, der Name stirbt.
Reservierung
Diese MAC oder Client-ID bekommt immer dieselbe IP. Gehört in die Betriebsdoku, nicht nur in die GUI.
Windows
DHCP ist eine Server-Rolle. In der Domäne muss der Server autorisiert sein, sonst gibt er typisch keine Leases aus – Bremse gegen den wilden Stockwerk-Router. Scope: Netz, Maske, Start, Ende, Ausschluss für Gateway und Drucker, Lease-Dauer, Optionen, aktivieren.
Get-DhcpServerv4Scope Get-DhcpServerv4Lease -ScopeId 10.20.30.0 Get-DhcpServerv4OptionValue -ScopeId 10.20.30.0 ipconfig /all ipconfig /release ipconfig /renew
ipconfig /all zeigt den gebenden Server, die Lease-Zeiten, das Suffix. Im Protokoll Microsoft-Windows-DHCP-Client stehen Timeout, Nak, APIPA. Eine statische Adresse mitten im Pool erzeugt Decline und sporadische Doppel.
Linux
isc-dhcp-server liest /etc/dhcp/dhcpd.conf. Kea spricht JSON. dnsmasq mischt oft DHCP und DNS auf kleinen Kästen. Der Dienst muss an dem Interface lauschen, an dem die Clients hängen, oder Relais nutzen.
subnet 10.20.30.0 netmask 255.255.255.0 {
range 10.20.30.50 10.20.30.200;
option routers 10.20.30.1;
option domain-name-servers 10.20.30.10;
default-lease-time 28800;
}sudo dhcpd -t -cf /etc/dhcp/dhcpd.conf sudo systemctl restart isc-dhcp-server journalctl -u isc-dhcp-server -e sudo ss -ulnp | grep :67 sudo tcpdump -ni eth0 port 67 or port 68
dhcpd.leases ist der Zustand, nicht die Konfiguration. systemctl kann active zeigen, während AppArmor oder die Firewall Port 67 zu hat – dann kommt im tcpdump nichts an.
Tote Leases
- Link, VLAN, Dose, SSID.
- Offers sichtbar? tcpdump auf 67/68.
- giaddr gesetzt, wenn Relais im Spiel ist?
- Scope aktiv, Pool nicht voll, Reservierung korrekt?
- Option 3 und 6 auf lebenden Adressen?
- APIPA 169.254.0.0/16 heißt: kein Ack. Dokumentierter Fehlschlag.
Prüfung