IPv4/DHCP: Unterschied zwischen den Versionen

Aus Foxwiki
Subpages:
K Textersetzung - „Man-Pages“ durch „Man-Page“
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
[[File:2023-10-30_00-46.png|mini|400px]]
* DHCP kann als Nachfolger vom BOOT-Protokoll verstanden werden, das entwickelt wurde, um Rechner ohne Festplatte in IP-Netzen zu starten und automatisch zu konfigurieren.
* DHCP kann als Nachfolger vom BOOT-Protokoll verstanden werden, das entwickelt wurde, um Rechner ohne Festplatte in IP-Netzen zu starten und automatisch zu konfigurieren.
* Veröffentlichung der ersten DHCP-Version Ende 1993 im RFC 1541
* Veröffentlichung der ersten DHCP-Version Ende 1993 im RFC 1541
Zeile 129: Zeile 130:


==== Bestätigungsphase ====
==== Bestätigungsphase ====
* Antwort des DHCP-Servers mit der Nachricht ''DHCP-ACK'' mit allen Konfigurationsparametern für den Client
Antwort des DHCP-Servers mit der Nachricht ''DHCP-ACK'' mit allen Konfigurationsparametern für den Client
* Sollten in dieser Phase weitere Angebote eintreffen, werden diese vom Client verworfen.
* Sollten in dieser Phase weitere Angebote eintreffen, werden diese vom Client verworfen.




[[File:DHCP-Phasen.png|1600px|none]]
[[File:DHCP-Phasen.png|1000px|none]]


==== Weitere DHCP-Nachrichtentypen ====
==== Weitere Nachrichtentypen ====
'''DHCP-NAK'''
{| class="wikitable options"
* wird während der Bestätigungsphase vom Server an den Client gesendet, um diesen darauf hinzuweisen, daß die im ''DHCP-REQUEST'' angeforderten Konfigurationsparameter abgeleht wurden:
|-
** wenn ein Client versucht seine bisherige IP-Adresse zu verlängern, diese jedoch nicht mehr verfügbar ist
! Nachrichtentyp !! Beschreibung
** wenn ein Client in ein anderes Subnetz umgezogen & somit die IP-Adresse ungültig ist
|-
 
| DHCP-NAK || Wird während der Bestätigungsphase vom Server an den Client gesendet, um diesen darauf hinzuweisen, daß die im ''DHCP-REQUEST'' angeforderten Konfigurationsparameter abgeleht wurden:
'''DHCP-RELEASE'''
* wenn ein Client versucht seine bisherige IP-Adresse zu verlängern, diese jedoch nicht mehr verfügbar ist
* Hiermit teilt ein Client dem Server mit, daß er seine IP-Adresse nicht mehr benötigt und der Server die Adresse freigeben und anderweitig vergeben kann
* wenn ein Client in ein anderes Subnetz umgezogen & somit die IP-Adresse ungültig ist
 
|-
'''DHCP-DECLINE'''
| DHCP-RELEASE || Hiermit teilt ein Client dem Server mit, daß er seine IP-Adresse nicht mehr benötigt und der Server die Adresse freigeben und anderweitig vergeben kann
* Der Client kann hierüber den Server in Kenntnis setzen, daß einige Parameter ungültig sind (zum Beispiel seine MAC-Adresse)
|-
 
| DHCP-DECLINE || Der Client kann hierüber den Server in Kenntnis setzen, daß einige Parameter ungültig sind (zum Beispiel seine MAC-Adresse)
'''DHCP-INFORM'''
|-
* Kann von Clients verwendet werden, denen eine statische IP-Adresse zugewiesen wurde, um weitere dynamische Konfigurationsparameter vom Server anzufordern.
| DHCP-INFORM || Kann von Clients verwendet werden, denen eine statische IP-Adresse zugewiesen wurde, um weitere dynamische Konfigurationsparameter vom Server anzufordern.
|}


== Lease-Dauer ==
== Lease-Dauer ==
Zeile 167: Zeile 169:
==== Dokumentation ====
==== Dokumentation ====
===== RFC =====
===== RFC =====
===== Man-Pages =====
===== Man-Page =====
===== Info-Pages =====
===== Info-Pages =====
==== Links ====
==== Links ====

Aktuelle Version vom 6. November 2024, 12:32 Uhr

DHCP ist ein Protokoll zur dynamischen Konfiguration von Geräten in Neztwerken.

Beschreibung

  • DHCP kann als Nachfolger vom BOOT-Protokoll verstanden werden, das entwickelt wurde, um Rechner ohne Festplatte in IP-Netzen zu starten und automatisch zu konfigurieren.
  • Veröffentlichung der ersten DHCP-Version Ende 1993 im RFC 1541
  • Ablösung durch neue Version in RFC 2131 im März 1997
  • Erweiterungen von RFC 2131 durch die RFCs 2132, 3396 & 4361

