Hello,

if the ACK goes through the proxy, then means record routing is used, but I see no Record-Route in 200 reply and no Route in ACK. Since there is no Record-Route in 200 ok, the ACK has to be sent to the contact address from the 200 ok.

Your config snippet from kamailio shows the part of default config where record routing is handling -- based on the comments -- since it no Route, it is dropped.

Cheers,
Daniel

On 12/26/11 11:03 PM, Lucas Alvarez wrote:
I have Kamailio 3.2.0 between two asterisk servers, after the call set, one of the kamailio send the OK from the INVITE and the return ACK of that message was discarded. This makes asterisk hangup the call after 5 secs. It's that right?

OK message: 

U 172.25.249.15:5060 -> 172.25.249.14:5060
SIP/2.0 200 OK.
Via: SIP/2.0/UDP 172.25.249.14:5060;branch=z9hG4bK09fc3de6;rport=5060.
From: "asterisk" <sip:asterisk@172.25.249.14>;tag=as6411602a.
To: <sip:775008@172.25.249.15:5060>;tag=as55ab3180.
Call-ID: 547225391b7828402ecaa03e1dab5a86@172.25.249.14.
CSeq: 102 INVITE.
Server: Asterisk PBX 1.8.7.1.
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH.
Supported: replaces, timer.
Contact: <sip:775008@172.25.249.15:5080>.
Remote-Party-ID: "Eus Test" <sip:3999@172.25.249.14>;party=called;privacy=off;screen=no.
Content-Type: application/sdp.
Content-Length: 285.
.
v=0.
o=root 2045590031 2045590031 IN IP4 172.25.249.15.
s=Asterisk PBX 1.8.7.1.
c=IN IP4 172.25.249.15.
t=0 0.
m=audio 11922 RTP/AVP 0 3 8 101.
a=rtpmap:0 PCMU/8000.
a=rtpmap:3 GSM/8000.
a=rtpmap:8 PCMA/8000.
a=rtpmap:101 telephone-event/8000.
a=fmtp:101 0-16.
a=ptime:20.
a=sendrecv.


Discarded ACK:

U 172.25.249.14:5060 -> 172.25.249.15:5060
ACK sip:775008@172.25.249.15:5080 SIP/2.0.
Via: SIP/2.0/UDP 172.25.249.14:5060;branch=z9hG4bK6ea5aff6;rport.
From: "asterisk" <sip:asterisk@172.25.249.14>;tag=as6411602a.
To: <sip:775008@172.25.249.15:5060>;tag=as55ab3180.
Contact: <sip:asterisk@172.25.249.14>.
Call-ID: 547225391b7828402ecaa03e1dab5a86@172.25.249.14.
CSeq: 102 ACK.
User-Agent: Asterisk PBX.
Max-Forwards: 70.
Remote-Party-ID: "asterisk" <sip:asterisk@172.25.249.14>.
Content-Length: 0.
.

Kamailio's configuration where the ACK message it's being discarded:


  if ( is_method("ACK") ) {
                                if ( t_check_trans() ) {
                                        # no loose-route, but stateful ACK;
                                        # must be an ACK after a 487
                                        # or e.g. 404 from upstream server
                                        t_relay();
                                        exit;
                                } else {
                                        # ACK without matching transaction ... ignore and discard
                                        exit;
                                }
                        }


It would be ok if I relay the ack even if it didn't match any transaction??
Any help would be appreciated.
Regards, 

Lucas 



_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

-- 
Daniel-Constantin Mierla -- http://www.asipto.com
http://linkedin.com/in/miconda -- http://twitter.com/miconda