Пример настройки локального NTP сервера для работы с устройствами NetPing. Пример настройки локального NTP сервера для работы с устройствами NetPing Часы с синхронизацией ntp

Доброго дня, гости и постоянные читатели . Постепенно перехожу от основ к более углубленному изучению Linux. Сегодня хочу рассмотреть работу протокола ntp , а так же настройку сервера времени на Linux (ntp server) . Итак, начнем с теории.

Протокол NTP

Network Time Protocol (NTP) - сетевой протокол для синхронизации внутренних часов компьютера с использованием сетей с переменной латентностью (читай "шириной"/качеством канала).

NTP использует для своей работы протокол UDP и порт 123.

Текущая версия протокола - NTP 4 . NTP использует иерархическую систему «часовых уровней» (их так же называют Stratum ). Уровень 0 (или Stratum 0) - это, обычно, устройства представляющие собой атомные часы (молекулярные, квантовые), GPS часы или радиочасы. Данные устройства обычно не публикуются во всемирную сеть, а подключаются напрямую к серверам времени уровня 1 посредством протокола RS-232 (на иллюстрации обозначены желтыми стрелками). Уровень 1 синхронизирован с высокоточными часами уровня 0 , обычно работают в качестве источников для серверов уровня 2 . Уровень 2 синхронизируется с одной из машин уровня 1 , а так же возможна синхронизация с серверами своего уровня. Уровень 3 работает аналогично второму. Обычно в сеть публикуются сервера уровней от второго и ниже. Протокол NTP поддерживает до 256 уровней. Так же хочется отметить, что сервера уровней 1 и2, а иногда и 3 не всегда открыты для всеобщего доступа. Иногда, чтобы синхронизироваться с ними, необходимо послать запрос по почте - администраторам домена.

Для чего делается ограничение на доступ к серверам? С переходом на каждый уровень немного возрастает погрешность относительно первичного сервера, но зато увеличивается общее число серверов и, следовательно, .

Назначение сервера NTP в локальной сети

Для чего нам может понадобиться NTP server? Например, существуют службы в операционных системах, которые могут зависеть от синхронизированного времени. Наиболее ярким примером таких служб является протокол аутентификации Kerberos. Для его работы необходимо, чтобы на компьютерах, доступ к которым осуществляется с использованием этого протокола, системное время различалось не более чем на 5 минут. Кроме того, точное время на всех компьютерах значительно облегчает анализ журналов безопасности при расследовании инцидентов в локальной сети.

Режимы работы NTP сервера/клиента

Клиент/сервер

Этот режим на сегодняшний день наиболее часто используется в сети Интернет. Схема работы – классическая. Клиент посылает запрос, на который в течение некоторого времени сервер присылает ответ. Настройка клиента производится с помощью директивы server в конфигурационном файле, где указывается DNS имя сервера времени.

Симметричный активный/пассивный режим

Этот режим используется в том случае, если производится синхронизация времени между большим количеством равноправных машин. Помимо того, что каждая машина синхронизируется с внешним источником, она также осуществляет синхронизацию со своими соседями (peer), выступая для них в качестве клиента и сервера времени. Поэтому даже если машина «потеряет» внешний источник, она все еще сможет получить точное время от своих соседей. Соседи могут работать в двух режимах – активном и пассивном. Работая в активном режиме, машина сама передает свое время всем машинам-соседям, перечисленным в секции peers конфигурационного файла ntp.conf. Если же в этой секции соседи не указаны, то считается, что машина работает в пассивном режиме. Для того чтобы злоумышленник не смог скомпрометировать другие машины, представившись в качестве активного источника, необходимо использовать аутентификацию.

Режим Broadcast

Этот режим рекомендуется использовать в тех случаях, когда малое количество серверов обслуживает большое количество клиентов. Работая в этом режиме, сервер периодически рассылает пакеты, используя широковещательный адрес подсети. Клиент, настроенный на синхронизацию таким способом, получает широковещательный пакет сервера и производит синхронизацию с сервером. Особенностью этого режима является то, что время доставляется в рамках одной подсети (ограничение broadcast-пакетов). Кроме того, для защиты от злоумышленников необходимо использовать аутентификацию.

Режим Multicast

Данный режим во многом похож на broadcast. Отличие заключается в том, что для доставки пакетов используются multicast-адреса сетей класса D адресного пространства IP-адресов. Для клиентов и серверов задается адрес multicast-группы, которую они используют для синхронизации времени. Это делает возможным синхронизацию групп машин, расположенных в различных подсетях, при условии, что соединяющие их маршрутизаторы поддерживают протокол IGMP и настроены на передачу группового трафика.

Режим Manycast

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

Для передачи образцов времени клиенты и серверы, работающие в manycast-режиме, используют адреса multicast-групп (сети класса D). Клиенты и серверы, использующие один и тот же адрес, формируют одну ассоциацию. Количество ассоциаций определяется количеством используемых multicast-адресов.

Время в Linux

Кратко расскажу, какое время существует в Linux и как его задать. В Linux, как и в другой ОС, существует 2 времени. Первые - аппаратные , иногда называемые Real Time Clock , сокращенно (RTC ) (они же - часы BIOS) обычно они связаны с колеблющимся кварцевым кристаллом, имеющим точность хода до нескольких секунд в день. Точность зависит от различных колебаний, например, окружающей температуры. Вторые часы - внутренние программные часы , которые идут непрерывно, в том числе и при перерывах в работе системы. Они подвержены отклонениям, связанным с большой системной нагрузкой и задержкой прерываний. Однако система обычно считывает показания аппаратных часов при загрузке и потом использует системные часы.

Дата и время операционной системы устанавливается при загрузке на основании значения аппаратных часов , а так же настроек часового пояса . Настройки часового пояса берутся из файла /etc/localtime . Данный файл - есть ссылка (но чаще - копия) одного из файлов в структуре каталога /usr/share/zoneinfo/ .

Аппаратные часы Linux могут хранить время в формате UTC (аналог GMT), либо текущее территориальное время. Общая рекомендация в том, какое время устанавливать (?) следующая: если на компьютере установлено несколько ОС и одна из них - Windows, то необходимо использовать текущее время (т.к. Windows берет время из BIOS/CMOS и считает его локальным). Если используются только операционные системы UNIX семейства, то желательно хранить время в BIOS в UTC формате.

После загрузки операционной системы, часы операционной системы и BIOS полностью независимы. Ядро системы раз в 11 секунд синхронизирует системные часы с аппаратными.

Через некоторое время между аппаратными и программными часами может быть разница в несколько секунд. Какие же часы содержат правильное время? Ни те, ни другие, пока мы не настроим синхронизацию времени.

Примечание:

Ядро Linux"а всегда хранит и вычисляет время, как число секунд прошедших с полночи 1-го января 1970 года , в независимости от того, установлены ваши часы на локальное или всемирное время. Преобразование в локальное время производится в процессе запроса.

Поскольку количество секунд с 1-го января 1970 года всемирного времени сохраняется как знаковое 32-битное целое (это справедливо для Linux/Intel систем), ваши часы перестанут работать где-то в 2038 году. Linux не имеет проблемы 2000-го года, но имеет проблему 2038 года. К счастью, к тому времени все linux"ы будут запущены на 64-х разрядных системах. 64-х битное целое будет содержать наши часы приблизительно до 292271-миллионного года.

NTP Server Linux

Введение

