Привет. Есть два сервера Asterisk в разных офисах, объединённых vpn-ом и транком iax.
На каждом из концов офисов (шлюзах) создан vpn-клиент, и на каждом Asterisk зарегистрирован sip номер. Проблема в том что при звонке одного sip номера что зарегистрирован за vpn-клиентом, на другой номер второго Asterisk, слышно собеседника только из одной стороны (схема прилагается, а также sngrep из каждого сервера ). rtp 10000-20000 разрешены.
В чем может быть проблема?
Если вы старательно заштриховываете ИП адреса в дебаге, значит там публичные адреса.
Если там публичные адреса - то у вас криво работает VPN.
При правильной схеме работы все участки прохождения вызовов идут по приватным адресам. В том числе и у удалённых клиентов, которые пользуются VPN. Их ИП-телефон, или софтфон, или SIP-приложение, должен биндится на внутренний ИП-адрес, который VPN-слиент заворачивает в туннель, а не НАТит. В такой схеме не должно быть никаких трансляций адресов, и пробросов портов типа RTP 10000-20000 UDP.
А на обоих Астерисках должны быть прописаны диапазоны локальных сетей офисоф А и Б, а также диапазоны внутренних адресов удалённых VPN-клиентов. Это указание Астериску, что не нужно подставлять внешний публичный extern IP.
Приправильной регистрации удалённых VPN-клиентов они должны видится по CLI> sip show peers
как локальные, nat=no
Проверяйте трассу до них с Астерисков через
mtr ip_addr_remote_sip_client
должно допрыгивать за 2 скачка.
Интересное облако у вас на схеме, на нём написано, что это Интернат. Могу спросить: наверное интернат для слабовидящих?