Hello Greger. Thanks for your answer on this topic. Now i'm attaching more debug information (the /var/log/messages from mediaproxy, the ngrep output and some xlog statements in the ser.cfg file) beside some comments in the file reINVITE_debug_problem.txt.
- Is your session really set up initially (before the reINVITE)?
(mediaproxy reports 0/0/0 bytes)
At least i have ringback tone. Then, when the call is answered i have an OK and a ACK message coming to my SER box, then inmediatly the reINVITE message arrives Asterisk box.
For what i can see from the debug the "nat=yes" is never reached because the caller has a "valid ip" and therefore the first "if" in the statament
if (method=="INVITE" && client_nat_test("3")) { # INSERT YOUR IP ADDRESS HERE record_route_preset("64.76.148.246:5060;nat=yes"); xlog("L_INFO", "time [%Tf] RECORD ROUTE SECTION : invite & client_nat_test(3) TRUE ,record_route_preset [%rm]\n"); } else if (method!="REGISTER") { xlog("L_INFO", "time [%Tf] RECORD ROUTE SECTION : record_route [%rm]\n"); record_route(); };
from the RECORD ROUTE SECTION is FALSE.
Also, i don't understand why the second OK (the one from the reINVITE) is not procesed in the ONREPLY ROUTE, or at least i don't see any statement from the "xlog" in the debug. Is this normal?
Thanks.! Regards,
Ricardo Martinez.-
-----Mensaje original----- De: Greger V. Teigre [mailto:greger@teigre.com] Enviado el: Lunes, 18 de Julio de 2005 2:45 Para: Ricardo Martinez; serusers@lists.iptel.org Asunto: Re: [Serusers] Problem : Can SER process the reINVITE messages properly?
Hi Ricardo, Thanks for a detailed analysis. Some questions:
- Is your session really set up initially (before the reINVITE)?
(mediaproxy reports 0/0/0 bytes)
- You didn't show the ngrep trace. The script uses nat=yes in
the Route header of the INVITE to detect a nat'ed client. Can you verify that the reINVITE has the nat=yes?
- You haven't showed the mediaproxy log (it will show the
callers reporting in etc). That could help (default /var/log/messages)
- You can put a log statement in the loose_route section
after the test for nat=yes to see if use_media_proxy was called
g-)
Ricardo Martinez wrote:
Hello. I'm having problems trying to make SER, NAT'd endpoints
and reINVITE
work together. I was using the "gw-pstn3.07.cfg" file from onsip.org to do some tests, and this is what i have. In one side i have an Asterisk with an endpoint registered in it (let's call it A). In the other side i have a PAP2 under NAT (let's call it B).
A ---------- Asterisk ----------- SER ----------- B (NAT'd) 200.0.0.7 200.0.0.6 200.0.0.5 10.0.0.4
When i make a call from "A" to "B" this is what i see (in terms of SDP). Looking from SER.
A --------- Asterisk ------------ SER ------------ B (NAT'd) Public: 200.0.0.4 200.0.0.7 200.0.0.6 200.0.0.5
Inside:
10.0.0.1
INVITE c:200.0.0.6:19996 -------------------> INVITE
c:200.0.0.5:35010 ---------------->
Caller Via Called Status Duration Codec Type Traffic
200.0.0.6:19996 - 200.0.0.5:35010 - ?.?.?.?:? inactive 0'04" Unknown Audio 0/0/0
Total traffic: 0bps/0bps/0bps (in1/in2/out) Session count: 1
So far is ok..........and the phone is answered OK c:10.0.0.1:16440 <---------------- (the phone is answered) OK c:200.0.0.5:35010 <---------------------
reINVITE c:200.0.0.7:19996 ---------------------> reINVITE
c:200.0.0.7:19996 ---------------->
OK c:10.0.0.1:16440 <---------------- OK c:10.0.0.1:16440 <---------------------
Finally according to the "session" information :
Caller Via Called Status Duration Codec Type Traffic
200.0.0.6:19996 - 200.0.0.5:35010 - 200.0.0.7:16420 inactive 0'26" G729 Audio 0/11.48k/11.48k
Total traffic: 0bps/0bps/0bps (in1/in2/out) Session count: 1 And the audio is only in one way. :(
So. you can see the reINVITE message apparently is not being processed as a call to a NAT'd endpoint and therefore is not using the mediaproxy, you can see the second "OK" messsage has the invalid IP from the NAT'd user is in his sdp information. As i said it before i am using the gw-pstn configuration
file from the
onsip.org and as far as i can remember this configuration can handle the reINVITE? isn't I'm also using the last version of the mediaproxy (1.3.1). Can someone tell me what i'm doing wrong?
Hope someone could help me here. Thanks in advance. Regards...
Ricardo Martinez.-
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers