Hello again,
Hey Daniel,I've exactly followed your point, I'll try some stuff on asterisk server to stop asking for 401 Auth to Kamailio., maybe this will eliminate the need for another INVITE with authentication params.But one thing which just makes me curious is that a soft phone directly coming from a Public IP is always able to successfully CANCEL the call.Anyway I'll use some brain of mine on this and let you know what resolved it, or what I'm missing.Thanks,SammyOn Wed, Nov 30, 2011 at 5:47 PM, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,
is the SIP trace complete?
What I could find inside is:
- invite from phone to kamailio
- kamailio asks for authentication - 407
- ack
- invite with credentials, kamailio forwards to asterisk
- asterisk asks for authentication - 401
- ack
- there is no new INVITE with credentials for kamailio and asterisk
- but the phone starts sending CANCELs -- since there is no active INVITE transaction, kamailio just drops it due to config rules
- after a while asterisk starts sending like 180 ringing, then 200ok ... really strange
Maybe you haven't captured all the sip traffic. If you want to use ngrep, do on kamailio server:If that's all the traffic, then xlite and asterisk seems to have some bugs - both were aware of 401 reply (asterisk generated it, xlite sent the ACK for it) -- so no ongoing call to CANCEL by xlite, or to answer by Asterisk (the 180, 200 replies).
ngrep -d any -qt -W byline port 5060
From kamailio point of view, if there is no INVITE following the 401 reply to xlite, there is no active invite transaction to cancel.
Cheers,
Daniel
On 11/30/11 12:02 AM, Daniel-Constantin Mierla wrote:Hello,
I will look over it soon - since you sent pcap I couldn't look at it directly from the email. ngrep outputs plain text which is easy to read from email, the reason I am asking mainly for ngrep traces since many times I am not around a computer where is convenient to open pcap file. On the other hand, if it is a transmission problem (at transport layer), pcap file is better.
Cheers,
Daniel
On 11/29/11 5:07 AM, Sammy Govind wrote:Hello again,
Please see the attached wireshark trace, I tried for a sipgrep trace but couldn't somehow. I hope this will get me some clue on what I'm doing wrong.
This is a setup with Kamailio in front of Asterisk Servers. Kamailio is multihomed and MS are on private IPs, all the calls are routed to MSs and then comeback for further dial-outs.
Please see the Continuous CANCEL requests which aren't terminating the call.
Thanks,Sammy.
On Mon, Nov 28, 2011 at 4:41 PM, Sammy Govind <govoiper@gmail.com> wrote:
Thanks for your reply I will attach the wireshark traces as soon as I get to my workstation.
BR,Sammy.
On Mon, Nov 28, 2011 at 3:33 PM, Daniel-Constantin Mierla <miconda@gmail.com> wrote:
Hello,
send the ngrep trace of such call, from the initial INVITE, you can use:
ngrep -d any -qt -W byline port 5060
The sip trace will help to see what is wrong with that CANCEL.
Cheers,
Daniel
On 11/28/11 7:19 AM, Sammy Govind wrote:Anyone please help.
On Sat, Nov 26, 2011 at 10:39 PM, Sammy Govind <govoiper@gmail.com> wrote:
Hello list,
I'm using Kamailio 3.1.5 in front of asterisk servers. Kamailio handles all the SIP registrations. Calls from SIP phones are forwarded to asterisks and then dialled out to Kamailio.
root@SBCserver:~# kamailio -Vversion: kamailio 3.1.5 (x86_64/linux) 76fff5flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RESADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, PKG_SIZE 4MBpoll method support: poll, epoll_lt, epoll_et, sigio_rt, select.id: 76fff5compiled on 08:21:33 Oct 27 2011 with gcc 4.6.1root@SBCserver:~#
Problem:When call is initiated from a softphone and is in ringing phase, CANCEL just don't work. I've done some initial debugging and the following piece of code in main route is failing.
# CANCEL processingif (is_method("CANCEL")){xlog("L_NOTICE","$rm from $fu (IP:$si:$sp) ---CAPTURED IN MAIN---\n");if (t_check_trans()){t_relay();xlog("L_NOTICE","$rm from $fu (IP:$si:$sp) ---CHECK TRANS TRUE---\n");}xlog("L_NOTICE","$rm from $fu (IP:$si:$sp) ---CHECK TRANS FALSE---\n");exit;}
Also the CANCEL fails the has_totag() condition !
The same Call CANCEL scenario works fine for any client on Public IP !
Hope to get some pointers for the solution.
Regards,Sammy.
_______________________________________________ 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 Kamailio Advanced Training, Dec 5-8, Berlin: http://asipto.com/u/kat http://linkedin.com/in/miconda -- http://twitter.com/miconda
_______________________________________________ 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 Kamailio Advanced Training, Dec 5-8, Berlin: http://asipto.com/u/kat http://linkedin.com/in/miconda -- http://twitter.com/miconda
_______________________________________________ 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 Kamailio Advanced Training, Dec 5-8, Berlin: http://asipto.com/u/kat http://linkedin.com/in/miconda -- http://twitter.com/miconda