Как настроить NTP через перекрестный кабель?

471
mark2017

Я довольно новичок в NTP. У меня есть два компьютера с Lubuntu 17.04, которые я хотел бы синхронизировать по времени с минимальным аппаратным обеспечением. Нет необходимости синхронизировать с реальным временем, просто чтобы поддерживать системное время между двумя компьютерами как можно ближе.

NTP кажется подходящим решением. Мне удается заставить NTP работать между двумя компьютерами, когда настроены адреса DHCP (DHCP от маршрутизатора, один компьютер является сервером широковещательной передачи NTP, а другой - клиентом, компьютеры синхронизируются друг с другом и получают близкую синхронизацию ~ 1 мс или Меньше).

Чтобы уменьшить количество оборудования, я удаляю маршрутизатор и устанавливаю IP-адреса на каждом компьютере на статические, затем подключаюсь через перекрестный кабель:

  • 10.1.1.50 255.255.255.0 (NTP «клиентский» ПК)
  • 10.1.1.51 255.255.255.0 (NTP "сервер" ПК)

(В обоих случаях шлюз был оставлен пустым.)

Компьютеры могут успешно пропинговать друг друга (задержка составляет менее 1 мс, около 0,3 мс-0,4 мс). Тем не менее, я не могу получить ntp.confнастроенный; клиентский компьютер NTP просто находится в режиме INIT, а все показатели равны 0. Как я могу отладить конфигурацию NTP, чтобы выяснить, где происходит ошибка, пожалуйста?

Там нет /var/lib/ntp/ntp.conf.dhcpфайла. Брандмауэр отключен для обоих компьютеров.

Выход из ntpq -pnвне

 remote refid st t when poll reach delay offset jitter ============================================================================== 10.1.1.51 .INIT. 16 u - 1024 0 0.000 0.000 0.000 

Соответствующими строками ntp.confдля клиента являются (т. Е. Все строки без комментариев)

driftfile /var/lib/ntp/ntp.drift statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server 10.1.1.51 restrict -4 default kod notrap nomodify nopeer noquery limited restrict -6 default kod notrap nomodify nopeer noquery limited restrict 127.0.0.1 restrict ::1 restrict 10.1.1.0 mask 255.255.255.0 disable auth broadcastclient 

Соответствующие строки из ntp.conf для сервера NTP PC (т.е. все строки без комментариев)

driftfile /var/lib/ntp/ntp.drift statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server 127.127.2.1 # local clock fudge 127.127.2.1 stratum 10 restrict -4 default kod notrap nomodify nopeer noquery limited restrict -6 default kod notrap nomodify nopeer noquery limited restrict 127.0.0.1 restrict ::1 restrict source notrap nomodify noquery restrict 10.1.1.0 mask 255.255.255.0 broadcast 10.1.1.255 

При использовании команды ntpdate -d 10.1.1.51 проблема заключается в том, что NTP-сервер 10.1.1.51 имеет слишком высокий уровень страты (поскольку в настоящее время он отключен от Интернета, и, следовательно, он не является надежным источником времени согласно NTP ).

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

2
Это точно 300 мс? Оно должно быть меньше 1 мс - вы имели в виду 0,300 мс - 0,400 мс? Если это так высоко, то есть проблема с сетью. Paul 6 лет назад 0
Мои извинения, вывод ping 10.1.1.51 от клиента составляет от 0,3 до 0,4 мс. (Вопрос обновлен). mark2017 6 лет назад 0

2 ответа на вопрос

3
mark2017

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

  1. Убедитесь, что перекрестный кабель настроен правильно, оба проводных сетевых адаптера не должны иметь ни шлюза, ни настроенного DNS, а также находиться в другой подсети, чем подсеть Wi-Fi NTP-сервера. например, в моем случае, я переместил сетевые карты ПК на статические IP-адреса

    • 10.1. 2 .50 255.255.255.0 (NTP "клиентский" ПК) Нет шлюза, нет DNS
    • 10.1. 2 .51 255.255.255.0 (NTP "сервер" ПК) Нет шлюза, нет DNS

