hellonow Posted July 5, 2017 Share Posted July 5, 2017 (edited) Установка и настройка ntpd ntpd - The ISC ntp suite is a collection of tools used to synchronize the system clock with remote NTP time servers and run/monitor local NTP servers. Версия из репозитория ntpd - 4.2.8p10-1 1. Устанавливаем Entware-3x 2. Заходим через SSH в настройки роутера и прописываем: ~ # opkg update Downloading http://entware-3x.zyxmon.org/binaries/mipsel/Packages.gz Updated list of available packages in /opt/var/opkg-lists/keen3x ~ # opkg install ntp-utils Installing ntp-utils (4.2.8p10-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/ntp-utils_4.2.8p10-1_mipsel-3x.ipk Installing libcap (2.25-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/libcap_2.25-1_mipsel-3x.ipk Configuring libcap. Configuring ntp-utils. ~ # opkg install ntpd Installing ntpd (4.2.8p10-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/ntpd_4.2.8p10-1_mipsel-3x.ipk Configuring ntpd. ~ # opkg install ntp-keygen Installing ntp-keygen (4.2.8p10-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/ntp-keygen_4.2.8p10-1_mipsel-3x.ipk Installing libevent2-core (2.0.22-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/libevent2-core_2.0.22-1_mipsel-3x.ipk Configuring libevent2-core. Configuring ntp-keygen. ~ # opkg install ntpdate Installing ntpdate (4.2.8p10-1) to root... Downloading http://entware-3x.zyxmon.org/binaries/mipsel/ntpdate_4.2.8p10-1_mipsel-3x.ipk Configuring ntpdate. 3. Смотрим путь установочных файлов ntpd: ~ # opkg files ntpd Package ntpd (4.2.8p10-1) is installed on root and has the following files: /opt/etc/ntp.conf /opt/sbin/ntpd /opt/sbin/ntpq /opt/etc/init.d/S77ntpd /opt/etc/hotplug.d/iface/20-ntpd нам нужен /opt/etc/init.d/S77ntpd 4. Запускаем S77ntpd: ~ # /opt/etc/init.d/S77ntpd start Starting ntpd... done. 5. Останавливаем S77ntpd: ~ # /opt/etc/init.d/S77ntpd stop Checking ntpd... alive. Shutting down ntpd... done. 6. Редактируем конфиг /opt/etc/ntp.conf: Оригинальный конфиг: # use a random selection of 4 public stratum 2 servers # see http://twiki.ntp.org/bin/view/Servers/NTPPoolServers #restrict default nomodify notrap noquery #restrict default noquery restrict 127.0.0.1 driftfile /opt/var/lib/ntp/ntp.drift server 0.openwrt.pool.ntp.org iburst server 1.openwrt.pool.ntp.org iburst server 2.openwrt.pool.ntp.org iburst server 3.openwrt.pool.ntp.org iburst # GPS(NMEA)+PPS #server 127.127.20.0 minpoll 4 prefer #fudge 127.127.20.0 flag3 1 flag2 0 # SMA PPS #server 127.127.28.0 minpoll 4 prefer #fudge 127.127.28.0 refid PPS flag3 1 #server 192.168.1.253 Меняем конфиг /opt/etc/ntp.conf: # use a random selection of 4 public stratum 2 servers # see http://twiki.ntp.org/bin/view/Servers/NTPPoolServers #ignore restrict default ignore #permit restrict 127.0.0.1 restrict 127.127.1.0 #restrict noquery notrap restrict ntp2.stratum2.ru noquery notrap restrict ntp3.stratum2.ru noquery notrap restrict ntp4.stratum2.ru noquery notrap #local host restrict 192.168.200.0 mask 255.255.255.0 nomodify notrap nopeer #server ntp server 127.127.1.0 iburst server ntp2.stratum2.ru iburst prefer server ntp3.stratum2.ru iburst server ntp4.stratum2.ru iburst #block restrict −4 default kod notrap nomodify nopeer noquery restrict −6 default kod notrap nomodify nopeer noquery #files driftfile /opt/var/spool/ntp/ntp.drift logfile /opt/share/log/ntp 7. Запускаем S77ntpd: ~ # /opt/etc/init.d/S77ntpd start Starting ntpd... done. 8. Проверяем работу NTP-серверов: ~ # ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== LOCAL(0) .LOCL. 5 l 28 64 1 0.000 0.000 0.004 *n1.sigma.d6.hsd 88.147.254.228 2 u 16 64 1 24.394 3.070 2.151 +ns5.hsdn.org 255.233.161.33 2 u 18 64 1 22.982 -1.106 3.382 +91.226.136.155 35.122.95.18 2 u 18 64 1 27.698 -0.482 1.653 ~ # 9, Проверяем работу локального NTP-сервера в клиенте, например Windows 10: Жмем Win+R, в окне вводим timedate.cpl и далее вписываем ип адрес Домашней сети (Home VLAN) Дополнительная информация по настройке - тут, тут2, тут3. NTP-сервера брал - тут. Вы можете указать другие NTP-сервера - отсюда. Edited July 7, 2017 by enpa fix - путь для driftfile 3 1 Quote Link to comment Share on other sites More sharing options...
UweStrich Posted July 7, 2017 Share Posted July 7, 2017 (edited) Эх, появись эта тема на пару месяцев раньше - мне, как опытному ламеру и сертифицированному гуманитарию, было бы куда легче настраивать ntpd: в сети слишком много инструкций и советов по решению проблем для очень разных систем и версий программы. С другой стороны, какая-то информация пригодилась и осела в голове и конфигах - может, смогу помочь обтесать инструкцию. Для начала оговорюсь, что ставил и настраивал "голый" ntpd (без ntp-utils, ntp-keygen, и ntpdate) для Keenetic Ultra Rev.А (NDMS v2.08(AAGJ.0)C2, Entware-3x), т.е. возможно те проблемы, с которыми сталкивался я, у автора не возникали из-за разницы в оборудовании, версиях прошивок, и установленных пакетов. Теперь - к странностям, которые заметил в конфиге (опять же, крайне вероятно что это я ничего не понял) и решения тех проблем, с которыми я столкнулся: путь в параметре "driftfile" к файлу "ntp.drift" оставлен по умолчанию, хотя в скрипте запуска "S77ntpd" вместо пути "/opt/var/lib/ntp/ntp.drift" указан "/opt/var/spool/ntp/ntp.drift". Из-за этого расхождения демон ожидаемо ругался в логах на отсутствие нужной папки и не мог записать файл на постоянную основу: 6 Jul 17:11:50 ntpd[13546]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory Файл является критичным, т.к. именно в нём ntpd сохраняет вычисляемую им погрешность часов, и без неё работа демона не имеет смысла. Свою неполадку я решил редактированием пути в конфиге на путь из скрипта запуска. Помимо этого, стоит убедиться что ntpd имеет права производить запись по указанным путям и что файлы в указанных папках не стираются при перезагрузке роутера (в случае с путём из скрипта вышесказанное является верным - возможно, именно поэтому он и отличается от конфигурационного). Советую перепроверить оба пути на наличие файла погрешности, при его отсутствии - исправить конфиг. Во-вторых: возможны неполадки при одновременной работе разных процессов обновления времени. Мне, например, пришлось отключить обновление времени в веб-интерфейсе NDMS. В-третьих: при серьёзном расхождении времени системы с полученным временем от серверов (1000 секунд и более) ntpd "паникует" и отключается, с чем я по незнанию и столкнулся после перезагрузки роутера. Чтобы привести его в чувство, необходимо вручную задать дату со временем по любым достаточно точным часам и произвести перезапуск скрипта: date -s ГГГГ-ММ-ДД чч:мм /opt/etc/init.d/S77ntpd restart Чтобы каждый раз после перезагрузки роутера не заниматься вводом этих команд, дополнительно был установлен пакет "fake-hwclock", сохраняющий показания времени при выключении роутера в отдельный файл и выставляющий их при его включении (хотя, как понимаю, с этим так же может справиться и ntpdate, который себе я не ставил - призываю более компетентных людей на помощь). Допытывание у Гугла также показало, что аргумент "-g" при запуске ntpd заставляет его перестать паниковать и таки произвести сверку часов; я посчитал, что имеет смысл дополнительно его прописать в строке ARGS= скрипта автозапуска. Возвращаясь к конфигу, хочу обратить внимание на пункт "server 127.127.1.0 iburst". Cудя по документации для сравнительно недавней версии 4.2.8p8, этот адрес - указание для ntpd использовать драйвер, позволяющий использовать собственные часы системы (в нашем случае - роутера) как источник точного времени при отсутствии более надёжных, т.е. если я правильно понимаю, параметр iburst для него не нужен. При этом на других сайтах в официальной вики ntp.org (версия из кэша Google, на случай если страница не только у меня недоступна) из-за неточности этого драйвера рекомендуют обязательно настроить этот сервер как сервер Stratum-10, цитирую: Цитата "Although the default stratum for the Undisciplined Local Clock is 5, in cases where an ntpd may become accessible outside of your immediate, controlled, network is it strongly suggested the the stratum of the Undisciplined Local Clock be raised to no less than 10" - "Хоть для Недисциплинированных Локальных Часов по умолчанию и выставлен часовой слой 5, настоятельно рекомендуется выставить для них часовой слой никак не меньше 10 на случай доступности ntpd вне пределов непосредственно контролируемой вами локальной сети" Благо, для этого надо лишь дописать в "ntp.conf" всего одну строчку: fudge 127.127.1.0 stratum 10 Были у меня и ещё вопросы к предложенной конфигурации, но ввиду собственного ламерства будет гораздо честнее выложить инструкцию, на которую сам оглядывался при настройке, приложить собственный конфиг, и дождаться замечаний от более опытных пользователей. Скрытый текст # use a random selection of 4 public stratum 2 servers # see http://twiki.ntp.org/bin/view/Servers/NTPPoolServers # правила для блокировки ненужных запросов (варианты IPv4 и IPv6); отключение monitor во избежание # использования ntp-сервера в ДДОС-атаках (https://habrahabr.ru/post/209438/ ) restrict default nomodify notrap nopeer noquery restrict -6 default nomodify notrap nopeer noquery disable monitor # правила, разрешающие локалхосту обращаться самому к себе (варианты IPv4 и IPv6) restrict 127.0.0.1 restrict -6 ::1 # путь к файлу ntp.drift driftfile /opt/var/spool/ntp/ntp.drift # сервера, с которыми происходит обновление времени server 0.ru.pool.ntp.org iburst server 1.ru.pool.ntp.org iburst server 2.ru.pool.ntp.org iburst server 3.ru.pool.ntp.org iburst # разрешение на запрос точного времени из локальной сети; 192.168.1.0 - подсеть, 255.255.255.0 - маска restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap nopeer # закомментированые примеры настроек часов и/или источников сигнала эталонной частоты, подключённых к # локалхосту напрямую, а именно - приёмника GPS в первом случае, и шины(?) разделяемой памяти - во втором # GPS(NMEA)+PPS #server 127.127.20.0 minpoll 4 prefer #fudge 127.127.20.0 flag3 1 flag2 0 # SMA PPS #server 127.127.28.0 minpoll 4 prefer #fudge 127.127.28.0 refid PPS flag3 1 # закомментированый пример сервера точного времени в локальной сети #server 192.168.1.253 # простые часы локалхоста как источник точного времени; по умолчанию - не используется при наличии более # точных источников, вторая строка дополнительно это оговаривает server 127.127.1.0 fudge 127.127.1.0 stratum 10 Edited July 7, 2017 by UweStrich указал ссылку на ntp.org, проясняющую настройки 127.127.1.0, и привёл цитату оттуда 2 Quote Link to comment Share on other sites More sharing options...
hellonow Posted July 7, 2017 Author Share Posted July 7, 2017 (edited) @UweStrich да, спасибо, подтверждаю неправильный путь для файла ntp.drift В логе тоже есть такая запись: 7 Jul 06:26:56 ntpd[17696]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory 7 Jul 08:26:56 ntpd[17696]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory 7 Jul 10:26:56 ntpd[17696]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory 7 Jul 11:26:56 ntpd[17696]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory 7 Jul 12:26:56 ntpd[17696]: frequency file /opt/var/lib/ntp/ntp.drift.TEMP: No such file or directory p.s.: не успел застать данную запись, уехал в отпуск. сейчас поправлю у себя в конфиге и в шапке. остальное проверю и опробую, когда буду постоянно онлайн. конфиг еще не идеален, информация по нормализации работы ntpd бралась из открытых источников - тут, тут2. Edited July 7, 2017 by enpa 1 1 Quote Link to comment Share on other sites More sharing options...
dcbeelinekz Posted January 14, 2018 Share Posted January 14, 2018 Скрытый текст Статья полезная и хотел бы вас попросить помощи касательно штатного NTP сервера и клиента. У меня два роутера один настроил как сервер, оба в лок сети, а второй просто клиент и никак не получается синхронизоваться с первым роутерм выступающий сервером, вроде бы локальная сеть и проброс порта делал 123 UDP все равно не идет, в чем проблема, как думаите? Quote Link to comment Share on other sites More sharing options...
Le ecureuil Posted January 15, 2018 Share Posted January 15, 2018 23 часа назад, dcbeelinekz сказал: Показать содержимое Статья полезная и хотел бы вас попросить помощи касательно штатного NTP сервера и клиента. У меня два роутера один настроил как сервер, оба в лок сети, а второй просто клиент и никак не получается синхронизоваться с первым роутерм выступающий сервером, вроде бы локальная сеть и проброс порта делал 123 UDP все равно не идет, в чем проблема, как думаите? Нужна включенная поддержка SNTP на сервере. Quote Link to comment Share on other sites More sharing options...
VitoTLT Posted February 13, 2021 Share Posted February 13, 2021 (edited) Подскажите пожалуйста, в чём может быть проблема с работоспособностью NTPD ? ntp.conf Скрытый текст # use a random selection of 4 public stratum 2 servers # see http://twiki.ntp.org/bin/view/Servers/NTPPoolServers #ignore restrict default ignore #permit restrict 127.0.0.1 restrict 127.127.1.0 #restrict noquery notrap restrict ntp2.stratum2.ru noquery notrap restrict ntp3.stratum2.ru noquery notrap restrict ntp4.stratum2.ru noquery notrap #local host restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap nopeer #server ntp server 127.127.1.0 iburst server ntp2.stratum2.ru iburst prefer server ntp3.stratum2.ru iburst server ntp4.stratum2.ru iburst #block restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery #files driftfile /opt/var/spool/ntp/ntp.drift logfile /opt/share/log/ntp /var/spool/ntp/ntp.log Скрытый текст 9 Feb 16:06:18 ntpd[559]: ntpd 4.2.8p15@1.3728-o Wed Dec 2 16:57:56 UTC 2020 (1): Starting 9 Feb 16:06:18 ntpd[559]: Command line: ntpd -c /opt/etc/ntp.conf -f /opt/var/spool/ntp/ntp.drift -s /opt/var/spool/ntp -k /opt/etc/ntp -l /opt/var/spool/ntp/ntp.log -g 9 Feb 16:06:18 ntpd[559]: ---------------------------------------------------- 9 Feb 16:06:18 ntpd[559]: ntp-4 is maintained by Network Time Foundation, 9 Feb 16:06:18 ntpd[559]: Inc. (NTF), a non-profit 501(c)(3) public-benefit 9 Feb 16:06:18 ntpd[559]: corporation. Support and training for ntp-4 are 9 Feb 16:06:18 ntpd[559]: available at https://www.nwtime.org/support 9 Feb 16:06:18 ntpd[559]: ---------------------------------------------------- 9 Feb 16:06:18 ntpd[567]: proto: precision = 3.589 usec (-18) 9 Feb 16:06:18 ntpd[567]: basedate set to 2020-11-20 9 Feb 16:06:18 ntpd[567]: gps base set to 2020-11-22 (week 2133) 9 Feb 16:06:19 ntpd[567]: restrict: ignoring line 13, address/host 'ntp2.stratum2.ru' unusable. 9 Feb 16:06:20 ntpd[567]: restrict: ignoring line 14, address/host 'ntp3.stratum2.ru' unusable. 9 Feb 16:06:21 ntpd[567]: restrict: ignoring line 15, address/host 'ntp4.stratum2.ru' unusable. 9 Feb 16:06:21 ntpd[567]: restrict 0.0.0.0: KOD does nothing without LIMITED. 9 Feb 16:06:21 ntpd[567]: restrict ::: KOD does nothing without LIMITED. 9 Feb 16:06:21 ntpd[567]: switching logging to file /opt/share/log/ntp /share/log/ntp Скрытый текст 13 Feb 09:42:13 ntpd[561]: Deleting interface #3 br0, 192.168.0.1#123, interface stats: received=0, sent=2, dropped=0, active_time=150 secs 13 Feb 09:42:13 ntpd[561]: Deleting interface #4 br1, 10.1.30.1#123, interface stats: received=0, sent=0, dropped=0, active_time=150 secs 13 Feb 09:42:13 ntpd[561]: Deleting interface #5 br2, 192.168.1.3#123, interface stats: received=2, sent=0, dropped=0, active_time=150 secs 13 Feb 09:42:13 ntpd[561]: Deleting interface #6 eth3, 178.XXX.XX.XXX#123, interface stats: received=9, sent=9, dropped=0, active_time=143 secs 13 Feb 09:42:13 ntpd[561]: 88.147.254.232 local addr 178.XXX.XX.XXX -> <null> 13 Feb 09:42:13 ntpd[561]: 88.147.254.235 local addr 178.XXX.XX.XXX -> <null> 13 Feb 09:42:13 ntpd[561]: 88.147.254.230 local addr 178.XXX.XX.XXX -> <null> 13 Feb 09:42:27 ntpd[561]: ntpd exiting on signal 15 (Terminated) 13 Feb 09:42:27 ntpd[561]: 127.127.1.0 local addr 127.0.0.1 -> <null> 9 Feb 16:06:21 ntpd[567]: Listen and drop on 0 v6wildcard [::]:123 9 Feb 16:06:21 ntpd[567]: Listen and drop on 1 v4wildcard 0.0.0.0:123 9 Feb 16:06:21 ntpd[567]: Listen normally on 2 lo 127.0.0.1:123 9 Feb 16:06:21 ntpd[567]: Listen normally on 3 br0 192.168.0.1:123 9 Feb 16:06:21 ntpd[567]: Listen normally on 4 br1 10.1.30.1:123 9 Feb 16:06:21 ntpd[567]: Listen normally on 5 br2 192.168.1.3:123 9 Feb 16:06:21 ntpd[567]: Listening on routing socket on fd #22 for interface updates 9 Feb 16:06:21 ntpd[567]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized 9 Feb 16:06:21 ntpd[567]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized 9 Feb 16:06:26 ntpd[567]: Listen normally on 6 eth3 178.163.67.215:123 9 Feb 16:06:26 ntpd[567]: 88.147.254.230 local addr 192.168.0.1 -> 178.XXX.XX.XXX 9 Feb 16:06:26 ntpd[567]: 88.147.254.235 local addr 192.168.0.1 -> 178.XXX.XX.XXX 9 Feb 16:06:26 ntpd[567]: 88.147.254.232 local addr 192.168.0.1 -> 178.XXX.XX.XXX 9 Feb 16:06:26 ntpd[567]: new interface(s) found: waking up resolver (за иксами спрятал свой белый айпишник ) По запросу ntpq вот что выдаёт: Скрытый текст BusyBox v1.31.1 () built-in shell (ash) / # ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== *LOCAL(0) .LOCL. 5 l 29 64 377 0.000 +0.000 0.004 n1.sigma.d6.hsd .XFAC. 16 u - 1024 0 0.000 +0.000 0.000 ns1.hsdn.org .XFAC. 16 u - 1024 0 0.000 +0.000 0.000 88.147.254.230 .XFAC. 16 u - 1024 0 0.000 +0.000 0.000 Edited February 13, 2021 by VitoTLT Quote Link to comment Share on other sites More sharing options...
yuoras Posted October 7, 2022 Share Posted October 7, 2022 Может кто поможет советом. Есть старенькие девайсы , они работают по протоколу DAYTIME и порту 13 tcp/udp, для обновления своего времени Как его прикрутить к entwarе или может можно данный скрипт переделать? Заранее благодарен Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.