Существует масса реализаций для синхронизации времени для ОС Linux. Наиболее известными являются Xntpd (NTP версия 3), ntpd (NTP версия 4), Crony и ClockSpeed. В нашем примере мы будем использовать ntp-сервер ntpd.

Демон ntpd является одновременно и сервером времени и клиентом, в зависимости от настроек конфигурационного файла /etc/ntpd.conf (иногда /etc/ntp.conf), демон может и "принимать" время с уделенных серверов и "раздавать" другим хостам время.

Общая схема синхронизации времени в локальной сети следующая: необходимо иметь 1 или 2 сервера, имеющие доступ в глобальную сеть, которые будут получать время из интернет. Все компьютеры локальной сети синхронизировать с указанными серверами, получающими время из интернет.

Установка ntpd

Собственно, установка демона сводится к установке следующих пакетов: ntp (пакет включающий самого демона), ntpdate (утилита для ручной синхронизации времени - устарела), ntp-doc (документация по пакету), в некоторых дистрибутивах нужно будет установить так же ntp-utils (утилиты для диагностики), в некоторых они включены в пакет ntp. Как производить установку программ в Linux , я описывал в . После установки пакета, в большинстве дистрибутивов, демон будет уже сконфигурирован как как ntp-клиент (например в Debian было так). Соответственно, автоматически были созданы основные конфигурационные файлы: /etc/ntp.conf и /var/lib/ntp/ntp.drift и автоматом запущен демон.

Перед настройкой демона на синхронизацию с внешним миром я бы посоветовал установить текущую системную дату на значение, максимально приближенное к реальному времени. Установка даты в Linux производится командой: date MMDDhhmmCCYY.ss, где MM - месяц, DD - день месяца, hh - часы, mm - минуты, CCYY - 4 цифры года, ss - секунды. При этом, значения CCYY.ss указывать не обязательно.

Как видно, указанная команда установит текущие дату и время на 27 декабря 2010года, 20:06:30. Команда date без параметров, выводить текущее системное время. У данной команды есть куча параметров, с которыми можно ознакомиться в man date.

Так же, необходимо правильно настроить аппаратные часы и часовой пояс. Как говорилось выше, часовой пояс настраивается копированием необходимого файла зоны из каталога /usr/share/zoneinfo/ в файл /etc/localtime :

Ntp-server:~# cp /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Аппаратные часы я настроил на UTC :

# cat /etc/sysconfig/clock | grep UTC # UTC=true indicates that the clock is set to UTC; UTC=true ntp2-server:~# cat /etc/default/rcS | grep UTC UTC=yes

В первом примере указан конфигурационный файл, определяющий использование UTC для RH, второй - для Deb-дистрибутивов.

Кроме установки настроек на использование времени в формате UTC, необходимо задать аппаратное время . (в большинстве случаев в этом нет необходимости, потому что заданное системное время неизбежно синхронизируется с аппаратным, силами ядра). Но все же, если у вас есть желание это сделать... Команда hwclock читает и устанавливает аппаратные часы на основании переданных ему параметров. Доступные параметры описаны в странице руководства команды. Вот несколько примеров использования hwclock:

Ntp-server# hwclock # считывает время из аппаратных часов ntp-server# hwclock --systohc --utc # устанавливает время аппаратных часов равным # UTC на основании системного времени ntp-server# hwclock --systohc # устанавливает время аппаратных часов # равным местному на основании системного времени ntp-server# hwclock --set --date "22 Mar 2002 13:17" # устанавливает время аппаратных часов # равным указанной строке

Другим вариантом изменения времени в аппаратных часах - это доступ в BIOS при загрузке системы. Поскольку время ОС независимо от аппаратных часов, любые изменения в BIOS будут учтены при следующей загрузке.

Теперь, когда у нас все подготовлено и установлено, приступим к настройке .

Управление демоном ntpd

Управление демоном ntpd ничем не отличается от управления любыми другими демонами. Запуск или перезапуск службы ntpd:

#/etc/init.d/ntp start #/etc/init.d/ntp restart

Остановка:

#/etc/init.d/ntp stop

#/bin/kill `cat /var/run/ntpd.pid`

Демон имеет следующие параметры запуска:

P - PID-файл,
-g - разрешить переход на большой скачек времени
-c - конфиг файл
-q - принудительная ручная синхронизация

Настройка сервера ntpd

Первым делом, посоветую изменить параметры запуска демона в следующем конфигурационном файле:

Ntp-server:~# cat /etc/default/ntp NTPD_OPTS="-g"

# cat /etc/sysconfig/ntpd # Parameters for NTP daemon. # See ntpd(8) for more details. .... # Specifies additional parameters for ntpd. NTPD_ARGS="-g"

Данный параметр позволит синхронизировать часы, даже если образовалась очень большая разница во времени.

Итак, как я уже говорил, информация о конфигурации демона ntpd лежит в файле /etc/ntp.conf. Синтаксис файла стандартен, как и во многих других конфигах: пустые строки и строки, начинающиеся с символа "#" игнорируются. Вот простой пример:

Ntp-server:~# cat /etc/ntp.conf server ntplocal.example.com prefer server timeserver.example.org server ntp2a.example.net driftfile /var/db/ntp.drift

Параметр server задает, какие серверы будут использоваться для синхронизации, по одному в каждой строке. Если сервер задан с аргументом prefer , как ntplocal.example.com , то этому серверу отдается предпочтение перед остальными. Ответ от предпочтительного сервера будет отброшен, если он значительно отличается от ответов других серверов, в противном случае он будет использоваться безотносительно к другим ответам. Аргумент prefer обычно используется для серверов NTP, о которых известно, что они очень точны, такими, на которых используется специальное оборудование точного времени.

Параметр driftfile задает файл, который используется для хранения смещения частоты системных часов. На сколько я понял, данный файл постоянно хранит какое-то значение, которое формируется на основании анализа прошедших корректировок времени и если внешние источники времени становятся недоступны, то корректировка времени происходит по значению из файла drift. Он не должен изменяться никакими другими процессами. И перед указанием данного файла в конфигурации - файл должен быть создан.

По умолчанию сервер NTP будет доступен всем хостам в Интернет. Параметр restrict в файле /etc/ntp.conf позволяет вам контролировать, какие машины могут обращаться к вашему серверу. Если вы хотите запретить всем машинам обращаться к вашему серверу NTP , добавьте следующую строку в файл /etc/ntp.conf :

restrict default ignore

Если вы хотите разрешить синхронизировать свои часы с вашим сервером только машинам в вашей сети , но запретить им настраивать сервер или быть равноправными участниками синхронизации времени, то вместо указанной добавьте строчку:

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

где 192.168.1.0 является IP адресом вашей сети, а 255.255.255.0 её сетевой маской. /etc/ntp.conf может содержать несколько директив restrict.

Для корректной и более точной работы демона, желательно выбрать сервера уровня - от stratum 2 (можно конечно stratum1, но придется убить время на поиски такого сервера) и из выбранных stratum 2 те, до которых минимальное "расстояние". Обычно такие сервера могут предоставляться вашим провайдером. Количество выбираемых серверов желательно - более 2-х 3-х, чем больше тем лучше, но в разумных пределах. Если Вам лень выбирать лучшие сервера, то можно взять список открытых серверов второго уровня отсюда: http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers.

Выбираем список эталонных NTP серверов

Идем по указанному адресу (http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers) и подбираем список начальных серверов. Из данного списка выбираем удовлетворяющий нашим требованиям серверы, с помощью анализа вывода команды ntpdate . При выполнении команды, применяется следующий синтаксис:

