Налаштування ntp сервера в windows
Операційні системи сімейства Windows містять службу часу W32Time. Ця служба призначена для синхронізації часу в межах організації. W32Time відповідає за роботу як клієнтської, так і серверної частини служби часу, причому один і той же комп'ютер може бути одночасно і клієнтом і сервером NTP (NTP - Network Time Protocol).
За замовчуванням служба часу в Windows налаштована наступним чином:
• При установці операційної системи Windows запускає клієнта NTP, який синхронізується з зовнішнім джерелом часу;
• При додаванні комп'ютера в домен тип синхронізації змінюється. Всі клієнтські комп'ютери і рядові сервера в домені використовують для синхронізації часу контролер домену, який перевіряє їх достовірність;
• При підвищенні рядового сервера до контролера домену на ньому запускається NTP-сервер, який в якості джерела часу використовує контролер з роллю PDC-емулятор;
• PDC-емулятор, розташований в кореневому домені лісу, є основним сервером часу для всієї організації. При цьому сам він також синхронізується із зовнішнім джерелом часу.
Така схема працює в більшості випадків і не вимагає втручання. Однак структура сервісу часу в Windows може і не слідувати доменної ієрархії і надійним джерелом часу можна призначити будь-який комп'ютер.
Запуск NTP сервера
Служба часу в Windows Server не має графічного інтерфейсу і настроюється або з командного рядка, або шляхом прямої правки системного реєстру. Розглянемо другий спосіб:
Необхідно запустити сервер NTP. Відкриваємо гілку реєстру:
Для включення сервера NTP параметру Enabled треба встановити значення 1. Потім перезапускаємо службу часу командою net stop w32time net start w32time.
Після перезапуску служби NTP, сервер вже активний і може обслуговувати клієнтів. Переконатися в цьому можна за допомогою команди w32tm / query / configuration. Ця команда виводить повний список параметрів служби. Якщо розділ NtpServer містить рядок Enabled: 1. то все в порядку, сервер часу працює.
Для того, щоб NTP-сервер міг обслуговувати клієнтів, в брандмауері необхідно відкрити UDP порт 123 для вхідного і вихідного трафіку.
Основні настройки NTP сервера
Відкриваємо гілку реєстру:
Тут в першу чергу нас цікавить параметр Type. який задає тип синхронізації. Він може приймати наступні значення:
NoSync - NTP-сервер не синхронізується з якихось зовнішнім джерелом часу. Використовуються системні годинник, вбудовані в мікросхему CMOS самого сервера (в свою чергу цей годинник може синхронізуватися від джерела NMEA по RS-232 наприклад);
NTP - NTP-сервер синхронізується з зовнішніми серверами часу, які вказані в параметрі реєстру NtpServer;
NT5DS - NTP-сервер виробляє синхронізацію згідно доменної ієрархії;
AllSync - NTP-сервер використовує для синхронізації всі доступні джерела.
Значення за замовчуванням для комп'ютера, що входить в домен - NT5DS, для окремо стоїть комп'ютера - NTP.
Допускаються наступні значення режиму:
0 × 1 - SpecialInterval. використання тимчасового інтервалу опитування;
0 × 2 - режим UseAsFallbackOnly;
0 × 4 - SymmetricActive, симетричний активний режим;
0 × 8 - Client, відправка запиту в клієнтському режимі.
Ще один важливий параметр AnnounceFlags знаходиться в розділі реєстру:
Він відповідає за те, як про себе заявляє NTP-сервер. Щоб заявити рядовий сервер (НЕ домен-контролер) як надійне джерело часу, потрібен прапор 5.
Якщо настроюється сервер в свою чергу є клієнтом NTP (отримує час від GPS-приймача по NTP, наприклад), можна налаштувати інтервал між оновленнями. Цей параметр може бути актуальним і для клієнтських РС. За час поновлення відповідає ключ SpecialPollInterval, що знаходиться в гілці реєстру:
Він задається в секундах і за замовчуванням його значення дорівнює 604800, що складає 1 тиждень. Це дуже багато, тому варто зменшити значення SpecialPollInterval до розумного значення посилання - 1 годин (3600).
Після установки необхідно оновити конфігурацію сервісу. Зробити це можна командою w32tm / config / update.
І ще кілька команд для налаштування, моніторингу і діагностики служби часу:
w32tm / monitor - за допомогою цієї опції можна дізнатися, наскільки системне час даного комп'ютера відрізняється від часу на контролері домену або інших комп'ютерах. Наприклад: w32tm / monitor /computers:time.nist.gov
w32tm / resync - за допомогою цієї команди можна змусити комп'ютер синхронізуватися з використовуваним їм сервером часу.
w32tm / stripchart - показує різницю в часі між поточним і віддаленим комп'ютером. Команда w32tm / stripchart /computer:time.nist.gov / samples: 5 / dataonly зробить 5 порівнянь із зазначеним джерелом і видасть результат у текстовому вигляді.
w32tm / config - це основна команда, яка використовується для налаштування служби NTP. З її допомогою можна задати список використовуваних серверів часу, тип синхронізації і багато іншого. Наприклад, перевизначити значення за замовчуванням і налаштувати синхронізацію часу із зовнішнім джерелом, можна командою w32tm / config / syncfromflags: manual /manualpeerlist:time.nist.gov / update
w32tm / query - показує поточні налаштування служби. Наприклад команда w32tm / query / source покаже поточний джерело часу, а w32tm / query / configuration виведе всі параметри служби.
net stop w32time - зупиняє службу часу, якщо запущена.
w32tm / unregister - видаляє службу часу з комп'ютера.
w32tm / register - реєструє службу часу на комп'ютері. При цьому створюється заново вся гілка параметрів в реєстрі.
net start w32time - запускає службу.
Особливості, помічені в Windows 7 - служба часу не активується автоматично при старті Windows. Виправлено в SP1 для Windows 7.