Was ist DHCP?

Dynamic Host Configuration Protocol

Das Dynamic Host Configuration Protocol macht eine Zuweisung der Netzwerkkonfiguration an Clients durch einen Server oder mehrere Server möglich. Mit DHCP ist eine automatische Einbindung eines PCs in ein vorhandenes Netzwerk ohne eine manuelle Installation möglich. An dem Client muss im Normalfall nur die automatische Zuweisung der IP-Adresse eingestellt sein. Bei dem Start des Computers am Netz kann er die Netzmaske, IP-Adresse, den DNS-Server und das Gateway von einem DHCP-Server beziehen.

Ohne DHCP sind dazu mehrere Konfigurationen von Nöten, abhängig vom Netzwerk, an das der PC angeschlossen werden soll. DHCP ist eine Verbesserung des BOOTP (Bootstrap Protocol), mit dem sich Workstations erstellen lassen, welche sich zu Beginn eine Adresse vom BOOTP-Server beziehen. Anschließend ziehen sie sich ein Betriebssystem aus dem Netz, womit sie dann starten. DHCP ist zudem komplett kompatibel mit BOOTP und kann außerdem mit BOOTP-Clients und -Servern ohne jegliche Einschränkungen zusammenarbeiten. Das Dynamic Host Configuration Protocol wurde für zwei Einsatzgebiete entwickelt:

  1. viele Netzwerke mit schnell wechselnder Topologie
  2. Anwender, welche eine einfache Netzverbindung erstellen möchten und sich nicht weiter mit Netzwerkkonfigurationen beschäftigen möchten. Bei Netzwerken bietet DHCP außerdem den Vorteil, dass bei Änderungen der Topologie nicht mehr alle betroffenen Stationen per Hand umgestellt werden müssen, sondern die eigentlichen Vorgaben einfach vom Administrator einmalig in der Konfigurationsdatei des DHCP-Servers geändert werden müssen. Auch für PCs mit wechselnden Standorten wie Notebooks, entfällt die anfällige Konfiguration. Das wird häufig auch als Plug ’n Play bezeichnet.

Der DHCP-Server

Er wird, wie alle Dienste, als Hintergrundprozess gestartet und wartet auf Client-Anfragen. In seiner Datei der Konfiguration befinden sich Informationen über den Adresspool sowie weitere Angaben über Parameter wie die lokale DNS-Domain, die Subnetzmaske oder das benutzte Gateway. Zudem lassen sich auch mehrere BOOTP-Server oder der Ort des benutzten Bootimages einstellen. Es gibt drei verschiedene Betriebsmodi eines DHCP-Servers:

Manuelle Zuordnung: In diesem statischen Modus werden am DHCP die IP-Adressen eindeutigen MAC-Adressen fest zugeordnet, und das auf unbefristete Zeit. Der Nachteil darin ist, dass sich keine weiteren Clients in das Netz einwählen können, da die Adressen genau verteilt sind. Das kann wegen der Sicherheit erwünscht sein. Manuelle Zuordnungen werden dann genutzt, wenn der DHCP-Client zum Beispiel Server-Dienste öffentlich stellt und dadurch unter einer festgelegten IP-Adresse erreichbar sein soll.

Automatische Zuordnung: Bei dieser Zuordnung wird am DHCP ein Bereich von IP-Adressen festgelegt. Wenn die Adresse aus dem Bereich erst einmal einem DHCP-Client zugeordnet wurde, gehört sie diesem auch auf unbestimmte Zeit. Ist der Adressbereich vollständig vergeben, können sich danach keine weiteren Clients in das Netz einloggen. Das ist auch dann nicht möglich, wenn die Computer nicht aktiv sind, denn im Cache des Servers wird die IP-Adresse gespeichert. Es hilft nur ein sicheres Löschen des Caches, um die Adressen nutzen zu können, die nicht an aktive Rechner vergeben sind.

Dynamische Zuordnung: Die Zuordnung ist der automatischen Zuordnung sehr ähnlich, jedoch hat der DHCP hier in seiner Konfiguration eine Angabe, wie lange eine bestimmte IP-Adresse an einen Client vergeben werden darf, bevor der Nutzer sich neu beim Server anmelden muss. Sollte er sich nicht melden, wird die Adresse wieder frei, und kann an einen anderen PC vergeben werden. Diese vom Administrator vergebene Zeit wird Lease-Time genannt. Manche Server verteilen auch von der MAC-Adresse abhängige IP-Adressen. Dadurch bekommt ein Client hier selbst nach längerer Abwesenheit und Ablauf der Lease-Zeit die gleiche IP-Adresse wie zuvor.

 

Sicherheit von DHCP

DHCP kann leicht umgestellt und manipuliert werden, weil Clients jeden Server akzeptieren. Das ungewollte Starten eines DHCP-Servers durch den Anschluss eines einfachen Routers im Zustand der Auslieferung, kann ein Netz stark stören. Dieser antwortet häufig schneller als der eigentliche DHCP-Server, und kann dadurch ungültige Konfigurationen verteilen. Ein Angreifer kann alle Adressen reservieren, dadurch eine Antwort auf mehrere Anfragen verhindern und danach als einziger DHCP-Server auftreten. Nun hat er die Möglichkeit, ein rogue DHCP Spoofing zu erstellen, indem er auf andere Server weiterleitet, die auf Computer verweisen, welche die Kommunikation kontrollieren. Die Eindeutigkeit einer MAC-Adresse darf nicht als Kriterium der Sicherheit genutzt werden. Es geht zu schnell, MAC-Adressen-Spoofing auszuüben. So ziemlich alle Betriebssysteme erlauben es einfachen Benutzern, die MAC-Adresse komfortabel in Masken der Konfiguration oder mit einfachen Dienstprogrammen wie ip link oder ifconfig zu überarbeiten. Die spezielle Vergabe von IP-Adressen nur an freigeschaltete MAC-Adressen über DHCP oder RARP schließt also nicht aus, dass illegale Nutzer Zugriff auf das Netzwerk erhalten, denn dafür ist der Gebrauch eines sicheren Authentifizierungsprogrammes wie IEEE 802.1X von Nöten. Eine Persiflage der Bemühungen ist Peg DHCP, um diese Komplikationen zu vermeiden. Vorhandene MAC-Adressen in einem Schicht-2-Netz können durch Abhören des Verkehrs ausfindig gemacht werden. Dazu ist lediglich der physische Zugang zum Netzwerk notwendig.