Das Bürgernetz stellt allen Mitgliedern den NTP-Dienst über ntp.in-ulm.de zur Verfügung, die an einem hochpräzisem Zeitdienst interessiert sind. Für eine gewisse Übergangszeit gibt es den Dienst auch noch unter ntp.in-ulm.de. Mit dieser Seite versuche ich, einige Fragen zu NTP und dessen Nutzung zu beantworten. Wer darüber hinaus noch Fragen hat, kann mich unter borchert@mellifont.in-ulm.de erreichen.
|
Wofür steht NTP?
NTP steht für network time protocol. Die Protokolle
sind definiert über
RFC 1059 (Version 1),
RFC 1119 (Version 2),
RFC 1305 (Version 3) und
zahlreiche
Artikel (Version 4).
Nach welchen Prinzipien funktioniert NTP?
Als präzise Zeitgeber stehen auf dem Internet irgendwo GPS-Empfänger
oder Funkuhren zur Verfügung, die an einem Rechner angeschlossen sind.
Diese Rechner werden als Stratum-1-Server bezeichnet (1 steht hier
für den Abstand zu einer präzisen Zeitquelle). Da es nun wenig
sinnvoll ist, an jedem Rechner, der eine präzise Zeit halten soll, eine
Funkuhr anzuschließen, ist es über das NTP-Protokoll möglich,
die Uhrzeit eines Rechners ständig mit einem anderen Rechner
zu synchronisieren, der bereits eine präzise Uhrzeit besitzt.
Ein Rechner, der die Zeit von einem Stratum-1-Server bezieht, wird
so zu einem Stratum-2-Server.
Leider gibt es keine 100%-ig zuverlässigen Zeitgeber. Auch Funkuhren können zeitweise verrückt spielen und manche Netzwerkverbindungen sind unvorhersehbar schlecht. Deswegen ist es sinnvoll, mehrere Zeitquellen simultan zu berücksichtigen. Genau das ist über die NTP-Software von Dave Mills möglich: Ein NTP-Server steht ständig mit mehreren Zeitquellen in Verbindung und beobachtet alle mit großer Skepsis und wählt dann einen momentan für gut befundenen Server aus und synchronisiert sich mit diesem. Aber die Entscheidung wird laufend überprüft, so daß jederzeit ein Wechsel der Zeitquelle möglich ist.
Das NTP-Protokoll bietet nicht nur die Möglichkeit an, einfach die Zeit zu holen. Da die Paketlaufzeiten viel zu lange sein können und in keinem Falle konstant sind, würde das einen viel zu großen Fehler einbringen. Stattdessen ist eine Synchronisierung vorgesehen, bei der über einen längeren Zeitraum hinweg eine Genauigkeit bis (unter günstigsten Umständen) zu einer Millisekunde erzielbar ist -- realistisch sind typischerweise 10 bis 20 Millisekunden Präzision.
Auf ntp.in-ulm.de läuft zur Zeit ein Stratum-3-Server, d.h. wir beziehen die Zeit von mehreren Stratum-2-Servern. Wir werden in Zukunft uns dabei bemühen, die Zahl der Zeitquellen zu erhöhen. Im Augenblick beziehen wir die Zeit von ntp2-3.belwue.de, ntp.mathematik.uni-ulm.de, ntp.physik.uni-ulm.de und ntp.bnv-gz.de.
Wie kann ich den Dienst auf einfache Weise nutzen?
Mit dem ntpdate-Kommando,
das unter zahlreichen UNIX-Systemen bereits zur Verfügung steht und
auch für andere Systeme übersetzt werden kann, ist es möglich,
die eigene Uhrzeit korrekt zu setzen. Dieses Kommando könnte
insbesondere zu den anderen Kommandos hinzugefügt werden, die nach
der erfolgreichen Etablierung einer Einwählverbindung ausgeführt
werden. Konkret empfehle ich folgenden Aufruf:
ntpdate -b ntp.in-ulm.de ntp2-1.belwue.de ntp2-2.belwue.de
Die Option -b steht für ``boot'', d.h. das die korrekte Zeit sofort übernommen wird, ohne einen sanften Übergang zu versuchen, bei dem es etwas länger dauern würde, bis die korrekte Zeit erreicht wird. Hinter -b können beliebig viele NTP-Server angegeben werden. ntpdate überprüft dann selbst, welcher der angegebenen Server im Augenblick am besten geeignet ist. Die beiden oben genannten NTP-Server des BelWue (dem ISP unseres Bürgernetzes) stehen allen BelWue-Teilnehmer offen, externen Nutzern jedoch nur nach Anfrage. Wenn sich also jemand nicht über das Bürgernetz einwählt, sollten diese nur nach Rückfrage beim BelWue verwendet werden. Mehr Informationen zum NTP-Dienst des BelWue gibt es unter http://www.belwue.de/services/zentral/ntp.html.
Von wo kann ich die Sachen runterladen?
Eine lokale Kopie der auf ntp.in-ulm.de eingesetzten Quellen
steht zur Verfügung.
Auf dem primären FTP-Server
zu NTP kann natürlich überprüft werden, ob es nicht eine
neuere Version inzwischen gibt. Diese Quellen lassen sich
(nach den beigefügten READMEs) auch unter Windows bzw. Windows-NT
übersetzen. Selbst habe ich das aber nie probiert und ich kann
auch keine Windows-spezifische Hilfestellung mangels eigener Erfahrungen
geben.
Für Benutzer von Windows könnte möglicherweise ntptime hilfreich sein. Hierbei handelt es sich um einen frei verfügbaren NTP-Klienten. Wer damit Erfahrungen sammelt, kann sie vielleicht an mich weiterleiten. Ich würde sie hier dann gerne einhängen.
Von Ulrich Oesterle kam eine Empfehlung für Dimension4, einem freien NTP-Klienten von Rob Chambers für Windows 95 und Windows NT 4.0. Eine Kopie von http://www.accessone.com/~thinkman/dimension4/d4time43.exe steht lokal zur Verfügung.
Darf mein NTP-Server ntp.in-ulm.de verwenden?
Grundsätzlich steht ntp.in-ulm.de allen Mitgliedern unseres
Vereines offen. Wenn eine externe Einwahl erfolgt und der Dienst
intensiv (d.h. nicht nur einmalig beim Zeitpunkt der Einwahl) genutzt
wird, würde ich mich über einen Hinweis per E-Mail freuen.
Der Dienst steht auch allen anderen Bürgernetzen frei zur Verfügung.
Hier würde ich mich jedoch auch über einen Kontakt freuen.
Möglicherweise könnten wir dann ein Peering aufsetzen.
Alle anderen dürfen diesen Dienst nur nach Rückfrage verwenden.
Stehen noch weitere NTP-Server zur Verfügung?
Das Günzburger Bürgernetz
ist so freundlich und stellt seinen
NTP-Server ntp.bnv-gz.de unseren Mitgliedern (unter den gleichen
Bedingungen wie bei ntp.in-ulm.de) zur Verfügung.
Darüber hinaus
können innerhalb des Belwue einige Server frei verwendet werden.
Dazu sollte die entsprechende
Seite
konsultiert werden.
Seit kurzem bietet die Physikalisch-Technische Bundesanstalt zwei allgemein verfügbare NTP-Server an: ntp1.ptb.de und ntp2.ptb.de. Es gibt eine zugehörige Informationsseite.
Wo ist die Heimatseite zu NTP?
Die Heimatseite von Dave Mills (dem Author von NTP) steht unter
http://www.eecis.udel.edu/~ntp/
zur Verfügung. Eine
lokale Kopie der Dokumentation
ist auch vorhanden.