Синхронизация времени в домене
Если вы выполните описанные выше шаги для обеспечения синхронизации времени в домене, то почти гарантированно настроите получение корректного времени всеми компьютерами в сети. Поэтому другие контроллеры домена (если у вас их несколько) можно не трогать.
Однако если вы хотите быть уверенными, что они используют правильное время, вы можете отредактировать локальную групповую политику. Перейдите в меню Пуск > Выполнить и введите gpedit.msc. Нажмите ОК.
Затем используйте те же настройки, что приведены в предыдущем разделе. Если контроллер домена, на котором вы хотите работать, управляется Windows Server Core, вы можете сделать это удаленно, при условии, что такая возможность разрешена сетевым экраном. Просто запустите mmc.exe на компьютере с графическим интерфейсом, откройте пункт меню File > Add/Remove Snap-In, дважды щелкните Group Policy Object Editor и перейдите на компьютер, на котором вы хотите отредактировать групповую политику.
Способы указания NTP Сервера.
1) Команда w32tm позволяет задать список пиров, предоставляющих информацию о точном времени для домена. Чтобы получить дополнительные сведения о команде w32tm, введите в командной строке указанную команду w32tm /?
Первым, что необходимо сделать, это выяснить в каком состоянии находятся контролеры домена в домене. Для этого запускаем в командной строке команду (если у вас права доменного администратора, то можете запустить командную строку на своей рабочей станции)
w32tm /monitor — команда позволяет посмотреть с каким сервером (серверами)/сервисом происходит синхронизация и какая разница во времени с эталонным севером.
w32tm /config /manualpeerlist:time.windows.com /syncfromflags:manual /reliable:yes /update — этой командой мы указываем с каким сервисом/сервером будет происходить синхронизация ( в данном примере с time.windows.com).
Эта команда выполняется на контроллере домена однократно и записывает указанные адреса в реестр ( по пути HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfigParametrs в параметре NTPServer должно быть прописано time.windows.com). Можно указать сразу несколько серверов, разделенных пробелами.
2) Еще один способ указать контролеру домена сервер с кем он будет синхронизироваться по времени, это локальные или групповые политики. Запускаем реестр- Нажмите кнопку Пуск, выберите команду Выполнить, введите в командную строку gpedit.msc и нажмите кнопку ОК. Заходим «Конфигурация компьютера- Политики- Административные шаблоны- Система- Служба времени Windows- Поставщики времени» и настраиваем политику. В данном примере в значении NTPServer прописываем time.windows.com, в значении Тип указываем NTP. Тип- указывает узлы одноранговой сети, принимающие синхронизацию следующих типов:
NoSync— Служба времени не синхронизируется с другими источниками.
NTP- Служба времени выполняет синхронизацию с серверами, указанными в записи реестра NtpServer.
NT5DS- Служба времени выполняет синхронизацию на основе иерархии домена.
AllSync- Служба времени использует все доступные механизмы синхронизации.
Значение CrossSiteSyncFlags выбираем 2.
CrossSiteSyncFlags. Определяет возможность выбора службой партнеров по синхронизации за пределами домена компьютера.
Нет 0
PdcOnly 1
Все 2
В значении ResolvePeerBackoffMinutes прописываем 15
ResolvePeerBackoffMinutes- указывает первоначальный интервал ожидания (в минутах) перед тем, как начать поиск узла одноранговой сети для синхронизации. Если службе времени Windows не удается успешно синхронизироваться с источником времени, будут выполняться повторные попытки с использованием указанных значений параметров ResolvePeerBackoffMinutes и ResolvePeerBackoffMaxTimes.
В значении ResolvePeerBackoffMaxTimes прописываем 7
ResolvePeerBackoffMaxTimes- указывает максимальное число раз удвоения интервала ожидания в случае, если повторяющиеся попытки поиска узла одноранговой сети для синхронизации не дали результата. Нулевое значение предполагает, что интервал ожидания всегда равен первоначальному, указанному в параметре ResolvePeerBackoffMinutes.
В значении SpecialPollInterval прописываем 3600
SpecialPollInterval- указывает интервал специального опроса (в секундах) для узлов одноранговой сети, настроенных вручную. Если специальный опрос включен, то служба времени Windows будет использовать его интервал вместо динамического значения, определяемого с помощью алгоритмов синхронизации, встроенных в службу времени Windows.
Если вы создали политику, то ее нужно применить на все контролеры домены.
Конфигурация NTP-сервера на корневом PDC
Конфигурирование сервера времени в Windows (NTP-сервера) может осуществляться как с помощью утилиты командной строки w32tm, так и через реестр. Где возможно, я приведу оба варианта. Но в начале посмотрите полностью ваши настройки на компьютере, делается это командой:
EventLogFlags: 2 (Локально)
AnnounceFlags: 10 (Локально)
TimeJumpAuditOffset: 28800 (Локально)
MinPollInterval: 6 (Локально)
MaxPollInterval: 10 (Локально)
MaxNegPhaseCorrection: 172800 (Локально)
MaxPosPhaseCorrection: 172800 (Локально)
MaxAllowedPhaseOffset: 300 (Локально)FrequencyCorrectRate: 4 (Локально)
PollAdjustFactor: 5 (Локально)
LargePhaseOffset: 50000000 (Локально)
SpikeWatchPeriod: 900 (Локально)
LocalClockDispersion: 10 (Локально)
HoldPeriod: 5 (Локально)
PhaseCorrectRate: 7 (Локально)
UpdateInterval: 100 (Локально)[TimeProviders]
NtpClient (Локально)
DllName: C:Windowssystem32w32time.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
CrossSiteSyncFlags: 2 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)
ResolvePeerBackoffMinutes: 15 (Локально)
ResolvePeerBackoffMaxTimes: 7 (Локально)
CompatibilityFlags: 2147483648 (Локально)
EventLogFlags: 1 (Локально)
LargeSampleSkew: 3 (Локально)
SpecialPollInterval: 3600 (Локально)
Type: NT5DS (Локально)NtpServer (Локально)
DllName: C:Windowssystem32w32time.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 0 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)VMICTimeProvider (Локально)
DllName: C:WindowsSystem32vmictimeprovider.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
Включение синхронизации внутренних часов с внешним источником
Объявление NTP-сервера в качестве надежного
NTP-сервер по умолчанию включен на всех контроллерах домена, однако его можно включить и на рядовых серверах.
Задание списка внешних источников для синхронизации
- [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters]
«NtpServer»=»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 ru.pool.ntp.org,0x8» - w32tm /config /manualpeerlist:»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 ru.pool.ntp.org,0x8″
Флаг 0×8 на конце означает, что синхронизация должна происходить в режиме клиента NTP, через предложенные этим сервером интервалы времени. Для того, чтобы задать свой интервал синхронизации, необходимо использовать флаг 0×1.
Задание интервала синхронизации с внешним источником
Время в секундах между опросами источника синхронизации, по умолчанию 900с = 15мин. Работает только для источников, помеченных флагом 0×1.
- [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient]
«SpecialPollInterval»=dword:00000384
Установка минимальной положительной и отрицательной коррекции
Максимальная положительная и отрицательная коррекция времени (разница между внутренними часами и источником синхронизации) в секундах, при превышении которой синхронизация не происходит. Рекомендую значение 0xFFFFFFFF, при котором коррекция сможет производиться всегда.
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig]
«MaxPosPhaseCorrection»=dword:FFFFFFFF
«MaxNegPhaseCorrection»=dword:FFFFFFFF
Все необходимое одной строкой
w32tm.exe /config /manualpeerlist:»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 pool.ntp.org,0x8″ /syncfromflags:manual /reliable:yes /update
Полезные команды
- Применение внесенных в конфигурацию службы времени изменений
w32tm /config /update - Принудительная синхронизация от источника
w32tm /resync /rediscover - Отображение состояния синхронизации контроллеров домена в домене
w32tm /monitor - Отображение текущих источников синхронизации и их статуса
w32tm /query /peers
Конфигурация NTP-сервера/клиента групповой политикой
Для централизованной настройки службы времени Windows, на серверах и рабочих станциях в доменной среде Active Directory, воспользуемся групповой политикой. На примере, выполним настройку для рабочих станций.
Переходим в ветку: Конфигурация компьютера (Computer Configuration) — Политики (Policies) — Административные шаблоны (Administrative Templates) — Система (System) — Служба времени Windows (Windows Time Service) — Поставщики времени (Time Providers).
Открываем параметр: Настроить NTP-клиент Windows (Configure Windows NTP Client)
Справочник по реестру Windows
Эти сведения предоставляются в виде справки по устранению неполадок и проверке. Разделы реестра Windows используются W32Time для хранения важной информации. Не изменяйте их. Изменения в реестре не проверяются редактором реестра или операционной системой Windows перед их применением. Если реестр содержит недопустимые значения, в Windows могут произойти неустранимые ошибки.
Служба времени Windows хранит сведения в реестре по пути HKLMSYSTEMCurrentControlSetServicesW32Time в следующих подразделах:
В следующих таблицах строка «Все версии» означает версии Windows 7, Windows 8, Windows 10, Windows Server 2008 и Windows Server 2008 R2, Windows Server 2012 и Windows Server 2012 R2, Windows Server 2016 и Windows Server 2019.
Некоторые параметры в реестре измеряются в тактах часов, а некоторые — в секундах. Чтобы преобразовать время из тактов в секунды, используйте следующие коэффициенты преобразования:
- 1 минута = 60 с
- 1 с = 1000 мс
- 1 мс = 10 000 тактовых импульсов в системе Windows, как описано в разделе Свойство DateTime.Ticks.
Например, 5 минут становится 5 × 60 × 1000 × 10000 = 3000 000 000 тактов часов.
Записи подраздела Config
Записи подраздела Config находятся по пути HKLMSYSTEMCurrentControlSetServicesW32TimeConfig .
- 0x00. Не сервер времени.
- 0x01. Всегда сервер времени.
- 0x02. Автоматический сервер времени.
- 0x04. Всегда надежный сервер времени.
- 0x08. Автоматический надежный сервер времени.
- 0x1. Перевод времени.
- 0x2. Изменение источника.
Примечание
Значение 0xFFFFFFFF является особым случаем. Оно означает, что служба всегда исправляет время.
Примечание
Значение 0xFFFFFFFF является особым случаем. Оно означает, что служба всегда исправляет время.
Значение по умолчанию для членов домена равно 1. Значение по умолчанию на автономных клиентах и серверах равно 7.
Записи подраздела Parameters
Записи подраздела Parameters находятся по пути HKLMSYSTEMCurrentControlSetServicesW32TimeParameters .
- 0x01 SpecialInterval
- 0x02 UseAsFallbackOnly
- 0x04 SymmetricActive. Дополнительные сведения об этом режиме см. на странице Windows Time Server.
- 0x08 Client
- NoSync. Служба времени не синхронизируется с другими источниками.
- NTP. Служба времени синхронизируется с серверов, указанных в NtpServer. запись реестра.
- NT5DS. Служба времени синхронизируется из иерархии доменов.
- AllSync. Служба времени использует все доступные механизмы синхронизации.
Записи подраздела NtpClient
Записи подраздела NtpClient находятся по пути HKLMSYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient .
- 0x00000001 — DispersionInvalid;
- 0x00000002 — IgnoreFutureRefTimeStamp;
- 0x80000000 — AutodetectWin2K;
- 0x40000000 — AutodetectWin2KStage2.
- 0 — нет;
- 1 — PdcOnly;
- 2 — все.
- 1 — да;
- 0 — нет.
- 0x1 — изменение достижимости.
- 0x2 — большое отклонение выборки (применимо только к Windows Server 2003, Windows Server 2003 R2, Windows Server 2008 и Windows Server 2008 R2)
- 1 — да;
- 0 — нет.
Записи подраздела NtpServer
Записи подраздела NtpClient находятся по пути HKLMSYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer .
- 1 — да;
- 0 — нет.
- 1 — да;
- 0 — нет = 0.
Расширенное ведение журнала
Следующие записи реестра не являются частью стандартной конфигурации W32Time, но их можно добавить в реестр, чтобы получить расширенные возможности ведения журнала. Регистрируемые в журнале системных событий сведения можно модифицировать, изменив значение параметра EventLogFlags в редакторе объектов групповой политики. По умолчанию служба времени Windows регистрирует событие при каждом переключении на новый источник времени.
Чтобы включить ведение журнала W32Time, добавьте следующие записи реестра:
Ввод | Версии | Описание |
---|---|---|
FileLogEntries | Все версии | Управляет количеством записей, создаваемых в файле журнала службы времени Windows. По умолчанию используется нулевое значение, которое не регистрирует никаких действий службы времени Windows. Допустимые значения: 0–300. Это значение не влияет на записи журнала событий, которые обычно создаются службой времени Windows. |
FileLogName | Все версии | Определяет расположение и имя файла журнала службы времени Windows. Значение по умолчанию пустое и не должно изменяться, пока не изменяется FileLogEntries. Допустимое значение — это полный путь и имя файла, которые служба времени Windows будет использовать для создания файла журнала. Это значение не влияет на записи журнала событий, которые обычно создаются службой времени Windows. |
FileLogSize | Все версии | Управляет поведением циклического ведения журнала файлов журнала службы времени Windows. При определении FileLogEntries и FileLogName запись определяет размер (в байтах), чтобы разрешить доступ к файлу журнала, прежде чем перезаписывать старые записи в журнале новыми. Используйте для этого параметра значение — 1 000 000 или больше. Это значение не влияет на записи журнала событий, которые обычно создаются службой времени Windows. |
Примеры использования команды w32tm
Как правило, служба времени Windows устанавливается с типом запуска Вручную и запускается по необходимости. Если служба времени остановлена, то управление ею с помощью команды w32tm невозможно. Для запуска, останова или проверки состояния службы можно использовать команду sc
sc query w32time — отобразить состояние службы времени Windows
sc \192.168.0.8 query w32time — отобразить состояние службы времени на компьютере с адресом 192.168.0.8
sc start w32time — запустить службу времени Windows.
sc \192.168.0.8 start w32time — запустить службу времени Windows на компьютере с адресом 192.168.0.8 .
sc stop w32time — остановить службу времени Windows.
Кроме утилиты sc.exe можно использовать оснастку Службы (services.msc) панели управления или классические команды net stop и net start
net stop w32time
net start w32time
Для управления службой времени Windows требуются права администратора по отношению к локальной или удаленной системе.
w32tm /? — отобразить подсказку по использованию.
w32tm /query /configuration — отобразить конфигурацию службы времени Windows на локальном компьютере.
w32tm /query /configuration /computer:\WIN10 — отобразить конфигурацию службы времени на компьютере с именем WIN10
Пример отображаемой информации:
EventLogFlags: 2 (Локально)
AnnounceFlags: 10 (Локально)
TimeJumpAuditOffset: 28800 (Локально)
MinPollInterval: 10 (Локально)
MaxPollInterval: 15 (Локально)
MaxNegPhaseCorrection: 54000 (Локально)
MaxPosPhaseCorrection: 54000 (Локально)
MaxAllowedPhaseOffset: 1 (Локально)
FrequencyCorrectRate: 4 (Локально)
PollAdjustFactor: 5 (Локально)
LargePhaseOffset: 50000000 (Локально)
SpikeWatchPeriod: 900 (Локально)
LocalClockDispersion: 10 (Локально)
HoldPeriod: 5 (Локально)
PhaseCorrectRate: 1 (Локально
) UpdateInterval: 360000 (Локально)
FileLogName: C:User1w32tmlog.log (Локально)
FileLogEntries: 0-300 (Локально)
FileLogSize: 100000 (Локально)
NtpClient (Локально)
DllName: C:WINDOWSSYSTEM32w32time.DLL (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)
ResolvePeerBackoffMinutes: 15 (Локально)
ResolvePeerBackoffMaxTimes: 7 (Локально)
CompatibilityFlags: 2147483648 (Локально)
EventLogFlags: 1 (Локально)
LargeSampleSkew: 3 (Локально)
SpecialPollInterval: 604800 (Локально
) Type: NTP (Локально)
NtpServer: time.windows.com,0x9 (Локально)
VMICTimeProvider (Локально)
DllName: C:WINDOWSSystem32vmictimeprovider.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
NtpServer (Локально)
DllName: C:WINDOWSSYSTEM32w32time.DLL (Локально)
Enabled: 0 (Локально)
InputProvider: 0 (Локально)
В секции Настройка приведены текущие параметры службы времени Windows, в секции TimeProviders — настройки программного обеспечения как клиентской, так и серверной части.
Наиболее важные параметры службы времени:
Для компьютера, не входящего в домен, используется тип синхронизации NTP и NTPServer с именем time.windows.com . При необходимости можно добавить еще несколько NTP-серверов, введя их DNS имена или IP адреса через пробел. В конце каждого имени можно добавлять 16-ричное число, или флаг (например — 0x1) который определяет режим синхронизации с сервером времени.
Возможные значения режима:
0x1 – SpecialInterval, использование задаваемого интервала опроса;
0x2 – режим UseAsFallbackOnly – синхронизация только при необходимости;
0x4 – SymmetricActive, симметричный активный режим;
0x8 – Client, отправка запроса в клиентском режиме.
Возможно использование комбинаций режимов:
NtpServer: time.windows.com,0x9 — клиентский запрос (0x8) с использованием заданного интервала (0x1) для синхронизации часов с сервером time.windows.com
SpecialPollInterval — значение в секундах интервала обновления времени. По умолчанию – 604800 секунд, что соответствует 7 суткам. Имеет смысл изменить этот интервал, например, на 1 час (3600) или хотя бы на 1 сутки (86400).
Очень важное значение имеют параметры MaxNegPhaseCorrection и MaxPosPhaseCorrection задающие максимальное отрицательное и положительное отклонение показаний часов, при котором может выполняться синхронизация. Значение по умолчанию — 54000 (в секундах), т.е. 15часов, что приводит к тому, что синхронизация времени не выполняется при расхождении показаний часов на величину, превышающую 15 часов. При попытке ресинхронизации времени командой w32tm /resynс показания часов не изменятся и будет выведено вообщение:
Синхронизация не выполнена, поскольку запрошенное изменение слишком велико.
Поэтому, для надежной синхронизации часов компьютера с сервером времени в Интернет, независимо от их текущих показаний, желательно увеличить абсолютное значение параметров MaxNegPhaseCorrection и MaxPosPhaseCorrection , или вообще задать им максимальное значение для типа DWORD – 0xffffffff или 4294967295.
После изменения параметров MaxNegPhaseCorrection и MaxPosPhaseCorrection в реестре системы, синхронизация времени будет выполняться независимо от текущих показаний часов компьютера.
w32tm /monitor /computers:ru.pool.ntp.org — отобразить разницу во времени данного компьютера и сервера времени ru.pool.ntp.org .
w32tm /monitor /computers:ru.pool.ntp.org,time.windows.com,time.nist.gov — отобразить разницу во времени данного компьютера и нескольких серверов времени.
w32tm /resync – синхронизировать часы локального компьютера с используемым им сервером времени.
w32tm /resync /force – синхронизировать часы локального компьютера с используемым им сервером времени, игнорируя максимальное и минимальное отклонение показаний аппаратных часов и источника.
w32tm /stripchart /computer:pool.ntp.org /samples:3 /dataonly — сравнить показания часов локального компьютера с показаниями сервера времени pool.ntp.org . Будет выполнено 3 запроса и результаты будут представлены в текстовом виде.
Пример отображаемой информации:
Отслеживание pool.ntp.org [77.232.189.6:123].
Сбор образцов 3.
Текущее время — 14.02.2017 17:04:02.
17:04:02 d:+00.0154105s o:+00.0201873s
17:04:04 d:+00.0154035s o:+00.0257523s
17:04:06 d:+00.0154118s o:+00.0147256s
d: — задержка ответа, интервал времени между отправкой запроса и получением ответа от сервера NTP.
o: — смещение локальных часов относительно показаний сервера NTP (если положительное значение – часы отстают, отрицательное – спешат).
w32tm /stripchart /computer:pool.ntp.org — то же, что и в предыдущем примере, но проверка выполняется непрерывно, до тех пор пока не будет нажата комбинация клавиш CTRL+C или CTRL+Break
w32tm /config /syncfromflags:manual /manualpeerlist:ru.pool.ntp.org /update — изменить конфигурацию службы времени, для использования сервера NTP ru.pool.ntp.org и применить сделанные изменения.
w32tm /query /configuration — отобразить текущую конфигурацию службы времени Windows на локальном компьютере.
w32tm /query /configuration /computer:win10 — отобразить текущую конфигурацию службы времени Windows на компьютере WIN10 .
w32tm /query /source — отобразить сведения об источнике времени на локальном компьютере.
w32tm /query /source /computer:win10 — отобразить сведения об источнике времени на компьютере win10 .
w32tm /unregister — удалить службу времени Windows из системы. Все параметры службы в реестре удаляются. Перед выполнением команды, служба времени должна быть остановлена, в противном случае команда завершится сообщением об ошибке доступа.
w32tm /register – установить службу времени Windows на данном компьютере. При этом все параметры службы в реестре создаются заново. Для изменения параметров заданных по умолчанию, можно использовать импорт из заранее подготовленного reg-файла, например:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesw32timeConfig]
«MaxNegPhaseCorrection»=dword:ffffffff
«MaxPosPhaseCorrection»=dword:ffffffff