LINUX.ORG.RU
ФорумAdmin

NTP работает не на всех интерфейсах

 ,


0

1

Добрый всем день. Возникла такая проблема с работой NTP сервера на CentOS Linux release 7.3.1611 (Core) не работает на определенных интерфейсах.
Поднял сервер NTP на том же сервере где распологается Asterisk (FreePBX 13.0.195) для раздачи времени на некоторые телефоны т.к. не все берут через sip. CentOS находится в облаке и имеет свой белый IP 4.3.2.1, телефоны и мой рабочий компьютер находимся отдельно в офисе и также имеем свой белый IP 1.2.3.4.
CentOS также по средствам VPN соеденен с моим офисом и имеет адрес 192.168.5.10. VPN уже собирались убирать т.к. уже нет необходимости.
Специально создал правила в iptables чтоб 100% ничего не блокировалось.

-A INPUT -s 1.2.3.4/32 -j ACCEPT (1.2.3.4 - это наш внешний IP)
-A INPUT -s 192.168.200.0/24 -j ACCEPT
И тут проблема: если пытаешься получить с внешнего адреса 4.3.2.1 то соответсвенно ничего не получаешь. На CentOS'е команда netstat -tulnp | grep 123 выдает:
udp        0      0 192.168.5.10:123        0.0.0.0:*                           -
udp        0      0 4.3.2.1:123		 	    0.0.0.0:*                           -
udp        0      0 127.0.0.1:123           0.0.0.0:*                           -
udp        0      0 0.0.0.0:123             0.0.0.0:*                           -
udp6       0      0 fe89::200:54bd:ggg78:123 :::*                                -
udp6       0      0 fe89::5f4:fdfg:3458::123 :::*                                -
udp6       0      0 ::1:123                 :::*                                -
udp6       0      0 :::123                  :::*                                -
Команда tcpdump -i eth0 -n -nn udp and port 123 невидит никаких пакетов на 123 порт. Если же пытаешься получить с 192.168.5.10 то получаешь сразу и без проблем, соответственно tcpdump все пакеты фиксирует. Попробовал проверить программой netcat вот какие результаты: Здесь в качестве примера открыл на прослушивание другой порт и посмотрел netstat'ом что открыто.
nc -lu -p 122
udp        0      0 0.0.0.0:122             0.0.0.0:*
Теперь останавливаем ntpd и открываем этот порт с помощью netcat'а
nc -lu -p 123
udp        0      0 192.168.5.10:123        192.168.200.148:3202    ESTABLISHED
Здесь 192.168.200.148 это какой-то sip телефон полез. В общем как я понимаю при работе NTP слушается только интерфейс 192.168.5.10. Как его заставить слушать все интерфейсы, в конфиге ntpd явно указал какие интерфейсы слушать. В общем я что-то делаю не так?
Файл конфига ntp:

driftfile /var/lib/ntp/drift
restrict default nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict -6 ::1

restrict 1.2.3.0 mask 255.255.255.0 nomodify notrap
restrict 192.168.200.0 mask 255.255.255.0 nomodify notrap

logfile /var/log/ntp.log

pool 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst

includefile /etc/ntp/crypto/pw

interface ignore wildcard
interface listen lo
# на этом интерфейсе 4.3.2.1
interface listen eth0
# на этом интерфейсе 192.168.5.10
interface listen tun0

keys /etc/ntp/keys

disable monitor



Последнее исправление: Antonocom (всего исправлений: 1)

Команда tcpdump -i eth0 -n -nn udp and port 123 невидит никаких пакетов на 123 порт.

tcpdump работает до iptables, поэтому, либо вы ошиблись с интерфейсом, либо пакеты не доходят. Если на вашем 1.2.3.4 tcpdump показывает исходящие udp пакеты, значит их режет провайдер/хостер...

mky ★★★★★
()

В общем как я понимаю при работе NTP слушается только интерфейс 192.168.5.10

Не правильно понимаете, строчка.

udp        0      0 0.0.0.0:123             0.0.0.0:*                           -
Как бы намекает.

Команда tcpdump -i eth0 -n -nn udp and port 123 невидит никаких пакетов на 123 порт.

А должна именно на eth0 ? Начните с -i any может «прилетит» и поймете где проблема?

anc ★★★★★
()
Ответ на: комментарий от mky

Попробовал поотлавливать на всех интерфейсах

tcpdump -i any -nn udp and port 123
Посылал пакеты с разных источников но ничего не приходит. Например
nc -u 4.3.2.1 123
и пакетов нет, если тут же меняю порт на tcpdump'е и netcat'е например на 122
nc -u 4.3.2.1 122
Все отправляемые пакеты приходят на 122 порт интерфейс eth0. Получается как будто бы действительно провайдер срезает те что идут на 123. Буду связываться с провайдером и дальше выяснять

Antonocom
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.