хотелось бы узнать алгоритм определения source IP исходящих пакетов SIP у asterisk на linux
пока удалось выяснить опытным путём что исх. IP зависит от маршрута до клиента (сейчас маршрут по умолчанию через eth0 и шлюз там 10.66.66.8, а для VoIP-трафика есть vlan-интерфейс там шлюз 172.16.66.8 и SIP-соединения приходят из инета на 172.16.66.4 через DNAT)
так вот asterisk получает входящие пакеты на 172.16.66.4 (vlan0), а отвечает пакетами с 10.66.66.7 (eth0), ответные пакеты до клиента не доходят
но если добавить индивидуальный маршут до клиента через шлюз 172.16.66.8 то asterisk уже отвечает с 172.16.66.4 (vlan0) и всё работает норм.
вопрос, как можно повлиять на asterisk чтобы он всегда отвечал с того же IP на который пришёл вх. пакет SIP-соеднинения? или это от настройки сети в ядре linux зависит?
(вариант bindaddr=172.16.66.4 понятен и работат, но тут он не подходит; externip=/localnet= также не рассматривается ибо SIP-ALG включен на маршрутизаторе)
вот как это выглядит через tcpdump:
14:12:11.606668 IP 212.57.180.157.24027 > 172.16.66.4.5060: SIP, length: 551
14:12:11.607370 IP 10.66.66.7.5060 > 212.57.180.157.24027: SIP, length: 590
Задан: 2015-03-05 13:10:18 +0400
Просмотрен: 335 раз
Обновлен: Mar 05 '15
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
asterisk никуда чего не рулит - это не роутер. Все должно быть разрулино маршрутизацией. А ваш asterisk может подставлять NAT для локальных сетей когда не расписано localnet. Пропишите туда все локальные сети - 10.0.0.0/255.0.0.0 и 172.16.0.0/255.240.0.0 и 192.168.0.0/255.255.0.0
awsswa ( 2015-03-05 13:27:19 +0400 )редактироватьлокальные сети уже все прописывал в разных вариантах - поведение * не меняется
surae ( 2015-03-05 15:46:43 +0400 )редактироватьвсе совету вам уже дали - не получаетя настроить переходите в платный суппорт - там настроят за вас
awsswa ( 2015-03-05 16:45:11 +0400 )редактироватьда получается настроить ... вообще, по идее, нужно просто перепроектировать сеть попроще, но раз уж столкнулся хочется узнать как оно работает, больше из спортивного интереса и для профессионального роста над собой, так сказать ;)
surae ( 2015-03-05 16:54:56 +0400 )редактироватьдобавляйте маршруты куда необходимо - и все разрулится - нечего страшного в 40-50 маршрутах нету
awsswa ( 2015-03-05 18:14:06 +0400 )редактироватьну динамические ещё есть клиенты
surae ( 2015-03-05 19:52:52 +0400 )редактироватьну исходники еще есть у астериска.
meral ( 2015-03-05 23:02:18 +0400 )редактировать"(вариант bindaddr=172.16.66.4 понятен и работат, но тут он не подходит; externip=/localnet= также не рассматривается ибо SIP-ALG включен на маршрутизаторе)" - ДИАГНОЗ.
Zavr2008 ( 2015-03-06 17:59:55 +0400 )редактироватьМикротик стоит?
Zavr2008 ( 2015-03-06 18:00:51 +0400 )редактироватьMIkroTik, да
surae ( 2015-03-06 22:36:42 +0400 )редактироватьну так чего вы хотите то?выстаьте тогда nat=no и требуйте от роутера чтоб он работал нормально
meral ( 2015-03-07 03:18:41 +0400 )редактироватьпохоже MikroTik SIP-ALG не тянет всё-таки пропуск SIP в обе стороны ... наружу подключения к провайдерам ещё куда ни шло, а если добавляются внешние SIP-клиенты к серверу то начинает барахлить, появляются обрывы связи, иногда срывается регистрация у провайдеров ... я отключил всё-таки SIP-ALG
surae ( 2015-03-23 19:42:09 +0400 )редактировать