[SR-Users] Cannot hear voice with symmetric NAT and STUN

Arsen arsen.semionov at gmail.com
Wed Feb 8 11:28:36 CET 2017


Hi Daniel,

I am not sure that nat_uac_test can determine type of NAT device.
and why you need all these checks if you always use rtpproxy? (another q
from 2013 :)

The idea is to reduce using of rtpproxy for better scalability and voice
quality. If we can beat all types of NAT with a near-end NAT traversal,
except symmetric NAT why do we always use proxy option in case if NAT is
detected.

On Wed, Feb 8, 2017 at 12:01 PM, Daniel Tryba <d.tryba at pocos.nl> wrote:

> On Wed, Feb 08, 2017 at 01:12:05AM -0700, Arsen Semionov wrote:
> > good question from 2013 :)
> > Maybe someone has experience and can confirm this?
>
> The answer to the 2013 question is: if you can depend on this (I have
> never seen it) you can script kamailio to make use of it.
>
> > My main question: is it possible to determine when it's required to use
> RTP
> > proxy ? In other words can we know that the client is behind symmetric
> NAT
> > device or we just use rtpproxy as a silver bullet?
>
> The "default" config has rtpproxy on detected NAT as an example. But
> personally I go for the always proxy option, it never failed so far
> (except for misconfigured client side firewalls that wouldn't have
> permitted p2p rtp anyway but now can easily fixed by permitting the
> traffic from the rtp range of udp ports from the rtpengine/proxy
> servers).
>
> NAT detect example below (so take a look at nat_uac_test to see what
> kind of tests there are):
>
> route[NATDETECT] {
> #!ifdef WITH_NAT
>         force_rport();
>         if (nat_uac_test("19")) {
>                 if (is_method("REGISTER")) {
>                         fix_nated_register();
>                 } else {
>                         if(is_first_hop())
>                                 set_contact_alias();
>                 }
>                 setflag(FLT_NATS);
>         }
> #!endif
>         return;
> }
>
>
> route[NATMANAGE] {
> #!ifdef WITH_NAT
>         if (is_request()) {
>                 if(has_totag()) {
>                         if(check_route_param("nat=yes")) {
>                                 setbflag(FLB_NATB);
>                         }
>                 }
>         }
>         if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB)))
>                 return;
>
>         rtpproxy_manage("co");
>
>
> _______________________________________________
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
> sr-users at lists.sip-router.org
> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
>



-- 
Regards,
Arsen.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20170208/91bb3e94/attachment.html>


More information about the sr-users mailing list