[Asterisk-Users] NAT= setting for a public proxy

Shanon Swafford asterisk at swaffordfamily.com
Sat Feb 26 08:27:27 MST 2005


Hi,

I'm chasing a bug in chan_sip.c where Asterisk is removing the rport 
parameter out of the via headers.

Here's my scenario:

UA -> Snom NATf -> Snom 4S Proxy -> Asterisk Echo Test Function

NATf, the proxy, and Asterisk are all on public IPs.

So my question is:  In chan_sip.c, copy_via_headers function, I see an if 
statement testing for "(ast_test_flag(p, SIP_NAT) == SIP_NAT_ALWAYS)"

What in sip.conf do I do to toggle/change SIP_NAT to try to match this if 
statement?

Following is my sip.conf for the proxy.  Note I've tried nat=yes, nat=no, 
nat=always but the darn thing always takes the "else" instead of matching 
the if.


#sip.conf
; Make asterisk register with a foreign proxy
; In this case:
; 9723048720 = account on foreign proxy
; passwd = password for foreign account
; abpusa.com = domain to register with
; 2000 = Asterisk extension to ring if somebody on the foreign proxy calls 
9723048720

register => 9723048720:passwd at abpusa.com/2000

; Used in extension.conf
[snomproxy]
nat=no
type=peer
context=extensions
host=abpusa.com
;disallow=all
;allow=ulaw


Here is a sip debug: notice the via for 192.168 in the inbound INVITE, then 
notice the lack of it on the outbound 200 OK.


Sip read:
INVITE sip:10 at dink.abpusa.com:5070 SIP/2.0
v: SIP/2.0/UDP 
209.189.239.106:5060;branch=z9hG4bK-6f04a3acfdd3002c645fcb7605027073.1
v: SIP/2.0/UDP 
209.189.239.106:5062;branch=z9hG4bK-dc2a770cf56399c4c0eb8ca964813dc9;nat=true
v: SIP/2.0/UDP 
192.168.5.102:5060;branch=z9hG4bK-d0t7a9g6nme4;rport=5060;received=4.13.144.17
Record-Route: <sip:abpusa.com:5060;maddr=209.189.239.106;lr=1>
Record-Route: 
<sip:209.189.239.106:5062;transport=udp;dest=4.13.144.17-5060;to-tag=u2dogw3pvf;lr=1>
f: <sip:9723048721 at abpusa.com>;tag=u2dogw3pvf
t: <sip:5551212 at abpusa.com;user=phone>
i: 3c29b1afbe6e-58hwc55fzbop at 192-168-5-102
CSeq: 1 INVITE
Max-Forwards: 68
m: <sip:9723048721 at 192.168.5.102:5060;line=70n796w7>
P-Key-Flags: keys="3"
User-Agent: snom190-3.56t
Accept-Language: en
Accept: application/sdp
Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, NOTIFY, SUBSCRIBE, PRACK, 
MESSAGE, INFO
Allow-Events: talk, hold, refer
Supported: timer, 100rel, replaces
Session-Expires: 3600
P-Asserted-Identity: "Shanon Snom190" 
<sip:9723048721 at abpusa.com>;tag=u2dogw3pvf
c: application/sdp
l: 392

v=0
o=root 1476297067 1476297067 IN IP4 209.189.239.106
s=call
c=IN IP4 209.189.239.106
t=0 0
m=audio 40126 RTP/AVP 18 4 9 3 0 8 101
a=rtpmap:18 g729/8000
a=rtpmap:4 g723/8000
a=rtpmap:9 g722/16000
a=rtpmap:3 gsm/8000
a=rtpmap:0 pcmu/8000
a=rtpmap:8 pcma/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=ptime:20
a=sendrecv
a=silenceSupp:off - - - -
a=setup:actpass

