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

Klaus Darilion klaus.mailinglists at pernau.at
Mon May 6 09:49:52 CEST 2013



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.

regards
Klaus



More information about the sr-users mailing list