Login
Newsletter
Werbung

Mi, 11. August 2004, 00:00

Einrichtung eines DHCP-Servers

PXE oder: Software-Bloat nun auch in der Firmware möglich

Intels PXE (Preboot Execution Environment) scheint sich so langsam als Standard für das Booten vom Netz durchzusetzen. Es ist eine Erweiterung von DHCP, die BIOS-Unterstützung benötigt. Wer bei dem Wort BIOS reflexartig zum Kotztütchen gegriffen hat, hat bereits den Braten gerochen ;-)

Von Intel selbst gibt es einen Kernel-Patch, der es Linux erlaubt, per PXE zu booten. Mir ist aber nicht bekannt, ob es diesen auch für Kernel neuer als 2.0 gibt oder ob er da überhaupt noch notwendig ist. Auf jeden Fall können Linux-Maschinen auch mit Peter Anvins exzellentem SysLinux/PXELinux-Paket booten. Dort findet man auch wichtige Dokumentation über PXE. Die andere wichtige Quelle für Dokumentationen ist natürlich die Intel-Webseite.

Auch als PXE-Server kann man Linux verwenden. Die Intel-Lösung besteht aus zwei Daemonen, pxe und mtftpd und benötigt zusätzlich den DHCP-Server. Diese Lösung ist komplex und extrem schwer verständlich. Die Alternative ist, den DHCP-Server allein zu verwenden. Dazu muß man ihm nur ein grundlegendes Verständnis von PXE beibringen. Für dhcpd 3 gibt es dazu genug Dokumentation im Netz, für dhcpd 2 kann ich bei Interesse die Konfiguration erklären. Die »Magie« steckt in diesem Fall in einer einzigen Zeile der Konfigurationsdatei.

Nochmals: DHCP und DNS

Will man DHCP mit dynamischer Adreßvergabe mit einem DNS-Server kombinieren, hat man es nicht ganz leicht. Denn obwohl beide von derselben Organisation geschrieben sind, wissen sie nichts voneinander. Das soll sich mit Version 3.0 des DHCP-Daemons ändern, die ich aber bisher nicht eingesetzt habe. Sicher kann man alle IP-Adressen in den zu vergebenden Bereichen statisch ins DNS eintragen. Doch das hat offenbar Nachteile, so daß man sich Mechanismen überlegt hat, bei jeder Adreßvergabe durch den DHCP-Daemon den DNS-Server zu aktualisieren.

Mindestens zwei frei erhältliche Perl-Skripte sind zu diesem Zweck geschrieben worden. Sie sind einfach und effektiv.

http://www.thismetalsky.org/magic/projects/dhcp_dns.html

und

http://www.heronforge.net/~stephen/DHCP-DNS/dhcp-dns.html

Beide überwachen die Datei /etc/dhcpd.leases. Jedesmal, wenn der DHCP-Daemon eine Adresse vergibt, hält er es in dieser Datei fest. Die Skripte werten die Änderung aus und nutzen das dynamische Update-Feature von BIND 8, um die DNS-Konfiguration anzupassen.

Durchgeschleust: DHCP-Relay

DHCP-Anfragen funktionieren normalerweise nur in Subnetzen, an die der DHCP-Server direkt angeschlossen ist. Denn kein Router, der etwas auf sich hält, läßt IP-Broadcasts durch.

Will man jedoch nicht in jedem Subnetz einen DHCP-Server installieren, z.B. um die Verwaltung zu zentralisieren, schafft ein DHCP-Relay Abhilfe. Das ist ein kleiner Daemon, in der ISC-Version dhcrelay genannt. Er ist im DHCP-Daemon-Paket enthalten. Er nimmt DHCP-Anfragen an und leitet sie an einen konfigurierbaren DHCP-Server weiter, allerdings nicht als Broadcast, und kann daher den Router überwinden. Die Antwort vom DHCP-Server leitet er an den Client weiter, als sei er selbst der Server.

dhcrelay(8) besitzt keine Konfigurationsdatei, ein paar Kommandozeilen-Optionen genügen ihm. Beispielsweise würde

dhcrelay 192.168.4.1

alle Anfragen an 192.168.4.1 weiterleiten.


Ergänzungen (Boot-PROM) von Frank Eichentopf

  • Dieses Werk wurde unter der GNU Free Documentation License veröffentlicht. Das Kopieren, Verbreiten und/oder Modifizieren ist erlaubt unter den Bedingungen der GNU Free Documentation License, Version 1.2 oder einer späteren Version, veröffentlicht von der Free Software Foundation.

    - Weitere Informationen
Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung