Timeserver

Timeserver

Ein in der heutigen Welt verteilter Systeme unverzichtbarer Dienst ist der Timeservice. Dieser sorgt für eine weltweit einheitliche Uhrzeit. Ohne diesen Dienst wuerde kein make mehr funktionieren, es wären keine Logdateien mehr vergleichbar und man könnte keine Fehlersuche in vernetzen Systemen betreiben.
Daher wurden schon recht früh vom HRZ Timeserver installiert, die die Uhrzeit im Netz zur Verfügung stellen. Dies geschah zu Beginn mit einer DCF-77 Funkuhr und dem inzwischen antiquierten Time-Protokoll. Diese Konstruktion brachte es immerhin auf 1,5 Sekunden Genauigkeit relativ zur Weltzeit UTC.

Network Time Protocol

Anfang 1992 installierte das HRZ drei Timeserver auf Basis des Network Time Protokolls (NTP). Das erlaubte eine Genauigkeit von wenigen ms in Relation zu der Weltzeit UTC. Seitdem ist NTP auf vielen Rechnern der Hochschule im Einsatz ( Durchblick Juli 1992).
Inzwischen sind auch diese Timeserver in die Jahre gekommen und können die aktuellen NTP-Versionen 2, 3 und 4 nicht unterstützen. Dafür bieten die meisten Router an der TU mittlerweile direkte NTP Unterstützung an. Dadurch konnte die Konfiguration für den Endbenutzer vereinfacht werden.

SNTP

Neben dem NTP-Protokoll exisitert seit einiger Zeit nun auch eine einfache Version des Protokolls, das Simple Network Time Protocol. Dies kann sehr gut für Clienten verwendet werden, bei denen die Anforderungen an die Synchronisation nicht zu hoch sind. Dafür ist das Protokoll sehr einfach zu implementieren unnd verbraucht wenige Resourcen. Mit einem SNTP-Clienten kann man auf NTP-Server zugreifen und umgekehrt, wobei der letzte Fall nur selten Sinn macht.

An der TU

An der TU stellen mittlerweile fast alle Router die Zeit per NTP/SNTP zur Verfügung. Die Adresse des NTP-Servers entspricht also üblicherweise der Adresse Ihres Default-Gateways. Sollte dies nicht funktionieren, so stehen noch hochschulweit die Server ntp1.tu-darmstadt.de, ntp2.tu-darmstadt.de, ntp3.tu-darmstadt.de und ntp4.tu-darmstadt.de zur Verfügung.

Betriebssysteme

XNTP für UNIX

Das XNTP-Paket ist an der Hochschule seit 1992 im Einsatz. Die Konfiguration ist dank der NTP-Server in den Routern sehr einfach geworden. Man benötigt zwei Programme aus diesem Paket: ntpdate zum setzten der Uhr beim Systemstart und xntpd als Hintergrundprozeß zur Nachführung der Uhrzeit. Bei einigen Rechnern benötigt man auch noch das Programm tickadj, das beispielsweise bei SUN die Softwareuhr von der Hardwareuhr trennt und so Konflikte mit xntpd vermeidet.

Zuerst sollte man mit ntpdate prüfen, ob der Router im jeweiligen Segment NTP-fähig ist. Dies ist bei fast allen Routern auf dem Campus der Fall, nicht jedoch bei Firewalls.

ntpdate -db „IP des Defaultgateways“

holt die aktuelle Zeit vom Default-Router und zeigt sie an (<s> steht für das jeweilige Subnetz). Sollte der Default-Router kein NTP unterstützen, nehmen Sie bitte einen der TU-weiten Server (siehe oben).
Hat der Test funktioniert, so können Sie ans Ende Ihrer Startup-Dateien folgende Befehlszeilen anfügen:

ntpdate -bs „IP des Defaultgateways“
xntp -c /var/etc/ntp.conf

Nun müssen Sie lediglich noch die Konfigurationsdatei ntp.conf anlegen. Diese besteht nur aus zwei Zeilen:

server „IP des Defaultgateways“
driftfile /var/etc/ntp.drift

In der Driftdatei vermerkt xntpd die Abweichungen der Internen Uhr von UTC und verbessert somit auch die Langzeitstabilität der Uhr bei Ausfall des Netzes. Die Datei muß für den Daemon beschreibbar sein.
Sowohl Linux als auch Solaris enthalten mittlerweile den xntp-Dienst.

Windows

Für die verschiedenen Windows-Programme gibt es ebenfalls (S-)NTP-Clienten, z.B.:

Windows XP kann direkt die Timeserver ansprechen. Tragen Sie die Adresse des Servers einfach unter der Systemsteuerung/Uhrzeit ein.
Bei Windows 2000 kann man über den Befehl net time /setsntp Serverliste die Uhrzeit synchronisieren.

MacOS

Mac OS9

  • Kontrollfelder --> Datum & Uhrzeit Auf „Time-Server verwenden“ klicken
  • Auf Server-Optionen klicken
  • Auf „Time-Server“ klicken (pull-down Liste) und auf „Liste bearbeiten“ klicken
  • Neu klicken
  • In „Server-Addresse“ die IP des Defaultgateways eintragen
  • „Fertig“ klicken

Mac OSX

  • Auf „Systemeinstellungen“ (im Dock) klicken
  • Auf „Datum und Uhrzeit“ klicken
  • Auf die Schaltfläche „Netzwerkzeit“ klicken
  • Auf „Time-Server verwenden“ klicken
  • Im Feld „Time-Server:“ die IP des Defaultgateways eintragen
  • „Uhr jetzt stellen“ klicken um zu testen.

und der Rest?

VMS-Benutzer bieten Wollongong und Multinet NTP-Unterstützung an. Für Novell und DOS sind mir bislang keine NTP-Clients bekannt. Die meisten Geräte von Cisco können wie neuere HP-Switches ebenfalls über NTP oder SNTP synchronisiert werden. Für PalmOS findet sich ebenfalls ein SNTP-Client, auch BeOS verfügt über eine GPL-Version eines Clients.

Weitere Informationen findet man im Usenet.

Nie mehr Sommerzeit umstellen ?

Hilft mir NTP bei der leidigen Sommer-/Winterzeitumstellung ?

Dies ist nicht der Fall. NTP sychronisiert, wie von einem weltweiten System zu erwarten auf Weltzeit (UTC). Somit muß man weiterhin seine Zeitzone am System einstellen. Dies geschieht im Unix über die Environment-Variable TZ oder über das Verzeichnis /usr/lib/zoneinfo/ bei System-V Maschinen.

Weitere Informationen

Thankx

Danke für alle Hinweise und Ergänzungen, besonders von

  • Matthias Soehn
  • Christian Fries
  • Ian MacLaren