DHCPDISCOVER ist die erste Broadcast-Nachricht, die DHCP-Clients senden, um verfügbare DHCP-Server in ihrem lokalen Netzwerk zu finden, wie in RFC 2131 definiert, und bildet den ersten Schritt des DORA-Austauschs (Discover, Offer, Request, Acknowledge). Wenn ein Client hochfährt oder sich ohne gültige IP-Adresse in ein Netzwerk einklinkt, sendet er eine DHCPDISCOVER-Nachricht von der Quelladresse 0.0.0.0 an die begrenzte Broadcast-Adresse 255.255.255.255 über die UDP-Ports 68 bis 67, wodurch Server mit DHCPOFFER-Nachrichten antworten können, die vorgeschlagene IP-Konfigurationen und Leasingbedingungen enthalten. Werden keine DHCPOFFER-Antworten empfangen – verursacht durch fehlende Relay-Agenten, erschöpfte Adresspools, Serverausfälle oder die Filterung von DHCP-Ports durch Firewalls –, können Geräte keine nutzbaren Adressen beziehen und müssen in der Regel auf nicht routbare link-lokale Adressen im Bereich 169.254.0.0/16-Bereich zurückzugreifen, was den Netzwerkzugang unterbricht und Administratoren dazu zwingt, die Relay-Konfiguration, die Verfügbarkeit des Scopes und den Zustand der Server zu überprüfen.
So funktioniert DHCPDISCOVER
Ein Client ohne gültige IP-Konfiguration, beispielsweise einer, der gerade hochgefahren ist oder sich einem Netzwerk angeschlossen hat, sendet ein DHCPDISCOVER-Paket, um einen DHCP-Server zu finden, der ihn konfigurieren kann. Dies ist der erste Schritt des Austauschvorgangs, der oft als DORA bezeichnet wird.
- Der Client sendet ein DHCPDISCOVER-Broadcast: Da der Client keine Adresse hat, sendet er die Nachricht von der Quelladresse 0.0.0.0 an die begrenzte Broadcast-Adresse 255.255.255.255, wobei er UDP vom Port 68 bis zum Port 67 verwendet.
- Die Nachricht enthält die Client-Identität und Hinweise: Die Nachricht enthält die Hardware-Adresse des Clients und eine Transaktions-ID. Sie kann außerdem Optionen enthalten, wie beispielsweise eine gewünschte IP-Adresse oder eine Liste von Parametern, die der Client wünscht.
- Relay-Agenten leiten die Nachricht bei Bedarf weiter: Broadcasts werden nicht über Router weitergeleitet. Befindet sich kein Server im lokalen Segment, leitet ein DHCP-Relay-Agent die Nachricht als Unicast an konfigurierte Server weiter.
- Server antworten mit DHCPOFFER: Jeder Server, der den Client bedienen kann, antwortet mit einem DHCPOFFER, das eine vorgeschlagene Adresse und die Leasingbedingungen enthält. Der Client wählt dann ein Angebot aus und sendet ein DHCPREQUEST.
DHCPDISCOVER weist keine Adressen zu. Der Client verfügt über keine Adresse, bis der Server dies mit einem DHCPACK bestätigt. Ein Client kann mehrere Angebote oder gar keine erhalten und sendet das DISCOVER-Paket mit Backoff erneut, wenn kein Server antwortet.
Häufige Probleme mit DHCPDISCOVER
Clients in einem VLAN ohne DHCP-Server erhalten niemals eine Antwort, da Broadcasts Router nicht passieren. Die Lösung ist ein Relay-Agent, oft auch als IP-Helper bezeichnet, auf der Gateway-Schnittstelle, der auf den richtigen Server verweist.
Der Server empfängt DISCOVER-Nachrichten, verfügt jedoch über keine freien Adressen und sendet daher kein Angebot. Die Clients verfallen daraufhin in eine Zeitüberschreitung oder weisen sich selbst eine Adresse aus dem Bereich 169.254.0.0/16 zu. Lange Lease-Zeiten auf vorübergehend verbundenen Gastgeräten sind eine häufige Ursache.
DHCP-Snooping bei einem nicht vertrauenswürdigen Uplink-Port kann dazu führen, dass Serverantworten verloren gehen, sodass zwar ein DISCOVER-Befehl erkannt wird, aber kein Angebot den Client erreicht. Port-Sicherheit oder Zugriffslisten, die die UDP-Ports 67 und 68 blockieren, verursachen ähnliche Symptome.
Massenhafte Wiederverbindungen nach einem Stromausfall oder einem Neustart des Switches senden viele DISCOVER-Nachrichten auf einmal, was einen Server überlasten oder die Warteschlange eines Relays füllen kann. Ein gestaffelter Start und Server mit ausreichender Kapazität verringern die Auswirkungen.
Ein nicht autorisierter DHCP-Server, beispielsweise ein an das LAN angeschlossener Router für Privatanwender, kann als Erster auf den DISCOVER-Befehl antworten. Clients erhalten dann falsche Gateways oder DNS-Server. Paketaufzeichnungen, die Angebote von unerwarteten Quellen zeigen, bestätigen dies.