![]() |
|
Es gibt einen Punkt, der bei der Administration von Nameservern
beachtet werden muss - wenn man mal davon absieht, dass der Nameserver
funktionieren sollte - und das ist die Aktualisierung der
root.hints
-Datei. Der einfachste Weg hierfür ist die Benutzung von dig.
Zuerst startet man dig ohne Parameter, dann bekommt man die
Datei root.hints
,
die zum eigenen Server gehört. Dann wird einer der aufgelisteten root-Server
mit dig @rootserver
befragt. Die Ausgabe dieses Befehls sieht
erstaunlicherweise nach einer root.hints
-Datei aus. Die Ausgabe wird in
einer Datei gespeichert (dig @e.root-servers.net . ns
>root.hints.new
) und ersetzt dann die alte root.hints
-Datei.
Nicht vergessen, im Anschluss an den Austausch der Cache-Datei den named neu zu laden.
Al Longyear hat mir das folgende Skript geschickt, das automatisch die
root.hints
-Datei aktualisieren kann. Man erstellt einen Eintrag in die
Crontab, um es einmal im Monat zu starten und kann es dann vergessen. Das
Skript geht davon aus, dass der E-Mail-Versand funktioniert und dass es einen
Alias namens �hostmaster� gibt. Es muss noch verändert werden, damit es mit
dem eigenen Setup übereinstimmt.
#!/bin/sh
#
# Dieses Skript aktualisiert einmal im Monat die Nameserver-Cache-Datei.
# Es wird durch einen Cron-Eintrag gestartet.
#
# Original von Al Longyear
# An bind8 angepasst von Nicolai Langfeldt
# Verschiedene Problem-Reports durch David A. Ranch
# Ping-Test vorgeschlagen von Martin Foster
# Übersetzung von Thomas "Balu" Walter
#
(
echo "To: hostmaster <hostmaster>"
echo "From: system <root>"
echo "Subject: Automatisches Update der root.hints Datei"
echo
PATH=/sbin:/usr/sbin:/bin:/usr/bin:
export PATH
cd /var/named
# Sind wir online? Ein Server beim Provider anpingen...
case `ping -qnc some.machine.net` in
*'100% packet loss'*)
echo "Das Netz ist DOWN. root.hints wurde NICHT upgedated"
echo
exit 0
;;
esac
dig @rs.internic.net . ns >root.hints.new 2>&1
case `cat root.hints.new` in
*NOERROR*)
# Funktioniert...
:;;
*)
echo "Das Update der root.hints Datei ist FEHLGESCHLAGEN."
echo "Dig hatte die folgende Ausgabe:"
echo
cat root.hints.new
exit 0
;;
esac
echo "Die root.hints Datei wurde mit den folgenden Einstellungen aktualisiert:"
echo
cat root.hints.new
chown root.root root.hints.new
chmod 444 root.hints.new
rm -f root.hints.old
mv root.hints root.hints.old
mv root.hints.new root.hints
ndc restart
echo
echo "Der Nameserver wurde neu gestartet, um das Update abzuschliessen."
echo "Die ursprüngliche root.hints Datei heisst jetzt /var/named/root.hints.old."
) 2>&1 | /usr/lib/sendmail -t
exit 0
Einige Leser haben mir geschrieben, dass die root.hints
-Datei auch
per FTP von internic zu bekommen ist. Man sollte aber nicht FTP benutzen, um
die Datei zu aktualisieren. Die oben gezeigte Version ist �netter� gegenüber
dem Netz und Internic.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 17:56:55