Я помнится однажды уже пытался провернуть подобное, но у меня не получилось. Тогда я просто забил на это дело, но теперь мне это снова нужно, причем позарез.
Собственно, так кая я никогда еще не делал подобного(в смысле успешно), то у меня нет четкого плана по решению этой проблемы. Поэтому я далее приведу список разных вопросов, так или иначе связанных с решением проблемы. Если Вы ответите хотя бы на один из этих вопросов, то мне будет уже легче.
1.Я слышал, что некоторые SIP-провайдеры позволяют решать проблему с NAT чисто на стороне сервера, без каких-либо «шаманств» со стороны клиента. Это так? И если да, то какие из известных вам SIP-провайдеров могут так делать? Прошу приложить пруфлинки.
2. Чтобы решить проблему с NAT, можно просто изменить настройки своего маршрутизатора, добавив весь трафик с определенных портов в исключение. Только беда в том, что я не знаю как проверить, что это исключение работает как надо, что я не накосячил. Может быть есть какая-нибудь специальная программа или сайт, которую можно было бы использовать для такой проверки?
3.Какие SIP-программы удалось вам САМИМ, НА ПРАКТИКЕ, научить обходить NAT(конкретный способ не важен)?
4.Про какие SIP-программы вам известно с собственного опыта, что они не умеют работать за NAT? Или же могут, но из рук вон плохо. Или еще как вариант, для подобной настройки надо будет долго «шаманить».
5.Какой STUN-сервер вы используете и почему?
6.Не могли бы посоветовать книгу/сайт, который бы позволил даже человеку не владеющему программированием(если не считать за таковое простейшие bash-скрипты) и неважно знающему даже школьный курс математики(школьный курс математики я перестал понимать где-то после 6-го класса) получить тот минимум знаний, который необходим для того, чтобы понимать смысл подавляющего большинства(а в идеале - даже всех) настроек своего домашнего маршрутизатора, и который также мог бы без автомата, «мастеров» и GUI настроить Интернет-соединение в Linux?
7.Какая разница (главным образом с практической точки зрения) между SIP и XMPP/Jingle? Мне достаточно аудиосвязи.
8.Если я в настройках SIP-клиента укажу какой-нибудь HTTP прокси, то может это помочь против NAT?
9.Можно научить SIP-клиент работать через VPN? И если да, то как?
10.Какие есть еще, кроме вышеперечисленных, способы борьбы с NAT? Например, я что-то краем уха слышал про port-forwarding. Правда я не знаю как это работает, и имеет ли вообще отношение к обходу NAT.