1. Einen Schlüssel erzeugen
Bei bind gibt es da zu das Programm dnssec-keygen:
www:# cd /etc www:/etc# dnssec-keygen -a HMAC-MD5 -b 128 -n USER DHCP_UPDATERMan sollte nun zwei Dateien erhalten, die mit Kdhcp_updater anfangen (das Ende das Dateinamens wird per Zufall bestimmt):
www:/etc# ls -l Kdhcp_updater* -rw------- 1 root root 54 Jun 4 15:09 Kdhcp_updater.+157+56418.key -rw------- 1 root root 81 Jun 4 15:09 Kdhcp_updater.+157+56418.privateUns interessiert nur die Datei mit der Endung private. Darin ist der Schlüssel enthalten. Dieser sollte aber kein \ enthalten, also dies mit cat, less oder einen Editor seiner Wahl überprüfen. Im Zweifelsfall die beiden Dateien löschen und noch mal einen neuen Schlüssel erstellen:
www:/etc# cat Kdhcp_updater.xxxxxxxxxx.private Private-key-format: v1.2 Algorithm: 157 (HMAC_MD5) Key: gh0FSO+nOmpgYjdfz2Ealq=2Den Schlüssel kopieren (dank gpm oder Daves Telnet ;) ), er wird gleich wieder gebraucht.
2. Konfiguration des dhcpd anpassen
Als erstes ändern wir in der Datei /etc/dhcpd.conf die Zeile:
ddns-update-style ad-hoc;in
ddns-update-style interim;Bevor die subnet Auflistung kommt, werden noch folgene Zeilen eingefügt:
ddns-domainname "marty44.net"; update-static-leases true;key DHCP_UPDATER { algorithm HMAC-MD5.SIG-ALG.REG.INT; # -- secret Schlüssel -- secret gh0FSO+nOmpgYjdfz2Ealq=2; }
# -- hier natürlich an die eigene Zonen anpassen, zur Not mit der bind Konfiguration vergleichen --
zone marty44.net. { primary 192.168.44.1; key DHCP_UPDATER; }
zone 44.168.192.in-addr.arpa. { primary 192.168.44.1; key DHCP_UPDATER; } authoritative;3. Anpassen der bind Konfiguration
key DHCP_UPDATER { algorithm HMAC-MD5.SIG-ALG.REG.INT; secret gh0FSO+nOmpgYjdfz2Ealq=2; };In den Zonenblöcken (hier in diesen Beispiel marty44.net. und 44.168.192.in-addr.arpa.) folgende Zeile eintragen:
allow-update { key DHCP_UPDATER; };Jetzt wird es Zeit zu testen.
Jun 8 17:01:23 www named[322]: starting BIND 9.2.2 Jun 8 17:01:23 www named[322]: using 1 CPU Jun 8 17:01:23 www named[322]: loading configuration from '/etc/named.conf' Jun 8 17:01:23 www named[322]: no IPv6 interfaces found Jun 8 17:01:23 www named[322]: listening on IPv4 interface lo, 127.0.0.1#53 Jun 8 17:01:23 www named[322]: listening on IPv4 interface eth0, 192.168.44.1#53 Jun 8 17:01:23 www named[322]: couldn't add command channel 127.0.0.1#953: not found Jun 8 17:01:23 www named[322]: zone 0.0.127.in-addr.arpa/IN: loaded serial 2002062901 Jun 8 17:01:23 www named[322]: zone 44.168.192.in-addr.arpa/IN: loaded serial 2003060602 Jun 8 17:01:23 www named[322]: zone localhost/IN: loaded serial 2002062901 Jun 8 17:01:23 www named[322]: zone marty44.net/IN: loaded serial 2003060602 Jun 8 17:01:23 www named[322]: running Jun 8 17:01:23 www named[322]: zone localhost/IN: sending notifies (serial 2002062901) Jun 8 17:01:23 www named[322]: zone 0.0.127.in-addr.arpa/IN: sending notifies (serial 2002062901) Jun 8 17:01:29 www dhcpd: Internet Software Consortium DHCP Server V3.0.1rc11 Jun 8 17:01:29 www dhcpd: Copyright 1995-2003 Internet Software Consortium. Jun 8 17:01:29 www dhcpd: All rights reserved. Jun 8 17:01:29 www dhcpd: For info, please visit http://www.isc.org/products/DHCPNun wird es Zeit, einen Rechner mit DHCP starten zu lassen:
Jun 8 17:05:12 www named[322]: client 192.168.44.1#1028: updating zone 'marty44.net/IN': deleting an rrset Jun 8 17:05:12 www named[322]: client 192.168.44.1#1028: updating zone 'marty44.net/IN': adding an RR Jun 8 17:05:12 www named[322]: client 192.168.44.1#1028: updating zone '44.168.192.in-addr.arpa/IN': deleting an rrset Jun 8 17:05:12 www named[322]: client 192.168.44.1#1028: updating zone '44.168.192.in-addr.arpa/IN': adding an RRDiese Anleitung basiert in großen Teilen auf http://www.pl-berichte.de/t_netzwerk/dhcpunddns.html.
zurück zur Linux-Übersicht
Letzte Aktualisierung dieser Seite: 8. Juni 2003