Это делается с помощью сетевого инструмента графического интерфейса Lubuntu «Редактировать соединения».

  1. Включите Wi-Fi на ПК с NTP-сервером, это позволит ему синхронизировать время из Интернета. Это настроено на 10.1. 1 .n подсеть, где n выделено через DHCP от маршрутизатора Wi-Fi. Это должна быть подсеть, отличная от проводных сетевых карт, как обнаружено на https://askubuntu.com/questions/624830/ubuntu-using-wrong-nic-for-internet-connection

  2. Добавьте стандартные серверы времени, которые поставляются с ntp.confфайлом по умолчанию, и убедитесь, что оба ntp.confфайла (клиент и сервер) просматривают подсеть 10.1.2.0. Перезагрузите все и подождите десять минут, чтобы NTP начал синхронизацию.

Вы также можете настроить локальные часы как мастер, как описано здесь https://www.borngeek.com/2008/04/03/using-ntp-on-a-private-network/ eckes 6 лет назад 0
@eckes вы имеете в виду, используя `# Использовать локальный сервер синхронизации 127.127.1.0 предпочитаете выдумку 127.127.1.0 stratum 10`? Я нашел различные ссылки, которые указывают, что выдумка в слой местных часов не работает, и это не было в моих экспериментах. Я обнаружил, что создание локальных часов мастером вообще не помогает синхронизации, так как уровень страты сервера все еще падает слишком низко, чтобы быть приемлемым для клиента NTP. mark2017 6 лет назад 0
Вы должны пометить * this * как принятый ответ, если он более точно отражает то, как вы решили проблему. Twisty Impersonator 6 лет назад 0
Спасибо @TwistyImpersonator, сделано, поскольку оно точно представляет, как проблема была решена. Также новичок в суперпользователе все еще работает над изломами. На самом деле думал, что он уже помечен как ответ, поскольку рабочий процесс суперпользователя показал, что я «ответил» на свой собственный вопрос, во всяком случае, помечен сейчас спасибо за заголовки. mark2017 6 лет назад 0
Кстати, я предпочитаю corony, он не только более чист, но и имеет лучшую централизованную документацию eckes 6 лет назад 0
1
Stef

Вот что я могу найти для вас:

http://www.brennan.id.au/09-Network_Time_Protocol.html

Также проверьте это для соответствующего рабочего инструмента - http://www.tldp.org/LDP/sag/html/ntp-toolkit.html Stef 6 лет назад 1
спасибо инструмент ntpdate -d 10.1.1.51 указывает, что проблема в том, что уровень страты сервера слишком высок, скорее всего, так как он изолирован от Интернета, поэтому мне нужно проверить, как можно подключить оба перекрестных кабеля в и Wi-Fi включен на сервере NTP. Интернет выйдет из строя по Wi-Fi и позволит серверу NTP синхронизироваться с серверами более высокого уровня, но затем я хочу подключить клиента NTP через перекрестный кабель. Пока что одновременное включение обоих компонентов не похоже на совместную игру. mark2017 6 лет назад 0
Действительно, они заслуживают большого спасибо :) Хорошо, я решил это, мне нужно было правильно настроить две сетевые карты, я уточню ответ с деталями. mark2017 6 лет назад 0
Пожалуйста, процитируйте основные части ответа по ссылочной ссылке (ссылкам), так как ответ может стать недействительным, если связанные страницы изменятся. DavidPostill 6 лет назад 3
@DavidPostill, на самом деле я отметил это как ответ случайно. Соответствующая команда из ntp-toolkit (находится по этим ссылкам) для проверки соединения: `ntpdate -d 10.1.1.51`, она указывает, что уровень NTP-сервера здесь был слишком высоким (это вызвано тем, что он был отключен от Интернет, решение является принятым ответом). mark2017 6 лет назад 0