Time windows com 0x9

Что делать, если ваш компьютер с Windows 10 не выполняет синхронизацию времени? А в журнале событий системы находим ошибку Time-Service с кодом 158 и таким описанием проблемы:

    «Поставщик времени «VMICTimeProvider» указал, что текущее аппаратное обеспечение и операционная среда не поддерживаются, и их работа остановлена. Это поведение ожидаемо для VMICTimeProvider в средах non-HyperV-guest. Это поведение может быть ожидаемо для текущего поставщика в текущей операционной среде.«

И если для проверки выполнить: w32tm /query /peers , то узлы найдены не будут.

Вероятно, ПК настроен для синхронизации через контроллер домена. Такое поведение выставляется по умолчанию, не спрашивайте «почему». ( Тип по умолчанию: NT5DS. )

Нам нужно настроить проверку подлинности как для локального компьютера, и задать тип сервера NTP.

Нажимаем комбинацию клавиш Win+R запускаем групповую политику gpedit.msc и заходим в:

Конфигурация компьютера — Административные шаблоны — Система — Служба времени Windows — Поставщики времени

(Computer Configuration — Administrative Templates — System — Windows Time Service — Time Providers)

Далее смотрим параметры:

Включить NTP-клиент Windows  — Включено.

Настроить NTP клиент — Включено.

Выставить опции:

NTP-сервер: time.windows.com,0x09

Тип: NTP

CrossSiteSyncFlags: 2

ResolvePeerBackoffMinutes: 15

ResolvePeerBackoffMaxTimes: 7

SpecialPollInterval: 1024

EventLogFlags: 1

EventLogFlags можно выставить 3, тогда в журнал будут записываться как скачки времени, так и изменения источника времени.

Затем в реестре можно выключить «VMICTimeProvider», но это не обязательно:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\TimeProviders\VMICTimeProvider]

«Enabled»=dword:00000000

В логах на контроллере домена начал замечать ошибка с ntp
«Служба времени прекратила объявлять себя как источник точного времени.»
Прочитал статью,Настройка ntp. Проверил все настройки и ничего криминального я не нашел, кроме того синхронизация происходит с сервером по умолчанию time.windows.com,0x9
Мне кажется стоит указать ntp сервер, тот который находится немного ближе чем, сервер по умолчанию.
Прошу совета.


  • Вопрос задан

  • 2152 просмотра

Accurate time synchronization is vital for the smooth operation of computer systems, especially in environments where multiple devices interact over a network. Network Time Protocol (NTP) ensures that all devices maintain the correct time, which is crucial for logging events, security protocols, and the proper functioning of time-dependent applications. In Windows, NTP settings can be managed through the Windows Registry, providing advanced users and IT professionals with granular control over time synchronization behaviors. This guide will walk you through understanding and configuring NTP settings via the Windows Registry.


Understanding NTP and Its Importance

Network Time Protocol (NTP) is a networking protocol designed to synchronize the clocks of computers over packet-switched, variable-latency data networks. Accurate timekeeping is essential for:

  • Security: Ensures the validity of authentication tokens and encryption protocols.
  • Logging: Provides accurate timestamps for system and application logs.
  • Data Integrity: Prevents issues in databases and file systems that rely on precise time stamps.
  • Network Operations: Coordinates tasks and schedules across multiple devices.

Without proper time synchronization, discrepancies can lead to security vulnerabilities, data inconsistencies, and operational inefficiencies.


Windows Time Service Overview

Windows uses the Windows Time Service (W32Time) to synchronize the system clock with configured time sources. By default, Windows Time Service is configured to use NTP servers to keep the system time accurate. The service can operate in different modes, such as:

  • NTP Client: Synchronizes the system time with external NTP servers.
  • NTP Server: Provides time synchronization services to other devices on the network.

Understanding and configuring the Windows Time Service via the Registry allows for customized synchronization settings tailored to specific network environments.


Locating NTP Settings in the Windows Registry

The NTP settings are primarily located within the Windows Registry under the following path:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters

Within this key, several values determine how the Windows Time Service operates, including the NTP server addresses, synchronization frequency, and other related settings.

Key Registry Values for NTP Configuration:

  • NtpServer: Specifies the list of NTP servers the system will synchronize with.
  • Type: Defines the synchronization type (e.g., NTP, NT5DS).
  • AnnounceFlags: Determines the role of the computer in the time synchronization hierarchy.
  • SpecialPollInterval: Sets the interval between synchronization attempts.

Warning: Editing the Windows Registry can have significant impacts on your system. Always back up the Registry before making any changes.

Steps to Configure NTP Settings:

1. Open Registry Editor

