Look at this:
U 84.203.148.146:5060 -> 157.190.74.151:5060
SIP/2.0 200
OK..Via: SIP/2.0/UDP
157.190.74.151;rport=5060;branch=z9hG4bKcd
17ddd1b59ead49..From: "2092"
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c
..To:
<sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
8ffc2d18b218
70b3@157.190.74.151..CSeq: 64735 INVITE..User-Agent: Grandstream BT100
1.0.
5.18..Contact: <sip:2093@172.16.3.31>..Allow:
INVITE,ACK,CANCEL,BYE,NOTIFY,
REFER,OPTIONS,INFO,SUBSCRIBE..Content-Type: application/sdp..Supported:
rep
laces..Content-Length: 174....v=0..o=2093 8000 0 IN IP4
172.16.3.31..s=SIP
Call..c=IN
IP4 84.203.148.146..t=0 0..m=audio 35016 RTP/AVP
0..a=sendrecv..
a=rtpmap:0
PCMU/8000/3..a=ptime:20..a=nortpproxy:yes..
I
assume this is where you get an error message. You haven't called
fix_nated_contact() for this message, and in fact I believe there may be an
error in the ONsip.org example where a line has been lost.
192. onreply_route[1] {
193.
194. if (isflagset(6) &&
status=~"(180)|(183)|2[0-9][0-9]") {
195. if (!search("^Content-Length:\ 0")) {
196. force_rtp_proxy();
197. };
198. } else if (nat_uac_test("1")) {
199. fix_nated_contact();
200. };
201. }
fix_nated_contact() should go in between line 194 and
195.
Could you please confirm that this works? I will
look at the config file.
g-(
---- Original Message ----
From: Vivienne Curran
To:
serusers@lists.iptel.org ; greger@teigre.com
Sent: Wednesday, April 06, 2005 04:12
PM
Subject: Re: RTPProxy fails only for Private to Public
communication
> Just as an extra : I have a sniff of the message for
when a public
> client (2092)rings a private client (2093)included at the
bottom of
> this email. I cant see anything wrong with them but maybe it
will
> shed more light on the matter.
>
>
Vivienne Curran <vivcurran@yahoo.co.uk> wrote:
> I changed the line
modparam("nathelper", "rtpproxy_sock",
> "/var/run/rtpproxy.sock") to
modparam("nathelper", "rtpproxy_sock",
> "udp:localhost:22222") and
started the rtpproxy as ./rtpproxy -s udp
> from the relevant directory
and this resulted in a series of
> "rtpp_command: no response from
rtpproxy" and rtpproxy temporarily
> disabled" errors. If I return to the
original modparam and start it
> as ./rtpproxy then it works but like I
said when the private client
> rings the public client, I get "ERROR:
send_rtpp_command: cant read
> reply from a RTP
Proxy".
>
> Any further
ideas? Has anyone on the mailing list experienced this? I
> am using the
script given in the onsip getting started doc for 0.9.0.
> but am using
ser 0.8.14.
>
> BR,
> Vivienne
>
>
> "Greger V. Teigre" <greger@teigre.com> wrote:
> See
inline.
>
>> Thank you for that Greger. I have altered my script
so that it
>> exactly mimics the one in the onsip document besides the
has_totag
>> and fix_nated register. All is good when I ring from a
private phone
>> to a public phone i.e. the audio is very clear and the
following
>> messages are in /var/log.
>>
>> ERROR:
extract_body: message body has length zero
>> ERROR: force_rtp_proxy2:
cant extract body from the message.
>>
>> I assume this is
because of the 200 OK to a register message where
>> theres no sdp?? Is
this correct?
>
> That's correct. You will find code in the
example configs where we
> test for an empty body before calling
force_rtp_proxy.
>
>> However when I try to phone from public
into private I get:
>>
>> ERROR: send_rtpp_command: cant read
reply from a RTP Proxy.
>>
>> I find this confusing because I
know the rtpproxy is working.
>
> This means that rtpproxy is not
responding to a particular message. I
> have heard some people have had
problems with the socket based
> communication. I only use UDP. This is
what you do to set up udp
> (22222 is default port):
>
modparam("nathelper", "rtpproxy_sock", "udp:localhost:22222")
> rtpproxy
must be started with -s udp:*
> g-)
>
>> BR
>>
Vivienne.
>>
>> "Greger V. Teigre" <greger@teigre.com>
wrote:
>> Yes, you can use fix_nated_contact instead. It is not
entirely
>> RFC-compliant, but that's what you have in
0.8.14.
>> The has_totag() only tests to see if the INVITE has a To
header,
>> which means that it is in-dialog and thus is a
re-INVITE. An INVITE
>> will normally not have loose routing
unless you have another SIP
>> proxy forwarding an INVITE to you (in
which case you should assume
>> that the other proxy handles NAT and
thus not trigger NAT-related
>> code). You can safely remove the
has_totag() if you use
>> force_rtp_proxy("l")
>>
g-)
>>
>> ---- Original Message ----
>> From:
Vivienne Curran
>> To: Greger V. Teigre ;
serusers@lists.iptel.org
>> Sent: Tuesday, April 05, 2005 02:25
PM
>> Subject: Re: [Serusers] Contact Header and SDP not
rewritten
>>
>>> Greger,
>>>
>>>
Since fix_nated_register does not exist with 0.8.14, will
>>>
fix_nated_contact do instead? Also if I am leaving out the
>>>
has_totag() at the start of the script, will this greatly effect
its
>>> functionality?
>>>
>>> Thank
you,
>>> Vivienne
> Send instant messages to your online
friends
> http://uk.messenger.yahoo.com
> U 157.190.74.151:5060
-> 84.203.148.146:5060
> INVITE sip:2093@84.203.148.146
SIP/2.0..Via: SIP/2.0/UDP
> 157.190.74.151;bra
>
nch=z9hG4bKcd17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aed
> c22bd5a3b510c..To:
<sip:2093@84.203.148.146>..Contact:
> <sip:2092@157.190.74
> .151>..Supported: replaces..Call-ID:
>
8ffc2d18b21870b3@157.190.74.151..CSeq:
> 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..Max-Forwards: 70..Al
> low:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE..Content-Typ
>
e: application/sdp..Content-Length: 426....v=0..o=2092 8000 0 IN
> IP4
157.19
> 0.74.151..s=SIP Call..c=IN IP4 157.190.74.151..t=0
0..m=audio 5004
> RTP/AVP
> 0 8 4 18 2 15 99 9
101..a=sendrecv..a=rtpmap:0
> PCMU/8000/3..a=rtpmap:8 PCMA
> /8000/3..a=rtpmap:4 G723/8000/3..a=rtpmap:18
>
G729/8000/3..a=rtpmap:2 G726-3
> 2/8000/3..a=rtpmap:15
G728/8000/3..a=rtpmap:99
> iLBC/8000/3..a=fmtp:99 mode=
> 20..a=rtpmap:9
G722/8000/3..a=ptime:20..a=rtpmap:101
> telephone-event/8000/3
> ..a=fmtp:101 0-11..
>
> U 84.203.148.146:5060
-> 157.190.74.151:5060
> SIP/2.0 100 trying -- your call is
important to us..Via:
> SIP/2.0/UDP 157.19
>
0.74.151;branch=z9hG4bKcd17ddd1b59ead49;rport=5060..From: "2092"
>
<sip:2092@
>
84.203.148.146>;tag=aedc22bd5a3b510c..To:
>
<sip:2093@84.203.148.146>..Call-I
> D:
8ffc2d18b21870b3@157.190.74.151..CSeq: 64735 INVITE..Server: Sip
> EXpress
> router (0.8.14 (i386/linux))..Content-Length:
0..Warning: 392
> 84.203.148.1
> 46:5060 "Noisy
feedback tells: pid=8990 req_src_ip=157.190.74.151
> req_src_
> port=5060 in_uri=sip:2093@84.203.148.146
>
out_uri=sip:2093@84.203.148.14:506
> 0
via_cnt==1"....
>
> U 84.203.148.146:5060 ->
84.203.148.14:5060
> INVITE sip:2093@84.203.148.14:5060
SIP/2.0..Via: SIP/2.0/UDP
> 84.203.148.146
>
;branch=z9hG4bKf51e.b169be72.0..Via: SIP/2.0/UDP
>
157.190.74.151;rport=5060;
>
branch=z9hG4bKcd17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=
> aedc22bd5a3b510c..To:
<sip:2093@84.203.148.146>..Contact:
> <sip:2092@157.190
> .74.151:5060>..Supported: replaces..Call-ID:
>
8ffc2d18b21870b3@157.190.74.15
> 1..CSeq: 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..Max-Forwards
> : 69..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE..Con
> tent-Type: application/sdp..Content-Length:
445....v=0..o=2092 8000
> 0 IN IP
> 4
157.190.74.151..s=SIP Call..c=IN IP4 84.203.148.146..t=0
> 0..m=audio
35014
> RTP/AVP 0 8 4 18 2 15 99 9
101..a=sendrecv..a=rtpmap:0
> PCMU/8000/3..a=rtpm
>
ap:8 PCMA/8000/3..a=rtpmap:4 G723/8000/3..a=rtpmap:18
>
G729/8000/3..a=rtpmap
> :2 G726-32/8000/3..a=rtpmap:15
G728/8000/3..a=rtpmap:99
> iLBC/8000/3..a=fmtp
> :99
mode=20..a=rtpmap:9 G722/8000/3..a=ptime:20..a=rtpmap:101
> telephone-eve
> nt/8000/3..a=fmtp:101 0-11..a=nortpproxy:yes..
>
> U 84.203.148.14:5060 -> 84.203.148.146:5060
>
SIP/2.0 100 Trying..Via: SIP/2.0/UDP
>
84.203.148.146;branch=z9hG4bKf51e.b169
> be72.0..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG4bKcd17ddd1b5
> 9ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c..To: <s
> ip:2093@84.203.148.146>..Call-ID:
>
8ffc2d18b21870b3@157.190.74.151..CSeq: 64
> 735
INVITE..User-Agent: Grandstream BT100 1.0.5.18..Content-Length:
> 0....
>
> U 84.203.148.14:5060 ->
84.203.148.146:5060
> SIP/2.0 180 Ringing..Via:
SIP/2.0/UDP
> 84.203.148.146;branch=z9hG4bKf51e.b16
>
9be72.0..Via: SIP/2.0/UDP
>
157.190.74.151;rport=5060;branch=z9hG4bKcd17ddd1b
>
59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c..To: <
>
sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b21870b3@15
> 7.190.74.151..CSeq: 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..C
>
ontent-Length: 0....
>
> U 84.203.148.146:5060 ->
157.190.74.151:5060
> SIP/2.0 180 Ringing..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG
>
4bKcd17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3
> b510c..To:
<sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
> 8ffc2d1
> 8b21870b3@157.190.74.151..CSeq: 64735
INVITE..User-Agent:
> Grandstream BT100
>
1.0.5.18..Content-Length: 0....
>
> U 84.203.148.14:5060 ->
84.203.148.146:5060
> SIP/2.0 200 OK..Via: SIP/2.0/UDP
>
84.203.148.146;branch=z9hG4bKf51e.b169be72
> .0..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG4bKcd17ddd1b59ead
> 49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c..To: <sip:2
>
093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b21870b3@157.190
> .74.151..CSeq: 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..Contac
> t: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTION
>
S,INFO,SUBSCRIBE..Content-Type: application/sdp..Supported:
>
replaces..Conte
> nt-Length: 152....v=0..o=2093 8000 0 IN IP4
172.16.3.31..s=SIP
> Call..c=IN I
> P4 172.16.3.31..t=0
0..m=audio 5004 RTP/AVP
> 0..a=sendrecv..a=rtpmap:0 PCMU/
> 8000/3..a=ptime:20..
>
> U 84.203.148.146:5060
-> 157.190.74.151:5060
> SIP/2.0 200 OK..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG4bKcd
> 17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c
> ..To:
<sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b218
> 70b3@157.190.74.151..CSeq: 64735
INVITE..User-Agent: Grandstream
> BT100 1.0.
>
5.18..Contact: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,
>
REFER,OPTIONS,INFO,SUBSCRIBE..Content-Type:
> application/sdp..Supported:
rep
> laces..Content-Length: 174....v=0..o=2093 8000 0 IN
IP4
> 172.16.3.31..s=SIP
> Call..c=IN IP4
84.203.148.146..t=0 0..m=audio 35016 RTP/AVP
> 0..a=sendrecv..
> a=rtpmap:0
PCMU/8000/3..a=ptime:20..a=nortpproxy:yes..
>
> U
84.203.148.14:5060 -> 84.203.148.146:5060
> SIP/2.0 200
OK..Via: SIP/2.0/UDP
> 84.203.148.146;branch=z9hG4bKf51e.b169be72
> .0..Via: SIP/2.0/UDP
>
157.190.74.151;rport=5060;branch=z9hG4bKcd17ddd1b59ead
>
49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c..To: <sip:2
>
093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b21870b3@157.190
> .74.151..CSeq: 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..Contac
> t: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTION
>
S,INFO,SUBSCRIBE..Content-Type: application/sdp..Supported:
>
replaces..Conte
> nt-Length: 152....v=0..o=2093 8000 1 IN IP4
172.16.3.31..s=SIP
> Call..c=IN I
> P4 172.16.3.31..t=0
0..m=audio 5004 RTP/AVP
> 0..a=sendrecv..a=rtpmap:0 PCMU/
> 8000/3..a=ptime:20..
>
> U 84.203.148.146:5060
-> 157.190.74.151:5060
> SIP/2.0 200 OK..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG4bKcd
> 17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c
> ..To:
<sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b218
> 70b3@157.190.74.151..CSeq: 64735
INVITE..User-Agent: Grandstream
> BT100 1.0.
>
5.18..Contact: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,
>
REFER,OPTIONS,INFO,SUBSCRIBE..Content-Type:
> application/sdp..Supported:
rep
> laces..Content-Length: 174....v=0..o=2093 8000 1 IN
IP4
> 172.16.3.31..s=SIP
> Call..c=IN IP4
84.203.148.146..t=0 0..m=audio 35016 RTP/AVP
> 0..a=sendrecv..
> a=rtpmap:0
PCMU/8000/3..a=ptime:20..a=nortpproxy:yes..
>
> U
84.203.148.14:5060 -> 84.203.148.146:5060
> SIP/2.0 200
OK..Via: SIP/2.0/UDP
> 84.203.148.146;branch=z9hG4bKf51e.b169be72
> .0..Via: SIP/2.0/UDP
>
157.190.74.151;rport=5060;branch=z9hG4bKcd17ddd1b59ead
>
49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c..To: <sip:2
>
093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b21870b3@157.190
> .74.151..CSeq: 64735
INVITE..User-Agent: Grandstream BT100
> 1.0.5.18..Contac
> t: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTION
>
S,INFO,SUBSCRIBE..Content-Type: application/sdp..Supported:
>
replaces..Conte
> nt-Length: 152....v=0..o=2093 8000 2 IN IP4
172.16.3.31..s=SIP
> Call..c=IN I
> P4 172.16.3.31..t=0
0..m=audio 5004 RTP/AVP
> 0..a=sendrecv..a=rtpmap:0 PCMU/
> 8000/3..a=ptime:20..
>
> U 84.203.148.146:5060
-> 157.190.74.151:5060
> SIP/2.0 200 OK..Via:
SIP/2.0/UDP
> 157.190.74.151;rport=5060;branch=z9hG4bKcd
> 17ddd1b59ead49..From: "2092"
>
<sip:2092@84.203.148.146>;tag=aedc22bd5a3b510c
> ..To:
<sip:2093@84.203.148.146>;tag=acd725e00242a605..Call-ID:
>
8ffc2d18b218
> 70b3@157.190.74.151..CSeq: 64735
INVITE..User-Agent: Grandstream
> BT100 1.0.
>
5.18..Contact: <sip:2093@172.16.3.31>..Allow:
>
INVITE,ACK,CANCEL,BYE,NOTIFY,
>
REFER,OPTIONS,INFO,SUBSCRIBE..Content-Type:
> application/sdp..Supported:
rep
> laces..Content-Length: 174....v=0..o=2093 8000 2 IN
IP4
> 172.16.3.31..s=SIP
> Call..c=IN IP4
84.203.148.146..t=0 0..m=audio 35016 RTP/AVP
> 0..a=sendrecv..
> a=rtpmap:0
PCMU/8000/3..a=ptime:20..a=nortpproxy:yes..
>
> Send instant
messages to your online friends
> http://uk.messenger.yahoo.com