• symmetric – предназначен для использования серверами точного времени. Представляет собой динамически реконфигурируемую иерархию серверов точного времени. Каждый сервер точного времени синхронизирует своих соседей и синхронизируется своими соседями в соответствии с правилами выбора соседей. Активный режим используется серверами точного времени низшего уровня с заранее определенными адресами соседей, пассивный режим используется серверами точного времени, близкими к первому уровню, и взаимодействующими с соседями с заранее неизвестными адресами.
Обеспечение достоверности данных
Алгоритм функционирования сервера точного времени подразумевает несколько способов для обеспечения достоверности данных.
• Если в течение восьми последовательных интервалов опроса от соседнего сервера точного времени не было сообщений, то этот сервер считается недостижимым.
• Осуществляется проверка времени:
– если время передачи совпадает с временем предыдущего сообщения – дублированный пакет;
– если время отправки сообщения не совпадает с временем, содержащимся в пакете, сервер считает, что он получил фальшивый пакет.
• Имеется алгоритм защиты от очень старых сообщений.
• Аутентификатор состоит из ключа и шифрованной контрольной суммы, которая создается с использованием алгоритма шифрования DES.
Формат NTP-пакета
Пакет NTP включает следующие поля:
• LI (leap indicator) – в конце суток должна быть вставлена секунда для синхронизации атомных и астрономических часов;
• VN – номер версии протокола;
• mode – режим работы сервера точного времени;
• stratum – уровень сервера;
• precision – точность часов сервера;
• poll interval – интервал запросов. Используется наименьший интервал из своего сервера и сервера, отвечающего на запросы;
• synchronization distance – полный цикл обмена сообщениями до первичного источника;
• synchronization dispersion – дисперсия задержек синхронизации;
• reference clock identifier – тип источника времени;
• reference timestamp – время последнего изменения источника времени;
• originate timestamp – время соседа, когда было отправлено последнее NTP-сообщение;
• receive timestamp – местное время получения последнего NTP-сообщения;
• transmit timestamp – местное время отправки текущего сообщения;
• authenticator (96 bit) – ключ и шифрованная контрольная сумма сообщения.
Рекомендуемая конфигурация
Рекомендуемая конфигурация подразумевает наличие трех местных серверов точного времени, соединенных между собой, каждый из которых подключен к двум различным внешним серверам. Клиенты службы точного времени подключаются к каждому местному серверу точного времени.
Стандарты
Используемые для протокола NTP стандарты приведены в табл. 23.1.
Таблица 23.1. Стандарты протокола NTP
Сервер xntpd
Для UNIX-платформы, в том числе и Linux, существует сервер точного времени, носящий название xntpd. Этот сервер полностью реализует стандарт RFC 1305 и имеет расширенные возможности, которые планируется включить в следующую версию стандарта. Входит в стандартную поставку большинства дистрибутивов Linux. Установка тривиальна. Файл конфигурации – /etc/ntp.conf.
Конфигурация сервера
Поскольку варианты конфигурирования сервера зависят от класса обслуживания, сервер имеет достаточно много настроек, которые в основном содержатся в конфигурационном файле /etc/ntp.conf.
Класс
Этот класс предназначен для конфигурирования сервера точного времени в режиме symmetric.
peer