Light-electric.com

IT Журнал
20 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Синхронизировать время с контроллером домена

Настройка синхронизации времени в домене

Как настроить синхронизацию времени во всём домене сразу? И так, чтобы работало дальше само? А когда контроллер домена с ролью PDC изменится, что делать? А если уже синхронизация времени в домене настроена, но работает плохо, как починить?
Обо всём этом читайте в этой статье.

Немного теории

Синхронизация времени в домене может (теоретически) работать сама, безо всяких настроек. Выглядит это обычно так:

  1. Компьютеры домена и серверы синхронизируют свое время с контроллерами домена (с ближайшими к ним).
  2. Контроллеры домена синхронизируют свое время с контроллером домена, которому назначена FSMO роль PDC (в терминах windows 2000 — «первичный контроллер домена»).
  3. Контроллер домена (КД) с ролью PDC синхронизирует время с внешним источником.

А дальше — начинаются ньюансы:

  • Если контроллер домена виртуальный, в настройках виртуальной машины должна быть выключена синхронизация времени [с хостом]. Иначе (если, к примеру, хост с виртуальными машинами — в домене): виртуальный контроллер домена будет (автоматически) синхронизировать время с хостом, а хост — с ближайшим контроллером домена, т.е. со своей виртуалкой.
  • Если синхронизация времени уже настроена (вручную или через групповые политики) то задаваемые Вами новые настройки могуть не примениться (несмотря на сообщение successful во всех командах) и тогда потребуется полный сброс настроек синхронизации времени на проблемных компьютерах или контроллерах домена.

Как проверить, работает ли синхронизация времени в домене?

До того, как что-либо «ломать» (и в процессе настройки, чтобы проверять эффективность вносимых изменений) необходимо производить диагностику текущего состояния, а также анализировать текущую конфигурацию службы времени. Этому призваны помочь несколько команд, указанных ниже.

Команда
w32tm /monitor

  1. Может быть выполнена на любом компьютере (или контроллере) домена.
  2. Показывает список всех контроллеров домена (с которыми может выполняться синхронизация времени).
  3. Для каждого контроллера домена в поле «NTP:» отображает разницу во времени с PDC контроллером домена (который является источником для синхронизации времени во всём домене).
  4. Для каждого контроллера домена в поле «RefID:» отображается информация об источнике синхронизации времени для этого контроллера домена. Для всех контроллеров домена (кроме КД с ролью PDC) это должен быть либо другой контроллер домена, либо КД с ролью PDC.

Команда
w32tm /query /Source
или
w32tm /query /peers

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Показывает источник для синхронизации времени (с каким компьютером синхронизируется время того компьютера, на котором запущена эта команда). Для любых компьютеров/серверов это должен быть один из контроллеров домена, для любого контроллера домена (кроме PDC) это должен быть другой КД (обычно — с ролью PDC), для КД с ролью PDC это должен быть внешний источник синхронизации времени (интернет).
    Если в результатах выполнения команды отобразилось сообщение «VM IC Time Synchronization Provider» — значит, эта виртуальная машина синхронизируется с хостом виртуализации. Если эта виртуальная машина — один из контроллеров домена, такую настройку следует изменить!

Команда
w32tm /query /Configuration /verbose

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Выводит все настройки службы времени windows для текущего компьютера.
  3. Убедитесь, что в результатах выполнения команды на всех компьютерах и контроллерах домена (кроме PDC) в разделе [TimeProviders] поле Type имеет значение NT5DS. Если это не так, настройки синхронизации на таких компьютерах надо исправлять (как — см. далее).
  4. Если у Вас Windows 2003, то Вы не можете выполнить эту команду. Вместо этого Вы можете посмотреть параметры конфигурации службы времени в реестре: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters, в частности параметр Type.

Команда
w32tm /query /status /verbose

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Отображет состояние синхронизации (в т.ч. источник синхронизации, время и статус последней синхронизации) для компьютера, на котором выполняется. Опция «/verbose» дает более подробную информацию.

Команда
w32tm /stripchart /computer:» » /samples:3 /dataonly

Сравнивает время (и отображает разницу во времени) на текущем компьютере с компьютером, указанном в аргументе /computer. Компьютер-источник для сравнения времени может быть как в интернете, так и в локальном домене. Примеры команды:
w32tm /stripchart /computer:»ntp.org» /samples:3 /dataonly
или
w32tm /stripchart /computer:»dc1.domain.local» /samples:3 /dataonly