ntpdate параметры серверы_через_пробел

Для того чтобы наш запрос не вносил изменения в систему, необходимо использовать параметр -q, который указывает на использование запроса без внесения изменений. Так же, возможно использовать ключ -d, указывающий, что команда будет выполняться в отладочном режиме, с выводом дополнительных сведений, без внесения реальных изменений (при данном ключе выводится куча другого мусора:), который нам в данный момент не нужен). Остальные параметры можно посмотреть в man 8 ntpdate . Из указанной ссылки я выбрал все сервера Open Access, расположенные в России (RU) + тот, который предоставил провайдер и запустил команду, получилось примерно следующее:

Ntp-server:~# ntpdate -q ntp2.ntp-servers.net ntp1.vniiftri.ru ntp2.vniiftri.ru ntp4.vniiftri.ru ntp0.ntp-servers.net ntp1.ntp-servers.net ntp3.vniiftri.ru ntp.corbina.net server 88.147.255.85, stratum 1, offset 0.006494, delay 0.09918 server 62.117.76.142, stratum 1, offset 0.002552, delay 0.06920 server 62.117.76.141, stratum 1, offset 0.003147, delay 0.06918 server 62.117.76.140, stratum 1, offset 0.004823, delay 0.07350 server 88.147.254.228, stratum 1, offset -0.002355, delay 0.12030 server 88.147.254.229, stratum 1, offset -0.000922, delay 0.10577 server 62.117.76.138, stratum 1, offset 0.005331, delay 0.07401 server 195.14.40.141, stratum 2, offset 0.002846, delay 0.07188 13 Jan 19:14:09 ntpdate: adjust time server 62.117.76.141 offset 0.003147 sec

В примере наши сервера удачно выдали уровень stratum1, что не может не радовать (кроме сервера провайдера ), offset - это расхождение во времени с этим сервером в секундах, delay - задержка синхронизации в секундах. Обычно, бО льшая точность получается при использовании серверов, которые имеют низкую задержку передачи пакетов по сети. Для выявления этого, возможно воспользоваться . Соответственно, выбрав сначала те, у которых время ответа меньше, а из них - те, до которых меньше хопов. Я же, чтобы не терять время, воспользуюсь всем указанными серверами и впишу их в конфигурационный файл. Итого, зная все вышеперечисленное, опишу свой получившийся файл /etc/ntp.conf :

Ntp-server:~# cat /etc/ntp.conf # Сервера локальной сети (закомментированы, не используются - в сети один сервер) #server 192.168.0.2 #server 192.168.0.5 # интернет-сервера server ntp2.ntp-servers.net server ntp1.vniiftri.ru server ntp2.vniiftri.ru server ntp4.vniiftri.ru server ntp0.ntp-servers.net server ntp1.ntp-servers.net server ntp3.vniiftri.ru server ntp.corbina.net # Файлы сервера driftfile /var/lib/ntp/ntp.drift logfile /var/log/ntpstats # ограничение доступа к серверу: # по умолчанию игнорируем все restrict default ignore # локалхост без параметров - значит разрешено все. Параметры идут только на запреты. restrict 127.0.0.1 # далее описываются сервера с которыми мы синхронизируемся в локальной сети. # Разрешаем им все кроме трапов и запросов к нам restrict 192.168.0.2 noquery notrap restrict 192.168.0.5 noquery notrap # для локалки так же разрешаем все, кроме трапов и модификаций restrict 192.168.0.1 mask 255.255.255.0 nomodify notrap nopeer # разрешаем внешним источникам времени доступ: restrict ntp2.ntp-servers.net restrict ntp1.vniiftri.ru restrict ntp2.vniiftri.ru restrict ntp4.vniiftri.ru restrict ntp0.ntp-servers.net restrict ntp1.ntp-servers.net restrict ntp3.vniiftri.ru restrict ntp.corbina.net # а этот хак, который выставляет уровень доверия серверу (strata) самому себе равный 3 # в двух словах чем выше уровень-тем меньше число. 0 - это атомные часы, # 1 - это синхронизированные с ними, 2 - с первым, и так далее. server 127.127.1.1 fudge 127.127.1.1 stratum 3

Для более углубленного понимания и настройки сервера, опишу некоторые параметры конфигурации ntpd, о которых не упоминал::

  • enable/disable auth/monitor/pll/pps/stats - включить/выключить режим работы :
    • auth - с неупомянутыми соседями общаться только в режиме аутентификации;
    • monitor - разрешить мониторинг запросов;
    • pll - разрешить настраивать частоту местных часов по NTP;
    • stats - разрешить сбор статистики;
  • statistics loopstats - при каждой модификации локальных часов записывает строчку в файл loopstats ;
  • statistics peerstats - каждое общение с соседом записывается в журнал, хранящийся в файле peerstats ;
  • statistics clockstats - каждое сообщение от драйвера локальных часов записывается в журнал, хранящийся в файле clockstats ;
  • statsdir {имя_каталого_со_статистикой} - задает имя каталога, в котором будут находится файлы со статистикой сервера;
  • filegen - определяет алгоритм генерации имен файлов, которые состоят из:
    • префикс - постоянная часть имени файла, задается либо при компиляции, либо специальными командами конфигурации;
    • имя файла - добавляется к префиксу без косой черты, две точки запрещены, может быть изменена ключем file;
    • суффикс - генерируется в зависимости от typename;
  • restrict numeric-address - задает ограничение доступа: пакеты сортируются и маскам, берется исходный адрес и последовательно сравнивается, от последнего удачного сравнения берется флаг доступа:
    • нет флагов - дать доступ;
    • ignore - игнорировать все пакеты;
    • noquery - игнорировать пакеты NTP 6 и 7 (запрос и модификация состояния);
    • nomodify - игнорировать пакеты NTP 6 и 7 (модификация состояния);
    • limited - обслуживать только ограниченное количество клиентов из данной сети;
    • nopeer - обслуживать хост, но не синхронизироваться с ним;
  • clientlimit limit - для флага limited определяет максимальное количество обслуживаемых клиентов (по дефолту 3);

Итого, мы получили ntpd-server , который синхронизируется с внешним миром, позволяет получать время для клиентов из локальной сети 192.168.0.1 с маской 255.255.255.0, а так же может синхронизироваться с локальным сервером (если раскомментировать несколько строк). Нам осталось настроить клиентов и узнать, как наблюдать за нашим сервером.

Наблюдение за сервером ntpd и за синхронизацией

Когда у вас все настроено. NTP будет держать время в синхронизированном состоянии. Этот процесс можно наблюдать при помощи команды NTP Query (ntpq):

Ntp-server:~# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== -n3.time1.d6.hsd .PPS. 1 u 34 64 177 70.162 2.375 8.618 +ntp1.vniiftri.r .PPS. 1 u 33 64 177 43.479 -0.020 10.198 *ntp2.vniiftri.r .PPS. 1 u 6 64 177 43.616 -0.192 0.688 +ntp4.vniiftri.r .PPS. 1 u 4 64 177 43.623 0.440 0.546 -n1.time1.d6.hsd .PPS. 1 u 53 64 77 92.865 -11.358 38.346 -ns1.hsdn.org .GPS. 1 u 40 64 177 78.057 -3.292 35.083 -ntp3.vniiftri.r .PPS. 1 u 44 64 77 47.667 2.292 2.611 -scylla-l0.msk.c 192.43.244.18 2 u 62 64 77 41.565 -1.564 28.914

