skeletor Posted March 19, 2021 Posted March 19, 2021 (edited) Всем привет. Есть сервер elastix'a и моменты пропадания электричества, все сервера бутаются и вот на шлюзе перестают натится пакеты от этого elastix'a. Вот как выглядит дамп на внешнем интерфейсе: 13:15:41.855377 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:41.953371 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:42.057326 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:42.153244 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 При этом все остальные UDP пакеты (например, резолвинг DNS) работает нормально, то есть NATится. Правила файервола: Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 9689 2834K SNAT all -- * ens34 10.0.0.0/8 0.0.0.0/0 to:X.X.X.X 119 6344 SNAT all -- * ens35 10.0.0.0/8 0.0.0.0/0 to:Y.Y.Y.Y 3743 1185K SNAT all -- * ens34 192.168.0.0/16 0.0.0.0/0 to:X.X.X.X 2 120 SNAT all -- * ens35 192.168.0.0/16 0.0.0.0/0 to:Y.Y.Y.Y Потом (иногда спустя день) оно само (ну то есть никто ничего не делает) разлипает и начинает NATится. Иногда не разлипает и приходится бутать то шлюз, то elastix. Иногда это приходится делать по несколько раз. После замены полностью шлюза на новый (как железо, так и ОС, только конфиги старые), проблема не ушла. Ну вот даже не знаю, куда можно копать и что ещё смотреть? Edited March 19, 2021 by skeletor Вставить ник Quote
ne-vlezay80 Posted March 19, 2021 Posted March 19, 2021 2 часа назад, skeletor сказал: Всем привет. Есть сервер elastix'a и моменты пропадания электричества, все сервера бутаются и вот на шлюзе перестают натится пакеты от этого elastix'a. Вот как выглядит дамп на внешнем интерфейсе: 13:15:41.855377 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:41.953371 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:42.057326 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 13:15:42.153244 IP 10.0.1.11.5060 > X.X.X.X.5060: SIP: REGISTER sip:X.X.X.X SIP/2.0 При этом все остальные UDP пакеты (например, резолвинг DNS) работает нормально, то есть NATится. Правила файервола: Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 9689 2834K SNAT all -- * ens34 10.0.0.0/8 0.0.0.0/0 to:X.X.X.X 119 6344 SNAT all -- * ens35 10.0.0.0/8 0.0.0.0/0 to:Y.Y.Y.Y 3743 1185K SNAT all -- * ens34 192.168.0.0/16 0.0.0.0/0 to:X.X.X.X 2 120 SNAT all -- * ens35 192.168.0.0/16 0.0.0.0/0 to:Y.Y.Y.Y Потом (иногда спустя день) оно само (ну то есть никто ничего не делает) разлипает и начинает NATится. Иногда не разлипает и приходится бутать то шлюз, то elastix. Иногда это приходится делать по несколько раз. После замены полностью шлюза на новый (как железо, так и ОС, только конфиги старые), проблема не ушла. Ну вот даже не знаю, куда можно копать и что ещё смотреть? Нужно проверить, загружается ли модуль nf_conntrack_sip Вставить ник Quote
skeletor Posted March 19, 2021 Author Posted March 19, 2021 (edited) Спасибо, похоже в правильную сторону натолкнули. Модуль не загружен. Гугление навело на практически мой случай https://unix.stackexchange.com/questions/461320/nf-conntrack-sip-does-not-work-sometimes-restarting-iptables-usually-fixes-it . Сейчас у меня всё работает, модули подгрузил: # lsmod | grep sip nf_nat_sip 20480 0 nf_conntrack_sip 32768 1 nf_nat_sip nf_nat 36864 3 nf_nat_ipv4,xt_nat,nf_nat_sip nf_conntrack 172032 11 xt_conntrack,nf_nat,xt_state,ipt_MASQUERADE,nf_nat_ipv4,xt_nat,nf_conntrack_sip,xt_helper,nf_conntrack_netlink,xt_CT,nf_nat_sip Добавил правила из статьи и по счётчикам видно, что пакеты не бегают (облом): # iptables -t raw -L -nv Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 0 0 CT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp spt:5060 ctstate NEW,RELATED,ESTABLISHED state NEW,RELATED,ESTABLISHED helper match "sip" CT 0 0 CT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:5060 ctstate NEW,RELATED,ESTABLISHED state NEW,RELATED,ESTABLISHED helper match "sip" CT Видно, что helper=sip тоже не используется # conntrack -L | grep -E '5060|sip'|grep 10.0.1.11 udp 17 141 src=10.0.1.11 dst=10.0.2.181 sport=5060 dport=5060 src=10.0.2.181 dst=10.0.1.11 sport=5060 dport=5060 [ASSURED] mark=0 use=1 udp 17 178 src=10.0.1.11 dst=X.X.X.X sport=5060 dport=5060 src=X.X.X.X dst=X.X.X.X sport=5060 dport=5060 [ASSURED] mark=0 use=1 udp 17 132 src=10.0.102.13 dst=10.0.1.11 sport=5060 dport=5060 src=10.0.1.11 dst=10.0.102.13 sport=5060 dport=5060 [ASSURED] mark=0 use=1 udp 17 160 src=10.0.1.11 dst=10.0.2.187 sport=5060 dport=5060 src=10.0.2.187 dst=10.0.1.11 sport=5060 dport=5060 [ASSURED] mark=0 use=1 udp 17 133 src=10.0.1.11 dst=10.0.102.15 sport=5060 dport=5060 src=10.0.102.15 dst=10.0.1.11 sport=5060 dport=5060 [ASSURED] mark=0 use=1 udp 17 132 src=10.0.102.11 dst=10.0.1.11 sport=5060 dport=5060 src=10.0.1.11 dst=10.0.102.11 sport=5060 dport=5060 [ASSURED] mark=0 use=1 conntrack v1.4.5 (conntrack-tools): 1426 flow entries have been shown. Начал копать дальше и нашёл статьи https://klink0v.livejournal.com/484932.html https://ixnfo.com/moduli-nat-dlya-vpn-ftp-sip.html и действительно, net.netfilter.nf_conntrack_helper был выставлен в 0. Поставил в 1 и уже стало видно, что используется: udp 17 3582 src=10.0.1.11 dst=X.X.X.X sport=5061 dport=5060 [UNREPLIED] src=X.X.X.X. dst=X.X.X.X sport=5060 dport=5061 mark=0 helper=sip use=1 Надеюсь, что это кому-то тоже поможет. Правила в файерволе (-t raw), походу лишние, но ещё понаблюдаю. Edited March 19, 2021 by skeletor Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.