To edit the Registry, you’ll use the Registry Editor (regedit), a built-in Windows utility.

  1. Press Win + R to open the Run dialog box.
  2. Type regedit and press Enter.
  3. If prompted by User Account Control (UAC), click Yes to allow Registry Editor to make changes.

2. Navigate to the NTP Settings

In Registry Editor, browse to:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters

3. Modify the NtpServer Value

  1. Double-click on NtpServer in the right pane.
  2. Enter the NTP servers you wish to use, separated by spaces. Each server should be followed by a comma and a flag. For example: time.windows.com,0x9 time.nist.gov,0x9
    • The flag 0x9 indicates that the server should be used for synchronization and that it’s a reliable time source.

4. Set the Synchronization Type

  1. Double-click on Type.
  2. Set the value to NTP to specify that the system should use the NTP server(s) defined in NtpServer.NTP
    • Other possible values include:
      • NT5DS: Synchronizes with the domain hierarchy.
      • AllSync: Allows synchronization with all available time sources.

5. Adjust the Polling Interval (Optional)

  1. Navigate to:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
  2. Double-click on SpecialPollInterval.
  3. Set the value (in seconds) to define how often the system will poll the NTP server. For example, to set it to 1 hour:3600

6. Enable the NTP Client

  1. Navigate to:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
  2. Double-click on Enabled.
  3. Set the value to 1 to enable the NTP client.

Example Configuration

Suppose you want to configure your system to synchronize with pool.ntp.org every 2 hours. Here’s how you can set it up:

  1. Set NtpServer:pool.ntp.org,0x9
  2. Set Type:NTP
  3. Set SpecialPollInterval:7200
  4. Ensure Enabled is set to 1.

Restarting the Windows Time Service

After making changes to the Registry, it’s essential to restart the Windows Time Service to apply the new settings.

Steps to Restart the Service:

  1. Open Command Prompt as Administrator:
    • Press Win + X and select Command Prompt (Admin) or Windows PowerShell (Admin).
  2. Stop the Windows Time Service:net stop w32time
  3. Start the Windows Time Service:net start w32time
  4. Resynchronize the Time (Optional):w32tm /resync
    • Note: If you encounter errors, ensure that the Windows Time Service is configured correctly and that there are no network issues preventing synchronization.

Precautions and Best Practices

  • Backup the Registry: Before making any changes, create a backup to prevent potential system issues.
    • In Registry Editor, right-click on the W32Time key and select Export. Save the .reg file to a safe location.
  • Use Trusted NTP Servers: Only use reputable NTP servers to ensure accurate and secure time synchronization.
  • Avoid Frequent Polling: Setting the polling interval too low can lead to unnecessary network traffic and may be flagged as suspicious activity.
  • Limit Registry Editing to Advanced Users: Incorrect modifications can cause system instability. If unsure, seek assistance from IT professionals.

Troubleshooting NTP Issues

If you encounter problems with time synchronization after configuring NTP settings, consider the following troubleshooting steps:

1. Verify NTP Server Accessibility

Ensure that the NTP servers you specified are reachable and operational.

  • Use the ping command to test connectivity:ping pool.ntp.org

2. Check Windows Time Service Status

Ensure that the service is running:

sc query w32time

3. Review Event Logs

  • Open Event Viewer (Win + X > Event Viewer).
  • Navigate to Windows Logs > System and look for events related to W32Time.

4. Force Time Synchronization

Use the following command to force synchronization:

w32tm /resync /force

5. Reset Windows Time Service Configuration

  1. Stop the service:net stop w32time
  2. Unregister the service:w32tm /unregister
  3. Register the service again:w32tm /register
  4. Start the service:net start w32time
  5. Reconfigure NTP settings as needed.

Conclusion

Proper time synchronization is essential for the reliable and secure operation of Windows systems within any networked environment. By configuring NTP settings through the Windows Registry, advanced users can tailor time synchronization behaviors to meet specific requirements. However, caution must be exercised when editing the Registry to prevent system instability. Always ensure you have backups and understand the implications of the changes you make.

В операционных системах Windows за синхронизацию времени отвечает служба времени Windows, она же w32time. Эта служба обеспечивает работу серверной, и клиентской частей. Иными словами один и тот же компьютер может выступать в роли сервера и клиента одновременно.

Служба времени Windows не имеет графического интерфейса. Настройка производится через CMD утилитой w32tm, ручной правкой реестра, или через групповые политики.

Утилита  w32tm меняет параметры в разделе

HKLM\SYSTEM\CurrentControlSet\Services\W32Time

Групповые политики создают раздел в

HKLM\SOFTWARE\Policies\Microsoft\W32Time

Параметры, созданные групповыми политиками, имеют больший приоритет, и перекрывают параметры по умолчанию.

Рассмотрим содержимое подраздела Parameters компьютера, находящегося в рабочей группе

и для доменного компьютера

Ключ NtpServer определяет список серверов времени, с которыми будет происходить синхронизация. По умолчанию указан адрес time.windows.com,0x9.  При указании более одного сервера времени, адреса нужно разделять пробелами.

Параметр 0x9, является суммой 0x1 и 0x8.

0x1 – SpecialInterval, использование специального интервала опроса.
0x2 – режим UseAsFallbackOnly.
0x4 – SymmetricActive, симметричный активный режим.
0x8 – Client, отправка запроса в клиентском режиме.

Специальный интервал опроса указан в ключе

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval

и составляет 3600 секунд. То есть синхронизация происходит каждый час.

Ключ Type определяет тип синхронизации, и имеет следующие значения:

NoSync- служба времени не синхронизируется с другими источниками.
NTP- служба времени выполняет синхронизацию с серверами, указанными в записи реестра NtpServer.
NT5DS- служба времени выполняет синхронизацию на основе иерархии домена.
AllSync — служба времени использует все доступные механизмы синхронизации.

В случае с компьютером из рабочей группы, используется тип NTP, то есть синхронизация времени происходит с сервером time.windows.com, указанном в ключе NtpServer.

Доменный компьютер использует тип NT5DS. В данном случае синхронизация времени происходит с контроллером домена, на котором авторизовался компьютер. Контроллеры синхронизируют свое время с контроллером, являющимся владельцем роли PDC Emulator. Владелец роли PDC Emulator, также использует тип NT5DS и синхронизирует свое время с локальным часами, получившими время от CMOS схемы, расположенной на материнской плате. Минус в том, что время полученное от CMOS схемы постоянно «съезжает» относительно реального. Чтобы такого не происходило, на корневом контроллере с ролью PDC Emulator, меняют тип на NTP и в  NtpServer указывают список внешних серверов времени.

На корневом контроллере домена, с ролью PDC Emulator, откроем CMD и выполним команду

c:\>w32tm /config /manualpeerlist:"0.ru.pool.ntp.org,0x9 1.ru.pool.ntp.org,0x9 2.ru.pool.ntp.org,0x9 3.ru.pool.ntp.org,0x9" /syncfromflags:MANUAL /update

/manualpeerlist — задает список адресов источников времени. Этот список будет добавлен в значение уже известного ключа NtpServer.

/syncfromflags — определяет источник синхронизации. Этот параметр меняет значение ключа Type. Возможные варианты:

MANUAL — синхронизация с узлами из заданного вручную списка. Аналогичен значению NTP.
DOMHIER — синхронизация с контроллером домена Active Directory в доменной иерархии. Аналогичен значению NT5DS.
NO — без синхронизации. Аналогичен значению NoSync.
ALL — синхронизация как с узлами, заданными вручную, так и с узлами домена. Аналогичен значению AllSync.

/update — уведомляет службу времени, что конфигурация изменилась, чтобы изменения вступили в силу.

Может ли компьютер выступать в роли сервера времени, определяется следующим ключом

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\Enabled

У контроллера данный ключ имеет значение 1, у компьютера 0. Иными словами любой контроллер домена выступает в качестве сервера времени.

За то, как служба времени будет корректировать время на клиенте, отвечает ключ

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxAllowedPhaseOffset

У компьютера, находящегося в рабочей группе, значение ключа MaxAllowedPhaseOffset равно 1-ой секунде. У доменного компьютера 300 секунд.  Если разница во времени между клиентом и сервером времени будет больше, чем значение ключа MaxAllowedPhaseOffset, то служба времени сразу поменяет время на клиенте, на время, установленное на сервере времени. Если разница во времени меньше, то корректировка часов будет происходить постепенно. Это сделано, чтобы предотвратить сбои служб, чувствительных к сдвигам времени. С другой стороны 300 секунд, это 5 минут, или максимально допустима разница во времени, для протокола Kerberos.

Чтобы изменить настройки службы времени через групповые политики, нужно создать фильтр WMI, для нацеливания политики на корневой контроллер домена, с ролью PDC Emulator. Для этого нужно открыть оснастку «Управление групповой политикой», нажать на раздел «Фильтры WMI» правой кнопкой мыши и выбрать «Создать». В поле имя нужно написать название фильтра, например, «PDC Emulator». Далее нужно нажать кнопку «Добавить» и вставить WMI запрос

Select * from Win32_ComputerSystem where DomainRole = 5

затем нужно нажать «Ok» и «Сохранить».

Создадим политику, нажмем правой кнопкой мыши на раздел «Domain Controllers» и выберем «Создать объект групповой политики…», назовем его «PDC Emulator Time Sources». Нажмем правой кнопкой мыши по созданному объекту, выберем «Изменить». Откроем раздел «Конфигурация компьютера->Политики->Административные шаблоны->Система->Служба времени Windows->Поставщики времени». Выберем параметр «Настроить NTP-клиент Windows». В поле NtpServer вставим адреса серверов времени

0.ru.pool.ntp.org,0x9 1.ru.pool.ntp.org,0x9 2.ru.pool.ntp.org,0x9 3.ru.pool.ntp.org,0x9

В поле Type нужно выбрать значение «NTP», затем нажать «Ок» и закрыть окно «Редактор управления групповыми политиками».

После этого нужно выбрать созданную политику «PDC Emulator Time Sources» и в поле «Фильтр WMI» выбрать созданный ранее фильтр «PDC Emulator»

Диагностика

Принудительно синхронизировать время можно командой

c:\>w32tm /resync

Посмотреть текущий источник времени можно командой

c:\>w32tm /query /source

Эта команда показывает текущий источник времени, время синхронизации и прочую информацию

c:\>w32tm /query /status

Эта команда показывает данные о всех источниках времени

c:\>w32tm /query /peers

Разницу во времени между компьютером и источником времени можно посмотреть командой

c:\>w32tm /monitor

Для просмотра текущей конфигурации используется команда

c:\>w32tm /query /configuration

Перезапустить службу времени можно командой

c:\>net stop w32time && net start w32time

Если что-то пошло не так, можно перерегистрировать службу времени. При этом создастся заново вся ветка реестра, относящаяся к службе времени

c:\>net stop w32time
c:\>w32tm /unregister
c:\>w32tm /register
c:\>net start w32time

Для быстрой синхронизации времени с определенным хостом, можно воспользоваться командой

c:\>NET TIME \\DC1.4SKILL.LOC /SET /Y

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

///////////////////////////////////FOR/////DOMAIN/////2008//////////////////////////////////////////////////////////////////////

На днях вновь озаботился вопросом синхронизации времени на компьютерах в домене Windows 2008. Теоретически, нет никакой проблемы, если первый контроллер домена будет сверять время с железом, на котором стоит. Однако моя практика показала, что когда DC стоит на виртуальной машине, а платформа виртуализации (конкретно, была использована VMWare ESXi 5) сверяет время, как и все остальные, с DC, то время в домене начинает сильно убегать. В любом случае, намного лучше и удобнее, если время не только синхронизировано внутри самого домена, но и является достоверным.

Итак, настройка синхронизации времени в домене Windows 2008.

0. Прежде чем настраивать синхронизацию времени нужно обеспечить прохождение трафика от PDC в интернет и обратно по порту UDP 123.

1. Определяем основной контроллер домена. Обычно администратор прекрасно знает, какой из контроллеров у него держит роль PDC, но для верности можно легко проверить это, набрав в командной строке:

netdom /query fsmo

В ответ будет выдано несколько строк, в числе которых можно найти PDC.

2. Переходим на PDC и запускаем командную строку. ПО умолчанию, в домене 2008, даже если вход в систему выполнен под учетной записью администратора, полные права в CMD будут только если запустить CMD в режиме RUN AS. В меню «Start» щелкаем по строке «Command Promt» правой кнопкой мыши и выбираем в контекстном меню «Run as administrator».

3. Останавливаем службу W32Time:

net stop w32time

4. Задаем пул адресов достоверных источников времени

w32tm /config /syncfromflags:manual /manualpeerlist:"0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org"

Если команда копировалась в командную строку со страницы этого сайта через буфер обмена и в результате выдается сообщение вида:

The following arguments were unexpected:
 1.pool.ntp.org 2.pool.ntp.org"

можно попробовать удалить и ввести вручную символы кавычек. Годится символ с последней клавиши среднего ряда в латинской раскладке.

5. Теперь попросим PDC отвечать клиентам на запросы о синхронизации времени:

 w32tm /config /reliable:yes

6. Снова запускаем службу времени W32Time:

net start w32time

После настройки нужно обязательно проверить журнал событий в разделе «Windows Logs — System» и убедиться, что синхронизация работает, в противном случае разбираться с ошибками. Проблемы могут быть с доступом в интернет с контроллера по порту UDP 123, либо с недоступностью заданных источников времени.

Проверить теущую конфигурацию службы времени можно командой:

w32tm /query /configuration

либо сохранить конфигурацию в текстовый файл, Например, так:

w32tm /query /configuration >> C:\timelog.txt

Имя файла, конечно, можно задать произвольное.

Выполнялись и исправно работали приведенные команды на английской версии Windows Server 2008 R2 Standard, Service Pack 1

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как включить secure boot windows 11 без биоса
  • Как подключить руль с педалями к ноутбуку windows 7
  • Windows 11 не обновляется экран
  • Windows apps что это за папка windows
  • Системные требования для windows 2000