Данная команда с ключом -p выводит на стандартный вывод список источников времени с их характеристиками (остальные параметры команды в man ntpq). Значение каждой колонки следующее:

Имя удаленного NTP-сервера. Если указать ключ -n, вы получите IP-адреса серверов вместо имён.

Указывает, откуда каждый сервер получает время в данный момент. Это может быть имя хоста или что-то вроде.GPS., указывающее на источник глобальной системы позиционирования (Global Positioning System).

Stratum (уровень) это число от 1 до 16, указывающее на точность сервера. Единица означает максимальную точность, 16 -- сервер недоступен. Ваш уровень будет равен уровню наименее точного удаленного сервера плюс 1.

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

Восьмеричное представление массива из 8 бит, отражающего результаты последних восьми попыток соединения с сервером. Бит выставлен, если удаленный сервер ответил.

Количество времени (в секундах) необходимого для получения ответа на запрос "который час? ".

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

Дисперсия (Jitter) -- это мера статистических отклонений от значения смещения (поле offset) по нескольким успешным парам запрос-ответ. Меньшее значение дисперсии предпочтительнее, поскольку позволяет точнее синхронизировать время.

Значение знаков перед именами серверов

x - фальшивый источник по алгоритму пересечения;
. - исключён из списка кандидатов из-за большого расстояния;
- - удалено из списка кандидатов алгоритмом кластеризации;
+ - входит в конечный список кандидатов;
# - выбран для синхронизации, но есть 6 лучших кандидатов;
* - выбран для синхронизации;
o - выбран для синхронизации, но используется PPS;
пробел - слишком большой уровень, цикл или явная ошибка;

Служба ntpd "умная" и сама отсеивает источники времени слишком выбивающиеся за рамки разумного. Через некоторое время после запуска ntpd выберет наиболее достоверные источники данных и будет синхронизироваться с ними. Представленный нами список эталонных NTP серверов регулярно пересматривается службой.

Проверить возможность синхронизации локально на сервере возможно командой:

Ntp-server:~# ntpdate -q localhost server 127.0.0.1, stratum 2, offset -0.000053, delay 0.02573 server::1, stratum 2, offset -0.000048, delay 0.02571 14 Jan 14:49:57 ntpdate: adjust time server::1 offset -0.000048 sec

Из вывода команды видно, что наш сервер уже стал уровня stratum 2. Для достижения данного уровня, необходимо некоторое время. Возможно, в первые 10-15 минут уровень сервера будет выше.

О корректной работе сервера ntp можно так же судить по логам демона ntpd:

Ntp-server:~# cat /var/log/ntpstats/ntp 13 Jan 20:13:16 ntpd: Listening on interface #5 eth0, fe80::a00:27ff:fec1:8059#123 Enabled 13 Jan 20:13:16 ntpd: Listening on interface #6 eth0, 192.168.0.8#123 Enabled 14 Jan 14:31:00 ntpd: synchronized to 62.117.76.142, stratum 1 14 Jan 14:31:10 ntpd: time reset +10.291312 s 14 Jan 14:31:10 ntpd: kernel time sync status change 0001 14 Jan 14:34:31 ntpd: synchronized to 88.147.255.85, stratum 1 14 Jan 14:36:04 ntpd: synchronized to 62.117.76.141, stratum 1 14 Jan 15:04:36 ntpd: synchronized to 62.117.76.142, stratum 1 14 Jan 15:10:58 ntpd: synchronized to 62.117.76.140, stratum 1 14 Jan 15:17:54 ntpd: no servers reachable 14 Jan 15:31:49 ntpd: synchronized to 62.117.76.140, stratum 1 14 Jan 15:32:14 ntpd: time reset +13.139105 s

Настройка netfilter (iptables) для NTP сервера

Настроив работу сервера, неплохо было бы его защитить. Мы знаем, что сервер работает на 123/udp порту, при этом запросы так же отправляются с порта 123/udp. Ознакомившись со статьей, и ознакомившись с практическими , можно создать правила фильтрации сетевого трафика:

Ntp ~ # iptables-save # типовые правила iptables для DNS *filter:INPUT DROP :FORWARD DROP :OUTPUT DROP -A INPUT -i lo -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -m conntrack --ctstate INVALID -j DROP # разрешить доступ локальной сети к NTP серверу: -A INPUT -s 192.168.1.1/24 -d 192.168.1.1/32 -p udp -m udp --dport 123 -m conntrack --ctstate NEW -j ACCEPT -A OUTPUT -o lo -j ACCEPT -A OUTPUT -p icmp -j ACCEPT -A OUTPUT -p udp -m udp --sport 32768:61000 -j ACCEPT -A OUTPUT -p tcp -m tcp --sport 32768:61000 -j ACCEPT -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT # разрешить доступ NTP серверу совершать исходящие запросы -A OUTPUT -p udp -m udp --sport 123 --dport 123 -m conntrack --ctstate NEW -j ACCEPT COMMIT

Это типовой пример! Для задания правил iptables под Ваши задачи и конфигурацию сети, необходимо понимать принцип работы netfilter в Linux, почитав вышеуказанные статьи.

Настройка клиентских машин

Для синхронизации времени на UNIX-машинах локальной сети целесообразно использовать утилиту ntpdate, запуская ее при помощи несколько раз в сутки, например каждый час. Для этого, в необходимо добавить следующую строку:

0 * * * * /usr/sbin/ntpdate -s

Ключ -s направляет вывод команды . Если на клиентских машинах есть пару лишних мегабайт оперативки, то можно запустить демон ntpd, как и на сервере со следующим конфигом:

Server restrict default ignore restrict noquery notrap restrict 127.0.0.1 nomodify notrap

Думаю, в данном конфиге все понятно: источник времени (server) - локальный ntpd-сервер, доступ всем запретить, разрешить только локальному ntpd-серверу.

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

Для настройки NTP клиента Windows , необходимо выполнить в консоли следующие команды:

C:\>net time /setsntp: The command completed successfully. C:\>net stop w32time The Windows Time service is stopping. The Windows Time service was stopped successfully. C:\>net start w32time The Windows Time service is starting. The Windows Time service was started successfully. C:\>net time /querysntp The current SNTP value is: The command completed successfully.

Заключение

Ну вроде все! Объем статьи получился громадным... Даже сам не ожидал. Подведу маленький итог изложенному. В данной статье нам, надеюсь, стало понятно что есть и как работает NTP-сервер. Научились настраивать сервер и клиентов на UNIX и Windows машинах. В нескольких словах, структура синхронизации времени в локальной сети следующая: Имеется 1,2 или более серверов точного времени в локальной сети, они синхронизируют свое время с внешними источниками в глобальной сети. Настройки сервера и клиентов основаны на файлах /etc/ntp.conf (основной конфигурационный файл демона ntpd), /etc/localtime (файл текущего часового пояса), а так же /etc/sysconfig/ntp (для RH) и /etc/default/ntp (для Deb) - файлы параметров запуска демона. Для локального ntp-сервера в конфигурационном файле указываются внешние сервера для получения времени и разрешается доступ для этих серверов параметром restrict, а так же для компьютеров локальной сети, для клиентов указывается источник времени - локальные сервера в локальной сети, а так же запрещается доступ для всех, кроме источника времени в локальной сети. Все. Всем спасибо за внимание! Буду рад комментариям!

  • (архив статьи) описано, как подключить GPS к серверу для организации своего сервера точного времени уровня Stratum1.
  • описано, как настроить авторизацию на ntp-сервере.

