Heim > System-Tutorial > LINUX > Hauptteil

DHCP-Prinzipien unter Linux

WBOY
Freigeben: 2024-04-10 21:04:26
nach vorne
731 Leute haben es durchsucht
DHCP-Prinzip
Linux 中的 DHCP 原理
DHCP-Leasing in vier Schritten

A: Client stellt IP-Anfrage

Wenn ein DHCP-Client startet, konfiguriert er seine IP-Adresse automatisch auf 0.0.0.0. Da eine normale Kommunikation mit 0.0.0.0 nicht möglich ist, muss der Client eine gültige Adresse über den DHCP-Server erhalten. Da der Client die IP-Adresse des DHCP-Servers nicht kennt, verwendet er die Adresse 0.0.0.0 als Quelladresse, den UDP68-Port als Quellport, 255.255.255.255 als Zieladresse und den UDP67-Port als Zielport Senden Sie die angeforderten IP-Adressinformationen. Die Broadcast-Informationen enthalten die MAC-Adresse und den Computernamen des DHCP-Clients, sodass der DHCP-Server feststellen kann, welcher Client die Anfrage gesendet hat.

B: Serverantwort

Wenn der DHCP-Server die Informationen vom Client erhält, der eine IP-Adresse anfordert, durchsucht er seinen eigenen IP-Adresspool, um zu sehen, ob dem Client eine legale IP-Adresse zur Verfügung gestellt werden kann. Wenn ja, markiert der DHCP-Server die IP-Adresse und fügt sie der DHCPOFFER-Nachricht hinzu. Anschließend sendet der DHCP-Server eine DHCPOFFER-Nachricht, die die folgenden Informationen enthält: die MAC-Adresse des DHCP-Clients; Subnetzmaske; Standard-Gateway (Routing-Zeitraum); IP-Adresse des DHCP-Servers. Da der DHCP-Client noch keine IP-Adresse hat, verwendet der DHCP-Server seine eigene IP-Adresse als Quelladresse, den UDP67-Port als Quellport, 255.255.255.255 als Zieladresse und den UDP68-Port als Zielport für die Übertragung DHCPOFFER-Nachricht.

C: Client wählt IP aus

Der DHCP-Client wählt eine IP-Adresse aus der ersten empfangenen DHCPOFFER-Nachricht aus, und der DHCP-Server, der die IP-Adresse ausgegeben hat, reserviert die Adresse, damit sie nicht an einen anderen DHCP-Client vergeben werden kann. Die dritte Phase der DHCP-Lease erfolgt, nachdem der Client das DHCPOFFER vom ersten DHCP-Server erhält und eine IP-Adresse auswählt. Der Client sendet eine DHCPREQUEST-Nachricht an alle DHCP-Server, um anzuzeigen, dass er das Angebot annimmt. Die DHCPREQUEST-Nachricht enthält die Dienstkennung (IP-Adresse) des Servers, der die IP-Konfiguration für diesen Client bereitgestellt hat. Der DHCP-Server überprüft das Feld „Server-ID“, um festzustellen, ob er selbst ausgewählt wurde, um den angegebenen Clients IP-Adressen bereitzustellen. Wenn diese DHCPOFFER abgelehnt werden, stellt der DHCP-Server ihre IP-Adressen nicht mehr zur Verfügung und reserviert sie für die nächste IP-Lease-Anfrage.

Während des IP-Auswahlvorgangs hat der Client zwar eine IP-Adresse ausgewählt, aber noch keine IP-Adresse konfiguriert. Es können mehrere DHCP-Server in einem Netzwerk vorhanden sein, sodass der Client immer noch die Adresse 0.0.0.0 als Quelle verwendet Verwenden Sie den UDP68-Port als Quellport, 255.255.255.255 als Zieladresse und den UDP67-Port als Zielport zum Senden von DHCPREQUEST-Informationen.

D: Server bestätigt Lease

Nach Erhalt der DHCPREQUEST-Nachricht sendet der DHCP-Server eine erfolgreiche Bestätigung in Form einer DHCPACK-Nachricht. Diese Nachricht enthält die gültige Lease der IP-Adresse und andere mögliche Konfigurationsinformationen. Obwohl der Server die Lease-Anfrage des Clients bestätigt hat, hat der Client die DHCPACK-Nachricht des Servers nicht erhalten, sodass der Server weiterhin seine eigene IP-Adresse als Quelladresse, den UDP67-Port als Quellport und 255.255.255.255 als Zieladresse verwendet Der UDP68-Port dient als Zielport für die Übertragung von DHCPACK-Informationen. Wenn der Client die DHCPACK-Nachricht empfängt, konfiguriert er eine IP-Adresse und schließt die TCP/IP-Initialisierung ab.

Server bestätigt Lease: DHCPNACK (DHCPNAK)

Wenn DHCPREQUEST nicht erfolgreich ist, weil der Client beispielsweise versucht hat, die vorherige IP-Adresse zu leasen, die IP-Adresse aber nicht mehr verfügbar ist oder die IP ungültig ist, weil der Client in ein anderes Subnetz gewechselt ist, sendet der DHCP-Server eine negative Bestätigungsnachricht DHCPNACK. Wenn der Client eine erfolglose Bestätigung erhält, startet er den DHCP-Lease-Prozess neu.

DHCP-Leasingverlängerung

Linux 中的 DHCP 原理

Der DHCP-Client sendet ein DHCPREQUEST-Nachrichtenpaket direkt an den DHCP-Server, der ihm die IP-Adresse bereitstellt, wenn 50 % der Mietdauer abgelaufen sind. Wenn der Client das vom Server beantwortete DHCPACK-Nachrichtenpaket empfängt, aktualisiert der Client seine Konfiguration basierend auf der neuen Lease-Periode und anderen aktualisierten TCP/IP-Parametern, die im Paket bereitgestellt werden, und die IP-Lease-Aktualisierung ist abgeschlossen. Wenn keine Antwort vom Server eingeht, verwendet der Client weiterhin die vorhandene IP-Adresse, da noch 50 % der aktuellen Lease-Periode verbleiben.

Falls nach Ablauf von 50 % der Lease-Periode kein Update erfolgt, kontaktiert der DHCP-Client nach Ablauf von 75 % der Lease-Periode erneut den DHCP-Server, der ihm die IP-Adresse bereitgestellt hat. Wenn dies immer noch nicht erfolgreich ist und die Lease 100 % erreicht, muss der DHCP-Client die IP-Adresse aufgeben und erneut anwenden. Wenn zu diesem Zeitpunkt kein DHCP-Server verfügbar ist, verwendet der DHCP-Client eine zufällige Adresse in 169.254.0.0/16 und versucht es alle 5 Minuten erneut.

Das obige ist der detaillierte Inhalt vonDHCP-Prinzipien unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:linuxprobe.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!