Как изменить источник времени с «Local CMOS Clock» на «0.pool.ntp.org»

Как изменить источник времени с «Local CMOS Clock» на «0.pool.ntp.org»

У меня есть компьютер с Windows 8 Pro, который синхронизируется ТОЛЬКО с локальными часами cmos.

C:\WINDOWS\system32>w32tm /query /source
Local CMOS Clock

Мне нужно синхронизироваться с 0.pool.ntp.org, но он отказывается это делать. (мои часы отстают примерно на 30 секунд)

Что я пробовал:

  1. Включите службу времени и перезагрузите компьютер.
  2. Измените сервер времени через панель управления Windows и перезагрузите компьютер.
  3. Измените сервер времени с помощью этой команды: w32tm /config /manualpeerlist:0.pool.ntp.org /syncfromflags:manual /update /reliable:yes
  4. Перезагрузите компьютер.

Каждый раз, когда я перезагружаю свой компьютер, часы продолжают синхронизироваться с локальными часами cmos:

C:\WINDOWS\system32>w32tm /query /source
Local CMOS Clock

и отставание в 30 секунд.

Вот моя конфигурация:

C:\WINDOWS\system32>w32tm /query /configuration
[Configuración]

EventLogFlags: 2 (Local)
AnnounceFlags: 5 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 10 (Local)
MaxPollInterval: 15 (Local)
MaxNegPhaseCorrection: 54000 (Local)
MaxPosPhaseCorrection: 54000 (Local)
MaxAllowedPhaseOffset: 1 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 1 (Local)
UpdateInterval: 360000 (Local)


[Proveedores de hora]

NtpClient (Local)
DllName: C:\WINDOWS\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 604800 (Local)
Type: NTP (Local)
NtpServer: 0.pool.ntp.org (Local)

VMICTimeProvider (Local)
DllName: C:\WINDOWS\System32\vmictimeprovider.dll (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
NtpServer (Local)
DllName: C:\WINDOWS\system32\w32time.dll (Local)
Enabled: 0 (Local)
InputProvider: 0 (Local)


C:\WINDOWS\system32>w32tm /query /status
Indicador de salto: 0(ninguna advertencia)
Capa: 1 (referencia primaria - sincronizada mediante radio reloj)
Precisión: -6 (15.625ms por tick)
Demora de raíz: 0.0000000s
Dispersión de raíz: 10.0000000s
Id. de referencia: 0x4C4F434C (nombre de origen:  "LOCL")
Última sincronización de hora correcta: 29/07/2021 04:36:50 p. m.
Origen: Local CMOS Clock
Intervalo de sondeo: 10 (1024s)


C:\WINDOWS\system32>

решение1

Это старая тема, но когда я наткнулся на нее, мне захотелось ответить тем, кто столкнется с той же проблемой.

Вероятно, вам необходимо разрешить исходящий порт 123 (UDP) в брандмауэре Windows и/или в вашем (инфраструктурном) брандмауэре.

решение2

Я только что столкнулся с точно такой же проблемой, но в Windows 10 Home.

Даже если ошибка w32tmбыла обнаружена в течение года, пройдет некоторое время, прежде чем она проявится, поскольку часам CMOS RTC требуется некоторое время, чтобы дрейф стал настолько большим, чтобы его можно было четко увидеть на фоне других часов, например, в смартфонах.

решение3

Если синхронизация NTP работала отлично до установки обновлений, а теперь перестала, то это может быть связано с проблемой, которую MS ввела, добавив UtilizeSslTimeDataопцию, когда некоторые интервалы были «слабыми» до совершенно нереалистичных (вне мира MS) значений, таких как UpdateInterval: 360000.

Я не совсем уверен, почему UtilizeSslTimeDataэта опция включена по умолчанию и что она делает, особенно когда на компьютере нет интернета или периодического SSL-трафика, но если в вашей локальной сети есть только 1-2 авторитетных NTP-сервера и w32tm /query /sourceвнезапно появляется Local CMOS Clockэтот код, он может помочь восстановить интервалы до значений по умолчанию 2003 года, когда все компьютеры были достаточно быстры, чтобы синхронизировать время по NTP каждые 64 секунды без проблем:

powershell -C "Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config' -Name UtilizeSslTimeData -Value 0"
powershell -C "Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config' -Name UpdateInterval -Value 0x64"
powershell -C "Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config' -Name MinPollInterval -Value 0x6"
powershell -C "Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\Config' -Name MaxPollInterval -Value 0xa"

net stop w32time
w32tm /config /manualpeerlist:"0.pool.ntp.org 1.pool.ntp.org" /reliable:YES /syncfromflags:MANUAL
net start w32time
w32tm /config /update 
w32tm /resync

Вам может потребоваться подождать 10-60 секунд, пока w32tm /query /sourceизменения не отразятся, если это сработает. Перезагрузка не требуется.

Пример рабочей конфигурации:

cmd> w32tm /query /configuration /verbose

[Конфигурация]

EventLogFlags: 2 (Local)
AnnounceFlags: 5 (Local)
TimeJumpAuditOffset: 28800 (Local)
MinPollInterval: 6 (Local)
MaxPollInterval: 10 (Local)
MaxNegPhaseCorrection: 54000 (Local)
MaxPosPhaseCorrection: 54000 (Local)
MaxAllowedPhaseOffset: 1 (Local)

FrequencyCorrectRate: 4 (Local)
PollAdjustFactor: 5 (Local)
LargePhaseOffset: 50000000 (Local)
SpikeWatchPeriod: 900 (Local)
LocalClockDispersion: 10 (Local)
HoldPeriod: 5 (Local)
PhaseCorrectRate: 1 (Local)
UpdateInterval: 100 (Local)

[TimeProviders]

NtpClient (Local)
DllName: C:\WINDOWS\system32\w32time.dll (Local)
Enabled: 1 (Local)
InputProvider: 1 (Local)
CrossSiteSyncFlags: 0 (Undefined or NotUsed)
AllowNonstandardModeCombinations: 1 (Local)
ResolvePeerBackoffMinutes: 15 (Local)
ResolvePeerBackoffMaxTimes: 7 (Local)
CompatibilityFlags: 2147483648 (Local)
EventLogFlags: 1 (Local)
LargeSampleSkew: 3 (Local)
SpecialPollInterval: 1024 (Local)
Type: NTP (Local)

Связанный контент