Udostępnij za pośrednictwem


Gdy parametr SpecialPollInterval jest używany jako interwał sondowania, usługa Czas systemu Windows nie poprawia czasu, jeśli usługa przechodzi do stanu Spike

Ten artykuł zawiera rozwiązanie problemu, który usługa Czas systemu Windows nie poprawia czasu, jeśli usługa dostaje się do stanu Spike.

Oryginalny numer KB: 2638243

Symptomy

Komputer kliencki NTP z systemem Windows Server lub wersjami klienta systemu Windows może nie poprawić czasu, jeśli spełnione są następujące warunki:

  • Klient NTP synchronizuje czas z ręcznie określonym serwerem NTP.
  • Klient NTP używa parametru SpecialPollInterval jako interwał sondowania.
  • Przesunięcie czasu między klientem NTP a serwerem NTP jest większe niż largePhaseOffset zgodnie z konfiguracją w kliencie NTP.

W takiej sytuacji klient NTP nie może poprawić czasu, nawet po oczekiwaniu na przejście SpikeWatchPeriod.

Przyczyna

Ten problem występuje, ponieważ klient NTP jest w stanie SPIKE za każdym razem, gdy klient sonduje próbkę czasu na serwerze NTP. Usługa Time zarządza stanem wewnętrznym, a jeśli klient przechodzi do stanu SPIKE, klient nie synchronizuje czasu.

Rozwiązanie

Aby obejść ten problem, aby klient NTP był włączony do synchronizacji z serwerem NTP po stanie SPIKE, skonfiguruj czas systemu Windows, aby używać minPollInterval/MaxPollInterval jako interwał sondowania.

Aby skonfigurować czas systemu Windows do używania parametru MinPollInterval/MaxPollInterval jako interwał sondowania, wykonaj następujące kroki:

  1. Kliknij przycisk Start, kliknij przycisk Uruchom, wpisz cmd, a następnie naciśnij ENTER.

    Uwaga 16.

    W systemie Windows 8 lub Windows Server 2012 naciśnij logo systemu Windows+R, aby otworzyć pole Uruchom, wpisz cmd w polu Uruchom, a następnie naciśnij ENTER.

  2. W wierszu polecenia wpisz następujące polecenie. Po wpisaniu polecenia naciśnij ENTER.

        w32tm /config /update /manualpeerlist:NTP_server_IP_Address,0x8 /syncfromflags:MANUAL  
    

    Uwaga 16.

    W przypadku używania flagi 0x1 z przełącznikiem należy określić użycie parametru /manualpeerlist SpecialPollInterval. Aby obejść ten problem, nie używaj flagi 0x1.

Rozwiązanie

Jeśli chcesz użyć polecenia "SpecialPollinterval", zmień następujący rejestr:
Klucz: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
Wartość: MinPollInterval
Typ: DWORD

Aby uniknąć tego problemu, klucz rejestru powinien zastosować wyrażenie warunkowe w następujący sposób:
Wyrażenie warunkowe:
SpecialPollInterval<(2^MinPollInterval)*(HoldPeriod+1)
Komputer członkowski domeny ma wartości domyślne:

  • MinPollInterval=10
  • HoldPeriod=5

Uwaga 16.

Jeśli ustawisz ustawienia usługi Czas systemu Windows według zasad grupy lub lokalnych zasad grupy, to obejście nie działa i trzeba usunąć ustawienia zasad.

Stan

Firma Microsoft potwierdziła, że jest to problem w produktach firmy Microsoft wymienionych w sekcji "Dotyczy".

Więcej informacji

Interwał sondowania używany przez czas systemu Windows jest ustawiany przez następujący podklucz rejestru:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters

Jeśli wartość wpisu NtpServer w tym podkluczu zawiera 0x1, czas systemu Windows używa wartości SpecialPollInterval jako interwał sondowania. W przeciwnym razie czas systemu Windows używa wartości MinPollInterval/MaxPollInterval. Aby uzyskać dodatkowe informacje o wartościach usługi czasowej i rejestru systemu Windows, odwiedź następującą witrynę sieci Web firmy Microsoft:
https://technet.microsoft.com/library/cc773263(WS.10).aspx