Добрый день уважаемые читатели и гости блога сайт, как много люди говорят о времени, что оно быстро или медленно бежит, и все понимают, что оно бесценно и важно. Так и в инфраструктуре Active Directory, она является одним из важнейших факторов, правильного функционирования домена. В домене все друг другу доверяют, и один раз авторизовавшись и получив все тикеты от Kerberos , пользователь ходит куда угодно, ограничиваясь лишь своими доступными правами. Так вот если у вас не будет точного времени на ваших рабочих станциях к контроллеру домена, то можете считать, что у вас начинаются серьезные проблемы, о которых мы поговорим ниже и рассмотрим как их устранить с помощью настройки NTP сервера в Windows .

Синхронизация времени в Active Directory

Среди компьютеров, участвующих в Active Directory работает следующая схема синхронизация времени.

  • Контроллер корневого домена в лесу AD, которому принадлежит FSMО-роль эмулятора PDC (назовем его корневым PDC), является источником времени для всех остальных контроллеров этого домена.
  • Контроллеры дочерних доменов синхронизируют время с вышестоящих по топологии AD контроллеров домена.
  • Рядовые члены домена (сервера и рабочие станции) синхронизируют свое время с ближайшим к ним доступным контроллером домена, соблюдая топологию AD.

Корневой PDC может синхронизировать свое время как со внешним источником, так и с самим собой, последнее задано конфигурацией по умолчанию и является абсурдом, о чем периодически намекают ошибки в системном журнале.

Синхронизация клиентов корневого PDC может осуществятся как с его внутренних часов, так и с внешнего источника. В первом случае сервер времени корневого PDC объявляет себя как «надежный» (reliable).

Далее я приведу оптимальную с моей точки зрения конфигурацию сервера времени корневого PDC, при которой сам корневой PDC периодически синхронизирует свое время от достоверного источника в интернете, а время обращающихся к нему клиентов синхронизирует со своими внутренними часами.

Вводим netdom query fsmo. В моем примере, роль PDC и NTP сервера, принадлежит контроллеру dc7

Конфигурация NTP-сервера на корневом PDC

Конфигурирование сервера времени в Windows (NTP-сервера) может осуществляться как с помощью утилиты командной строки w32tm , так и через реестр. Где возможно, я приведу оба варианта. Но в начале посмотрите полностью ваши настройки на компьютере, делается это командой:

w32tm /query /configuration

EventLogFlags: 2 (Локально)
AnnounceFlags: 10 (Локально)
TimeJumpAuditOffset: 28800 (Локально)
MinPollInterval: 6 (Локально)
MaxPollInterval: 10 (Локально)
MaxNegPhaseCorrection: 172800 (Локально)
MaxPosPhaseCorrection: 172800 (Локально)
MaxAllowedPhaseOffset: 300 (Локально)

FrequencyCorrectRate: 4 (Локально)
PollAdjustFactor: 5 (Локально)
LargePhaseOffset: 50000000 (Локально)
SpikeWatchPeriod: 900 (Локально)
LocalClockDispersion: 10 (Локально)
HoldPeriod: 5 (Локально)
PhaseCorrectRate: 7 (Локально)
UpdateInterval: 100 (Локально)

NtpClient (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
CrossSiteSyncFlags: 2 (Локально)
ResolvePeerBackoffMinutes: 15 (Локально)
ResolvePeerBackoffMaxTimes: 7 (Локально)
CompatibilityFlags: 2147483648 (Локально)
EventLogFlags: 1 (Локально)
LargeSampleSkew: 3 (Локально)
SpecialPollInterval: 3600 (Локально)
Type: NT5DS (Локально)

NtpServer (Локально)
DllName: C:\Windows\system32\w32time.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 0 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)

VMICTimeProvider (Локально)
DllName: C:\Windows\System32\vmictimeprovider.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)

Включение синхронизации внутренних часов с внешним источником


Включение NTP-сервера

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


Задание списка внешних источников для синхронизации


Флаг 0×8 на конце означает, что синхронизация должна происходить в режиме клиента NTP, через предложенные этим сервером интервалы времени. Для того, чтобы задать свой интервал синхронизации, необходимо использовать флаг 0×1.

Задание интервала синхронизации с внешним источником

Время в секундах между опросами источника синхронизации, по умолчанию 900с = 15мин. Работает только для источников, помеченных флагом 0×1.


  • "SpecialPollInterval"=dword:00000384

Установка минимальной положительной и отрицательной коррекции

Максимальная положительная и отрицательная коррекция времени (разница между внутренними часами и источником синхронизации) в секундах, при превышении которой синхронизация не происходит. Рекомендую значение 0xFFFFFFFF, при котором коррекция сможет производиться всегда.


"MaxPosPhaseCorrection"=dword:FFFFFFFF
"MaxNegPhaseCorrection"=dword:FFFFFFFF

Все необходимое одной строкой

w32tm.exe /config /manualpeerlist:"time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 pool.ntp.org,0x8" /syncfromflags:manual /reliable:yes /update

Полезные команды

  • Применение внесенных в конфигурацию службы времени изменений
    w32tm /config /update
  • Принудительная синхронизация от источника
    w32tm /resync /rediscover
  • Отображение состояния синхронизации контроллеров домена в домене
    w32tm /monitor
  • Отображение текущих источников синхронизации и их статуса
    w32tm /query /peers

Настройка NTP сервера и клиента групповой политикой

Раз уж у нас с вами домен Active Directory, то глупо не использовать групповые политики, для массовой настройки серверов и рабочих станций, я покажу как настроить ваш NTP сервер в windows и клиента. Открываем оснастку "Редактор групповых политик". Перед тем как настроить наш NTP сервер в Windows, нам необходимо создать WMI фильтр, который будет применять политику, только к серверу мастера PDC.

Вводим имя запроса, пространство имен, будет иметь значение "root\CIMv2" и запрос "Select * from Win32_ComputerSystem where DomainRole = 5". Сохраняем его.

Затем вы создаете политику на контейнере Domain Controllers.

В самом низу политики применяете ваш созданный WMI фильтр.

Переходим в ветку: Конфигурация компьютера > Политики > Административные шаблоны > Система > Служба времени Windows > Поставщики времени.

Тут открываем политику "Настроить NTP-клиент Windows". Задаем параметры

  • NtpServer: 0.ru.pool.ntp.org.0x1, 1.ru.pool.ntp.org.0x1, 2.ru.pool.ntp.org.0x1, 3.ru.pool.ntp.org.0x1
  • Type: NTP
  • CrossSiteSyncFlags: 2. Двойка означает, если этот параметр равен 2 (Все), можно использовать любого участника синхронизации. Это значение игнорируется, если не задано значение NT5DS. Значение по умолчанию: 2 (десятичное) (0x02 (шестнадцатеричное))
  • ResolvePeerBackoffMinutes: 15. Это значение, выраженное в минутах, определяет интервал ожидания службы W32time перед попыткой разрешения DNS-имени в случае неудачи. Значение по умолчанию: 15 минут
  • Resolve Peer BAckoffMaxTimes: 7. Это значение определяет число попыток разрешения DNS-имени, предпринимаемых службой W32time перед перезапуском процесса обнаружения. При каждом неудачном разрешении DNS-имени интервал ожидания перед следующей попыткой удваивается. Значение по умолчанию: семь попыток.
  • SpecilalPoolInterval: 3600. Это значение параметра NTP-клиента, выраженное в секундах, определяет частоту опроса настроенного вручную источника времени, который использует особый интервал опроса. Если для параметра NTPServer установлен флаг SpecialInterval, клиент использует значение, заданное как SpecialPollInterval, вместо значений MinPollInterval и MaxPollInterval, чтобы определить частоту опроса источника времени. Значение по умолчанию: 3600 секунд (1 час).
  • EventLogFlags: 0