Как исправить настройки синхронизации времени

Настройка синхронизации времени на компьютерах и контроллерах домена
(кроме КД с ролью PDC)

  1. Найдите все групповые политики, изменяющие настройки синхронизации времени, и отключите такие политики. Через групповые политики служба времени настраивается здесь: gpedit.msc => «Computer Configuration» => «Administrative Templates» => «System» => «Windows Time Service» => «Time Providers». Проверьте, что политики синхронизации времени не применяются, для этого можно выполнить команду:
    gpresult /R
  2. Проверьте, что на всех виртуальных машинах — контроллерах домена отключена синхронизация времени с хостами виртуализации. Для этого (в Hyper-V) можно зайти в свойства виртуальной машины, раздел средств интеграции и отключить синхронизацию времени. После чего конфигурацию службы времени (на виртуальном контроллере домена) нужно обновить.
  3. Обновите конфигурацию на всех проблемных компьютерах / контроллерах домена (кроме КД с ролью PDC):
    w32tm /config /syncfromflags:DOMHIER /update
  4. Выполните принудительную синхронизацию времени, дав команду заново найти источники синхронизации времени:
    w32tm /resync /rediscover
  5. Если вышеуказанные действия не помогают, перезагрузите службу времени (на проблемных компьютерах)
    net stop w32time
    net start w32time
    и заново выполните пункты 3 и 4.
  6. Если вышеуказанные действия не помогли решить проблему с синхронизацией времени, необходима перерегистрация службы времени на проблемных компьютерах (и повторная настройка параметров).
    net stop w32time
    w32tm /unregister
    w32tm /register
    net start w32time

Настройка синхронизации времени на контроллере домена с ролью PDC

Настройки времени на КД с ролью PDC принципиально отличаются от настроек на всех остальных компьютерах в домене (включая остальные контроллеры домена). PDC является источником времени во всём домене, именно его время будет использовано (прямо или косвенно — через другие контроллеры домена) всеми остальными компьютерами.

  1. Если контроллер домена с ролью PDC — виртуальная машина, убедитесь, в настройках этой виртуальной машины отключена синхронизациия времени с хостом, на котором она находится!
  2. Убедитесь, что групповые политики синхронизации времени во всем домене (если они у Вас есть) не применяются к КД с ролью PDC! У этого компьютера источник времени — в интернете, и тип синхронизации времени (в отличие от всего остального домена) не NT5DS, а NTP!
  3. Если есть сомнения в том, что синхронизация времени на КД с ролью PDC выполняется правильно, проще всего выполнить перерегистрацию и повторную настройку службы времени.

Перерегистрация службы времени на контроллере домена с ролью PDC

Для отмены регистрации и повторной регистрации службы времени выполните следующие команды:

net stop w32time
w32tm /unregister
w32tm /register
net start w32time

Настройка синхронизации времени на контроллере домена с ролью PDC

Наш КД с ролью PDC необходимо настроить на синхронизацию с внешним источником (в интернете). Для этой цели не подходит тип синхронизации NT5DS и синхронизации в соответствии с иерархией домена (DOMHIER). Поэтому на нашем КД с ролью PDC мы используем тип синхронизации NTP и синхронизация будет настроена вручную (MANUAL). Источники синхронизации (peers) указываются в кавычках, а если таких источников несколько, то они перечисляются через запятую. Кроме того, мы даем указание считать данный источник синхронизации (КД с ролью PDC) надежным источником времени (reliable):

w32tm /config /syncfromflags:manual /manualpeerlist:»0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org» /reliable:yes /update

Читать еще:  Настройка dmarc для домена

Теперь можно ускорить применение параметров и синхронизацию времени, перезагрузив службу времени и форсировав синхронизацию:

net stop w32time
net start w32time
w32tm /resync /force или w32tm /resync /rediscover

После выполнения этих команд (сделав паузу в несколько минут на применение параметров и выполнение синхронизации) сравните время на контроллере домена с временем в интернете:

w32tm /stripchart /computer:»0.ru.pool.ntp.org» /samples:3 /dataonly

Не забудьте проверить, что на всех контроллерах домена время синхронизировалось с PDC. Для этого наберите команду:

Всё должно заработать!

