DHCP - Dynamic Host Configuration Protocol
Hauptaufgabe:
- Dynamische Zuweisung einer IP-Adresse und weitere Parameter an einen Client
Eigenschaften:
- DHCP benutzt Port 67 bei UDP und 68 bei TCP
- DHCP arbeitet auf der Anwendungsschicht (7) im TCP/IP-Modell
- DHCP ist im Standard RFC 2131 beschrieben
- DHCP ist ein Hintergrundprozess
- DHCP ist eine Erweiterung des BOOTP Protokolls
Mögliche Zuweisungen:
- IP-Adresse und Netzwerkmaske
- Default-Gateway
- Nameserver (DNS-Server)
- WINS-Server
- Proxy-Konfiguration (nicht unter Windows Unterstützt)
IP-Pool
Damit der DHCP-Server IP-Adressen verteilen kann, müssen diese vorher konfiguriert werden. Beispielsweise:
-
-
- Start: 192.168.0.1
- Ende: 192.168.0.200
- Subnetzmaske: 255.255.255.0
- Standardgateway: 192.168.0.254
-
Der DHCP-Server vergibt dann bei jeder Anfrage eine Adresse aus diesem Pool. Ist der Pool ausgeschöpft, vergibt er keine Adressen mehr.
Lease
Damit Clients eine IP-Adresse nicht für immer blockiert, wurde eine Lease-Zeit eingeführt, nachdem eine IP-Adresse automatisch abläuft. Üblicherweise fragt ein Client sobald die Hälfte der Lease-Zeit abgelaufen ist, ob er die IP-Adresse behalten darf. Wird dies verneint, muss der Client, nachdem die IP-Adresse abgelaufen ist, eine neue anfordern.
DHCP-Discover
Sobald ein Client gebootet hat, wird er einen Broadcast versenden um einen möglichen DHCP-Server zu finden. Diesen Broadcast sendet er von seiner MAC-Adresse an FF:FF:FF:FF:FF:FF. Innerhalb des Ethernet-Pakets ist ein IP-Paket eingebettet, welches von der IP-Adresse 0.0.0.0 an 255.255.255.255 gesendet wird. Hier sendet der Client von einer nicht realen IP-Adresse, da er selbst noch keine besitzt und möglichst jeden Host erreichen möchte. Innerhalb des IP-Rahmens ist ein UDP-Paket, welches vom Port 68 auf den Port 67 geschickt wird.
DHCP-Offer
Im darauf folgenden Paket bietet der DHCP-Server dem Client nun eine oder mehrere IP-Adressen an, aus denen er wählen kann. Das Paket wird von der MAC-Adresse des DHCP-Servers zur MAC-Adresse des Clients geschickt. Die IP-Adressen werden auf die IP-Adresse des DHCP-Servers als Quelle und 255.255.255.255 als Ziel gesetzt, da der Client noch keine IP-Adresse hat.
DHCP-Request
Aus dem Angebot des DHCP-Offer sucht sich der Client nun eine IP-Adresse, die er benutzen möchte, z.B. die, die er vorher schon mal besessen hat. Er muss, nachdem er sich eine ausgesucht hat, diese explizit nochmals anfragen um ggf. Überschneidungen mit anderen DHCP-Offer-Paketen zuvorzukommen. Das DHCP-Request Paket wird wieder von den nun bekannten MAC-Adressen von 0.0.0.0 an 255.255.255.255 gesendet.
DHCP-Acknowledge
Sobald die Auswahl geprüft wurde, bestätigt der DHCP-Server die Auswahl und sendet unter seiner IP-Adresse an 255.255.255.255 ein ACK-Paket, was soviel bedeutet, dass der Auswahl stattgegeben wurde und der Client von nun an bis zum Ende der Lease-Zeit diese IP-Adresse nutzen darf. Auch das ACK-Paket wird aus IP-Sicht gesehen noch als Broadcast an
255.255.255.255 gesendet, da bis zum Eintreffen dieses Pakets der Client nicht mit Gewissheit weiß, ob er die angebotene und später auch angeforderte IP-Adresse wirklich nutzen darf.
Nach dem DHCP-ACK darf er unter der angeforderten IP-Adresse kommunizieren.
