NTP in geschlossenen Netzwerken

Hintergrund

NTP-Server reichen an ihre Clients Informationen über ihre eigene Entfernung zur eigentlichen Zeitquelle weiter. Diese Information wird als sog. Stratum dargestellt und ist notwendig zur Berechnung der um Netzwerk- und sonstige Verzögerungen bereinigte, tatsächliche Zeit. Stratum 0 stellt in diesem System die Zeitquelle (z.B. Atomuhr) selbst dar, der Server der direkten Zugriff auf die Zeitquelle hat ist Stratum 1. Ein Server der sich direkt mit einem Stratum 1-Server synchronisiert hat selbst Stratum 2 usw.

Wenn der NTP-Server einer UCware keinen NTP-Upstream-Server erreichen kann, weil er z.B. in einem geschlossenen Netzwerk betrieben wird, dann meldet er Stratum 16 (höchstmöglicher Wert) an seine Clients weiter. Einige Clients weigern sich dann, diesen Server als NTP-Upstream zu benutzen. Dazu gehören z.B. Tischtelefone von Polycom und Yealink.

NTPd-Konfiguration

Um dieses Problem zu umgehen kann man dem NTPd die lokale Systemuhr als Zeitquelle mitgeben und ihn auf einen bestimmten Stratum zwingen. Dazu fügt man folgende Zeilen in die Datei /etc/ntp.conf ein:

server 127.127.1.0
fudge 127.127.1.0 stratum 10

Dieses Beispiel setzt den Stratum der Systemuhr auf 10 (den des Servers damit auf 11). Höhere Stratum-Werte sind möglich, können aber leicht zu Problemen führen falls aus dem Netzwerk irgendwann doch wieder andere NTP-Server erreichbar sind.

Danach muss der NTPd neugestartet werden:

service ntp restart