Grundlagen

  • DHCP regelt die dynamische Vergabe von IP-Adressen und kann die Konfiguration von Rechnern unterstützen
  • DHCP funktioniert nach dem Client-Server-Prinzip
  • Benutzer eines Rechners benötigt keine IP-Adresse von einem Administrator - werden vom DHCP-Server zur Verfügung gestellt
  • IP-Konfigurationsparameter für die Clients sind auf dem DHCP-Server gespeichert
  • Vergabe der IP-Adressen erfolgt aus einem Pool von IP-Adressen, der vom Server verwaltet wird
  • Implementierung von DHCP-Relays, um DHCP-Nachrichten in andere Subnetze weiterzuleiten, die über keinen DHCP-Server verfügen

Beim Start einer DHCP-Client-Applikation werden vom Server folgende Informationen angefordert:

  • Client-IP-Adresse
  • Lease-Dauer
  • Identifikation des DHCP-Servers
  • Subnetzmaske
  • Default-Gateways
  • statische Routen
  • Hostname & Domainname
  • Lokation externer Server (z. Bsp. Time-Server)

Anforderungen an den DHCP-Server

  • Ein DHCP-Server muß über einen Bereich gültiger IP-Adressen verfügen.
  • Der Server benötigt eine manuell zugewiesene statische IP-Adresse (Der Server selbst kann kein Client sein).
  • Soll ein Server IP-Adressen für Clients in verschiedenen Subnetzen verteilen, so müssen sämtliche Router zwischen den Subnetzen als DHCP-Relay-Agenten konfiguriert werden.
    • Wird dies von den Routern nicht unterstützt, benötigt jedes Subnetz einen eigenen DHCP-Server.
  • Im Pool der IP-Adressen dürfen keine statischen IP-Adressen enthalten sein, da diese anderenfalls doppelt vergeben würden.

Zuweisungsmethoden des DHCP-Verfahrens

Automatische Zuweisung

  • IP-Adressen werden automatisch an die MAC-Adressen von neuen DHCP-Clients vergeben & diese Zuordnung in einer Tabelle festgehalten
  • Vergabe der IP-Adresse an den Client erfolgt aus einem Pool von IP-Adressen, der vom Server verwaltet wird
  • Zuordnungen sind permanent und werden nicht entfernt - jeder Client erhält somit stets die gleiche IP-Adresse

Dynamische Zuweisung

  • Vergabe erfolgt analog der Automatischen Zuweisung
  • Zuweisung der IP-Konfiguration jedoch für einen bestimmten Zeitraum (Lease-Dauer)
  • Verfall der IP-Adresse nach Ablauf der Lease-Dauer - Neuvergabe an anderen Client durch den DHCP-Server möglich
  • Client kann/muß vor Ablauf der Lease-Dauer eine Verlängerung beantragen
  • erlaubt, als einzige Zuweisungsmethode die Wiederverwendung von IP-Adressen, wenn der Client diese nicht mehr benötigt

Manuelle Zuweisung

  • DHCP-Server führt eine Zuweisungstabelle: feste Zuordnung von MAC-Adresse zu IP-Adresse (statisches DHCP)
  • Client erhält immer die gleiche IP-Adresse
  • nur Rechner mit bekannten & registrierten MAC-Adressen erhalten eine IP-Adresse
  • sinnvoll bei Servern, die stets unter der gleichen IP-Adresse erreichbar sein sollen

DHCP-Nachrichten

  • Austausch von festgelegten DHCP-Nachrichten zwischen Server & Client
  • Übermittlung durch das verbindungslose Transportprotokoll UDP (Server-Port: 67 & Client-Port: 68)
  • Der DHCP-Client stellt einen Anwendungsprozess auf einem Rechner dar & ist auf dem Well-Known-Port 68 erreichbar
  • Der DHCP-Server läuft als Anwendungsprozess auf einem dedizierten Rechner & ist auf dem Well-Known-Port 67 zu erreichen

Aufbau von DHCP-Nachrichten

Feld Länge [Byte] Bedeutung Beschreibung
op 1 Operation gibt an, ob es sich um eine Anfrage oder Antwort handelt
htype 1 Netztyp Angabe des Netztyps gemäß RFC 1340
hlen 1 Länge der Hardware-Adresse physikalische Netzadresse (z. Bsp. 6 = MAC-Adresse)
hops 1 Anzahl der Hops Anzahl von Routern mit DHCP-Relay-Funktion auf dem Weg zwischen Client & Server
xid 4 Transaktions-ID Identifikationsnummer für die Transaktion zwischen Client & Server
secs 2 Sekunden von Seiten des Clients, die Zeit seit Beginn des Vorgangs
flags 2 Flags nur das höchstwertige Bit wird verwendet, um anzuzeigen, ob der Client noch über eine IP-Adresse verfügt
ciaddr 4 Client-IP-Adresse wird vom Client angegeben, falls dieser noch über eine IP-Adresse verfügt
yiaddr 4 Your-IP-Adresse IP-Adresse, die der Server dem Client zugewiesen hat
siaddr 4 Server-IP-Adresse IP-Adresse des DHCP-Servers
giaddr 4 IP-Adresse des Routers mit DHCP-Relay-Funktion
chaddr 16 Client-Hardware-Adresse Client-Mac-Adresse
sname 64 Server-Name
file 128 File / Datei
options bis 312 Optionen zusätzliche Konfigurationsparameter - DHCP-Optionen nach RFC 2132

