Jump to content

    
Dobermann

Получение времени с NTP сервера

Recommended Posts

4 минуты назад, Ruslan1 сказал:

А, так и я могу. Я думал Вы нашли способ как в выходной поток модема вклиниться и WireShark туда подключить :)

А в чём разница? Какая разница на каком адресе отлаживать протокол? Если он будет работать на вашем SNTP-сервере, то и с чужим должен.

9 минут назад, Ruslan1 сказал:

Я обычно IP адрес использую вместо имени. А тут нужно хотя бы в начале проверенный IP использовать, который точно отвечает.

А почему думаете, что IP у SNTP-сервера не может измениться? Использовать прямой IP вместо DNS, вот это - реально лотерея!

Share this post


Link to post
Share on other sites
2 hours ago, jcxz said:

А почему думаете, что IP у SNTP-сервера не может измениться? Использовать прямой IP вместо DNS, вот это - реально лотерея!

Ну, кому как. Как по мне- тут DNS это дополнительная степень свободы, кому-то это плюс, кому-то минус. 

Для меня DNS в случае NTP это минус. Я помню ситуации, когда сервер DNS глючил или тормозил, но вот проблем с NTP сервером на static IP не видел никогда. Если нужный IP не работает- это авария, и его чинить надо, а не скакать на другой рандомный сервер. Мало ли какое время мне пришлют из неизвестной деревни.

Да, возможность работать через DNS должна быть и у меня оно тоже есть, но на практике в конфигах приборов всегда забивают IP нужного сервера.

Share this post


Link to post
Share on other sites
3 часа назад, Ruslan1 сказал:

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

В DNSах этого пула также есть распределение по регионам и странам: https://www.ntppool.org/zone/ru

 

16 минут назад, Ruslan1 сказал:

Если нужный IP не работает- это авария, и его чинить надо, а не скакать на другой рандомный сервер.

Это когда сервер свой. А когда публичные в Интернете используют - нужен DNS. Оно для того и сделано, на случай если один из серверов перестанет работать, по DNS всегда подцепится другой автоматом. Только вот свой сервер тоже должен откуда-то синхронизироваться. И вот там уже обычно DNS пула и забивают. А кто вписывает статический IP чужого сервера - ССЗБ.

16 минут назад, Ruslan1 сказал:

Мало ли какое время мне пришлют из неизвестной деревни.

pool.ntp.org отслеживает все сервера. Те, у которых дрифт слишком большой (речь о единицах мс) или не откликаются - выводит из выдачи по DNS. И это прекрасно работает. Знаю, т.к. свой сервер там "размещал" несколько лет.

Все ваши доводы вылезли от непонимания.

Share this post


Link to post
Share on other sites

Про фиксированный адрес вместо имени для NTP -- есть на хабре хорошая переводная история. Отлаживать можно на чем угодно конечно, а в продакшен лучше не надо. 

https://habr.com/ru/post/434422/

Share this post


Link to post
Share on other sites
2 hours ago, abcalex12 said:

Про фиксированный адрес вместо имени для NTP -- есть на хабре хорошая переводная история. Отлаживать можно на чем угодно конечно, а в продакшен лучше не надо. 

Ну, я не настолько программист чтобы "в прошивку записали один из IP-адресов..., и эти устройства нельзя было идентифицировать или удалённо обновить".

Если из моих замечаний о static IP кто-то сделал вывод, что я рекомендую нечто подобное- то ивините, меня не так поняли.  

 

Люди! не используйте статический IP для чего-либо вообще (в том числе и для NTP), если вы не понимаете, что делаете и зачем. :)

 

процитирую из той самой статьи:

Quote

Вот такая история NetThings UK Ltd, смелого покорителя Интернета вещей, который думал, что общественный пул NTP — просто неотъемлемая часть интернета и каждый может использовать его бесплатно, достаточно выбрать наугад один IP-адрес и зашить его в тысячи своих устройств, которые распространяются по всей стране без возможности удалённого обновления.

 

Share this post


Link to post
Share on other sites
2 часа назад, Ruslan1 сказал:

и его чинить надо, а не скакать на другой рандомный сервер. Мало ли какое время мне пришлют из неизвестной деревни.

Ну вот когда он сломается и его поставят на починку. На месяц, а может и больше. И все другие девайсы этого даже не заметят, так как работают через DNS, а ваш - перестанет, вот тогда ваши клиенты вам популярно объяснят для чего придуман DNS.  :vava:

Вы и адреса сайтов в браузере тоже IP-адресом вводите? А то вдруг "какой не тот IP мне пришлют из неизвестной деревни"? :sarcastic: 

Share this post


Link to post
Share on other sites

Вот список серверов (просто кусок из проги) которые включены в список моей проги. Первый из списка работает всегда, за все время работы не было ни  одного отказа. И, кстати, можно обращаться прямо по адресу, без DNS, они сами делают переадресацию при всяких сбоях в работе.

 

ServersNameArr.Add("200.20.186.76");//d.st1.ntp.br
ServersNameArr.Add("217.26.24.119");//ntp.psn.ru
ServersNameArr.Add("212.85.158.10");//ntp.tuxfamily.net
ServersNameArr.Add("91.106.198.48");//time.flygplats.net
ServersNameArr.Add("131.188.3.220");//netntp0.fau.de
ServersNameArr.Add("131.188.3.222");//netntp2.fau.de
ServersNameArr.Add("131.188.3.223");//netntp3.fau.de
ServersNameArr.Add("130.149.17.21");//ntps1-0.cs.tu-berlin.de
ServersNameArr.Add("130.149.17.8");//ntps1-1.cs.tu-berlin.de
ServersNameArr.Add("193.79.237.14");//ntp1.nl.net
ServersNameArr.Add("213.222.200.99");//ntp.certum.pl
ServersNameArr.Add("150.254.190.51");//vega.cbk.poznan.pl
ServersNameArr.Add("89.109.251.21");//ntp1.vniiftri.ru - 89.109.251.21
ServersNameArr.Add("89.109.251.22"); //ntp2.vniiftri.ru - 89.109.251.22
ServersNameArr.Add("89.109.251.23");//ntp3.vniiftri.ru - 89.109.251.23
ServersNameArr.Add("89.109.251.24");//ntp4.vniiftri.ru - 89.109.251.24
ServersNameArr.Add("89.109.251.25");//ntp21.vniiftri.ru - 89.109.251.25

Share this post


Link to post
Share on other sites
3 hours ago, rudy_b said:

Вот список серверов (просто кусок из проги) которые включены в список моей проги. Первый из списка работает всегда, за 

..

ServersNameArr.Add("200.20.186.76");//d.st1.ntp.br
ServersNameArr.Add("217.26.24.119");//ntp.psn.ru
...

Неожиданный выбор на роль первого в списке )

Share this post


Link to post
Share on other sites
4 часа назад, rudy_b сказал:

Вот список серверов (просто кусок из проги) которые включены в список моей проги.

Мощно у Вас! :wink2:  В моих прогах обычно всего 3 сервера, с перебором по кольцу при неответе и остановкой на ответившем.

Share this post


Link to post
Share on other sites

А никто не запрашивал свой "NTP Pool for vendors" ?  Я  имею в виду это : https://www.pool.ntp.org/vendors.html

 

Это не больно? Какие-то преимущества дает? Создает новые проблемы?

Смущают некоторые требования, например, запрашивать время не чаще пары раз в день и поддержка KoD. Если я вдруг подключусь с чего-то, не понимающего KoD? Или начну дергать сервер 60 раз в час, а не "4-5", то что мне будет, пожизненный эцих с гвоздами?

Вот что они сами пишут как "ground-rules":

Quote

Only use the pool.ntp.org hostnames designated to you (typically {0,1,2,3}.{vendor}.pool.ntp.org)

Do implement handling of the "KoD" response

Don't send excessively frequent queries. Reasonable query intervals are typically from once or twice a day to a 4-5 times an hour depending on the application. Really consider how often the device will need "fresh time". A standard ntpd or openntpd server works, too.

Do have your devices query the NTP servers at random times of the day. For example every 43200 seconds since boot is good, at midnight every day is bad.

Do re-query DNS for a new NTP server IP address if one of the current NTP servers stops responding, though not more often than once per hour.

Read the new SNTP RFC if you are implementing an SNTP client.

 

Upd:

А, нашел где "больно":

Quote

The suggested yearly contribution is $12 per 1000 clients (0.012 dollars per client). For example: If your company has 50,000 active devices, please consider contributing $600 a year. If the expected life of each device is 4 years, that's about 4 cents per device. (Compare with configuring and maintaining a redundant in-house ntp system).

As a minimum it'd be appreciated if your company would contribute $200-$300 per year to the pool (or add a few servers!).

Меня вполне устраивает заплатить 12 долларов в год ("$12 per 1000 clients"). Но как-то начинает жать, если нужно платить 200-300 в год ("As a minimum it'd be appreciated if your company would contribute $200-$300 per year to the pool"). 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.