P.S.: Обратите внимание, что применение параметров команды w32tm требует времени. Поэтому после каждого обновления конфигурации рекомендуем делать паузу в 1-5 минут, а потом уже проверять, обновилась ли конфигурация службы времени, и как всё работает.

Источники информации для данной статьи:

Статья опубликована: 20.08.2017, обновлена 31.01.2020

Как настроить NTP сервер и синхронизацию времени в домене Active Directory

Как настроить NTP сервер и синхронизацию времени в домене Active Directory

Добрый день уважаемые читатели и гости блога pyatilistnik.org, как много люди говорят о времени, что оно быстро или медленно бежит, и все понимают, что оно бесценно и важно. Так и в инфраструктуре Active Directory, она является одним из важнейших факторов, правильного функционирования домена. В домене все друг другу доверяют, и один раз авторизовавшись и получив все тикеты от Kerberos, пользователь ходит куда угодно, ограничиваясь лишь своими доступными правами. Так вот если у вас не будет точного времени на ваших рабочих станциях к контроллеру домена, то можете считать, что у вас начинаются серьезные проблемы, о которых мы поговорим ниже и рассмотрим как их устранить с помощью настройки NTP сервера в Windows.

Синхронизация времени в Active Directory

Среди компьютеров, участвующих в Active Directory работает следующая схема синхронизация времени.

  • Контроллер корневого домена в лесу AD, которому принадлежит FSMО-роль эмулятора PDC (назовем его корневым PDC), является источником времени для всех остальных контроллеров этого домена.
  • Контроллеры дочерних доменов синхронизируют время с вышестоящих по топологии AD контроллеров домена.
  • Рядовые члены домена (сервера и рабочие станции) синхронизируют свое время с ближайшим к ним доступным контроллером домена, соблюдая топологию AD.

Корневой PDC может синхронизировать свое время как со внешним источником, так и с самим собой, последнее задано конфигурацией по умолчанию и является абсурдом, о чем периодически намекают ошибки в системном журнале.

Синхронизация клиентов корневого PDC может осуществятся как с его внутренних часов, так и с внешнего источника. В первом случае сервер времени корневого PDC объявляет себя как «надежный» (reliable).

Далее я приведу оптимальную с моей точки зрения конфигурацию сервера времени корневого PDC, при которой сам корневой PDC периодически синхронизирует свое время от достоверного источника в интернете, а время обращающихся к нему клиентов синхронизирует со своими внутренними часами.

Вводим netdom query fsmo. В моем примере, роль PDC и NTP сервера, принадлежит контроллеру dc7

Конфигурация 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 (Локально)

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 (Локально)

Включение синхронизации внутренних часов с внешним источником

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters]
    «Type»=»NTP»
  • w32tm /config /syncfromflags:manual

Объявление NTP-сервера в качестве надежного

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig]
    «AnnounceFlags»=dword:0000000a
  • w32tm /config /reliable:yes

NTP-сервер по умолчанию включен на всех контроллерах домена, однако его можно включить и на рядовых серверах.

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer]
    «Enabled»=dword:00000001

Задание списка внешних источников для синхронизации

  • [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 сервера и клиента групповой политикой

Раз уж у нас с вами домен Active Directory, то глупо не использовать групповые политики, для массовой настройки серверов и рабочих станций, я покажу как настроить ваш NTP сервер в windows и клиента. Открываем оснастку «Редактор групповых политик». Перед тем как настроить наш NTP сервер в Windows, нам необходимо создать WMI фильтр, который будет применять политику, только к серверу мастера PDC.

Вводим имя запроса, пространство имен, будет иметь значение «rootCIMv2» и запрос «Select * from Win32_ComputerSystem where DomainRole = 5». Сохраняем его.

Затем вы создаете политику на контейнере Domain Controllers.

В самом низу политики применяете ваш созданный WMI фильтр.

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

Тут открываем политику «Настроить NTP-клиент Windows». Задаем параметры

  • 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. Двойка означает, если этот параметр равен 2 (Все), можно использовать любого участника синхронизации. Это значение игнорируется, если не задано значение NT5DS. Значение по умолчанию: 2 (десятичное) (0x02 (шестнадцатеричное))
  • ResolvePeerBackoffMinutes: 15. Это значение, выраженное в минутах, определяет интервал ожидания службы W32time перед попыткой разрешения DNS-имени в случае неудачи. Значение по умолчанию: 15 минут
  • Resolve Peer BAckoffMaxTimes: 7. Это значение определяет число попыток разрешения DNS-имени, предпринимаемых службой W32time перед перезапуском процесса обнаружения. При каждом неудачном разрешении DNS-имени интервал ожидания перед следующей попыткой удваивается. Значение по умолчанию: семь попыток.
  • SpecilalPoolInterval: 3600. Это значение параметра NTP-клиента, выраженное в секундах, определяет частоту опроса настроенного вручную источника времени, который использует особый интервал опроса. Если для параметра NTPServer установлен флаг SpecialInterval, клиент использует значение, заданное как SpecialPollInterval, вместо значений MinPollInterval и MaxPollInterval, чтобы определить частоту опроса источника времени. Значение по умолчанию: 3600 секунд (1 час).
  • EventLogFlags: 0
Читать еще:  Доменное имя пк

Делаем отдельную групповую политику для клиентских рабочих машин, вот с такими параметрами.

  • NtpServer: Адрес вашего контроллера домена с ролью PDC.
  • Type: NT5DS
  • CrossSiteSyncFlags: 2
  • ResolvePeerBackoffMinutes: 15
  • Resolve Peer BAckoffMaxTimes: 7
  • SpecilalPoolInterval: 3600
  • EventLogFlags: 0

Далее идем на клиента и обновляем групповые политики gpupdate /force и вводим команду w32tm /query /status

Особенности виртуализированных контроллеров домена

Контроллеры домена, работающие в виртуализированной среде, требуют к себе особенного отношения.

  • Средства синхронизации времени виртуальной машины и хостовой ОС должны быть выключены. Во всех адекватных системах виртуализации (Microsoft, vmWare и т. д.) присутствуют компоненты интеграции гостевой ОС с хостовой, которые значительно повышают производительность и управляемость гостевой системой. Среди этих компонентов всегда есть средство синхронизации времени гостевой ОС с хостовой, которое очень полезно для рядовых машин, но противопоказано для контроллеров домена. Потому как в этом случае весьма вероятен цикл, при котором контроллер домена и хостовая ОС будут синхронизировать друг друга. Последствия печальны.
  • Для корневого PDC синхронизация с внешним источником должна быть настроена всегда. В виртуальной среде часы не настолько точны как в физической, потому как виртуальная машина работает с виртуальным процессором и прерываниями, для которых характерно как замедление, так и ускорение относительно «обычной» частоты. Если не настроить синхронизацию виртуализированного корневого PDC с внешним источником, время на всех компьютерах предприятия может убегать/отставать на пару часов в сутки. Не трудно представить неприятности, которые может принести такое поведение.

Настройка синхронизации времени по NTP с помощью групповых политик

Служба времени 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:

Настройка синхронизации времени в домене с помощью групповых политик состоит из двух шагов:

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 Emulator к данной политике.

Осталось обновить политики на контроллере PDC:
gpupdate /force

Вручную запустите синхронизацию времени:
w32tm /resync

Проверьте текущие настройки NTP:
w32tm /query /status

Настройка синхронизации времени на клиентах домена

В среде 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.

Настройка времени в домене AD

Настройка синхронизации времени на PDC и остальных контроллерах домена AD

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

Стандартная схема синхронизации времени в домене довольно проста:

Есть контроллер домена, который держит роль FSMO — PDC (Primary Domain Controller). Его нужно настроить на синхронизацию времени с каким-либо внешним NTP сервером. Есть другие контроллеры домена, которые в стандартной схеме синхронизируются с вышестоящим контроллером домена в иерархии Active Directory.

Контроллеры наивысшего уровня синхронизируются с PDC эмулятором. Рядовые серверы AD и клиентские компьютеры синхронизируют время с соответствующим контроллером домена своего сайта.

Настраиваем контроллер домена с ролью PDC

PS C:> w32tm /config /manualpeerlist:192.168.5.10 /syncfromflags:manual /reliable:yes /update

The command completed successfully.

PS C:> Restart-Service w32time

PS C:> w32tm /resync

Sending resync command to local computer

The command completed successfully.

где 192.168.5.10 — внешний или корпоративный NTP сервер. Также здесь можно указать и несколько пиров, разделенных пробелами и заключить все в двойные кавычки. Пиры можно указывать как с помощью IP-адресов, так и с помощью DNS-имён.

Настраиваем члена домена, не держащего роли PDC, на работу в стандартной доменной схеме Хочу отметить, что данную процедуру нужно проводить в том случае, если настройки времени на текущем компьютере домена перед этим менялись на нестандартные. Таким образом мы вернем все в дефолтные настройки.

PS C:> w32tm /config /update /syncfromflags:DOMHIER

The command completed successfully.

PS C:> w32tm /resync

Sending resync command to local computer

The command completed successfully.

Настройка синхронизации времени в домене Active Directory

Много теории и немного практики о:

  • топологии синхронизации времени среди участников Active Directory
  • оптимальной с моей точки зрения конфигурации сервера времени корневого эмулятора PDC
  • полезных командах для настройки и диагностики синхронизации времени
  • особенностях, которые нужно учитывать для виртуализированных контроллеров домена

Топология синхронизации времени среди участников Active Directory

Среди компьютеров, участвующих в Active Directory работает следующая схема синхронизация времени.

Читать еще:  Права на ввод в домен

Контроллер корневого домена в лесу AD, которому принадлежит FSMО-роль эмулятора PDC (назовем его корневым PDC), является источником времени для всех остальных контроллеров этого домена. Контроллеры дочерних доменов синхронизируют время с вышестоящих по топологии AD контроллеров домена. Рядовые члены домена (сервера и рабочие станции) синхронизируют свое время с ближайшим к ним доступным контроллером домена, соблюдая топологию AD.

Корневой PDC может синхронизировать свое время как со внешним источником, так и с самим собой, последнее задано конфигурацией по умолчанию и является абсурдом, о чем периодически намекают ошибки в системном журнале.

Синхронизация клиентов корневого PDC может осуществятся как с его внутренних часов, так и с внешнего источника. В первом случае сервер времени корневого PDC объявляет себя как «надежный» (reliable).

Далее я приведу оптимальную с моей точки зрения конфигурацию сервера времени корневого PDC, при которой сам корневой PDC периодически синхронизирует свое время от достоверного источника в интернете, а время обращающихся к нему клиентов синхронизирует со своими внутренними часами.

Конфигурация NTP-сервера на корневом PDC

Конфигурирование сервера времени (NTP-сервера) может осуществляться как с помощью утилиты командной строки w32tm, так и через реестр. Где возможно, я приведу оба варианта.

Включение синхронизации внутренних часов с внешним источником [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters] «Type»=»NTP» w32tm /config /syncfromflags:manual

Объявление NTP-сервера в качестве надежного

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig] «AnnounceFlags»=dword:0000000a w32tm /config /reliable:yes Подробности — в библиотеке TechNet.

