VOIP через сеть 3G

Я создал STUN-подобный + рандеву-сервер. Я пробовал все это через WIFI (за внутренним NAT), и все работает отлично. У меня есть два мобильных интернет-провайдера, один разрешающий все (VOIP + P2P + MODEM) (ISP 1), другой позволяющий все, кроме P2P (ISP 2).

При попытке интернет-провайдера 1, он также работает нормально. Тем не менее, когда я пытаюсь с ISP 2, пакет udp не проходит.

Я подключил свой компьютер к телефону на ISP 2 и запустил TUM NAT Analyzer.

Это говорит мне

UPnP Test (?):  No UPnP device found

STUN Test (?):  Symmetric NAT

UDP Binding Test (?):   Endpoint depenent binding, port prediction may be hard
TCP Binding Test:   Endpoint depenent binding, port prediction may be hard

UDP Mapping Test (?):   local and external IP addresses were different 
(NAT). Your source ports were not preserved. It may be hard to predict your external source port.
TCP Mapping Test:   local and external IP addresses were different (NAT).
Your source ports were not preserved. It may be hard to predict your external source port.

SIP ALG (?):    The initial SIP INVITE packet has not been modified on its way to our servers.
There is no SIP ALG involved
FTP ALG:    The initial FTP PORT command has been modified.
Most probably, your NAT implements a FTP-ALG

Таким образом, очевидно, что он использует симметричный NAT со случайным влиянием на порт (очевидно, нет способа использовать прогнозирование портов).

Поэтому мне было интересно, ISP, который позволяет VOIP, но не P2P (и не SIP ALG), ожидает ли VOIP использовать сервер ретрансляции для работы?

Или я что-то упустил...? Как я понимаю, AT&T (и, возможно, другие) использует тот же тип NAT, что и мой провайдер 2... (симметричный NAT), так что, думаю, это станет большой проблемой....

Любой, хотя, идея, реакция была бы отличной.

1 ответ

Решение
  • Многие провайдеры VoIP включают в себя инфраструктуру на основе SBC или других прокси-серверов RTP, которая в любом случае будет ретранслировать трафик мультимедиа независимо от типа NAT, который у вас есть.
  • Если другая конечная точка не находится за симметричным NAT (например, шлюз PSTN, который является очень распространенным случаем), вы можете подключиться к ним без каких-либо дополнительных ретрансляторов.
  • В противном случае вам нужно реле TURN
Другие вопросы по тегам