Kamailio is having a crash (Segfault at 18 IP - error 4 in auth_db.so) when
registering a cisco E20, via SIP
Here is a full dbg backtrack, and the core dump, but have no ideas about
how to proceed.
Im using Kamailio 4.1.1:
Got this Error at /var/log:
[14629359.586980] kamailio[982]: segfault at 18 ip 00007f034db8dcfd sp
00007fff34702950 error 4 in auth_db.so[7f034db85000+c000]
Kamailio Version:
----------
version: kamailio 4.1.1 (x86_64/linux) d6ffa1
flags: STATS: Off, 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_RES
ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16,
MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 4MB
poll method support: poll, epoll_lt, epoll_et, sigio_rt, select.
id: d6ffa1
compiled on 16:28:48 Jan 29 2014 with gcc 4.4.5
-------------
Thanks in Advance.
So when Im trying to use is_subscriber & load_credentials together, It
seems I have either hit a bug or just a bad config ( but I dont think its
the latter )
My symptom is that only the field on the far right of "load_credentials"
ever returns the correct value, the other fields are always null.
My config has this setting :
modparam("auth_db", "load_credentials", "field1;field2")
and I can see the following debug when running kamailio -ddddd
0(14174) DEBUG: auth_db [authdb_mod.c:291]: w_is_subscriber(): uri [sip:
1112(a)192.168.173.5] table [subscriber] flags [1]
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:807]: db_cassa_query():
query table=subscriber
0(14174) DEBUG: db_cassandra [dbcassa_table.c:461]:
dbcassa_db_get_table(): found dbname=kamailio, table=subscriber
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:351]: cassa_constr_key():
query col = username
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:351]: cassa_constr_key():
query col = domain
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:376]: cassa_constr_key():
key = 1112 192.168.173.5
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:499]:
cassa_translate_query(): Query col: field2
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:499]:
cassa_translate_query(): Query col: field1; field2
0(14174) DEBUG: db_cassandra [dbcassa_base.cpp:501]:
cassa_translate_query(): get 2 columns
0(14174) DEBUG: <core> [db_res.c:118]: db_new_result(): allocate 56 bytes
for result set at 0x7fc6ce770e78
if I had to put money on where the bug is, I would look in
parse_aaa_pvs in authdb_mod.c
however, an initial glance revealed nothing glaring, also this file was
last changed in *2013-01-20 ( and that was only a move from modules_k )*
SURELY I cant be the only person wanting to use this for more than one
field ?
This code looks like its almost the same as when first committed in August
2011 ....
Id love someone to see if they can confirm this and point me in the right
direction ( if this is my fault ) or lets get this fixed, if its a bug :)
--
Sincerely
Jay
Hello all,
So I have three machines, we don't care about audio for this problem, so
everything I mention here is SIP related.
Freeswitch <--> Kamailio 3.3.2 <--> Asterisk
1. Asterisk sends an INVITE to Freeswitch through the Kamailio proxy.
2. Kamailio replies 100 Trying and forwards to Freeswitch
3. Freeswitch replies 100 Trying
4. Freeswitch replies 180 Ringing to Kamailio
5. Kamailio routes the answer to Asterisk
6. Freeswitch replies 200 OK to Kamailio
7. Kamailio replies 200 OK to Asterisk
8. Asterisk replies ACK to Kamailio
9. Asterisk sends a re-INVITE to Freeswitch through Kamailio
10. Kamailio routes the re-INVITE to freeswitch
11. Kamailio routes the ACK to freeswitch.
12. Freeswitch replies 500 Server error because it got a re-INVITE
before the ACK.
So, my problem is that Kamailio seems to process my re-INVITE more
quickly than the ACK. So Freeswitch replies an error because it got the
re-INVITE before the ACK.
So my "solution" is to add a usleep(20); for re-INVITEs on Kamailio, but
I think this is a lousy solution.
Has anyone here had to deal with problems where Kamailio routes a
re-INVITE faster than an ACK causing endpoints to return error
messages? Has anyone had to deal with a similar issue?
Thanks,
David
Dear All,
Greetings,
I have configured Kamailio (4.0.3) with mediaproxy server, with this set-up
audio/video calls are going good and hence NAT issue has solved.
I have used two soft clients: 1) IMSDroid 2) Bria.
But i have a query about media-proxy statistics i.e in the syslog, the info
about media-proxy activity is shown as below:
*Case 1*: when Call between two IMSDroid clients.
caller_codec : 'Unknown(73)'
callee_codec : 'Unknown(73)'
callee_ua : 'unknown agent'.
*Case 2* : When call between two Bria clients.
'callee_ua': 'unknown agent'.
(Calls using Bria clients media-proxy's syslog shows Audio codec names, but
using IMSdroid clients it is showing 'Unknown' for Audio codec names ).
Find the attachment below for the full syslog about the mentioned unknown
behaviour. And also find my kamailio.cfg file.
And also logging in the syslog as shown like RTP: Unknown , RTCP: Unknown.
In this context, there is a jitter in audio calls and pixelled video
sometimes, So is there any wrong with the above mentioned "unknown' factor
in this problem of jitter/pixelled audio/video calls ?
(AFAIK these payload type 73 (i.e 72-76) is reserved for RTCP conflict
avoidance. right? )
What could be the problem for this 'Unknown' issue?
How can i solve this issue ? Anything can be done in kamailio script?
And how these RTCP payload types (72-76) plays a role in audio/video calls?
Any suggestions will greatly help. please help me in clarifying these
issues.
Thanks in advance.
Regards,
Nandini
Hi all,
we all enjoy our FAIL2BAN and snippets of our Kamailio config when we see it successfully fight off the "friendly-scanner", and multiple futile attempts to fool our systems. But it got me thinking…
What is a sufficient level of security on our Kamailio machinery… ? Are we all just doing whatever, or is the nature of the beast, that every setup is different?
Eventually while having a beer, we will end up in the discussion Kamailio is as good (and even much better) as most of the commercially available SBCs. But, imho, that all depends on the configuration.
There are a few good reads available, and on the security front I personally love Pike, Topoh, Dnssec, Htable and recently I think I'm doing rather clever stuff with CNXCC… And I do feel comfortable on my setups, them won't be hacked…
But do we have a-sort -of stake in the ground example configuration which we can consider as being more than sufficiently secure? Some config where we can tick off all the known security risks for SIP (as chapter 26 of rfc3261 gives a state of the art back in 2002) Or would that be a nice idea for a micro project?
Grtz,
Davy
Hi all
I need a solution to get the used scan_prefix in carrierroute module.
We have different carriers for our destinations, sometimes split up 50%/50% or other splittings - all routes with failure routes.
Now if one destination is not reachable, then I would like to get this information and reroute to another carrier.
As we use the carrierroute module, we use the "description" to get the carriername (for billing purposes).
Is there a solution to get the used scan_prefix from the carrierroute module?
Regards,
Oli
Hi Support,
I have recently kamailio 4.0.x version with tls on port 5061. Now our
development team needs to connect to it using unencrypted on port 5060 to
test an app for features and then work towards connecting through tls
connection.
So my question is how do I temporarily disable tls to test all the features
on the kamailio server and then once feature testing is done revert back to
tls connection?
Best Regards,
Neville D'Souza
Hi,
My 2 colleague and me (3 total) like to join the Kamailio dinner.
We went to Beermania 2 years ago with the Jitsi guys and DanB and I can
confirm the perfect fries!
Ivo
Hi All,
I'm running into an issue, I'm not sure whether any of you seen this
yourselves and resolved it. Please share some pointers. My network is:
clients <--> Public IP(Kamailio/RTPProxy)10.1.128.11 <--> 10.1.128.34
(Freeswitch)
The 200 OK response from Freeswitch (on the way back from called party to
caller) to Kamailio is shown below. Notice the Contact header URI host part
contains Freeswitch Private IP (10.1.128.34). Kamailio suppose to change
that to Public IP before forwarding the 200 OK (copied below) to Caller in
public domain. But, it's not. As a result, ACK from Caller is not reaching
back to Kamailio.
How did you or anybody out there using Kamailio resolve this problem? If
needed, I can copy/paste my kamailio.cfg.
SIP 200 OK ->
Via: SIP/2.0/UDP
10.1.128.11;branch=z9hG4bKa7ea.4013d9881c1b7fe7b4c6c0f0e8f9d6b6.0
Via: SIP/2.0/UDP <Caller Public
IP>:5060;rport=5060;branch=z9hG4bK-383736-9b4621118533d3ccea17992738433249
Record-Route: <sip:10.1.128.11;r2=on;lr=on;ftag=791b5ae3;nat=yes>
Record-Route: <sip:<Kamailio Pub IP>;r2=on;lr=on;ftag=791b5ae3;nat=yes>
From: \"Dipak Biswas\" <sip:dipak.biswas@<Kamailio Pub IP>>;tag=791b5ae3
To: <sip:dipak.biswas.test2@<Kamailio Pub IP>>;tag=atXF5443gQj9p
Call-ID: 20d5d6d366fcb06c259a0895b3e44b52@0:0:0:0:0:0:0:0
CSeq: 2 INVITE
Contact: <sip:dipak.biswas.test2@10.1.128.34:5060;transport=udp>
User-Agent: FreeSWITCH mod_sofia/1.4.2+git~20140108T200418Z~d8fc8469b4~64bit
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, INFO, UPDATE, REGISTER,
REFER, NOTIFY
Supported: timer, precondition, path, replaces
Allow-Events: talk, hold, conference, refer
Content-Type: application/sdp
Content-Disposition: session
Content-Length: 269
--
Thanks,
Dipak