Informationen zum NTP-Dienst des Bürgernetzes Ulm / Neu-Ulm

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.


Achtung: Seit dem 4. April 2001 ist eine Sicherheitslücke bei ntpd bekannt geworden, die Root-Exploits von außen ermöglichen könnte. Dies betrifft alle Versionen bis 4.0.99k. Inzwischen gibt es die Version ntp-4.0.99k23, die dieses Problem behebt.


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.
Andreas Borchert, 12. März 2002