Задать вопрос
@yarleshiy

Как пробросить порты в туннель для Asterisk?

Задача:
В офисе стоит сервер с Астериском с серым айпишником, к нему подключены SIP-фоны. Также к нему подключен аналоговый шлюз.
Всё работает, внутри офиса все друг другу звонят. также звонят во внешний мир через аналоговую линию.
Нужно, чтобы к этому серверу подключались софтфоны, сипфоны и прочие фоны из вне.
Арендовали VDS сервер с белым IP, на нем раскатили OPENVPN. К нему подключили офисный Астериск. Между ними связь есть, оба пингуют.
в IPtables на OPENVPN указал следующие правила:
iptables -t nat -A PREROUTING -p udp -d 194.xx.yy.zz --dport 5060 -j DNAT --to-destination 10.0.0.2:5060
iptables -A FORWARD -i eth0 -d 10.0.0.2 -p tcp --dport 5060 -j ACCEPT

в IPtables на Астериске:
iptables -t nat -A PREROUTING -p udp -d 10.0.0.2 --dport 5060 -j DNAT --to-destination 192.168.0.2:5060

в sip.conf
localnet 10.0.0.2
localnet 192.168.0.2
externip 194.xx.yy.zz

d8a6c1536b724bd4a8f5ef88ab18f179.png

Регистрация с софтфона не происходит =(

Прошу помощи, запутался в правилах, кого куда и как указать. Или может надо рыть вообще в другую сторону. Буду благодарен за дельные советы. Всем добра!
  • Вопрос задан
  • 1470 просмотров
Подписаться 2 Оценить 3 комментария
Пригласить эксперта
Ответы на вопрос 3
@yarleshiy Автор вопроса
Немножко изменилась схема подключения

3f2d2d504e564ec9aea53919d4a57974.png

С терминала(оптический Хуавей Ростелеком) сделаны пробросы на VPN Server;
с VPN servera через туннель на Астериск.

VPN server
-A PREROUTING -i eth1 -p udp -m udp --dport 5060 -j DNAT --to-destination 10.0.0.2:5060
-A PREROUTING -i eth1 -p udp -m udp --dport 5061 -j DNAT --to-destination 10.0.0.2:5061
-A PREROUTING -i eth1 -p udp -m udp --dport 10000:20000 -j DNAT --to-destination 10.0.0.2:10000-20000
-A FORWARD -d 10.0.0.2/32 -i eth1 -p udp -m udp --dport 5060 -j ACCEPT
-A FORWARD -d 10.0.0.2/32 -i eth1 -p udp -m udp --dport 5061 -j ACCEPT
-A FORWARD -d 10.0.0.2/32 -i eth1 -p udp -m udp --dport 10000:20000 -j ACCEPT

На Астериске только принимающие разрешающие.

Теперь авторизация проходит, даже звоню. Но, клиенты которые подключены локально к серверу СИП звонилками, не слышат меня, с СОФТовой звонилки извне.
Как понимаю, застревает голос, следовательно РТП порты. Но куда дальше копать, не знаю. Пробовал на клиентах и включать и выключать STUN, на Астериске включать и выключать режимы прохождения НАТ, не помогает =(
Ответ написан
Комментировать
Не понятно, зачем натите на Астериск?
Помимо SIP-портов, нужно пробросить и RTP-порты.
externip у вас 194.xx.yy.zz

Лучше установить на VDS Sip-proxy, а не пробрасывать порты.

А ещё проще - арендовать белый IP у провайдера
Ответ написан
Комментировать
@Antydrchert
Здравствуйте! У Вас что нибудь сдвинулось с места. У меня похожая проблема и схема. Так же звонки проходят а голоса нет с обеих сторон.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы