Вопрос или проблема
Один из моих серверов не может синхронизировать время с моим внутренним NTP-сервером.
Он работает для всех серверов в DMZ, кроме одного!
Вот отладка ntpdate сервера, который может синхронизироваться:
host-10.254.250.52:~# ntpdate -u -d internal-ntp
21 Июн 11:23:13 ntpdate[22168]: ntpdate [email protected] Вск 22 Ноя 16:14:35 UTC 2009 (1)
transmit(internal-ntp)
receive(internal-ntp)
transmit(internal-ntp)
receive(internal-ntp)
transmit(internal-ntp)
receive(internal-ntp)
transmit(internal-ntp)
receive(internal-ntp)
transmit(internal-ntp)
server internal-ntp, port 123
stratum 3, precision -20, leap 00, trust 000
refid [internal-ntp], delay 0.02632, dispersion 0.00000
transmitted 4, in filter 4
reference time: dcf49c8e.67939494 Ср, Июн 21 2017 11:19:42.404
originate timestamp: dcf49d61.40ad9621 Ср, Июн 21 2017 11:23:13.252
transmit timestamp: dcf49d61.41bf487f Ср, Июн 21 2017 11:23:13.256
filter delay: 0.02632 0.02650 0.02675 0.02650
0.00000 0.00000 0.00000 0.00000
filter offset: -0.00467 -0.00469 -0.00459 -0.00464
0.000000 0.000000 0.000000 0.000000
delay 0.02632, dispersion 0.00000
offset -0.004672
21 Июн 11:23:13 ntpdate[22168]: установить время на сервере internal-ntp с учетом смещения -0.004672 сек
Вот трассировка tcpdump сервера, который может синхронизироваться на стороне NTP-сервера:
internal-ntp:/var/log# tcpdump host 10.254.250.52
tcpdump: подробный вывод подавлен, используйте -v или -vv для полного декодирования протокола
отслеживание на eth0, тип связи EN10MB (Ethernet), размер захвата 96 байт
11:19:20.105722 IP 10.254.250.52.34851 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:20.105764 IP internal-ntp.ntp > 10.254.250.52.34851: NTPv4, Сервер, длина 48
11:19:20.106471 IP 10.254.250.52.34851 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:20.106499 IP internal-ntp.ntp > 10.254.250.52.34851: NTPv4, Сервер, длина 48
11:19:20.107120 IP 10.254.250.52.34851 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:20.107163 IP internal-ntp.ntp > 10.254.250.52.34851: NTPv4, Сервер, длина 48
11:19:20.107969 IP 10.254.250.52.34851 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:20.108000 IP internal-ntp.ntp > 10.254.250.52.34851: NTPv4, Сервер, длина 48
Вот отладка ntpdate сервера, который не может синхронизироваться:
host-10.254.250.51:~# ntpdate -u -d internal-ntp
21 Июн 11:21:42 ntpdate[6194]: ntpdate [email protected] Вск 22 Ноя 16:14:35 UTC 2009 (1)
transmit(internal-ntp)
transmit(internal-ntp)
transmit(internal-ntp)
transmit(internal-ntp)
transmit(internal-ntp)
internal-ntp: Сервер отключен: нет данных
server internal-ntp, port 123
stratum 0, precision 0, leap 00, trust 000
refid [internal-ntp], delay 0.00000, dispersion 64.00000
transmitted 4, in filter 4
reference time: 00000000.00000000 Чт, Фев 7 2036 10:28:16.000
originate timestamp: 00000000.00000000 Чт, Фев 7 2036 10:28:16.000
transmit timestamp: dcf49d09.f28900c5 Ср, Июн 21 2017 11:21:45.947
filter delay: 0.00000 0.00000 0.00000 0.00000
0.00000 0.00000 0.00000 0.00000
filter offset: 0.000000 0.000000 0.000000 0.000000
0.000000 0.000000 0.000000 0.000000
delay 0.00000, dispersion 64.00000
offset 0.000000
21 Июн 11:21:46 ntpdate[6194]: не найдено подходящего сервера для синхронизации
Вот трассировка tcpdump сервера, который не может синхронизироваться на стороне NTP-сервера:
internal-ntp:/var/log# tcpdump host 10.254.250.51
tcpdump: подробный вывод подавлен, используйте -v или -vv для полного декодирования протокола
отслеживание на eth0, тип связи EN10MB (Ethernet), размер захвата 96 байт
11:19:40.896719 IP 10.254.250.51.59008 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:40.896763 IP internal-ntp.ntp > 10.254.250.51.59008: NTPv4, Сервер, длина 48
11:19:41.896762 IP 10.254.250.51.59008 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:41.896804 IP internal-ntp.ntp > 10.254.250.51.59008: NTPv4, Сервер, длина 48
11:19:42.896556 IP 10.254.250.51.59008 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:42.896597 IP internal-ntp.ntp > 10.254.250.51.59008: NTPv4, Сервер, длина 48
11:19:43.896851 IP 10.254.250.51.59008 > internal-ntp.ntp: NTPv4, Клиент, длина 48
11:19:43.896891 IP internal-ntp.ntp > 10.254.250.51.59008: NTPv4, Сервер, длина 48
NTP-клиенты работают на Debian 5.0.10, а NTP-сервер работает на Debian 5.0.8
Конфигурация NTP-клиентов:
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 internal-ntp iburst dynamic
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
Конфигурация NTP-сервера на internal-ntp:
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 0.debian.pool.ntp.org iburst dynamic
server 1.debian.pool.ntp.org iburst dynamic
server 2.debian.pool.ntp.org iburst dynamic
server 3.debian.pool.ntp.org iburst dynamic
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
restrict 10.0.0.0 mask 255.0.0.0 nomodify notrap
Не работающий NTP-клиент не получает пакет от сервера, похоже, что существует асимметричная маршрутизация между клиентом и сервером.
Эта NTP дата на работающем клиенте…
host-10.254.250.52:~# ntpdate -u internal-ntp
21 Июн 14:49:31 ntpdate[7747]: установить время на сервере internal-ntp с учетом смещения 0.001020 сек
…дает следующую трассировку tcpdump на стороне клиента:
host-10.254.250.52:~# tcpdump port 123 and host internal-ntp
tcpdump: подробный вывод подавлен, используйте -v или -vv для полного декодирования протокола
отслеживание на eth0, тип связи EN10MB (Ethernet), размер захвата 96 байт
15:33:43.620356 IP 10.254.250.52.35247 > internal-ntp.ntp: NTPv4, Клиент, длина 48
15:33:43.621062 IP internal-ntp.ntp > 10.254.250.52.35247: NTPv4, Сервер, длина 48
15:33:43.621086 IP 10.254.250.52.35247 > internal-ntp.ntp: NTPv4, Клиент, длина 48
15:33:43.621549 IP internal-ntp.ntp > 10.254.250.52.35247: NTPv4, Сервер, длина 48
15:33:43.621563 IP 10.254.250.52.35247 > internal-ntp.ntp: NTPv4, Клиент, длина 48
15:33:43.622282 IP internal-ntp.ntp > 10.254.250.52.35247: NTPv4, Сервер, длина 48
15:33:43.622294 IP 10.254.250.52.35247 > internal-ntp.ntp: NTPv4, Клиент, длина 48
15:33:43.623012 IP internal-ntp.ntp > 10.254.250.52.35247: NTPv4, Сервер, длина 48
Эта NTP дата на неработающем клиенте…
host-10.254.250.51:~# ntpdate -u internal-ntp
21 Июн 14:51:24 ntpdate[11773]: не найдено подходящего сервера для синхронизации
…дает следующую трассировку tcpdump на стороне клиента:
host-10.254.250.51:~# tcpdump dst port 123 and host internal-ntp
tcpdump: подробный вывод подавлен, используйте -v или -vv для полного декодирования протокола
отслеживание на eth0, тип связи EN10MB (Ethernet), размер захвата 96 байт
14:51:20.334130 IP 10.254.250.51.43811 > internal-ntp.ntp: NTPv4, Клиент, длина 48
14:51:21.334171 IP 10.254.250.51.43811 > internal-ntp.ntp: NTPv4, Клиент, длина 48
14:51:22.334118 IP 10.254.250.51.43811 > internal-ntp.ntp: NTPv4, Клиент, длина 48
14:51:23.334119 IP 10.254.250.51.43811 > internal-ntp.ntp: NTPv4, Клиент, длина 48
Ответ или решение
Проблема синхронизации времени NTP: Сервер отклонен, нет данных
Синхронизация времени является критически важной задачей для обеспечения корректной работы многих систем и приложений. В вашем случае одна из серверов не может синхронизировать время с внутренним NTP сервером, несмотря на то что другие серверы в той же сети (DMZ) функционируют исправно. Давайте детально разберем проблему и пути ее решения.
Описание проблемы
Системы, которые имеют проблемы с синхронизацией, могут вызывать серьезные сбои в работе приложений, особенно если они требуют точного времени. В данном случае сервер с IP-адресом 10.254.250.51
не получает корректных данных от внутреннего NTP сервера, что подтверждает вывод команды ntpdate
:
internal-ntp: Server dropped: no data
Это означает, что сервер не смог получить ответ от NTP-сервера, и не были получены данные для обработки.
Сравнение работы двух серверов
Из материалов видно, что сервер 10.254.250.52
успешно синхронизируется с NTP сервером, в то время как сервер 10.254.250.51
возвращает ошибку. Это видно из следующих выводов:
Успешный сервер:
adjust time server internal-ntp offset -0.004672 sec
Неуспешный сервер:
no server suitable for synchronization found
Анализ сетевого трафика
Анализ трафика через tcpdump
показывает, что на работающем сервере правильные запросы и ответы идут пакетами:
tcpdump для работающего сервера:
11:19:20.105722 IP 10.254.250.52.34851 > internal-ntp.ntp: NTPv4, Client, length 48
11:19:20.105764 IP internal-ntp.ntp > 10.254.250.52.34851: NTPv4, Server, length 48
В то время как на неработающем сервере нет ответа от NTP сервера:
tcpdump для неработающего сервера:
11:51:20.334130 IP 10.254.250.51.43811 > internal-ntp.ntp: NTPv4, Client, length 48
Как видно из анализа, сервер 10.254.250.51
отправляет запросы, но не получает ответ, в то время как сервер 10.254.250.52
исправно получает ответы.
Возможные решения
-
Проверка сетевых настроек:
- Убедитесь, что сервер
10.254.250.51
может достичь NTP сервера. Проверьте маршрутизацию, настройки брандмауэра, NAT и другие сетевые ограничения, которые могут препятствовать пакету ответа.
- Убедитесь, что сервер
-
Ассиметричная маршрутизация:
- Проблема может заключаться в ассиметричных маршрутах, когда пакеты от клиента идут по одному пути, а ответы от сервера возвращаются по другому. Проверьте маршруты и убедитесь, что они совпадают.
-
Мониторинг и анализ трафика:
- Запустите
tcpdump
на обоих серверах одновременно для более детального анализа. Посмотрите, идут ли пакеты в обе стороны без потерь.
- Запустите
-
Проверка конфигурации NTP:
- Убедитесь, что конфигурация NTP корректна на обоих концах. Проверьте, нет ли строгих правил ограничения на сервере, которые могли бы блокировать IP-адреса.
-
Анализ системных журналов:
- Проверьте системные журналы на наличие сообщений об ошибках, которые могут помочь диагностировать проблему. Например, производится ли привязка к NTP порту на сервере.
-
Обновление программного обеспечения:
- Поскольку вы используете Debian 5.0, обратите внимание, что это довольно старая версия. Рассмотрите возможность обновления до более новой версии для исправления потенциальных багов.
Заключение
Проблемы с синхронизацией NTP могут быть сложными и многогранными. В вашем случае важно последовательно анализировать каждый элемент инфраструктуры для выявления первопричины проблемы. Поисковая работа, направленная на выявление сбоя в сети и конфигурациях, может помочь вам не только решить текущую проблему, но и предотвратить их возникновение в будущем.