NTP

Див. також: Клієнт / Сервер NTP

NTP (Network Time Protocol) забезпечує синхронізацію часу на основі мережі еталонних годинників по всьому світу. OpenWrt підтримує як клієнтський режим NTP (синхронізація локального часу з віддаленим сервером), так і серверний режим NTP (надання часу для локальної мережі).

Конфігурація NTP знаходиться в підсистемі UCI system, файл /etc/config/system.

Конфігурація NTP міститься в секції timeserver підсистеми system.

# uci show system
system.ntp=timeserver
system.ntp.enabled='1'
system.ntp.enable_server='0'
system.ntp.server='0.openwrt.pool.ntp.org' '1.openwrt.pool.ntp.org' '2.openwrt.pool.ntp.org' '3.openwrt.pool.ntp.org'

Опис доступних опцій для секції ntp:

Назва Тип Обов'язково Значення за замовчуванням Опис
server список доменів ні (сервери ntp openwrt) Пул NTP-серверів, з яких буде отримуватись час.
Якщо не вказано — клієнтський режим буде вимкнено, і час не синхронізується автоматично.
enable_server логічне ні 0 Якщо встановлено в 1 — пристрій діє як NTP-сервер.
(busybox-ntpd за замовчуванням слухає UDP-порт 123)
interface назва інтерфейсу ні (немає) Обмежує роботу NTP-сервера лише цим інтерфейсом. Доступно починаючи зі snapshot e12fcf0 і релізу 21.02.0-rc4 a75928d.
use_dhcp логічне ні 1 Встановлення в 0 вимикає використання NTP-серверів, наданих через DHCP.

У файлі /etc/config/system застосовується busybox-ntpd замість busybox-rdate (який використовували в старих скриптах), щоб уникнути конфліктів доступу до часу та використовувати сучасний механізм NTP. Конфігурація тепер відбувається у файлі system, а не timeserver.

  • :!: Старі скрипти спершу перевіряли, чи налаштований NTP-сервер через DHCP для інтерфейсу.
  • :!: Якщо DHCP-сервер не надавав часу або синхронізація не вдавалась — використовувались значення з конфігурації timeserver або загальної системної.

За замовчуванням клієнт NTP увімкнено, сервер — вимкнено.

Щоб увімкнути режим сервера:

uci set system.ntp.enable_server="1"
uci commit system
/etc/init.d/sysntpd restart

Теоретично пул-зона OpenWrt забезпечує найкоротші маршрути до серверів. Фактично це не завжди так — підключення можуть бути до віддалених серверів.

Щоб використовувати локальні сервери, рекомендовано використовувати регіональну пул-зону.

Наприклад, для Франції (замість 'fr' використовуйте код вашої країни):

uci -q delete system.ntp.server
uci add_list system.ntp.server="0.fr.pool.ntp.org"
uci add_list system.ntp.server="1.fr.pool.ntp.org"
uci add_list system.ntp.server="2.fr.pool.ntp.org"
uci add_list system.ntp.server="3.fr.pool.ntp.org"
uci commit system
/etc/init.d/sysntpd restart

За замовчуванням аналітичні утиліти NTP не встановлюються (і, як правило, не потрібні). Однак можна встановити пакет ntp-utils, який містить утиліти для синхронізації з NTP-серверами та моніторингу.

Пакет містить: `ntpdc`, `ntpq`, `ntptime`.

opkg install ntp-utils

Використайте `ntpq` для перевірки стану клієнта/сервера NTP. Наприклад:

# ntpq
ntpq> peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.fr.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000
 1.fr.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000
 2.fr.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000
 3.fr.pool.ntp.o .POOL.          16 p    -   64    0    0.000    0.000   0.000
+ntp-3.arkena.ne 138.96.64.10     2 u  134  256  375   11.838   -1.119   1.194
 nsr2.neoserveur 172.2.53.81      2 u 1520  512    2   17.462   -0.064   2.688
+62.210.28.176 ( 84.255.209.79    4 u  222  256  377   12.241    1.094   1.620
-time1.agiri.nin 213.246.39.118   3 u   28  256  377   12.385    2.388   0.767
*ns3.stoneartpro 193.52.184.106   2 u  107  256  377   11.448    0.467   1.243

Натисніть `q` щоб вийти з режиму перегляду.

  • Last modified: 2025/05/31 12:07
  • by vazaz