1.1 CHRONY - Network Time Protocol Server/Client

Unterabschnitte

- 1.1.1 Konfiguration des OPT_CHRONY
- 1.1.2 Support
- 1.1.3 Literatur

# 1.1 CHRONY - Network Time Protocol Server/Client

OPT_CHRONY erweitert fli4l um das Network Time Protocol (NTP). Dies ist nicht mit dem normalen Time Protokoll zu verwechseln, welches das alte OPT_TIME bereitstellt. Die Protokolle sind nicht kompatibel und somit werden gegebenenfalls neue Client-Programme, die NTP beherrschen, benötigt. Falls man nicht auf das einfache Time Protokoll verzichten kann, so läßt sich dieses Protokoll zusätzlich aktivieren.
OPT_CHRONY arbeitet sowohl im Server, als auch im Client Modus. In der Funktion des Client gleicht es die Zeit des fli4l mit Zeitreferenzen (Time Server) im Internet ab. In der Grundeinstellung nutzt OPT_CHRONY bis zu drei verschiedene Time Server aus dem Fundus von pool.ntp.org. Es ist jedoch auch möglich, über die Konfigurationsdatei eine andere Auswahl an Time Servern zu treffen. So ist es beispielsweise sinvoll Server aus Europa zu wählen. Möglich ist das, indem man als Server de.pool.ntp.org angibt, wenn der Router bzw. der Provider in Deutschland ist. Weitere Informationen dazu auf der Webseite von pool.ntp.org.

In der Funktion des Server dient OPT_CHRONY als Zeitreferenz für das lokale Netzwerk (LAN). NTP arbeitet auf Port 123.

Chrony zeichnet sich dadurch aus, daß es keine fortlaufende Verbindung zum Internet benötitgt. Sobald die Verbindung getrennt wird (offline), erhält chrony hiervon Kenntnis und stellt den Zeitabgleich mit den Internet Time Servern ein. Somit löst chrony keinen neuen Verbindungsaufbau aus. Weiterhin verhindert chrony nicht die automatische Verbindungsunterbrechung, falls die HUP_TIMEOUT, also die Zeit, in der keine Daten mit dem Internet ausgetauscht werden, erreicht wurde.

Damit der Zeitabgleich reibungslos funktioniert, sollte folgendes beachtet werden:

- Chrony erwartet, daß die BIOS-Uhr in der Zeitzone UTC läuft. Falls nicht, muß dies in der Konfigurationsdatei geändert werden!
  UTC = Deutsche Zeit minus 1 (Winter) bzw. 2 (Sommer) Stunde(n)
- Seit der Version 2.1.12 setzt Chrony die Uhrzeit mit der ersten Verbindung zum Internet korrekt, auch wenn der Zeitunterschied sehr groß sein sollte (beispielsweise bei defekter Mainboardbatterie).
- Sollte das BIOS Jahreszahlen nach 1999 nicht richtig darstellen können (Year 2000 Bug) bzw. die Implementation der BIOS Uhr fehlerhaft sein, so muß OPT_Y2k='yes' aktiviert werden!

Es können nur Time Server im Internet über die Default Route (0.0.0.0/0) erreicht werden, da nur die Default Route Chrony in den online Zustand versetzt. Ist der Router als LAN-Router konfiguriert, also keine DSL oder ISDN Circuits definiert, ist Chrony permanent im online Zustand.

Disclaimer: Der Autor gibt weder eine Garantie auf die Funktionsfähigkeit des OPT_CHRONY, noch haftet er für Schäden, z.B. Datenverlust, die durch den Einsatz von OPT_CHRONY entstehen.

##
1.1.1 Konfiguration des OPT_CHRONY

Die Konfiguration erfolgt, wie bei allen fli4l Opts, durch Anpassung der Datei Pfad/fli4l-2.x.z/<config>/chrony.txt an die eigenen Anforderungen. Jedoch sind fast alle Variablen des OPT_CHRONY optional. Optional heißt, die Variablen können, müssen aber nicht in der Konfigurationsdatei auftauchen. Somit ist die chrony Konfigurationsdatei im Auslieferungszustand fast leer und die optionalen Variablen sind sinnvoll vorbelegt. Möchte man dennoch eine anderen Konfiguration, müssen die Variablen von Hand eingefügt werden. Im weiteren erfolgt nun die Beschreibung der einzelnen Variablen:

OPT_CHRONY

  Default: OPT_CHRONY='no'

  Die Einstellung 'no' deaktiviert das OPT_CHRONY vollständig. Es werden keine Änderungen an der fli4l Bootdiskette bzw. dem Archiv opt_tar.bz2 vorgenommen. Weiter überschreibt das OPT_CHRONY grundsätzlich keine anderen Teile der fli4l Installation, mit einer Ausnahme. Es wird die Filterdatei ausgetauscht, die dafür sorgt, das Anfragen von außen nicht als Traffic gewertet werden (fli4l legt sicher nach erreichen der Hangup Time auf). Die neue Filterdatei legt fest, daß der chrony-Traffic ebenfalls nicht mitgezählt wird, somit legt der Router weiterhin sicher auf.
  Um OPT_CHRONY zu aktivieren, ist die Variable OPT_CHRONY auf 'yes' zu setzen.

CHRONY_TIMESERVICE

  Default: CHRONY_TIMESERVICE='no'

  Mit CHRONY_TIMESERVICE kann ein weiteres Protkoll zur Zeitübermittlung aktiviert werden. Dieses ist nur dann nötig, wenn die lokalen Rechner nicht mit NTP arbeiten können. Das zusätzliche Protokoll ist RFC 868 konform und arbeitet auf Port 37. Wenn immer möglich, sollte NTP vorgezogen werden.

  Einen herzlichen Dank an Christoph Schulz, der das Programm `srv868` beigesteuert hat.

CHRONY_TIMESERVER_N

  Default: CHRONY_TIMESERVER_N='3'

  CHRONY_TIMESERVER_N legt die Anzahl der als Referenz benutzten Time Server fest. Der Anzahl entsprechend sind CHRONY_TIMESERVER_x Variablen anzulegen. Der Index x muß fortlaufend bis zur Gesamtanzahl heraufgezählt werden.
  In der Grundeinstellung nutzt chrony drei Internet Time Server aus dem Fundus von pool.ntp.org.

CHRONY_TIMESERVER_x

  Default: CHRONY_TIMESERVER_x='pool.ntp.org'

  Mit CHRONY_TIMESERVER_x kann eine eigene Liste von Internet Time Servern angelegt werden. Die Time Server können sowohl durch ihre IP als auch über ihren DNS Namen spezifiziert werden.

CHRONY_LOG

  Default: CHRONY_LOG='/var/run'

  CHRONY_LOG bezeichnet das Verzeichnis, indem chrony Information über die BIOS Uhr und die Zeitkorrektur ablegt. Sollte i.d.R. nicht verändert werden.

CHRONY_BIOS_TIME

  Default: CHRONY_BIOS_TIME='utc'

  Damit chrony die Zeit der BIOS Uhr (RTC = real time clock) richtig auswerten kann, wird mittels CHRONY_BIOS_TIME übermittelt, ob die Uhr auf lokaler 'local' oder universaler Zeit 'utc' (UTC - Universal Coordinated Time) läuft.

##
1.1.2 Support

Support wird nur im Rahmen der fli4l Newsgroups geleistet.

## 1.1.3 Literatur

Homepage von chrony: http://chrony.sunsite.dk/

NTP: The Network Time Protocol: http://www.ntp.org/

pool.ntp.org: public ntp time server for everyone: http://www.pool.ntp.org/

RFC 1305 - Network Time Protocol (Version 3) Specification, Implementation: http://www.faqs.org/rfcs/rfc1305.html

fli4l Newsgroups und ihre Spielregeln: http://www.fli4l.de/german/newsgroup.htm

Das Fli4l-Team
23. Februar 2006