По какой причине Sip телефония через VPN может работать только в одну сторону?
Добрый день, уважаемые!
Есть в парке сервер asterisk от внешнего мира спрятанный за firewall на Centos7
Потребовалось из в не подключить пару тройку телефонов. Выбрал вариант через OpenVPN
Дома поставил телефон Fanvil x3s настроил учетку и указал файл конфигурации и сертификаты,
для удобства вторую учетку создал на компьютере.
В результате, Сип клиент на компьютере прекрасно подключается, и связь работает в обе стороны.
А x3s подключается, регистрируется, может звонить, но на него позвонить не получается,
такое ощущение что asterisk его не видит и считает что телефон не зарегистрирован.
с сервера с астериск на вэб интерфейс телефона зайти можно, статус в телефоне зарегестрированно да и сам он звонить может.
В чем может быть затык прошу подсказать!
Конфиг клиента openvpn
client
dev tun
dev-type tun
proto tcp
remote 165.236.34.3
port 1194
resolv-retry infinite
nobind
auth SHA1
ca ca.crt
cert client.crt
key client.key
cipher AES-256-CBC
remote-cert-tls server
verb 3
sndbuf 0
rcvbuf 0
comp-lzo
Так как с компьютера клиент работает прекрасно грешу на телефон, на какую нибудь встроенную безопасность.
телефон без ВПН
363/363 192.168.10.250 D Yes Yes A 5060 OK (24 ms)
сип-клиент на компьютере
377/377 10.0.0.14 D Yes Yes A 5060 OK (5 ms)
сип телефон
373/373 10.0.0.10 D No No A 5816 UNREACHABLE
Снимите с помощью tcpdump pcap-дамп в случае SIP-клиента и в случае SIP-телефона после чего сравните их (или выложите сюда).
Может быть на Fanvil у Вас настроен STUN, который вводит в заблуждение телефон?
Koran, из вывода sngrep не ясно, надо внутрь пакетов смотреть.
Кстати, надо снять дамп регистрации + вызовы (тот, проблемный + аналогичный на SIP-софтфон).
Gansterito, ^((( как не пытался, но в tcpdump вообще нет сообщений хоть как то относящихся к сип.
еще на сотовом телефоне сип клиент програмный через ВПН работает на ура, запара только с железным аппаратом..
телнетом в него проваривается. пингом пинтуется, вэб интерфейс работает,
Sngeap показывается что он регистрируется. но такое ощущение что регистрирыуется только один конец, на отправку, а на прием звонков как то нет.
где INTERFACE - название интерфейса, на котором снимаете дамп. В него попадет все передаваемое. Можно ограничить фильтром перечень IP-адресов, например:
Koran, в дамп не попал вызов, то есть трубку при звонке не подняли ни в первом, ни во втором случае. Сделайте дамп именно с подъемом трубки чтобы воспроизвелась проблема с односторонней слышимостью.
так там не слышимость а именно дозвон.
звонок с 373 или любого другого внутреннего или городского проходит на 377 (номер через ВПН на компьютере) можно поднять трубку и поговорить
а звонок с любого в нутренниго или городского на 373 (физический аппарата через ВПН) не проходит, он и не вкурсе что на него была попытка позвонить, трубку поднять не получится .
Как будто Астериск незнает где его искать.
Вот новый файлик https://www.dropbox.com/s/pvpciuw7pn0874c/dump1.pc...
10.0.0.6 физический телефон 373
10.0.0.10 сип клиент на ПК 377
и телефон без ВПН в офисе 642
Оба телефона на ВПН дозваниваются на обычный, трубку снял.
на 377 позвонил трубку снял
на 373 не дозвонился, так что трубку не снял :)
Gansterito,
Поставил на компьютер usergate и openvpn сдела правило nat у телефона убрал vpn и он за работал.
но это не вариант , мне требуется 6 таких телефонов поставить а в дальнейшем скорее всего еще штук 6
не ставить же прокси на каждый комп рядом с телефоном :(
Не хватало iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j SNAT –-to-source 192.168.10.1
где 10.0.0.0/24 Сеть openVpn
а 192.168.10.1 смотрящий в сторону Астериск интерфейс.
как интересно софт клиенты обходили отсутствие этого правила STUN сами настроили...
Koran, раз разобрались (не сразу заметил, извините), обратите внимание, что
telnet -это tcp. А SIP -это в первую очередь UDP. И делая телнет на 5060 вы ничего не проверите.
Единственно 100% вариант проверить сетевую часть, это отправить sip пакет OPTIONS. Это можно сделать с помощью программы sipsak.
sipsak -vs -s sip:IP_адрес телефона.
в ответ вы получите OK от аппарата. Значит все ок по сетевой части.
Дамп вам не поможет. В дампе не будет даже попытки АТС сделать вызов на телефон, потому что...
если у вас стоит UNREACHABLE напротив вашего телефона, значит и позвонить на него не получится.
С АТС пинг на 10.0.0.10 точно проходит? Аппарат на пинг отвечает? Если веб открывается, подозреваю, что и пинг ок.
Покажите на АТС iptables -L -n -v