Делаем отдельную групповую политику для клиентских рабочих машин, вот с такими параметрами.

  • NtpServer: Адрес вашего контроллера домена с ролью PDC.
  • Type: NT5DS
  • CrossSiteSyncFlags: 2
  • ResolvePeerBackoffMinutes: 15
  • Resolve Peer BAckoffMaxTimes: 7
  • SpecilalPoolInterval: 3600
  • EventLogFlags: 0

Настройка NTP сервера в Windows

Начиная с Windows 2000 все операционные системы Windows включают в себя службу времени W32Time . Эта служба предназначена для синхронизации времени в пределах организации. W32Time отвечает за работу как клиентской, так и серверной части службы времени, причем один и тот же компьютер может быть одновременно и клиентом и сервером NTP (Network Time Protocol).

По умолчанию служба времени в Windows сконфигурирована следующим образом:

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

Такая схема работает в большинстве случаев и не требует вмешательства. Однако структура сервиса времени в Windows может и не следовать доменной иерархии, и надежным источником времени можно назначить любой компьютер. В качестве примера я опишу настройку NTP-сервера в Windows Server 2008 R2, хотя со времен Windows 2000 процедура не особо изменилась.

Запуск NTP сервера

Сразу отмечу, что служба времени в Windows Server (начиная с 2000 и заканчивая 2012) не имеет графического интерфейса и настраивается либо из командной строки, либо путем прямой правки системного реестра. Лично мне ближе второй способ, поэтому идем в реестр.

Итак, первым делом нам надо запустить сервер NTP. Открываем ветку реестра
HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpServer.
Здесь для включения сервера NTP параметру Enabled надо установить значение 1 .

Затем перезапускаем службу времени командой net stop w32time && net start w32time

После перезапуска службы NTP сервер уже активен и может обслуживать клиентов. Убедиться в этом можно с помощью команды w32tm /query /configuration. Эта команда выводит полный список параметров службы. Если раздел NtpServer содержит строку Enabled:1 , то все в порядке, сервер времени работает.

Для того, чтобы NTP-сервер мог обслуживать клиентов, не забудьте на файерволле открыть UDP порт 123 для входящего и исходящего траффика.

Основные настройки NTP сервера

NTP сервер включили, теперь надо его настроить. Открываем ветку реестра HKLM\System\CurrentControlSet\services\W32Time\Parameters. Здесь в первую очередь нас интересует параметр Type , который задает тип синхронизации. Он может принимать следующие значения:

NoSync — NTP-сервер не синхронизируется с каким либо внешним источником времени. Используются часы, встроенные в микросхему CMOS самого сервера;
NTP — NTP-сервер синхронизируется с внешними серверами времени, которые указаны в параметре реестра NtpServer;
NT5DS — NTP-сервер производит синхронизацию согласно доменной иерархии;
AllSync — NTP-сервер использует для синхронизации все доступные источники.

Значение по умолчанию для компьютера, входящего в домен — NT5DS , для отдельно стоящего компьютера — NTP.

И параметр NtpServer , в котором указываются NTP-сервера, с которыми будет синхронизировать время данный сервер. По умолчанию в этом параметре прописан NTP-сервер Microsoft (time.windows.com, 0x1), при необходимости можно добавить еще несколько NTP-серверов, введя их DNS имена или IP адреса через пробел. Список доступных серверов времени можно посмотреть например .

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

0x1 – SpecialInterval, использование специального интервала опроса;
0x2 – режим UseAsFallbackOnly;
0x4 – SymmetricActive, симметричный активный режим;
0x8 – Client, отправка запроса в клиентском режиме.

При использовании флага SpecialInterval, необходимо установленное значение интервала в ключе SpecialPollInterval . При значении флага UseAsFallbackOnly службе времени сообщается, что данный сервер будет использоваться как резервный и перед синхронизацией с ним будут выполнятся обращения к другим серверам списка. Симметричный активный режим используется NTP-серверами по умолчанию, а клиентский режим можно задействовать в случае проблем с синхронизацией. Подробнее о режимах синхронизации можно посмотреть , либо не морочиться и просто ставить везде ,0x1 (как советует Microsoft).

Еще один важный параметр AnnounceFlags находится в разделе реестра HKLM\System\CurrentControlSet\services\W32Time\Config. Он отвечает за то, как о себе заявляет NTP-сервер и может принимать следующие значения:

0x0 (Not a time server) — сервер не объявляет себя через NetLogon, как источник времени. Он может отвечать на NTP запросы, но соседи не смогут распознать его, как источник времени;
0x1 (Always time server) — сервер будет всегда объявлять о себе вне зависимости от статуса;
0x2 (Automatic time server) — сервер будет объявлять о себе только, если он получает надежное время от другого соседа (NTP или NT5DS);
0x4 (Always reliable time server) — сервер будет всегда заявлять себя, как надежный источник времени;
0x8 (Automatic reliable time server) — контроллер домена автоматически объявляется надежным если он PDC-эмулятор корневого домена леса. Этот флаг позволяет главному PDC леса заявить о себе как об авторизованном источнике времени для всего леса даже при отсутствии связи с вышестоящими NTP-серверами. Ни один другой контроллер или рядовой сервер (имеющие по умолчанию флаг 0x2 ) не может заявить о себе, как надежном источнике времени, если он не может найти источник времени для себя.

Значение AnnounceFlags составляет сумму составляющих его флагов, например:

10=2+8 — NTP-сервер заявляет о себе как о надежном источнике времени при условии, что сам получает время из надежного источника либо является PDC корневого домена. Флаг 10 задается по умолчанию как для членов домена, так и для отдельно стоящих серверов.

5=1+4 — NTP-сервер всегда заявляет о себе как о надежном источнике времени. Например, чтобы заявить рядовой сервер (не домен-контроллер) как надежный источник времени, нужен флаг 5.

Ну и настроим интервал между обновлениями. За него отвечает уже упоминавшийся выше ключ SpecialPollInterval, находящийся в ветке реестра HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpClient. Он задается в секундах и по умолчанию его значение равно 604800, что составляет 1 неделю. Это очень много, поэтому стоит уменьшить значение SpecialPollInterval до разумного значения, скажем до 1 часа (3600).

После настройки необходимо обновить конфигурацию сервиса. Сделать это можно командой w32tm /config /update. И еще несколько команд для настройки, мониторинга и диагностики службы времени:

w32tm /monitor – при помощи этой опции можно узнать, насколько системное время данного компьютера отличается от времени на контроллере домена или других компьютерах. Например: w32tm /monitor /computers:time.nist.gov
w32tm /resync – при помощи этой команды можно заставить компьютер синхронизироваться с используемым им сервером времени.
w32tm /stripchart – показывает разницу во времени между текущим и удаленным компьютером, причем может выводить результат в графическом виде. Например, команда w32tm /stripchart /computer:time.nist.gov /samples:5 /dataonly произведет 5 сравнений с указанным источником и выведет результат в текстовом виде.

w32tm /config – это основная команда, используемая для конфигурирования службы NTP. С ее помощью можно задать список используемых серверов времени, тип синхронизации и многое другое. Например, переопределить значения по умолчанию и настроить синхронизацию времени с внешним источником, можно командой w32tm /config /syncfromflags:manual /manualpeerlist:time.nist.gov /update
w32tm /query — показывает текущие настройки службы. Например команда w32tm /query /source покажет текущий источник времени, а w32tm /query /configuration выведет все параметры службы.

