[asterisk-dev] [Code Review]: Add a SIP nat=auto setting

Terry Wilson reviewboard at asterisk.org
Fri Jan 27 08:05:27 CST 2012



> On Jan. 27, 2012, 7:54 a.m., Simon Perreault wrote:
> > Looks good.
> > 
> > It is similar to what Cisco SBC does:
> > http://www.cisco.com/en/US/docs/routers/asr1000/configuration/guide/sbcu/sbc_nat.html#wp1000953
> > 
> > Could nat=auto become the new default?

It seems like it would be a good default. I figure maybe we leave it in for a while for some testing then switch if it works well. It's definitely a discussion to have on the mailing list at some point, though.


> On Jan. 27, 2012, 7:54 a.m., Simon Perreault wrote:
> > /trunk/channels/chan_sip.c, line 16228
> > <https://reviewboard.asterisk.org/r/1698/diff/2/?file=23678#file23678line16228>
> >
> >     The use of the term "peer" is confusing me. I have no idea what the sentence means.

Yeah, that sentence is confusing. I threw it in to remind me what was going on. Basically, we set the flags on the sip_pvt so that even if we are getting a request (say, a REGISTER) that doesn't match a peer, we can still reply the same way that we would if we matched a peer to avoid leaking information about peers defined on the system. I'll re-word it.


- Terry


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1698/#review5326
-----------------------------------------------------------


On Jan. 26, 2012, 8:28 p.m., Terry Wilson wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/1698/
> -----------------------------------------------------------
> 
> (Updated Jan. 26, 2012, 8:28 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Summary
> -------
> 
> First, this patch as originally posted is from JIRA user pedro-garcia. It has been in JIRA for a long while, and has finally come up to be considered. There were some changes that I wanted to made to the original patch, so I tried contacting the author to get them to put the patch on reviewboard, but after a week I got no response. So, I'm putting the original patch up, then will immediately add a review with my changes. Many thanks to pedro-garcia for his contribution.
> 
> From the JIRA issue:
> 
> I have some devices in the following scenario:
> 
> Asterisk server with public IP address
> Mobile devices (clients):
> 
> When in internal network, no NAT between the client and the server
> When in "roaming" (i.e. a Hotel with WiFi), the client is behing a NAT
> When in 3G, operator transparent sip proxy so it looks as no NAT, but does not support symmetric RTP.
> Sometime, the device gets a public IP with no NAT at all.
> No NAT setting available in asterisk works for all these scenarios at the same time, and I can not request the user to activate different accounts depending on its location.
> 
> I have added a new NAT setting (nat=auto) to the current ones. When set, chan_sip auto detects from the Via header, the recv sockaddr, and the rport setting if the client is behind a NAT.
> 
> It also adds to cli interface results (sip show peer/s) info on this (so now you could see "N" for NAT and nothing for no NAT as before, "a" for auto detect no NAT, and "A" for autodetect NAT.
> 
> 
> This addresses bug ASTERISK-17860.
>     https://issues.asterisk.org/jira/browse/ASTERISK-17860
> 
> 
> Diffs
> -----
> 
>   /trunk/channels/chan_sip.c 352610 
>   /trunk/channels/sip/include/sip.h 352610 
>   /trunk/configs/sip.conf.sample 352610 
> 
> Diff: https://reviewboard.asterisk.org/r/1698/diff
> 
> 
> Testing
> -------
> 
> Lots of reloads with changing values, and registry natted and un-natted phones. I also set the nat_supertest in testsuite to run with nat=auto to make sure that it responded the same with existing and non-existing peers.
> 
> 
> Thanks,
> 
> Terry
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120127/d3e97ced/attachment.htm>


More information about the asterisk-dev mailing list