NTP-сервер по умолчанию включен на всех контроллерах домена, однако его можно включить и на рядовых серверах.

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer] «Enabled»=dword:00000001 Задание списка внешних источников для синхронизации [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»

Флаг 0x8 на конце означает, что синхронизация должна происходить в режиме клиента NTP, через предложенные этим сервером интервалы времени. Для того, чтобы задать свой интервал синхронизации, необходимо использовать флаг 0x1. Все остальные флаги описаны в библиотеке TechNet.

Задание интервала синхронизации с внешним источником Время в секундах между опросами источника синхронизации, по умолчанию 900с = 15мин. Работает только для источников, помеченных флагом 0x1.

Установка минимальной положительной и отрицательной коррекции Максимальная положительная и отрицательная коррекция времени (разница между внутренними часами и источником синхронизации) в секундах, при превышении которой синхронизация не происходит. Рекомендую значение 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 /query /peers

Особенности виртуализированных контроллеров домена

Контроллеры домена, работающие в виртуализированной среде, требуют к себе особенного отношения.

Средства синхронизации времени виртуальной машины и хостовой ОС должны быть выключены. Во всех адекватных системах виртуализации (Microsoft, vmWare и т. д.) присутствуют компоненты интеграции гостевой ОС с хостовой, которые значительно повышают производительность и управляемость гостевой системой. Среди этих компонентов всегда есть средство синхронизации времени гостевой ОС с хостовой, которое очень полезно для рядовых машин, но противопоказано для контроллеров домена. Потому как в этом случае весьма вероятен цикл, при котором контроллер домена и хостовая ОС будут синхронизировать друг друга. Последствия печальны.

Для корневого PDC синхронизация с внешним источником должна быть настроена всегда. В виртуальной среде часы не настолько точны как в физической, потому как виртуальная машина работает с виртуальным процессором и прерываниями, для которых характерно как замедление, так и ускорение относительно «обычной» частоты. Если не настроить синхронизацию виртуализированного корневого PDC с внешним источником, время на всех компьютерах предприятия может убегать/отставать на пару часов в сутки. Не трудно представить неприятности, которые может принести такое поведение.

Настройка времени на виртуализированных контроллерах домена AD

Сегодня мы поговорим о некоторых особенностях настройки службы времени на виртуализированных контроллерах домена. Как правило, схема синхронизации времени в домене Active Directory выглядит следующим образом:

  • Контроллер домена с FSMO ролью эмулятора PDC является основным источником времени в домене AD и синхронизируется с внешним поставщиком точного времени.
  • Все остальные контроллеры домена синхронизированы с контроллером, содержащим роль эмулятора PDC
  • Все рядовые сервера домена и рабочие станции синхронизируют время с ближайшим контроллером домена.

Например, так выглядят настройки времени на моем виртуализированном DC с ролью PDC. Как вы видите, он синхронизирует время с pool.ntp.org.

Однако, если попытаться вывести текущего поставщика времени , неожиданно можно увидеть странный источник времени с именем VM IC Time Synchronization Provider.

w32tm / query / source

Дело в том, что по умолчанию виртуальные машины Hyper-V / VMWare синхронизируют свое время с хостовым гипервизором, в не зависимости от настроек службы времени внутри ВМ. В результате этого может оказаться довольно странная ситуация, когда хост Hyper-V является членом домена AD и синхронизирует время с контроллером домена, который, в свою очередь, является виртуальной машиной и синхронизирован с хостом (рекурсия?!).
Чтобы этого избежать, для контроллеров виртуальных доменов вы должны отключить синхронизацию времени с хостом. Есть два способа сделать это.

Первый способ — отключить синхронизацию времени в свойствах ВМ. Для этого откройте свойства виртуальной машины в оснастке Hyper-V Manager, перейдите в раздел Integration Services и снимите флажок Time synchronization.

То же самое на сервере Hyper-V можно сделать с помощью консоли PowerShell. Например, с помощью этой команды можно получить статус службы синхронизации времени для виртуальной машины:

Get-VMIntegrationService -VMName dc1 -Name ‘Time synchronization’

А следующей командой можно отключить синхронизацию:

Get-VMIntegrationService -VMName dc1 -Name ‘Time synchronization’ | Disable-VMIntegrationService

Если в качестве хоста виртуализации вы используете VMWare ESXi, вы можете отключить синхронизацию времени с хостом в настройках виртуальной машины.

ВМ->Edit Settings -> вкладка VM Options -> Снимите галку “Synchronize guest time with host

Второй способ отключения синхронизации времени — редактирование реестра внутри гостевой виртуальной машины с ролью контроллера домена (ADDS). Чтобы отключить синхронизацию, запустите Regedit.exe, перейдите в раздел HKLMSYSTEMCurrentControlSetServicesW32TimeTimeProvidersVMICTimeProvider и измените значение параметра Enabled на 0.

Либо то же самое действие, но из командной строки:

reg add HKLMSYSTEMCurrentControlSetServicesW32TimeTimeProvidersVMICTimeProvider /v Enabled /t reg_dword /d 0

Кроме того, рекомендуется выполнить следующие настройки

  1. Изменить период опроса сервера NTP reg add HKLMSYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient /v SpecialPollInterval /t reg_dword /d 900
  2. Настроить правильный ответ службы времени на нестандартное изменение времени более чем на 52 часа reg add HKLMSYSTEMCurrentControlSetServicesW32TimeConfig /v MaxNegPhaseCorrection /t reg_dword 0xFFFFFFFF

reg add HKLMSYSTEMCurrentControlSetServicesW32TimeConfig /v MaxPosPhaseCorrection /t reg_dword /d 0xFFFFFFFF

После отключения синхронизации с помощью любого из описанных выше методов необходимо перезапустить службу времени w32time, чтобы она перенастроилась на новый источник времени и запустить синхронизацию:

net stop w32time
net start w32time
w32tm /resync /force

На всех остальных DC в AD вы должны дополнительно выполнить команду:

w32tm/config /syncfromflags:DOMHIER /update

Это заставит службу времени выбрать PDC-эмулятор в качестве источника в соответствии с иерархией домена. Таким образом, мы настроим правильную схему синхронизации времени в домене при использовании виртуальных DC.

0 0 голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты