Служба времени Windows, несмотря на кажущуюся простоту, является одной из основ, необходимых для нормального функционирования домена Active Directory. В правильно настроенной среде AD служба времени работает следующим образом: компьютеры пользователей получают точное время от ближайшего контроллера домена, на котором они зарегистрировались. Все контроллеры домена в свою очередь получают точное время от DC с FSMO ролью «Эмулятор PDC», а контролер PDC синхронизирует свое время с неким внешним источником времени. В качестве внешнего источника времени может выступать один или несколько NTP серверов, например time.windows.com или NTP сервер вашего Интернет-провайдера. Также нужно отметить, что по умолчанию клиенты в домене синхронизируют время с помощью службы времени Windows (Windows Time), а не с помощью протокола NTP.
Если вы столкнулись с ситуацией, когда время на клиентах и контроллерах домена различается, возможно, в вашем домене есть проблемы с синхронизацией времени и эта статья будет вам полезна.
В первую очередь выберите подходящий NTP сервер, который вы могли бы использовать. Список общедоступных NTP серверов доступен на сайте http://ntp.org. В нашем примере мы будем использовать NTP сервера из пула ru.pool.ntp.org:
- 0.ru.pool.ntp.org
- 1.ru.pool.ntp.org
- 2.ru.pool.ntp.org
- 3.ru.pool.ntp.org
Настройка синхронизации времени в домене с помощью групповых политик состоит из двух шагов:
1) Создание GPO для контроллера домена с ролью PDC
2) Создание GPO для клиентов (опционально)
Настройка политики синхронизации NTP на контролере домена PDC
Этот шаг предполагает настройку контроллера домена с ролью эмулятора PDC на синхронизацию времени с внешним NTP сервером. Т.к. теоретически роль эмулятора PDC может перемещаться между контроллерами домена, нам нужно сделать политику, которая применялась бы только к текущему владельцу роли PDC. Для этого в консоли управления Group Policy Management Console (GPMC.msc), создадим новый WMI фильтр групповых политик. Для этого в разделе WMI Filters создадим фильтр и именем PDC Emulator и WMI запросом:
Select * from Win32_ComputerSystem where DomainRole = 5
Затем создайте новую GPO и назначьте ее на контейнер Domain Controllers.
Перейдите в режим редактирования политики и разверните следующий раздел политик: Computer Configuration->Administrative Templates->System->Windows Time Service->Time Providers
Нас интересуют три политики:
- Configure Windows NTP Client: Enabled (настройки политики описаны ниже)
- Enable Windows NTP Client: Enabled
- Enable Windows NTP Server: Enabled
В настройках политики Configure Windows NTP Client укажите следующие параметры:
- NtpServer: 0.ru.pool.ntp.org,0x1 1.ru.pool.ntp.org,0x1 2.ru.pool.ntp.org,0x1 3.ru.pool.ntp.org,0x1
- Type: NTP
- CrossSiteSyncFlags: 2
- ResolvePeerBackoffMinutes: 15
- Resolve Peer BAckoffMaxTimes: 7
- SpecilalPoolInterval: 3600
- EventLogFlags: 0
Совет. Не забудьте настроить межсетевой экран таким образом, чтобы сервер PDC мог получить доступ к внешним NTP серверам по протоколу NTP (UDP порт 123).
Примечание. Обратите внимание на синтаксис в поле NtpServer. Формат указания нескольких NTP серверов такой:ntsrv1.org,0x1 ntpsrv2.org,0x1 (разделитель пробел). На скриншоте указаны ошибочные данные!
Примените созданный ранее фильтр PDC Emulator к данной политике.
Совет. Найти имя сервера с ролью PDC можно с помощью команды:
netdom query fsmo
Осталось обновить политики на контроллере PDC:
gpupdate /force
Вручную запустите синхронизацию времени:
w32tm /resync
Проверьте текущие настройки NTP:
w32tm /query /status
Совет. В том случае, если время не синхронизировалось, перезапустите службу времени Windows и сбросьте текущие настройки:
net stop w32time
w32tm.exe /unregister
w32tm.exe /register
net start w32time
Настройка синхронизации времени на клиентах домена
В среде Active Directory по умолчанию клиенты домена синхронизируют свое время с контролерами домена (опция Nt5DS – синхронизировать время согласно иерархии домена). Как правило, эта схема работает и не требует перенастройки. Однако при наличии проблем с синхронизацией времени на клиентах домена, можно попробовать принудительно назначить сервер времени для клиентов с помощью GPO.
Для этого создайте новую GPO и назначьте ее на контейнеры (OU) с компьютерами. В редакторе GPO перейдите в раздел Computer Configuration -> Administrative Templates -> System -> Windows Time Service -> Time Providers и включите политику Configure Windows NTP Client.
В качестве сервера NTP укажите имя или ip адрес PDC, например msk-dc1.winitpro.ru,0x9, а в качестве типа синхронизации — NT5DS
Обновите настройки групповых политик на клиентах и проверьте, что клиенты успешно синхронизировали свое время с PDC.
Совет. Указанная схема применима только к небольшим доменам. Для больших распределенных доменов с большим количеством DC и сайтов придется создать отдельную политику для каждого сайта, чтобы клиенты синхронизировали свое время с DC в сайте.
Время на компьютере играет важную роль во многих аспектах работы. Для корректной и эффективной работы в сети домена необходимо, чтобы время на компьютере пользователя было точно синхронизировано с временем сервера. В операционной системе Windows 10 есть несколько полезных методов для синхронизации времени в домене.
Первый метод — использование службы времени в Windows 10. В ОС Windows 10 встроена служба времени с названием «Windows Time». По умолчанию она настроена на автоматический режим, который синхронизирует время с временным сервером, указанным в настройках. Чтобы включить данную службу, необходимо выполнить несколько простых действий.
Второй метод — использование групповой политики системы. В Windows 10 можно настроить групповую политику системы таким образом, чтобы она автоматически синхронизировала время в домене. Для этого нужно выполнить несколько шагов.
Третий метод — использование командной строки. В Windows 10 есть команды, которые позволяют синхронизировать время с указанным сервером. Для использования данного метода необходимо выполнить следующие действия.
Четвёртый метод — использование службы NTP (Network Time Protocol). NTP – это протокол сетевого времени, который используется для синхронизации времени на компьютерах в сети. Для использования NTP нужно выполнить несколько действий.
Пятый метод — использование сторонних программ. Вместо использования встроенных средств Windows 10, можно воспользоваться сторонними программами для синхронизации времени в домене. Некоторые из них имеют более расширенные возможности и настройки, чем встроенные средства Windows 10. При использовании сторонних программ следует учитывать их надёжность и совместимость с ОС Windows 10.
Содержание
- Возможности синхронизации времени в Windows 10
- Метод 1: Использование встроенных настроек Windows
- Метод 2: Использование командной строки и службы времени Windows
- Метод 3: Использование специализированного программного обеспечения
- Метод 4: Настройка синхронизации времени через доменный контроллер
- Метод 5: Использование внешних временных серверов
- Выводы
Возможности синхронизации времени в Windows 10
В Windows 10 существует несколько способов синхронизации времени. Ниже приведены пять полезных методов, которые помогут вам синхронизировать время на компьютерах в домене:
- Использование службы времени Windows (W32Time).
Преимущества:
- Позволяет синхронизировать время с внешними серверами времени.
- Поддерживает различные режимы синхронизации времени.
- Может автоматически настраиваться при добавлении в домен.
Недостатки:
- Требуется права администратора для настройки.
- Нет гарантии точности времени.
- Может работать неправильно в сетях с плохим качеством связи.
- Использование службы синхронизации времени Active Directory.
Преимущества:
- Обеспечивает автоматическую синхронизацию времени для всех компьютеров в домене.
- Позволяет настроить режим синхронизации.
- Обеспечивает более высокую точность времени.
Недостатки:
- Требует настройки и управления со стороны администратора домена.
- Может быть неприменимо для компьютеров, не входящих в домен.
- Использование службы времени NTP.
Преимущества:
- Позволяет синхронизировать время с внешними серверами времени.
- Обеспечивает высокую точность времени.
- Поддерживает защищенное соединение.
Недостатки:
- Требует настройки и управления со стороны администратора.
- Может быть сложным в настройке для новичков.
- Использование сторонних программ для синхронизации времени.
Преимущества:
- Позволяет более гибко управлять синхронизацией времени.
- Может предоставлять дополнительные функции и настройки.
Недостатки:
- Требует установки и настройки стороннего ПО.
- Может быть платным.
- Могут возникать совместимостеи проблемы с другими программами.
- Использование скриптов и командной строки.
Преимущества:
- Позволяют управлять синхронизацией времени с помощью командных строк и скриптов.
- Могут быть автоматизированы.
- Требуют минимальных ресурсов.
Недостатки:
- Требуют знания командной строки и языков программирования.
- Могут быть сложными в настройке и использовании для новичков.
Выбор метода синхронизации времени в Windows 10 зависит от ваших потребностей и уровня технической подготовки. Учитывайте возможности и ограничения каждого метода, чтобы выбрать наиболее подходящий для вас.
Метод 1: Использование встроенных настроек Windows
Один из способов синхронизации времени в Windows 10 в домене — использование встроенных настроек операционной системы. Этот метод позволяет автоматически синхронизировать время компьютера с сервером времени, что позволяет поддерживать точность времени и предотвращать возможные ошибки.
Для настройки синхронизации времени в Windows 10 с сервером времени в домене нужно выполнить следующие шаги:
- Откройте панель управления Windows и выберите «Время и язык».
- В разделе «Дата и время» выберите «Дополнительные настройки даты и времени».
- В открывшемся окне перейдите на вкладку «Время Интернета».
- Установите флажок рядом с «Синхронизировать время с сервером времени Windows» и введите адрес сервера времени в поле «Сервер времени».
- Нажмите «Обновить сейчас», чтобы немедленно синхронизировать время с сервером.
- Нажмите «ОК», чтобы сохранить изменения.
Теперь время на вашем компьютере будет автоматически синхронизироваться с выбранным сервером времени в домене. Это поможет поддерживать точность времени и избежать возможных проблем.
Метод 2: Использование командной строки и службы времени Windows
Если вы предпочитаете работать с командной строкой, есть возможность использовать ее для синхронизации времени Windows 10 в домене. Для этого следуйте данным шагам:
- Откройте командную строку в режиме администратора.
- Для начала узнайте, какой сервер времени используется в вашем домене. Введите команду
net time /domain
и нажмите Enter. Вы получите список серверов времени, доступных в вашем домене. - Подключитесь к нужному серверу времени. Введите команду
net time \\servername /set /y
и нажмите Enter. Заменитеservername
на имя нужного сервера времени из предыдущего шага. - Проверьте статус синхронизации времени с сервером, введя команду
w32tm /query /status
и нажмите Enter.
Таким образом, вы сможете синхронизировать время Windows 10 в домене с помощью командной строки и службы времени Windows.
Метод 3: Использование специализированного программного обеспечения
Если вам необходимо синхронизировать время на компьютерах Windows 10 в домене с высокой точностью и автоматически, можно воспользоваться специализированным программным обеспечением. Такое ПО позволит синхронизировать время на всех компьютерах в домене и поддерживать его актуальным.
Одним из таких инструментов является программное обеспечение Network Time System. Это программное решение позволяет проводить точную синхронизацию времени в домене с использованием протокола NTP (Network Time Protocol). Преимуществами Network Time System являются:
- Автоматическая синхронизация времени на всех компьютерах в домене;
- Высокая точность синхронизации времени;
- Использование протокола NTP для точной синхронизации;
- Удобный пользовательский интерфейс для настройки и управления;
- Возможность установки на серверную или клиентскую систему.
Для использования Network Time System вам потребуется установить программное обеспечение на сервере домена. После этого вы сможете настроить его для автоматической синхронизации времени на всех компьютерах в домене.
Использование специализированного программного обеспечения позволит вам добиться высокой точности синхронизации времени на компьютерах Windows 10 в домене. Это особенно важно, если вам необходимо точно определить время проведения операций или записи событий.
Метод 4: Настройка синхронизации времени через доменный контроллер
Еще одним удобным способом синхронизации времени в Windows 10 в домене является настройка синхронизации через доменный контроллер. Этот метод обеспечивает более надежную и точную синхронизацию времени между компьютерами в домене.
- Откройте «Групповые политики объекта» на доменном контроллере.
- В разделе «Конфигурация компьютера» выберите «Шаблоны административных шаблонов: система».
- Найдите политику «Настройка служб Windows Time» и откройте ее.
- Включите опцию «Включить службу Windows Time» и укажите «Автоматически» в поле «Состояние службы».
- Установите опции «Настроить источник времени», «Настроить частоту обновления времени» и «Настроить максимальное разрешение времени» в соответствии с требованиями вашей сети. Рекомендуется использовать в качестве источника времени доверенный сервер времени.
- Сохраните изменения и закройте «Групповые политики объекта».
После применения данных настроек на доменном контроллере, все компьютеры, присоединенные к домену, будут автоматически синхронизировать свое время с доменным контроллером. Это обеспечит более точное и единообразное время на всех компьютерах в сети.
Не забывайте, что для применения изменений необходимо обновить политики группы на клиентских компьютерах, либо задать время обновления через централизованное управление групповыми политиками.
Метод 5: Использование внешних временных серверов
Для синхронизации времени в Windows 10 в домене можно использовать внешние временные серверы. Они предоставляют точное и надежное время и позволяют вам быть уверенными, что время на всех компьютерах в домене синхронизировано. В данном методе необходимо настроить связь с выбранным внешним временным сервером.
Для использования внешних временных серверов вам необходимо выполнить следующие шаги:
- Откройте командную строку от имени администратора.
- Введите команду w32tm /config /syncfromflags:manual /manualpeerlist:»временный_сервер», где «временный_сервер» — адрес выбранного внешнего временного сервера.
- Введите команду w32tm /config /reliable:yes, чтобы установить сервер как надежный.
- Введите команду net stop w32time, чтобы остановить службу времени Windows.
- Введите команду net start w32time, чтобы запустить службу времени Windows и применить настройки.
- Введите команду w32tm /resync, чтобы выполнить синхронизацию времени.
После выполнения указанных шагов ваша система будет синхронизирована со временным сервером, который вы выбрали. Это позволит установить точное и надежное время на всех компьютерах в домене.
Важно помнить, что использование внешних временных серверов может потребовать предварительной настройки брандмауэра и сетевой конфигурации. Также рекомендуется выбирать надежные и проверенные временные серверы для обеспечения точности и стабильности синхронизации времени в домене Windows 10.
Выводы
Синхронизация времени Windows 10 в домене является важной задачей для поддержания единого и точного времени на всех компьютерах в сети. Используя различные методы, можно добиться стабильной и автоматической синхронизации времени.
- Метод с использованием службы времени Windows (W32Time) позволяет настроить автоматическую синхронизацию с внешними источниками времени, такими как NTP-серверы.
- Использование командной строки и утилиты w32tm предоставляет более гибкие настройки синхронизации времени, такие как указание определенного NTP-сервера для синхронизации.
- Установка собственного временного сервера в домене может быть полезной, особенно если требуется большая стабильность и автономность.
- Использование групповой политики для настройки синхронизации времени на всех компьютерах в домене позволяет достичь единого и точного времени на всех машинах.
- И, наконец, периодическая проверка и исправление времени на клиентах с использованием скриптов может быть полезной, особенно при обнаружении ошибок синхронизации.
Все эти методы могут быть использованы в сочетании друг с другом для достижения максимально точной и стабильной синхронизации времени в домене Windows 10.
В Windows есть отличное средство управления синхронизацией времени — w32tm. Управление которым осуществляется как через cmd, так и через реестр и даже групповые политики в домене Windows.
В этой статье — мы рассмотрим только первый вариант.
Основные команды конфигурации w32tm
- w32tm /register — Регистрация и включение службы со стандартными параметрами.
- w32tm /unregister — Отключение службы и удаление параметров конфигурации.
- w32tm /monitor — Просмотр информации по домену.
- w32tm /resync — Команда принудительной синхронизации с заданным в конфигурации источником.
- w32tm /config /update — Применить и сохранить конфигурацию.
- w32tm /config /syncfromflags:domhier /update – Задаем настройку синхронизации с контроллером домена.
- w32tm /config /syncfromflags:manual /manualpeerlist:time.windows.com – задать конкретные источники синхронизации времени по протоколу NTP.
Просмотр параметров (/query)
- w32tm /query /computer:<target> — Информация о стутусе синхронизации определенной станции (если имя не указано — используется локальный компьютер).
- w32tm /query /Source – Показать источник времени.
- w32tm /query /Configuration — Вывод всех настроек службы времени Windows.
- w32tm /query /Peers – Показать источники времени и их состояние.
- w32tm /query /Status – Статус службы времени.
- w32tm /query /Verbose – Подробный вывод всей информации о работе службы.
Синхронизация через Net time
Так же можно воспользоватся вспомогательной службой net time для синхронизации времени.
- net time /setsntp:time.itmake.org — Задаем источник синхронизации.
- net time /querysntp — просмотр информации о заданном источнике времени.
- net time \\server.lan.local /set /y – Принудительная синхронизация с указанного источника.
A Windows computer’s time must be in sync with the domain in order to function properly in an Active Directory. This is especially important for Kerberos authentication to work. Windows constantly synchronizes the time with the NTP servers. Domain controllers act as NTP servers for the computers that join the Active Directory domain.
On a Windows computer that is not part of an Active Directory domain, the computer’s time is synchronized with one of two Internet time sources by default:
- time.windows.com
- time.nist.gov
You can find the list of internet servers with which your computer synchronizes time by using the Control Panel > Date and Time > Internet time tab > Change Settings. As you can see this computer is set to automatically synchronize with ‘time.windows.com’ and the Synchronize with an Internet time server option is enabled.
You can also check the time sync settings via the modern Settings app. Navigate to Settings > Time and Language (or run the ms-settings:dateandtime command). Check that the Set time automatically option is enabled.
It also shows the date of the last successful synchronization and the current time server FQDN.
To synchronize the time immediately, click the Sync Now button.
The list of Internet time servers that are currently in use is stored in the Windows registry under the HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DateTime\Servers key.
Time synchronization works differently on computers that are joined an Active Directory domain.
Features of time synchronization in Active Directory domains:
- All domain computers and servers must use the NT5DS domain time;
- Domain workstations and Windows member servers synchronize their time with the domain controller closest to them;
- Domain controllers synchronize their time with the domain controller that owns the PDC emulator FSMO role;
- The PDC emulator in the child domain must synchronize time with any domain controller in the parent AD domain;
- The PDC emulator in the parent domain must synchronize time with an external NTP source.
If you go to Settings > Time and Language after you have joined the domain, you will see that the AD domain controller is used as the time source. And you can’t change the time source from the GUI.
Hint. Learn more about time syncing in an Active Directory domain using the GPO.
The Windows Time Service (W32Time) is responsible for time synchronization. First of all, make sure this service is running on a Windows client computer using Get-Service cmdlet:
Get-Service W32Time | Select-Object name,status
You can check with which NTP server (NTP source) if your computer is currently synchronizing the time by using the command:
w32tm /query /source
More information on the status of time synchronization on the client device:
w32tm /query /status
In an AD domain, you can list the domain controllers with which time synchronization can be performed:
w32tm /monitor
In this example, there are three domain controllers available for the client to synchronize time with.
For computers in an Active Directory domain, you can use the following commands to enable time synchronization with a DC:
w32tm /config /syncfromflags:domhier /updatenet stop w32time && net start w32time
The Windows Time service parameters are stored under the HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters registry key. The synchronization mode is set using the Type parameter. If you change the Type value to NoSync, you completely disable time synchronization in Windows.
Windows Time Synchronization in an Active Directory Domain
On all computers joined to the Active Directory domain the closest domain controller is used as the default time source. In this case, the Type parameter must be set to NT5DS. If NTP is specified here, then your computer synchronizes time with an external time source (possibly on the Internet). In this case, the external time source for your computer (NTP server) will be specified in the NtpServer registry parameter.
You must set the Type parameter to NT5DS to enable automatic time synchronization of a Windows client with a domain controller.
When the NT5DS time synchronization type is used, the time source specified in the NtpServer parameter is ignored and Windows synchronizes the time with the domain controller (in accordance with the Active Directory sites and subnets).
You can manually change this parameter by using the Registry Editor (regedit.exe) or with PowerShell:
Set-ItemProperty HKLM:\SYSTEM\CurrentControlSet\services\W32Time\Parameters -Name "Type" -Value "NT5DS"
Restart Windows Times service:
Restart-Service -Name w32time
If the Windows client fails to synchronize time with the AD domain controller, you must to reset the Windows Time service configuration. To do this, open a command prompt as an administrator and run the following commands:
- The first command unregisters the w32time service and removes the settings from the registry:
w32tm /unregister
- Then register w32tm service and restore the default time settings:
w32tm /register
- Restart the service:
net stop w32time && net start w32time
- Update settings:
w32tm /config /update
- Synchronize the time:
w32tm /resync
- Check your current sync settings:
w32tm /query /status
The screenshot below shows that Windows is now synchronizing with DC (Source).
Time Sync Issues on Windows Domain Joined Computers
UDP port 123 is used for time synchronization on Windows. If this port is not available on the DC, the client computer won’t be able to synchronize the time.
You may get an error when you try to synchronize the time with the w32tm /resync command:
Sending resync command to local computer
The computer did not resync because no time data was available.
In this case you need to check that the w32time service is running on the domain controller:
Get-Service w32time
The w32time service should listen on UDP port 123. Check that this port is listening on the DC.
netstat -an | find "UDP" | find ":123"
If the w32time service is running and listening on port 123, check the Windows Defender firewall rules. Go to Control Panel > Windows Firewall > Advanced settings > Inbound rules.
Check that the Active Directory Domain Controller – W32Time (NTP-UDP-In) rule is enabled.
You can also check Windows Defender Firewall rule status with PowerShell:
Get-NetFirewallrule -DisplayName 'Active Directory Domain Controller - W32Time (NTP-UDP-In)'|select Enabled
If the rule is disabled, you must enable it:
Get-NetFirewallrule -DisplayName 'Active Directory Domain Controller - W32Time (NTP-UDP-In)'|Enable-NetFirewallrule
If the rule is missing (accidentally deleted), create a new rule allowing clients to connect to the Windows Time service on a domain controller:
netsh advfirewall firewall add rule name="NTP Server" dir=out protocol=udp localport=123 profile=any enable=yes action=allownetsh advfirewall firewall add rule name="NTP Server" dir=in protocol=udp localport=123 profile=any enable=yes action=allow
You can also force a manual time sync with another domain controller. Use the command:
net time \\ny-dc01 /set /y
This command should return “The command completed successfully.”
Configuring NTP Client on Windows Using GPO
In most cases, time sync with a domain in Windows client doesn’t require any administrator intervention. However, if you find that time synchronization is not working properly on clients in your domain, you can centrally configure client NTP settings on Windows devices using Group Policy.
- Use the gpedit.msc console if you want to change Group Policy settings on a single computer (this is the best solution if you need to solve synchronization problems on a single computer or test new NTP client settings). If you are setting up a GPO for multiple computers in a domain, use the Group Policy Management Console (gpmc.msc);
- Expand the following node in the left pane of the GPO editor Computer Configuration > Administrative Templates > System > Windows Time Service;
- Open the Enable Windows NTP Client policy in the right pane and enable it;
- Then select the Configure NTP Client option. Change its state to Enabled;
- You need to set the following settings in the Options panel:
NTPServer: your domain name (preferred) or FQDN name of the domain controller with the PDC Emulator role (you can find it with the command: netdom.exe query fsmo)
Type: NT5DS
CrossSiteSyncFlags: 2
ResolvePeerBackoffMinutes: 15
ResolvePeerBackoffMaxTimes: 7
SpecialPollInterval: 64
EventLogFlags: 0
- Restart your computer to apply the new GPO client time settings.
Cyril Kardashevsky
I enjoy technology and developing websites. Since 2012 I’m running a few of my own websites, and share useful content on gadgets, PC administration and website promotion.