Ablauf der Kommunikation


Anforderungsphase

  • Client sendet die Nachricht DHCP-DISCOVER mit einem Broadcast (Ziel-IP: 255.255.255.255) in sein lokales Netz
  • DHCP-DISCOVER-Nachricht kann Optionen enthalten, wie zum Beispiel Vorschläge für IP-Adresse & Lease-Dauer
  • Anforderung der benötigten Konfigurationsparameter - IP-Adresse, Subnetzmaske etc.
  • Angabe der MAC-Adresse des Clients (chaddr) zwingend erforderlich
  • Nachricht ist normalerweise auf das eigene Subnetz beschränkt - kann aber durch DHCP-Relay-Agenten in andere Subnetze weitergeleitet werden

Angebotsphase

Mit der Nachricht DHCP-OFFER läßt der DHCP-Server dem Client ein Angebot zukommen.

Der Server versucht dabei, den Client direkt zu erreichen - was nicht immer möglich ist:

Fall A

  • Client wird gerade initialisiert & verfügt noch nicht über eine IP-Adresse
  • Angebot wird als Broadcast versandt - erhält aber bereits die MAC-Adresse des Clients, so daß nur dieser die Nachricht lesen darf

Fall B

  • Client verfügt bereits über eine IP-Adresse - deren Lease-Dauer jedoch zu Ende geht
  • Angebot wird in diesem Fall direkt an die IP-Adresse des Clients gesendet
  • Zu diesem Zeitpunkt muß der Server die IP-Adresse noch nicht reservieren, kann dies aber tun.

Auswahlphase

Der Client wählt die Konfigurationsparameter des zuerst erhaltenen Angebots aus.

  • Senden einer Nachricht DHCP-REQUEST - Optionsfeld muß den Eintrag DHCP Server Identifier enthalten
  • Nachricht wird als Broadcast versendet, um andere DHCP-Server darüber in Kenntnis zu setzen, daß der Client sich entschieden hat und die entsprechenden Server die reservierten Parameter wieder freigeben können
  • angebotene IP-Adresse wird mit der Option Requested IP Address bestätigt

Bestätigungsphase

Antwort des DHCP-Servers mit der Nachricht DHCP-ACK mit allen Konfigurationsparametern für den Client

  • Sollten in dieser Phase weitere Angebote eintreffen, werden diese vom Client verworfen.


Weitere Nachrichtentypen

Nachrichtentyp Beschreibung
DHCP-NAK Wird während der Bestätigungsphase vom Server an den Client gesendet, um diesen darauf hinzuweisen, daß die im DHCP-REQUEST angeforderten Konfigurationsparameter abgeleht wurden:
  • wenn ein Client versucht seine bisherige IP-Adresse zu verlängern, diese jedoch nicht mehr verfügbar ist
  • wenn ein Client in ein anderes Subnetz umgezogen & somit die IP-Adresse ungültig ist
DHCP-RELEASE Hiermit teilt ein Client dem Server mit, daß er seine IP-Adresse nicht mehr benötigt und der Server die Adresse freigeben und anderweitig vergeben kann
DHCP-DECLINE Der Client kann hierüber den Server in Kenntnis setzen, daß einige Parameter ungültig sind (zum Beispiel seine MAC-Adresse)
DHCP-INFORM Kann von Clients verwendet werden, denen eine statische IP-Adresse zugewiesen wurde, um weitere dynamische Konfigurationsparameter vom Server anzufordern.

Lease-Dauer

Wurde der Client über die Dynamische Zuweisung konfiguriert, wird dessen IP-Adresse nach Ablauf der Lease Time ihre Gültigkeit verlieren & kann vom Server neu vergeben werden. Dementsprechend muß der Client vor Ablauf der Lease-Dauer eine Verlängerung der Gültigkeit seiner Konfigurationsparameter anfordern:

  • Client sendet ein DHCP-REQUEST an den Server, von dem er konfiguriert wurde - gewünschte IP-Adresse wird mit der Option Requested IP Address mitgeteilt
  • Standardmäßig erfolgt diese Anfrage nach Ablauf von 50 Prozent der Lease-Dauer.
  • Wird vom Server nicht auf diese Anfrage reagiert, sendet der Client nach Ablauf von 7/8 der Lease-Dauer eine erneute Anfrage.
  • Kann der Anfrage entsprochen werden, sendet der DHCP-Server ein DHCP-ACK an den Client
  • Erhält der Client kein rechtzeitiges DHCP-ACK, muß dieser den Konfigurationsprozeß mit einem DHCP-DISCOVER erneut beginnen - die bisherige IP-Adresse darf bis zum Ablauf der Lease-Dauer behalten werden.


Anhang

Siehe auch

Sicherheit

Dokumentation

RFC
Man-Page
Info-Pages

Links

Projekt
Weblinks