Основной задачей сетевого протокола задания времени ntp является

Как настроить NTP-сервер времени

Синхронизация времени имеет решающее значение в современных компьютерных сетях, потому что такие важные задачи, как управление, обеспечение безопасности, планирование и отладка сети, требуют точно установленного времени. При этом поддержание точного времени — сложная задача, поскольку часы компьютера смещаются на несколько минут или секунд каждый день. Решить проблему синхронизации временем на устройствах помогает протокол сетевого времени (NTP — Network Time Protocol). В статье рассказываем, что такое протокол NTP, зачем нужна настройка NTP-сервера, как включить NTP и как поменять время на сервере.

Что такое NTP

Протокол сетевого времени (NTP) — это протокол, который помогает синхронизировать время устройств (компьютеров, серверов, коммутаторов, маршрутизаторов) в сети.

Внешним источником точного времени, к которому делается запрос, является NTP-сервер синхронизации времени. В то же время сам NTP-сервер получает точное всемирное координированное время (UTC — Coordinated Universal Time) от авторитетного источника времени, такого как атомные часы или GPS.

Для обозначения того, кто запрашивает время, используется термин «NTP-клиент». А источником информации о времени служит NTP-сервер.

Конечной целью NTP является синхронизация часов всех участвующих устройств с высокой точностью относительно UTC.

Почему протокол NTP важен и как он используется

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

Вот несколько примеров использования NTP:

  • Распределенные процедуры зависят от скоординированного времени, чтобы обеспечить правильную последовательность.
  • Механизмы безопасности зависят от последовательного хронометража в сети.
  • Обновления файловой системы, выполняемые на нескольких компьютерах, зависят от синхронизированного времени.
  • Система управления сетью полагается на точность времени для измерения производительности и устранения неполадок.
Читайте также:  Вывод по теме компьютерные сети

Как устроен протокол NTP

Как мы уже говорили выше, для обозначения связи между участниками синхронизации времени используют термины «NTP-сервер» и «клиент». Где клиент — это система, стремящаяся синхронизировать свои часы с сервером, а сервер — источник информации о времени. Чтобы понять, как устроен протокол сетевого времени, обратимся к его структуре.

Протокол NTP использует иерархическую структуру источников времени. Каждый уровень этой иерархии называется слоем (от англ. stratum).

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

Вторичные серверы уже получают время от первичных серверов, а также могут синхронизироваться между собой. А серверы третьего уровня синхронизируются с вторичным серверами и так далее. Всего может быть 15 слоев. Меньшее значение указывает на более высокую точность. Но все равно разница будет незначительной и составит микросек isунды.

Часто компании настраивают свой NTP-сервер в локальной сети и указывают его для других устройств. То есть этот NTP-сервер будет узнавать время у публичных серверов в интернете и потом передавать его вашим устройствам, подключенным к локальному серверу. Это обеспечит одинаковое время для всех ваших устройств в локальной сети.

Как синхронизировать время с NTP-сервером

Обеспечить бесперебойную работу программного обеспечения NTP возможно в режиме системной службы. В операционной системе Windows — это служба W32Time, для Linux — демон Ntpd.

Далее расскажем, как установить сервер времени, на каждой из этих систем.

Установка сервера времени NTP в Windows

Служба времени W32Time в операционной системе Windows синхронизирует время в домене Active Directory. Для начала нужно открыть открыть 123 udp порт для контроллера домена.

w32tm /config /syncfromflags:manual /manualpeerlist:»0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org»

w32tm /query /configuration

Готово! Синхронизация времени в домене Windows настроена.

Читайте также:  Как сделать схему компьютерной сети

NetTime: как синхронизировать время с сервером с помощью программы

С помощью утилиты NetTime можно быстро настроить синхронизацию времени с NTP серверами.

Так выглядят настройки программы:

В программе можно легко настроить список NTP-серверов, с которых вы хотите получать точное время, настроить интервал синхронизации и т.д.

Настройка времени на сервере для Linux

Ntpd (Network Time Protocol daemon) — это демон операционной системы Linux, который устанавливает и поддерживает системное время синхронно с серверами точного времени в интернете.

По шагам рассказываем, как установить и настроить ntpd в Linux.

Для установки используется менеджер пакетов sudo apt-get install ntp

Шаг 2. Редактирование файла конфигурации.

Шаг 3. Ввод серверов времени.

Укажите несколько NTP-серверов.

Шаг 5. Проверка результата.

Проверьте, запущен ли ntpd.

Заключение

Протокол NTP нужен для синхронизации времени компьютеров и других устройств в сети. Компьютер, который хочет получить точное время, запрашивает его у NTP-сервера. В свою очередь NTP-сервер работает с точными атомными часами и GPS и синхронизируют время между клиентами (устройствами, которые запрашивают время), используя эти точные часы в качестве эталонного времени.

У протокола NTP иерархическая структура. На первом уровне иерархии находятся серверы, которые синхронизируются с эталонными часами. Вторичные серверы запрашивают время у серверов первого уровня. Серверы, которые находятся на третьем уровне, синхронизируются с серверами второго уровня и т.д. При этом каждый уровень показывает точное время, а разница составляет микросекунды.

Также в статье мы рассказали, как поставить время на сервере в операционных системах Windows и Linux. В Windows это можно сделать с помощью службы времени W32Time. В качестве альтернативы можно установить утилиту NetTime и синхронизировать время. Для настройки времени в операционной системе Linux используется демон ntpd.

Источник

NTP – как это работает

В обычном режиме первый пакет отправляется клиентом. Непосредственно перед отправкой клиент записывает своё текущее время (метка времени t1) и запоминает это значение в переменной.

Читайте также:  Топология оборудования локальных вычислительных сетей

При получении пакета клиента, сервер формирует ответный пакет. В него копируется значение времени отправки из полученного запроса, и записывается текущее время сервера (метка времени t2, момент получения запроса). После завершения обработки запроса, сервер проставляет в отправляемый пакет своё текущее время (метка времени t3, момент отправки ответа) и отсылает его клиенту.

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

Смещение времени (разница между временем сервера и клиента) вычисляется как:

, а общее время передачи данных:

Как говорилось выше, передаваемые метки времени представлены 64-битными числами без знака. Для выполнения арифметических операций потребуется выделить один бит под знак – для числа остаётся 63 бита. В расчётах используются суммы и разности этих значений, поэтому необходимо выделить ещё один бит для знака, и под число остаётся 62 бита. Максимальное значение периода времени, которое можно представить таким числом – это примерно 34 года в будущем и 34 года в прошлом. Поэтому, для синхронизации время клиента должно отличаться от времени сервера не более чем на ± 34 года.

При расчётах делается предположение, что сетевая среда симметрична и время задержки, необходимое для отправки и получения данных одинаково. Однако, сетевая среда не идеальна, и это время может различаться. Поэтому при анализе рассчитанных данных используется математическая и статистическая обработка, позволяющая учесть нестабильность сети. Синхронизация с использованием протокола NTP 4-й версии позволяет достигать точности порядка 10 мс для систем, синхронизируемых через Интернет. При синхронизации в локальной сети точность достигает десятых и сотых долей миллисекунд.

Источник

Оцените статью
Adblock
detector