Sieć źródłowa krówki NTP

9

Czy można skonfigurować ntpdkręcenie poziomu warstwy źródła sieciowego?

Na pierwszy rzut oka myślałem, że fudgedyrektywa może to osiągnąć, jednak po przejrzeniu stron podręcznika ntp.conf(5)stwierdziłam, że ta dyrektywa dotyczy tylko Zegarów referencyjnych.

Kilka szczegółów:

Mam serwer lokalny działający ntpdjako główne źródło czasu dla klientów w sieci LAN. Ten serwer jest skierowany na pulę ntp.org i zwykle utrzymuje poziom 3 warstwy.

Oprócz mojego głównego serwera mam urządzenie sieciowe innej firmy, którego głównym zadaniem jest bezprzewodowa synchronizacja zegarów ściennych za pośrednictwem sieci bezprzewodowej. Transmisja RF Specyfikacja urządzenia mówi, że jest to „Serwer czasu zgodny z RFC2030”, ale poza tym jest to prawie czarna skrzynka. Skonfigurowałem urządzenie do używania mojego głównego serwera, ponieważ jest to tylko źródło czasu:

konfiguracja czarnej skrzynki http://www.freeimagehosting.net/uploads/21bafb12bd.png

Mój problem pojawił się, gdy skonfigurowałem ntpdna komputerze osobistym, aby używać zarówno mojego głównego serwera NTP, jak i nadajnika bezprzewodowego jako źródeł czasu. Podczas zapytania do mojego lokalnego ntpd zauważyłem, że „czarna skrzynka” (10.xxZ) była ulubionym źródłem czasu:

$ 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

Ponieważ 10.x.x.Zjedynym źródłem czasu serwera jest serwer 10.x.x.X(czyli warstwa 3), powinna to być warstwa 4. Uważam, że producent na stałe zakodował swój poziom warstwy.

Czy jest jakiś sposób, aby moja maszyna faworyzowała serwer „dobry” (10.xxX) pomimo wyższego poziomu warstwy? Próbowałem też preferdyrektywy w moim lokalnym ntp.confpliku, ale bezskutecznie mała czarna skrzynka zawsze wygrywa: /

Za to, co jest warte, na mojej lokalnej maszynie jest zainstalowany system Mac OS X 10.6.

$ ntpq -c rv | grep version
version="ntpd [email protected] Mon May 18 19:38:25 UTC 2009 (1)",
joxl
źródło
To pytanie jest na tyle ezoteryczne, że poleciłbym je zamiast tego na grupie dyskusyjnej USENET comp.protocols.time.ntp lub równoważnie na liście mailingowej pytań na lists.ntp.org . Prawdopodobnie zasugerują dodanie większej liczby serwerów, ponieważ klienci będą mieli problemy z wyborem między dwoma serwerami. Poza tym nie jestem pewien, jaką odpowiedź uzyskają na temat manipulacji warstwami.
justarobert

Odpowiedzi:

6

Po kilku dalszych badaniach wydaje się, że „fałszowanie” poziomu warstwy źródła sieciowego nie jest możliwe. Więc poszedłem dalej i spróbowałem odpowiedzi dtoubeli . Ku mojemu zdziwieniu, po prostu uczynienie mojego lokalnego serwera czasu warstwą poziomu 2 (równą urządzeniu innej firmy) nie zawsze powodowało, że jest to preferowane źródło czasu. Moja lokalna ntpd nadal rządziłaby nimi obiema „fałszywymi tyknięciami”. Z jakiego powodu nie jestem pewien, ale zgaduję, ponieważ były to jedyne dwa źródła czasu, a ich czasy były tak odległe.

Największym problemem tutaj jest fakt, że moje urządzenie innej firmy nie wydaje się utrzymywać bardzo spójnego czasu, w rzeczywistości bardzo się waha. Rozwiązaniem mojego problemu było dodanie kilku innych dokładnych źródeł czasu (pool.ntp.org) do mojego /etc/ntp.conf. Teraz mój serwer lokalny jest zawsze wybierany jako preferowane źródło czasu, często pomimo wyższego poziomu warstwy niż niektóre serwery w puli.

joxl
źródło
4

Możesz spróbować uruchomić lokalnego ntpd w warstwie 2. Zamiast wskazywać go na pool.ntp.org, po prostu utwórz listę 5-7 serwerów warstwy 1 i dodaj je bezpośrednio do konfiguracji. Z serwerem referencyjnym w warstwie 1 Twoja będzie działała w warstwie 2. Wtedy twoja preferopcja może działać.

Z mojego doświadczenia wynika jednak, że poziom warstwy nie zawsze jest czynnikiem decydującym o wyborze źródła pierwotnego. Myślę, że opóźnienia i jitter mają również znaczący wpływ. Zauważyłem kilkakrotnie, że serwer o niższej warstwie został wybrany jako główne źródło, mimo że dostępnych było kilka serwerów o wyższej warstwie tylko dlatego, że miał najniższe opóźnienia. Dlatego nie mogę zagwarantować, że sugerowane podejście zadziała.

dtoubelis
źródło
2

W sieci lokalnej mam sprzętowe źródło czasu GPS o „wysokiej warstwie (10)”, które daje mi status falseticka (x) w ntpq. Odkryłem, że użycie server [x.x.x.x] true(x = adres IP) w ntp.conf pominie sprawdzanie falseticka, pozwalając być potencjalnym kandydatem. Wygląda na to, że liczba warstw nie zawsze oznacza wyższy priorytet.

Tomofumi
źródło
1

Jeśli nie podoba ci się ten serwer 10.xxZ jako odniesienie, powinno to załatwić sprawę:

server 10.x.x.Z noselect 

Jest to przydatne, jeśli serwer powinien być używany wyłącznie do celów monitorowania. alternatywnie możesz również skonfigurować:

server 10.x.x.X prefer

Dlatego 10.xxZ nie będzie używane, jeśli 10.xxX jest dostępny.

hans
źródło
0

Jednym z powodów, dla których preferowane jest to, że twój inny serwer czasu był ostatnio niedostępny. Widzisz kolumnę zasięgu?

dfc
źródło