На хостовом сервере, а именно на сервере Hyper-V, было установлено
неправильное время (отклонение на 4 минуты от общепринятого).
Не долго думая, решил настроить правильное, для этого на DC с ролью PDC
решил настроить синхронизацию с внешним источником. Для этого выполнил
несколько последующих пунктов:
- Запускаем RegEdit
- Находим ключ
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer
его значение и будем менять, для изменения NTP сервера в интернете. Я поставил:
0.pool.ntp.org,0×1 (именно так, с 0×1 на конце)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
Должно иметь значение
NTP
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
должно иметь значение
5
После этого останавливаем и запускаем сервис времени:
net stop w32time && net start w32time
Запускаем синхронизацию:
w32tm /resync /rediscover
После выполнения данных команд, время было синхронизировано. Все
отлично, но вот беда через 30 секунд оно вернулось опять на
неправильное.
Наверное, вы уже догадались, что время было взято с сервера Hyper-V. Лечится это довольно просто:
- Открываем оснастку Hyper-V Manager
- Выбираем нашу виртуалку с DC
- Заходим в Settings и переходим на Integration Services
- Отключаем синхронизацию времени
Теперь же все будет нормально синхронизироваться. Вся проблемы
скрывалась в том, что сама хостовая машина с Hyper-V должна была брать
время с контроллеров домена, которые были виртуальными машинами. В
результате получалось, что хостовая машина не успевала синхронизировать
время с контроллера домена. А в этот момент службы интеграции
(integration services) замечали, что время расинхронизировалось (в
данном случае, на VM с контроллером домена и ролью PDC) и было принято
решение взять время с сервера Hyper-V. Таким образом получался замкнутый
круг.