Ну и на крайний случай 🙁
w32tm /unregister — удаляет службу времени с компьютера.
w32tm /register – регистрирует службу времени на компьютере. При этом создается заново вся ветка параметров в реестре.

Сервер точного времени предназначен для синхронизации частотно-временных показателей. Устройство с высокой точностью генерирует сигналы частоты и точного времени и синхронизирует эти параметры на удаленных объектах.

Сервер синхронизации времени может работать с применением различных сигналов и протоколов, включая распространенный NTP протокол и только набирающий популярность PTP протокол. Принимая сигналы со спутников глобальных систем позиционирования GPS и ГЛОНАСС, сервер передает их клиентским устройствам и синхронизирует временные параметры.

Описание ССВ-1Г

Сервер частоты и точного времени «ССВ-1Г» представляет собой автономное устройство высотой 1,5 U, устанавливаемое в 19” телекоммуникационную стойку, предназначенное для генерации сигналов частоты и точного времени.

В отличие от многих других продуктов, представленных на рынке, сервер времени ССВ-1Г выполнен не на базе промышленных серверов, а использует собственную аппаратную платформу, что позволило значительно снизить его стоимость, повысить надёжность, а также исключить зависимость от производителя операционной системы и серверной платформы.

Синхронизация сервера точного времени осуществляется от сигналов спутниковых радионавигационных систем (СРНС) как российской ГЛОНАСС, так и GPS, что повышает точность определения времени и снижает риски зависимости оператора от зарубежных навигационных систем.

В качестве резервных источников синхронизации задающего генератора могут использоваться вход сигнала 1PPS, вход Е1/2,048 МГц или вход 5 (10) МГц.

В качестве резервных источников синхронизации шкалы времени может использоваться вход RS232 модуля COMB по протоколам TOD, Sirf.

Питание ССВ-1Г осуществляется по двум вводам (Основной / Резервный) от независимых источников AC 220 В 50Гц / DC 48 В. Возможен вариант поставки с двумя вводами питания DC 48 В и дополнительным внешним преобразователем AC 220 В 50Гц - DC 48 В, что позволяет осуществлять электропитание ССВ-1Г по одному вводу AC 220 В 50Гц, а по другому DC 48 В. Энергопотребление зависит от комплектации и не превышает 40 Вт.

Обслуживание устройства максимально упрощено. Эксплуатационный персонал может получать информацию и управлять устройством посредством программного обеспечения «Система технического обслуживания», либо с помощью встроенных в устройство средств управления – графического индикатора и клавиатуры.

Технические характеристики ССВ-1Г

Характеристика Значение
Общие
Тип внутреннего генератора Пьезоэлектрический термостатированный ультрапрецизионный
Входы внешней синхронизации синхросигнала ГЛОНАСС, GPS, Galileo, 1 PPS, Е1/2,048 МГц, 5 МГц, 10 МГц
Входы внешней синхронизации шкалы времени ГЛОНАСС, GPS, Galileo, ToD, SIRF
Выходы синхронизации NTP сервер, PTP master, 1 PPS, Е1/2,048 МГц, SIRF, IRIG-B, 5 МГц, 10 МГц, токовая петля
Управление
Автономное встроенная клавиатура и дисплей
Локальное порт USB и ПО «Техническое обслуживание»
Сетевое Ethernet и ПО «Техническое обслуживание», SNMP v2C (RFC 1158)
Сетевой интерфейс 10/100 Base-T Ethernet
Поддерживаемые протоколы
транспортный уровень TCP, UDP
протокол IP IP v4
IP v6 (опционально)
автоматическая конфигурация DHCP (RFC 2131)
NetBios Name Servise (NBNS)
протокол NTP (Network Time Protocol) NTP v2 (RFC 1119),
NTP v3 (RFC 1305),
NTP v4 (RFC 5905),
SNTP v3 (RFC 1769),
SNTP v4 (RFC 2030)
протокол PTP (Precision Time Protocol) PTP v2 (IEEE Std 1588-2008)
протокол SNMP SNMPv2c (RFC 1158)
протокол RS-232 SIRF
TOD
Интерфейс 1PPS (1Гц)
уровень выходного сигнала 5 В (TTL-совместимый)
длительность импульса 5 мкс (IEEE Std 1344 - 1995)
полярность импульса положительная/отрицательная
сопротивление линии 50 Ом
Синхросигналы 5 МГц и 10 МГц
форма сигнала номинально-прямоугольная
уровень выходного сигнала на нагрузке 50 Ом 1 В
Синхросигнал 2,048 МГц (G.703/10)
форма сигнала номинально-прямоугольная
1,5 В
1,9 В
Синхросигнал 2,048 Мбит/с (G.703/6)
форма сигнала биполярный
уровень выходного сигнала на нагрузке 75 Ом (коаксиальная пара) 1,5 В
уровень выходного сигнала на нагрузке 120 Ом (симметричная пара) 1,9 В
Метрологические характеристики
пределы допускаемой относительной погрешности по частоте в режиме синхронизации по сигналам ГНСС ГЛОНАСС/GPS ±5,0×10 -11
пределы допускаемого среднего квадратического относительного отклонения случайной составляющей погрешности измерений частоты выходного сигнала на интервале времени измерения 100 с ±5,0×10 -11
пределы допускаемой абсолютной погрешности привязки переднего фронта выходного импульса частотой 1Гц к шкале времени UTC в режиме синхронизации по сигналам ГНСС ГЛОНАСС/GPS ±110 нс
пределы допускаемой абсолютной погрешности привязки переднего фронта выходного импульса частотой 1Гц к шкале времени UTC в режиме автономного функционирования за сутки ±20 мкс
пределы допускаемой абсолютной погрешности привязки шкалы времени относительно шкалы времени UTC(SU) по протоколу NTP через интерфейс Ethernet ±10 мкс
Количество модулей расширения до 8-ми штук
Производительность
быстродействие NTP сервера на каждый порт 10/100 Base-T Ethernet, запросов в секунду, не менее 123 000
Электропитание
количество вводов питания
2
напряжение источника питания
(в зависимости от типа исполнения)
═ 60 В (от 36 до 72) В
~ 220 В (от 198 до 242) 50 Гц
Потребляемая мощность не более 50 Вт в «рабочем» режиме
не более 60 Вт в режиме «прогрев»
Габаритные размеры 483×255×65 мм
Масса не более 6 кг
Режим работы круглосуточный
средний срок службы не менее 20 лет

Преимущества источника времени ССВ-1Г

    • Оптимальное соотношение цена – качество

Источник ССВ-1Г имеет одно из наилучших соотношений цена – качество в своём классе оборудования. Это достигается двумя технологическими решениями.

Во-первых, ССВ-1Г построен на базе аппаратной платформы собственного производства. Кроме этого, в устройстве ССВ-1Г отсутствует лицензионное ПО сторонних производителей.

Во-вторых, вместо дорогих высокоточных рубидиевых генераторов, имеющих непродолжительный срок службы, используются кварцевые резонаторы с двойным термостатированием, при помощи которого обеспечивается постоянный уровень температуры, необходимой для обеспечения стабильного рабочего режима. Такое решение аналогично по точности рубидиевым генераторам, но стоит существенно дешевле при большей надёжности.

    • Информационная безопасность

