NTP-Fudge-Netzwerk-Quellschicht

9

Ist es möglich, ntpddie Schichtstufe einer Netzwerkquelle so zu konfigurieren , dass sie verfälscht wird?

Auf den ersten Blick dachte ich, dass die fudgeDirektive dies erreichen könnte, aber nach dem Durchsuchen der ntp.conf(5)Manpages stellte ich fest, dass diese Direktive nur für Referenzuhren gilt.

Ein paar Details:

Ich habe einen lokalen Server ntpdals primäre Zeitquelle für Clients im LAN. Dieser Server zeigt auf den Pool von ntp.org und verwaltet normalerweise eine Schichtstufe 3.

Zusätzlich zu meinem Hauptserver habe ich ein Netzwerkgerät eines Drittanbieters, dessen Hauptaufgabe darin besteht, Wanduhren drahtlos über zu synchronisieren. HF-Übertragung. Die Gerätespezifikation besagt, dass es sich um einen "RFC2030-kompatiblen Zeitserver" handelt, ansonsten handelt es sich jedoch um eine Black Box. Ich habe das Gerät so konfiguriert, dass es meinen Hauptserver als einzige Zeitquelle verwendet:

Black-Box-Konfiguration http://www.freeimagehosting.net/uploads/21bafb12bd.png

Mein Problem trat auf, als ich ntpdauf meinem PC so konfigurierte , dass sowohl mein Haupt-NTP-Server als auch der drahtlose Sender als Zeitquelle verwendet wurden. Bei der Abfrage meines lokalen ntpd stellte ich fest, dass die "Black Box" (10.xxZ) die bevorzugte Zeitquelle war:

$ ntpq -pn
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
x10.x.x.X        69.164.222.108   3 u   48   64  177    0.501  370.029   1.530
*10.x.x.Z        10.x.x.Z         2 u   50   64  377    1.354  -23.681  14.179

Da Server 10.x.x.Z‚s nur Zeitquelle ist Server 10.x.x.X(die Schicht 3), es sollte Stratum seine 4. Ich glaube , dass der Hersteller seinen Stratumlevel hartcodiert wird.

Gibt es eine Möglichkeit, meinen Computer dazu zu bringen, den "guten" (10.xxX) Server trotz seiner höheren Schichtstufe zu bevorzugen? Ich habe auch die preferDirektive in meiner lokalen ntp.confDatei ausprobiert , aber ohne Erfolg gewinnt immer die kleine Blackbox: /

Auf meinem lokalen Computer wird Mac OS X 10.6 ausgeführt.

$ ntpq -c rv | grep version
version="ntpd [email protected] Mon May 18 19:38:25 UTC 2009 (1)",
joxl
quelle
Diese Frage ist so esoterisch, dass ich empfehlen würde, sie stattdessen in der USENET-Newsgroup comp.protocols.time.ntp oder gleichwertig in der Mailingliste für Fragen unter lists.ntp.org zu stellen . Sie werden wahrscheinlich vorschlagen, dass Sie weitere Server hinzufügen, da Clients Probleme haben, sich zwischen zwei Servern zu entscheiden. Darüber hinaus bin ich mir nicht sicher, welche Antwort sie auf die Manipulation von Schichten haben werden.
Justarobert

Antworten:

6

Nach einigen weiteren Recherchen scheint es nicht möglich zu sein, das Schichtniveau einer Netzwerkquelle zu "fudgen" . Also ging ich weiter und versuchte es mit Dtoubelis Antwort . Zu meiner Überraschung war es nicht immer die bevorzugte Zeitquelle, meinen lokalen Zeitserver einfach zu einer Schichtstufe 2 (gleich dem Gerät eines Drittanbieters) zu machen. Mein lokales ntpd würde sie beide immer noch als "falsche Ticks" regieren. Aus welchem ​​Grund bin ich mir nicht sicher, aber ich vermute, weil sie die einzigen zwei Zeitquellen waren und ihre Zeiten so weit weg waren.

Das größte Problem hierbei ist die Tatsache, dass mein Gerät eines Drittanbieters keine sehr konstante Zeit zu haben scheint, sondern sogar stark schwankt. Die Lösung für mein Problem bestand darin, mehrere andere genaue Zeitquellen (pool.ntp.org) zu meinem hinzuzufügen /etc/ntp.conf. Jetzt wird mein lokaler Server immer als bevorzugte Zeitquelle ausgewählt, oftmals trotz einer höheren Schichtstufe als einige der Server im Pool.

joxl
quelle
4

Sie können versuchen, Ihr lokales ntpd in Schicht 2 auszuführen. Anstatt es auf pool.ntp.org zu verweisen, erstellen Sie einfach eine Liste mit 5-7 Stratum 1-Servern und fügen Sie diese direkt zur Konfiguration hinzu. Mit dem Referenzserver in Schicht 1 wird Ihr Server in Schicht 2 ausgeführt. Dann preferfunktioniert Ihre Option möglicherweise.

Meiner Erfahrung nach ist das Schichtniveau jedoch nicht immer der entscheidende Faktor bei der Wahl der Primärquelle. Ich denke, Latenz und Jitter haben ebenfalls einen signifikanten Einfluss. Ich hatte mehrmals bemerkt, dass ein Server mit niedrigerer Schicht als primäre Quelle gewählt wurde, obwohl mehrere Server mit höherer Schicht nur verfügbar waren, weil er die niedrigste Latenz hatte. Aus diesem Grund kann ich nicht garantieren, dass der vorgeschlagene Ansatz funktioniert.

dtoubelis
quelle
2

Ich habe eine "High Stratum (10)" - Hardware-GPS-Zeitquelle in unserem lokalen Netzwerk, die mir einen Falsetick-Status (x) in ntpq gibt. Ich habe festgestellt, dass die Verwendung von server [x.x.x.x] true(x = IP-Adresse) in ntp.conf die Falsetick-Überprüfung umgeht. so dass es ein möglicher Kandidat sein kann. Die Schichtnummer bedeutet anscheinend nicht immer eine höhere Priorität.

Tomofumi
quelle
1

Wenn Ihnen dieser Server 10.xxZ als Referenz nicht gefällt, sollte dies den Trick tun:

server 10.x.x.Z noselect 

Dies ist nützlich, wenn der Server nur zu Überwachungszwecken verwendet werden soll. Alternativ können Sie auch Folgendes konfigurieren:

server 10.x.x.X prefer

Daher wird 10.xxZ nicht verwendet, wenn 10.xxX verfügbar ist.

Hans
quelle
0

Ein Grund, warum es bevorzugt wird, ist, dass Ihr anderer Zeitserver in letzter Zeit nicht erreichbar war. Siehe die Reichweitenspalte?

dfc
quelle