[SR-Users] Do we need rtpproxy for all kind of NAT?

Olle E. Johansson oej at edvina.net
Mon May 6 09:53:29 CEST 2013


6 maj 2013 kl. 09:49 skrev Klaus Darilion <klaus.mailinglists at pernau.at>:

> 
> 
> On 04.05.2013 16:37, John Chen wrote:
>> Hi,
>> I can configure kamailio + rtpproxy to enable calling between user
>> behind the NAT. Thanks for the example config, it is very easy to did it.
>> 
>> Do we need rtprpoxy for all kind of NAT?
>> 
>> From what i have read, only symmetric NAT that hard to be traversal-ed.
>> While other type of NAT can be traversaled using STUN.
>> 
>> But my device that behind openwrt router can't work without rtpproxy. Is
>> it expected behaviour?
>> Or i'm doing something wrong in the config?
> 
> Yes, there are cases where NATs can be traversed without a media relay. But it turned out that NATs can not be separated into symmetric/coned/... as there are many more different types, and some NATs even change there NAT-behavior during operation (e.g. when port overloading starts).
> 
> Therefore, if the setup is only for NAT devices you are operating und you know that STUN works, then you can omit the rtpproxy. But if you need to have NAT traversal working in ALL cases for ALL NATs, then the pragmatic approach is to enable rtpproxy for all cases.
> 
> Further, STUN-based NAT traversal is more or less obsolete. The successor of STUN is ICE (RFC 5245 and 5768). It is also client-based but much more advanced (and complicated). And Kamailio supports adding rtpproxy as additional ICE candidates to avoid usage of TURN relays.
> 
> But of course ICE can only be used if the user agent suports it.


If you have a server on a public IP running behind Kamailio you might not need RTPproxy relaying for calls to and from that server. Asterisk will handle NAT by itself and doesn't need help if you turn on NAT support in Asterisk. In that case, RTPproxy just adds delay to your calls.

/O


More information about the sr-users mailing list