Все модули расширения ССВ-1Г, в том числе модуль «NTP-сервер», имеют аппаратную реализацию, построенную на базе жёсткого автомата.

Такое решение обеспечивает высочайшее быстродействие и как следствие:

  1. Высокую точность передачи меток времени в связи с отсутствием внутренних задержек, влияющих на асимметрию канала приёма-передачи пакетов NTP.
  2. Невозможность нарушения функционирования NTP-сервера вследствие DDOS-атак. Быстродействие локального NTP-сервера выше скорости Ethernet-канала.
  3. Невозможность нарушения функционирования NTP-сервера вследствие несанкционированного доступа к ресурсам через порт Ethernet. NTP-сервер точного времени обеспечивает только функциональность и не реагирует на любые другие IP-пакеты.

Модульная конструкция

Базовое шасси источника ССВ-1Г представляет собой 19-дюймовый корпус с установленными модулями управления, приёмника сигналов СРНС, термостабилизированного кварцевого генератора с системой фазовой автоподстройки частоты, а также кросс-платой для установки функциональных модулей расширения.

Модульная конструкция позволяет на базе одного устройства создавать до 16-ти NTP-серверов в физически разделённых сетях.

Модули расширения устанавливаются в соответствии с необходимой конфигурацией входных/выходных сигналов на основании спецификации, определяемой при заказе.

При изменении конфигурации нет необходимости покупать новое устройство, достаточно установить дополнительно необходимое количество модулей расширения.

Всего возможна установка до 8 модулей расширения.

Модули источника частоты и времени ССВ-1Г

Модуль «MLAN»

  • Simple Network Time Protocol (RFC 1769, RFC 2030);
  • Time Protocol (RFC 868);
  • Daytime Protocol (RFC 867).

Модуль «MLANP»

Модуль предназначен для приёма запросов от клиентов и формирования пакета с точным текущим временем согласно протоколам:

  • Network Time Protocol (RFC 1119, RFC 1305, RFC 5905);

Протокол Precision Time Protocol (PTP) рассчитан на подключение одного клиента. Режим работы определяется комбинацией следующих параметров в любом сочетании:

Transmit protocol Ethernet, UDP
Addressing mode Unicast, Multicast, Mixed
Two step Yes, No

При использовании Network Time Protocol (NTP) имеется возможность производить рассылку пакетов на указанный IP-адрес (в т. ч. и широковещательную Broadcast), с указанной периодичностью.

Модуль имеет два независимых канала с идентичной функциональностью и одинаковым набором конфигурационных параметров. Конфигурация каналам задаётся индивидуально. Нагрузочная способность каждого из каналов составляет около 123 000 пакетов в секунду.

Модуль «MGLAN» (NTP/PTP)

Модуль предназначен для приёма запросов от клиентов и формирования пакета с точным текущим временем согласно протоколам:

  • Precision Time Protocol V2 (IEEE Std 1588-2008);
  • Network Time Protocol (RFC 1119, RFC 1305, RFC 5905);
  • Simple Network Time Protocol (RFC 1769, RFC 2030).

Модуль «MPPS»

Модуль предназначен для приёма сигнала PPS (1Гц) и формирования сигнала, форма которого задаётся в конфигурации, имеет два идентичных канала, каждый из которых может работать в режиме приёма или передачи.

Модуль «MSYNC 120», «MSYNC 75»

Модуль предназначен для приёма и формирования сигналов 2.048 МГц (G.703/10) или 2.048 Мбит/с (G.703/6) и имеет два идентичных канала, каждый из которых может функционировать в режиме приёма или передачи сигнала.

Модуль «MCOMB»

Модуль MCOMB предназначен для приёма/передачи точного текущего времени в указанном формате по интерфейсу RS-232, а также приёма и формирования импульса метки времени 1 PPS.

Поддерживаемые протоколы интерфейса RS-232: TOD; Sirf, TimeString, NMEA.

Модуль «M10M»

Модуль предназначен для приёма и формирования сигналов 5 МГц или 10 МГц и имеет два идентичных канала, каждый из которых может функционировать в режиме приёма или передачи сигнала.

Модуль «MTP» (Токовая петля)

Модуль предназначен для формирования импульса метки времени по интерфейсу «Токовая петля» или «Сухой контакт» и имеет два независимых, гальванически изолированных канала.

Модуль «MIRIG»

Модуль MIRIG предназначен для формирования сигнала согласно спецификации протокола IRIG STANDARD 200-04.

Модуль «М422»

Модуль «M422» предназначен для приёма/передачи точного текущего времени в указанном формате по интерфейсу RS-422/485, а также приёма и формирования импульса метки времени по интерфейсу RS-422/485.

Поддерживаемые протоколы интерфейса RS-422/485: TOD, Sirf, TimeString, NMEA.

Централизованное управление

Контроль и управление работой устройств синхронизации, установленных на сети оператора, может обеспечиваться специализированным сетевым программным обеспечением «Техническое обслуживание», разработанным ЗАО «КОМСЕТ-сервис».

Управление устранением неисправностей

  • сбор с подключённых устройств сообщений об авариях, неисправностях и событиях, требующих внимания;
  • получение списка аварий;
  • фильтрация аварий с присвоением им степени серьёзности;
  • отображение аварий и неисправностей, а также их характеристик;
  • контроль доступности устройства по управлению (наличия канала связи между устройством и системой управления);
  • формирование отчётов по авариям и событиям.

Управление безопасностью

  • защита доступа к системе с помощью имени пользователя и пароля;
  • авторизация пользователя в системе управления;
  • четыре уровня прав пользователей от администратора (с полными правами) до пользователя только с правами чтения;
  • контроль действий операторов по обработке неисправностей.

Управление конфигурацией

  • добавление нового устройства;
  • для каждого поддерживаемого устройства удалённое отображение информации об устройстве: информацию по используемым входам/выходам, конфигурации устройства, режимов работы устройства, параметров, определяющих работу устройства;
  • автоматическое распознавание серийных номеров устройств (функция инвентаризации).

Управление рабочими характеристиками

  • отображение текущих характеристик устройств в режиме реального времени.

Выходные данные и пользовательский интерфейс

  • данные о состоянии сетевых элементов отображаются в табличном виде с возможностью вывода их на печать;
  • система имеет удобный пользовательский интерфейс, позволяющий легко просмотреть:
    • список устройств, их текущее состояние и информационные элементы состояния;
    • список пользователей, предоставленные пользователям права доступа;
    • текущее состояние всех модулей устройства;
    • состояние приёмника спутниковых сигналов, состояние видимой в точке установки антенны спутниковой группировки;
    • и многое другое.
  • программное обеспечение «Техническое обслуживание» имеет развитые средства визуализации и анализа сигналов неисправностей с возможностью звукового оповещения различного тона, легко настраиваемого пользователем системы.

Сервер времени «ССВ-1Г» - это собственная разработка компании КОМСЕТ-сервис. Он имеет независимую аппаратную платформу, высокую точность передачи временных показателей, удобный интерфейс и два источника питания: основной и резервный. Купить сервер синхронизации времени в Москве можно у нас в стандартной или расширенной модификации. Также есть возможность поставки устройства и по всей России. Получить цены на оборудование можно, подав запрос на коммерческое предложение компании.

Где используется NTP сервер времени

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

  • Компании мобильных операторов и телекоммуникаций.
  • Интернет-провайдеры.
  • Аэропорты, ЖД и автовокзалы.
  • В системах коммерческих автоматизированных учетов.