Что такое ntp в видеорегистраторе
Развитие компьютерных сетей и систем связи вызвало потребность в точной синхронизации сетевых устройств и узлов. Существует множество технологий синхронизации часов (clocks) для сетевых устройств, из которых наиболее известен сервис протокола синхронизации сетевого времени NTP (Network Time Protocol), позволяющий получать точное время в локальной сети или в публичной сети Интернет.
Синхронизация времени важна также для надёжности и безопасности сети. Все больше операций и приложений проводится через Интернет в пределах нескольких часовых поясов, поэтому очень важно, чтобы рабочие станции, работающие в разных часовых поясах, были синхронизированы.
NTP-сервер представляет собой пул общедоступных серверов, работающих по технологии NTP, при помощи которого можно обеспечить точным временем компьютеры или другие сетевые устройства.
Протокол NTP
Протокол NTP может поддерживать точность синхронизации времени через Интернет в пределах десятков миллисекунд и при идеальных условиях в локальных сетях может достигать точности менее одной миллисекунды. Несимметричные маршруты и перегрузка сети могут при этом давать ошибки в 100 мс или более.
Для достижения максимальной точности предпочтительна постоянная работа программного обеспечения NTP в режиме системной службы. В семействе операционных систем Microsoft Windows — это служба W32Time, в Linux — демон Ntpd или chronyd.
Протокол SNTP
Более простая реализация протокола — простой протокол сетевого времени SNTP (Simple Network Time Protocol), который используется во встраиваемых системах и устройствах, не требующих высокой точности, а также в пользовательских программах.
В настоящее время используется версия 4 (NTPv4), которая описана в документе RFC 5905, и она обратно совместима с версией 3, которая описана в RFC 1305.
Безопасная версия NTS
Радиопередатчики точного времени
Серверы NTP корпоративного класса принимают сигналы от источников времени GPS, а также через радиоканалы от одного из радиопередатчиков сигналов точного времени, например, WWVB, который расположен в шт. Колорадо (США), и работает с 1963 года. Они могут обеспечивать синхронизацию времени для тысяч устройств в сети заказчика.
Рисунок 3. Станция радиопередатчиков сигналов точного времени WWVB, в шт. Колорадо (США).
В таблице ниже представлен список радиопередатчиков сигналов точного времени, поддерживаемый Администрацией адресного пространства Интернет IANA (Internet Assigned Numbers Authority)
Форум по системам видеонаблюдения, безопасности, пожарным и охранным сигнализациям, контролю доступа.
Установка NTP клиента на видеорегистратор
Установка NTP клиента на видеорегистратор
Здравствуйте. Имею "старенький" видеорегистратор Sarmatt DSR-1606 Real. Заметил, что за неделю на нём время убегает вперед на 1 - 2 минуты. Уже надоело постоянно поправлять "ручками", хочу автоматизировать этот процесс. Погуглив, нашёл, что нужно настроить часовой пояс для синхронизации. У меня время идет по UTC, часовые зоны и пояса вообще отсутствуют. Видимо, не заложили такой функционал. Можно ли как-то всё же установить NTP?
По инструкции у него действительно нет такого функционала. Если бы свежую прошивку нашёл, тут же бы установил, т.к. это не единственная проблема. Частенько перезагружается, теряет полностью исправный HDD, не работает DDNS, при воспроизведении записи через меню есть рассинхрон аудио и видео. Лазив по китайским сайтам, наткнулся на прошивку FWHI3116TW_20131119_DVR_R8116B_1_8_3_7969B12.rom, но это "оригинальная" прошивка от производителя Juantech, не от фирмы Sarmatt. Модель (R8116B), ревизия (7969B12), версия прошивки (1.8.3) и время сборки одинаковые. Хотя всё равно есть риск сделать из регистратора кирпич, поэтому пользуюсь тем, что есть.
Работа многих служб ОС зависит от того, насколько точны системные часы. Для чего нужна эта точность? Затем, что неточное время на сервере повлечет за собой много неприятностей.
В качестве примера приведем следующий: если в локальной сети часы машин, которые совместно используют файлы, не будут синхронизированы, то нельзя будет установить время изменения файлов. Из-за этого возникнет конфликт версий или перезаписи данных. Без установки точного времени на сервере появятся и сложности с задачами Cron – непонятно, когда они запустятся. Невозможно будет проанализировать журналы системных событий, чтобы понять причины неисправностей и сбоев.
Для того чтобы эти неприятности не возникли, нужно наладить синхронизацию системных часов. Для этого используется протокол NTP (Network Time Protocol).
Как устроен протокол NTP
Протокол NTP основан на иерархической структуре сервера точного времени, где выделены разные уровни. К нулевому уровню, на котором NTP-серверы не работают, относятся так называемые эталонные часы.
С ними синхронизируются NTP серверы уровня 1, являющиеся источниками для серверов уровня 2. Серверы второго уровня синхронизируются с серверами первого уровня, но еще могут синхронизироваться между собой. Точно так же функционируют серверы третьего уровня и ниже. В целом, поддерживается порядка 256 уровней.
Иерархическая структура NTP является отказоустойчивой и избыточной. Так, резервные серверы берут синхронизацию на себя, когда речь идет об отказах соединения с вышестоящими серверами. Для расчета точного времени NTP берет данные ото всех источников, синхронизируясь с несколькими серверами.
Как установить и настроить NTP-сервер
Чтобы синхронизировать время, используют демон ntpd, который может быть как сервером, принимающим время из удаленных хостов, так и клиентом, раздающим время сторонним хостам. Демон ntpd зависит от указанных в файле конфигурации настроек.
Для установки сервера NTP используется стандартный менеджер пакетов $ sudo apt-get install ntp.
После установки все необходимые настройки NTP будут находиться в файле /etc/ntp.conf.
Первая строчка файла конфигурации – driftfile /var/lib/ntp/ntp.drift. В ней указан файл, в котором хранится информация о том, как часто смещается время. В этом же файле содержится и значение, которое было получено из предыдущих изменений времени. Если по каким-то причинам внешние NTP-серверы недоступны, знание берут из этого файла.
После этого нужно указать файл, сохраняющий логи синхронизации – logfile /var/log/ntp.log.
В файле конфигурации нужно указать перечень серверов NTP, с которыми нужно синхронизироваться. По умолчанию этот перечень выглядит вот так:
Эти строки означают группу серверов, которые сообщают серверу верное время. Через опцию iburst можно увеличить точность синхронизации, то есть указать то, что на сервер необходимо отправлять несколько пакетов вместо одного:
Еще можно донести информацию о нужном сервере через опцию prefer:
Ареал использования серверов NTP
Резервный сервер точного времени
NTP-сервер, по какой-либо причине отключенный от интернета, может передавать для синхронизации данные своих системных часов. Для этого в конфигурационный файл нужно добавить следующую строку:
Особые случаи использования NTP
Например, NTP могут использовать, чтобы усилить трафик в DDoS-атаках. А чтобы избежать столкновения с различными злоупотреблениями, следует ограничить доступ для внешних клиентов. Говоря об ограничениях, то по умолчанию в /etc/ntp.conf файле выставлены такие:
- restrict − 4 default kod notrap nomodify nopeer noquery
- restrict − 6 default kod notrap nomodify nopeer noquery
Для синхронизации машин из локальной сети с сервером NTP в файл конфигурации добавляется такая строчка:
А для локального хоста устанавливается неограниченный доступ к серверу NTP:
Как проверить синхронизацию
После сохранения всех изменений в файле конфигурации NTP-сервер нужно перезагрузить:
А затем выполнить команду:
На выходе получится таблица, в которой указаны следующие параметры:
- remote – адрес сервера точного времени;
- refid – вышестоящий сервер;
- st – уровень (stratum) сервера;
- t – тип пира (u- unicast, m- multicast);
- when – время последней синхронизации;
- poll – время в секундах, за которое демон NTP синхронизируется с пиром;
- reach – состояние доступности сервера;
- delay – время задержки ответа от сервера;
- offset – временная разница между сервером и сервером синхронизации;
- jitter – смещение времени на удаленном сервере.
Слева от адреса сервера могут быть указаны еще и такие символы:
- * – сервер выбран для синхронизации;
- + – сервер, пригодный для синхронизации;
- – – с сервером синхронизироваться не стоит;
- х – сервер недоступен.
Чтобы проверить, насколько сервер подходит для синхронизации, нужно использовать команду ntpdate -q.
Как установить локальные дату и время
Чтобы установить локальные дату и время на сервере, нужно использовать команду ntpdate, при этом отправив необходимый запрос к серверу NTP:
Для настройки синхронизации времени видеокамер с временем сервера TRASSIR выполните следующие настройки:
1. Необходимо задать всем камерам параметр синхронизации времени с видеосервером.
Данная операция выполняется с помощью скрипта synchtime.py.
Необходимо использовать именно данный скрипт, так как в настройках по умолчанию используется параметр "синхронизация с компьютером" и если поменять данную настройку в ручном режим через веб интерфейс камер, то через некоторое время настройки будут сброшены по умолчанию.
В разделе Автоматизация->Новый скрипт->Загрузить пример->Из файла.
В пункте "Выберите IP устройства" укажите требуемые камеры в ветке IP-устройства. Если параметр оставить пустым, то скрип примениться ко всем подключенным устройствам.
Активируйте чек-бокс "Включить скрипт".
После этого настройки применяться и скрипт можно будет удалить.
2. Настройка NTP сервера.
Далее в настройках камеры укажите IP -адрес сервера TRASSIR как источник времени.
Пример для камер Activecam\TRASSIR
Пример для камер Hikvision\Hiwatch
2.2 Для TRASSIR на W indows по требуется развернуть сервер NTP самостоятельно, с помощью средств операционной системы Windows .
Автоматическая настройка NTP сервера на Windows.
3. Подождите, пока скрипт настроит сервер NTP. Последняя команда скрипта выводит текущую конфигурацию службы времени. Если скрипт успешно настроил сервер NTP, то в разделе NtpServer опция Enabled будет выставлена в 1 . Нажмите любую клавишу, чтобы завершить работу скрипта и закрыть окно командной строки.
4. Далее в настройках камеры укажите IP адрес компьютера, на котором вы развернули NTP сервер как источник времени.
НТП (Cеть Протокол времени) и SNTP (простой протокол сетевого времени) два основных протокола для правильного функционирования Интернета. Оба протокола позволяют всем устройствам в сети, таким как компьютеры, серверы, коммутаторы, маршрутизаторы, Smart TV или любые другие устройства, подключенные к Интернету, иметь возможность иметь правильное время в вашей системе, чтобы не возникало проблем. при просмотре. онлайн или выполнить любую задачу. Сегодня в этой статье мы собираемся подробно объяснить оба временных протокола, различия между NTP и SNTP, а также то, как они настроены на разных устройствах.
Что такое NTP (сетевой протокол времени) и как он работает?
Протокол NTP - это первый протокол, который был запущен для синхронизировать часы разных компьютерных систем , NTP не только работает на компьютерах или серверах, но и является основной частью маршрутизаторов, коммутаторов, Wi-Fi точки доступа и любое сетевое оборудование, например межсетевые экраны. NTP был одним из первых интернет-протоколов, который родился в 1981 году, и он до сих пор используется для синхронизации часов различных компьютерных систем. Протокол NTP позволяет синхронизировать время с различными серверами NTP, которые развернуты по всему миру и доступны через Интернет, кроме того, протокол NTP позволяет синхронизировать время, даже если у нас очень высокая или переменная задержка. , поскольку он включает механизмы, позволяющие избежать задержек во времени из-за этой задержки.
Текущая версия NTP - это версия 4, поскольку со временем этот важный протокол был обновлен и улучшен. Протокол NTP использует шкалу времени UTC (всемирное координированное время), включая поддержку дополнительных секунд, кроме того, последняя версия NTP позволяет поддерживать синхронизацию с максимальной разницей в 10 миллисекунд через Интернет, если в локальной сети можно достичь точности до 200 микросекунд, хотя это будет зависеть от того, как настроена ваша сеть. В разных операционных системах, таких как Windows, Linux или macOS протокол NTP всегда работает для правильной синхронизации с серверами времени.
Что делать, если в моей системе нет правильного времени?
- Невозможность просмотра Интернета с помощью любого веб-браузера, в зависимости от настроенного времени, он будет постоянно указывать на ошибки в различных сертификатах SSL / TLS веб-сайтов.
- Проблемы с некоторым программным обеспечением, для работы которого требуется определенное время.
- У нас могут быть проблемы с обновлениями Windows.
В маршрутизаторах и брандмауэрах отсутствие правильного времени также означает невозможность установить VPN туннели, если используются цифровые сертификаты, потому что возможно, что время выходит за рамки даты и времени создания сертификата или его истечения, кроме того, все записи, в которых они будут отображаться, будут с неправильным временем, поэтому мы также должны учитывать это учетная запись. В случае с управляемыми NTP коммутаторами, которые у нас есть, мы не могли правильно видеть записи с их датой и временем, а также не могли запрограммировать PoE для включения и выключения точек доступа. Наконец, еще одно сетевое оборудование, которое может быть повреждено, - это контроллеры WiFi, мы не смогли увидеть, в какие часы больше трафика, потому что время настроено неправильно.
Как видите, у нас много проблем, когда дело доходит до неправильного времени в определенной компьютерной системе.
Что такое SNTP (простой протокол сетевого времени) и как он работает?
SNTP (Simple Network Time Protocol) протокол является менее сложная реализация протокола NTP , он использует тот же протокол и служит той же цели. Этот протокол широко используется во встроенном оборудовании, таком как домашние маршрутизаторы или домашние коммутаторы, где полная возможность протокола NTP не требуется. В настоящее время используется протокол SNTPv4, определенный в RFC4330.
SNTPv4 обеспечивает упрощенный доступ для серверов и клиентов, которые используют текущую и предыдущую версии NTP и сам SNTP, доступ идентичен протоколу UDP / TIME, поэтому адаптация должна быть очень простой. Этот протокол разработан для работы в конфигурации с выделенным сервером, который включает в себя встроенные радиочасы, кроме того, были улучшены и контролировались задержки, точное время можно вводить за несколько микросекунд без каких-либо проблем.
Протокол SNTP со временем развивался, улучшая его производительность, а также совместимость с различными базовыми протоколами. Например, единственное существенное изменение в SNTPv4 по сравнению с предыдущими версиями - это заголовки, адаптированные к протоколу IPv6. Некоторые дополнительные расширения также были добавлены к базовому NTP. В настоящее время, когда мы настраиваем NTP-сервер в различных NTP-клиентах, существующих во всем мире, операции и обмен информацией могут выполняться как с использованием протоколов NTP, так и SNTP, операция то же самое, так как у нас есть совместимость.
Различия между NTP и SNTP
Основное различие между NTP и SNTP заключается в том, что последний не требует какого-либо типа хранения состояния в течение очень длительных периодов времени, что делает протокол NTP. Очень важным отличием для сетевых администраторов является работа связи, позволяющая или запрещать трафик на межсетевых экранах или создавать списки контроля доступа на управляемых коммутаторах.
Протокол SNTP работает с протоколом UDP на порту 123, связь использует случайный порт UDP в качестве источника , и порт 123 UDP в качестве пункта назначения. Согласно стандарту SNTP, исходный порт может быть любым, кроме 0, для выполнения мультиплексирования, конечно, сервер правильно отвечает на исходный порт, выбранный клиентом в первом сеансе связи, чтобы не иметь проблем с NAT, который они есть роутеры. Цель этого важного изменения - позволить идентифицировать конкретного клиента, чтобы не было проблем с NAT, и предотвратить блокировку связи коммутаторами с активированной атакой Blat.
Как вы видели, протоколы NTP и SNTP являются двумя фундаментальными и очень важными протоколами для компьютерных систем, поэтому важно правильно настроить время либо в операционной системе вашего настольного компьютера, либо в другом сетевом оборудовании, которое у вас есть.
Читайте также: