локальный сервер NTP, не используемый клиентами. Проблема установки

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

Я нашел несколько сообщений об этом. Самые полезные были:

сервер

Я действительно устанавливал сервер с IP 192.168.1.123, и это, кажется, работает хорошо: deamon "ntpd" работает, и я добавлял в etc/ntp.conf строки

# this sets the source to local time
server 127.127.1.0
fudge 127.127.1.0 stratum 8

# this makes the ntpd deamon to send out its time on the local net.
broadcast 192.168.255.255 

Я проверил его с командой ntpq:

 ntpq -c lpeer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
192.168.255.255       .BCST.     16 B    -   64      0  0.000    0.000   0.000

"BCST" говорит, что в широковещательной передаче больше и IP показывает его широковещательную передачу всем компьютерам в локальной сети (сеть класса B, таким образом 2x 255).

клиент

На стороне клиента я также установил ntp, и использовал значение по умолчанию/etc/ntp.conf и добавил строки

server 192.168.1.123 iburst
server 127.127.1.0
fudge 127.127.1.0 stratum 8

где 192.168.1.123 локальный IP широковещательной передачи сервера, и другая строка должна сказать клиенту (ноутбук) использовать свои собственные часы, когда сетевое соединение выключено. Я перезапустил сервис на клиент и выполнил ntpq для проверки соединения

ntpq -c lpeer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
192.168.1.123        .INIT.     16 u     1   64     0   0.000    0.000   0.000
LOCAL(0)             .LOCL.     8 l      6   64     1   0.000    0.000   0.000

Повторение этой команды I видит "когда" столбец, подсчитывающий обоих и запускающийся с 0 снова при достижении 64 секунд. Я действительно ожидал после 64 секунд, которые это изменит на это:

ntpq -c lpeer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*192.168.1.123        .INIT.     16 u     1   64     0   0.000    0.000   0.000
LOCAL(0)              .LOCL.     8 l      6   64     1   0.000    0.000   0.000

Отметьте "*" перед IP сервера. Но это не сделало. Что я получил после того, как приблизительно 1 час был

ntpq -c lpeer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
192.168.1.123        .INIT.     16 u     1   64     0   0.000    0.000   0.000
*LOCAL(0)            .LOCL.     8 l     63   64   377   0.000    0.000   0.000

Я думаю, что это говорит мне, существует 2 источника для настроенного NTP, но поскольку удаленный источник не работает/не доступный/независимо от того, что, он не используется и случай нейтрализации, локальные часы используются, но я не уверен, корректна ли та интерпретация.

что я попробовал

Я ожидал больше чем 1 час, я перезапустил ntpd времена serveral с sudo /etc/init.d/ntp restart и я также перезагрузил. Далее я прокомментировал локальные часы раздела так, чтобы единственный сервер был server 192.168.1.123. Я не мог заставить это "*" появляться. Также я видел раздел в ntp.conf, который сказал

#if you want to listen to time broadcasts on you local subnet, 
#de-comment the next lines. Please do this only if you trust 
#everybody on the network!
#disable auth
#broadcastclient

Я пытался не комментировать и перезапустить сервис, но все еще что звезда не появилась. Я задаюсь вопросом о последнем разделе, тем не менее, потому что этот раздел действительно поднимался в любом другом сообщении или интернет-результате, который я видел на конфигурации NTP. Существует несколько на локальных установках, и большинство, кажется, находят с адресом сервера один. Ping от клиента к серверу прекрасен. И т.д. нет брандмауэра.

вопрос

Я вне идей. Я думаю, что у меня есть сервер с полностью рабочим сервером ntp, который отсылает время. Но у меня действительно есть клиент, которому не удается получить информацию времени от сервера.

Что я могу сделать для получения клиента, работающего?

3
задан 13 April 2017 в 15:23

2 ответа

Проблема была разрешена, системные работы теперь. Я делаю эту сводку для меня и любых других, которые должны установить офлайновый сервер NTP (снова). Фактическая проблема, казалось, была, что экспериментирование с широковещательным режимом повредило ntpd на сервере, это снова работало над другим перезапуском сервера. Почему это не работало, когда я следовал вышеупомянутым данным сообщениям, я не действительно уверен.

Backgound

Часть проблемы была то, что я не понял, как NTP работает и что я делал. Ни страница справочника, ни серверное руководство 16.04 не дали упрощенный обзор различных компьютеров, сотрудничают. Во-первых, клиент NTP и сервер вводят в заблуждение. Всегда та же программа, NTP deamon, "ntpd". Это должно быть установлено на каждом компьютере в локальной сети для синхронизации времени для работы. Я еще не проверял о клиентах окон, но я уверен, что существует версия для них где-нибудь также (прокомментируйте, есть ли у Вас информация об этом - создают в функциях, был бы предпочтен). Офлайновая система работала бы над системными часами только. Его выгодное для использования нескольких системных часов, не только основного сервера, потому что каждые часы добавляют для сокращения дрейфа времени. Другими словами, часы сделали бы все компьютеры синхронизируемым, но абсолютным временем в более стабильном и точном, когда больше часов рассматривают. Из того, что я читал 4, должно быть большое количество. NTP может действовать как сервер и как клиент одновременно. Конфигурационный файл по умолчанию действительно не имеет раздела конфигурации для роли сервера. Как простая модель, каждый ntpd экземпляр является клиентом, который получает информацию времени от где-нибудь регулярным опросом его. Любой опрос другого ntpd или опрос локальных встроенных часов. Это становится сервером, когда опросы ответов от других. Например, сеть, подключенная прокси-сервером к Интернету. Тот прокси-сервер работал бы ntpd опрашивать несколько Интернета серверы NTP и таким образом snyc его собственное время им. Когда все локальные клиенты опрашивают тот прокси-сервер в течение его (synchonised) времени, и он начинает отвечать на опросы, это становится и сам сервер NTP. Офлайновый случай точно, что, кроме серверов онлайн заменяются встроенными часами.

Конфигурация Для установки /etc/ntp.conf файл должен быть отредактирован. Значение по умолчанию довольно полно материала. Я удалил все кроме:

   # this is the IP or name of the local networks NTP server. This line
   # should be commented out on the server 
   server 192.168.1.111

   # this enables checking the local clock. Do not change that IP values!
   server 127.127.1.0
   fudge 127.127.1.0 stratum 10

   # this lines are required to run the ntpq -p command to verify the  
   # function of the system

   restrict 127.0.0.1
   restrict ::1

Сервер в том примере имеет IP 192.168.1.111. Эта конфигурация может быть тем же для всех ПК в сети. Только прокомментируйте локальный раздел часов по клиентам, которые не являются ноутбуками. Строка должна быть сохранена на ноутбуках и других устройствах, которые могут работать от сети в течение некоторого времени. Первый раздел сервера должен быть прокомментирован на сервере.

После редактирования перезапуска сервис с запустить/остановить сценарием

sudo /etc/init.d/ntp restart

Для проверки выполнения

ntpd-p

это немного короче, чем версия в вопросе и дает тот же вывод. Существует a * перед строкой часов, чтобы указать, что то, что это было используемым. Здесь вывод для рабочего сервера:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*LOCAL(0)            .LOCL.       2 1    6   64   377   0.000    0.000   0.000

Когда столбец подсчитывает, досягаемость - что-либо> 0. Здесь вывод для рабочего клиента:

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*192.168.1.111      LOCAL(0)     3 u     31  64   377   0.206   -5.900   0.654

Если Вы уже переоборудуете =.INIT. это не работает. Числа отличались бы, очевидно. Клиенты не должны показывать 0.000 0.000 0.000 значения. Вывод для клиента с настроенным дополнительным отступает часы (отметьте то, что я был используемым прямо сейчас - нет *):

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*192.168.1.111     LOCAL(0)      3 u    31  64   377   0.206   -5.900   0.654
LOCAL(0)              .LOCL.     8 l     6  64     1   0.000    0.000   0.000

добавленные infos конфигурация по умолчанию описывает широковещательную передачу, отправляют, и широковещательная передача получают опцию. Не активируйте это для нормального функционирования. Это не требуется, чтобы получать системное движение и настраивать клиент и сервер. Если что-нибудь застревает, не только перезапускают сервис, но перезагрузку полностью. Даже сервер человечности. Когда система не работала, я отметил это ps -e |grep ntpесли 2 'ntpd' обрабатывают. Пара могла быть запущена и последовательно останавливаться. Рабочая версия только показала один на каждом компьютере. Существуют другие опции ограничения и регистрирующаяся опция из файла конфигурации по умолчанию, который мог бы быть полезным. Не протестировал их.

Надо надеяться, это становится полезным в некоторое время. Если у Вас будут исправления, прокомментируйте, то я попытаюсь обновить ответ.

CatMan

PS: Большое спасибо Ken Mollerup, комментарии которого приводят меня к лучшему пониманию системы NTP.

0
ответ дан 1 December 2019 в 21:00

Ntpd — это сервер, а ntpdate — это клиент. Правильная конфигурация должна позволить работать ntpd, и все клиенты будут получать обновления от него. Я не согласен с тем, что ntpd устанавливается на каждую клиентскую машину. Установка ntpd на всех других системах в качестве клиентов довольно обременительна.

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

0
ответ дан 2 October 2020 в 07:18

Другие вопросы по тегам:

Похожие вопросы: