
Ich suche einen, vorzugsweise kostenlosen, NTP-Server für Windows Server 2003/2008. Wir haben bereits den integrierten Windows Time Server ausprobiert, aber unsere Tests haben gezeigt, dass er nicht sehr genau ist. Wir sehen Zeitunterschiede von bis zu 500 ms. Der maximale Zeitunterschied, den wir für unsere Anwendung zulassen können, beträgt ~100 ms.
Nun haben wir bereits dieMeinberg NTPdfür Windows. Es funktioniert großartig, außer dass wir ein großes Problem damit haben: Wenn es ein Netzwerkverbindungsproblem zwischen Client und Server gibt, gerät der NTP-Server in einen Panikzustand. Er gibt dem Client keine neue Zeit, bis wir den NTP-Dienst neu starten. Das ist ein großes Problem, das uns einige Schwierigkeiten bereitet hat. Es funktionierte monatelang einwandfrei, bis es ein Netzwerkproblem gab, das wir nicht bemerkten. Wir bemerkten es erst nach einer Woche, als der Zeitunterschied auf den Clients bereits 30 Sekunden betrug.
Schlagen Sie also bitte einen alternativen NTP-Server für Windows vor. Ich habe Google verwendet, aber viele nicht zusammenhängende Suchergebnisse erhalten.
Bearbeiten: Bisher war die Windows-Version von ntpd sehr genau und ich möchte dabei bleiben. Das einzige Problem ist der „Panikzustand“ nach einer Netzwerktrennung. Vielleicht weiß hier jemand, was die Ursache dafür ist und wie man es behebt. Außerdem habe ich vergessen zu erwähnen, dass wir ein Server/Client-Setup wie dieses haben:
Server1 --> Server2 --> Server3 --> Client1 --> Client2 --> Client3
Server2 erhält also seine Zeit von Server1, Server3 erhält seine Zeit von Server2 und die Clients erhalten ihre Zeit von Server3. Außerdem gibt es Clients, die direkt mit Server2 verbunden sind. Es ist wichtig, dass alle Server und Clients genau die gleiche Zeit haben (innerhalb von ~100 ms).
Nun gab es ein Netzwerkproblem mit Server3 und seinen Clients. Die Server betreiben den ntpd-Port für Windows, der als NTP-Server und -Client fungiert. Die Clients haben Dimension4 als NTP-Client. Nach dem Netzwerkproblem war die Fehlermeldung in D4 ungefähr so (so spontan, ich habe die genaue Fehlermeldung nicht):
Serverantwort: Der Server befindet sich in einem Panikzustand (Uhr konnte nicht synchronisiert werden)
Ich habe die ntpd-Dokumente durchgelesen und die einzige Erwähnung von „Panik“ ist, wenn der Zeitunterschied 10.000 Sekunden beträgt, was zum Beenden des ntpd-Servers führt, aber das war nicht der Fall. Es gibt auch einen Befehlszeilenschalter „-g“, um das Beenden bei Panik zu deaktivieren, aber dieser ist bereits standardmäßig eingestellt.
Irgendwelche Ideen, was die Panikstörung verursachen könnte und wie man sie das nächste Mal loswird?
Antwort1
ich benutzeNetzzeit, seit vielen Jahren, sowohl als Client als auch als Server.
Diese Software ist in erster Linie ein NTP-Client, funktioniert aber auch gut als NTP-Server in einem LAN (Option: Anderen Computern die Synchronisierung mit diesem Computer erlauben).
Antwort2
Wir sehen weitaus mehr als 500 ms von W32time, eher 16 ms, was der Auflösung der Windows-Systemtimer entspricht. Dies wird von echten Linux Stratum-2 NTPd-Servern im selben Gigabit-LAN gemessen. Googeln Sie „Tools und Einstellungen des Windows-Zeitdiensts“ und lesen Sie über die Einstellung „updateinteval“, die über die Gruppenrichtlinie oder direkt in der Registrierung geändert werden kann. Ich kann es gerade nicht überprüfen, aber ich erinnere mich, dass wir das für alle unsere Server auf 100 eingestellt haben, was der Standardwert für Domänencontroller ist, aber nicht für andere Windows-Domänenmitglieder.
Aktualisiert: Wir haben diesen Wert tatsächlich für alle unsere Server auf 100 eingestellt. Die Details der UpdateInterval-Einstellung:
Updateintervall
Registrierungspfad: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
Ausführung: Windows XP, Windows Vista, Windows 7, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008 und Windows Server 2008 R2.
Dieser Eintrag gibt die Anzahl der Taktimpulse zwischen den Phasenkorrekturen an. Der Standardwert für Domänencontroller ist 100. Der Standardwert für Domänenmitglieder ist 30.000. Der Standardwert für eigenständige Clients und Server ist 360.000.
Wie Sie sehen, „steuert“ W32time die Uhr standardmäßig nur alle 30.000 Ticks für Nicht-Domänencontroller oder noch schlimmer, wenn sie keine Mitglieder einer Domäne sind. Ein Tick unter Windows ist je nach Hardware normalerweise 1/64 Sekunde, was bedeutet, dass die Uhr in der Standardkonfiguration nur etwa alle 8 Minuten angepasst wird. Dies ist für die meisten Anwendungen in Ordnung, aber nicht für zeitempfindliche Anwendungen.
Weitere Informationen finden Sie hier: http://technet.microsoft.com/en-us/library/cc773263(v=ws.10).aspx#w2k3tr_times_tools_uhlp
Antwort3
Die Referenzliste aller von NIST aufgelisteten Softwareprogramme lautetHier. Ich habe in der Vergangenheit den Clockwatch-Server verwendet. Ich würde Ihnen auch empfehlen, Ihre Synchronisierungstopologie zu ändern. Server1 sollte die Quelle für die gesamte Zeit im Netzwerk sein (mit Server 2 und 3 als Backups). Clients sollten nur dann eine Peer-Synchronisierung durchführen, wenn kein Server verfügbar ist.