23 headers, 18 lines
Using latest request as basis request
Sending to 209.189.239.106 : 5060 (non-NAT)
Found user '9723048721'
Found RTP audio format 18
Found RTP audio format 4
Found RTP audio format 9
Found RTP audio format 3
Found RTP audio format 0
Found RTP audio format 8
Found RTP audio format 101
Peer audio RTP is at port 209.189.239.106:40126
Found description format g729
Found description format g723
Found description format g722
Found description format gsm
Found description format pcmu
Found description format pcma
Found description format telephone-event
Capabilities: us - 0x4 (ulaw), peer - audio=0x10f 
(g723|gsm|ulaw|alaw|g729)/video=0x0 (nothing), combined - 0x4 (ulaw)
Non-codec capabilities: us - 0x1 (g723), peer - 0x1 (g723), combined - 0x1 
(g723)
Looking for 10 in extensions
list_route: hop: <sip:abpusa.com:5060;maddr=209.189.239.106;lr=1>
list_route: hop: 
<sip:209.189.239.106:5062;transport=udp;dest=4.13.144.17-5060;to-tag=u2dogw3pvf;lr=1>
list_route: hop: <sip:9723048721 at 192.168.5.102:5060;line=70n796w7>
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 0
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 1
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 2
Transmitting (no NAT):
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 
209.189.239.106:5060;branch=z9hG4bK-6f04a3acfdd3002c645fcb7605027073.1
Via: SIP/2.0/UDP 
209.189.239.106:5062;branch=z9hG4bK-dc2a770cf56399c4c0eb8ca964813dc9;nat=true
Via: SIP/2.0/UDP 
192.168.5.102:5060;branch=z9hG4bK-d0t7a9g6nme4;received=4.13.144.17
From: <sip:9723048721 at abpusa.com>;tag=u2dogw3pvf
To: <sip:5551212 at abpusa.com;user=phone>;tag=as067bdac9
Call-ID: 3c29b1afbe6e-58hwc55fzbop at 192-168-5-102
CSeq: 1 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER
Contact: <sip:10 at 4.16.23.149:5070>
Content-Length: 0


 to 209.189.239.106:5060
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 0
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 1
Feb 26 09:10:51 NOTICE[10677]: chan_sip.c:3084 copy_via_headers: Shanon: 
Used Original Via # 2
We're at 4.16.23.149 port 10798
Answering with preferred capability 0x4 (ulaw)
Answering with non-codec capability 0x1 (telephone-event)
Reliably Transmitting (no NAT):
SIP/2.0 200 OK
Via: SIP/2.0/UDP 
209.189.239.106:5060;branch=z9hG4bK-6f04a3acfdd3002c645fcb7605027073.1
Via: SIP/2.0/UDP 
209.189.239.106:5062;branch=z9hG4bK-dc2a770cf56399c4c0eb8ca964813dc9;nat=true
Via: SIP/2.0/UDP 
192.168.5.102:5060;branch=z9hG4bK-d0t7a9g6nme4;received=4.13.144.17
Record-Route: <sip:abpusa.com:5060;maddr=209.189.239.106;lr=1>
Record-Route: 
<sip:209.189.239.106:5062;transport=udp;dest=4.13.144.17-5060;to-tag=u2dogw3pvf;lr=1>
From: <sip:9723048721 at abpusa.com>;tag=u2dogw3pvf
To: <sip:5551212 at abpusa.com;user=phone>;tag=as067bdac9
all-ID: 3c29b1afbe6e-58hwc55fzbop at 192-168-5-102
CSeq: 1 INVITE
User-Agent: Asterisk PBX
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER
Contact: <sip:10 at 4.16.23.149:5070>
Content-Type: application/sdp
Content-Length: 214

v=0
o=root 10677 10677 IN IP4 4.16.23.149
s=session
c=IN IP4 4.16.23.149
t=0 0
m=audio 10798 RTP/AVP 0 101
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=silenceSupp:off - - - -

 to 209.189.239.106:5060





More information about the asterisk-users mailing list