[SR-Users] Kamailio Crash
Is it normal for Kamailio to segfault on a duplicate key in the usrloc DB? Jun 15 18:15:23 vproxy2 /usr/sbin/kamailio[13646]: ERROR: db_mysql [km_dbase.c:122]: db_mysql_submit_query(): driver error on query: Duplicate entry 'uloc-557a96c1-3577-4e5f1' for key 'ruid_idx' Jun 15 18:15:23 vproxy2 /usr/sbin/kamailio[13646]: ERROR: core [db_query.c:337]: db_do_update(): error while submitting query Jun 15 18:15:23 vproxy2 /usr/sbin/kamailio[13646]: ERROR: usrloc [ucontact.c:800]: db_update_ucontact_addr(): updating database failed Jun 15 18:15:23 vproxy2 /usr/sbin/kamailio[13646]: ERROR: usrloc [urecord.c:368]: wb_timer(): updating contact in db failed (aor: sip305_isibmp) I believe that there should never be a duplicate key. I'm not sure how that's happening either. I have 3 Kamailio boxes in a cluster replicating registrations to each other and using a MySQL Galara cluster for the usrloc DB. This is Kamailio 4.0.6. Thanks, Marc ___ 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
Re: [SR-Users] Kamailio Crash
Unfortunately, the best I can do is this: Core was generated by `/usr/sbin/kamailio -f /etc/kamailio/kamailio.cfg -P /var/run/kamailio/kamailio.'. Program terminated with signal 11, Segmentation fault. #0 0x7fa3e65a5f3b in ?? () from /usr/lib/x86_64-linux-gnu/kamailio/modules/usrloc.so (gdb) #0 0x7fa3e65a5f3b in ?? () from /usr/lib/x86_64-linux-gnu/kamailio/modules/usrloc.so #1 0x7fa3e659a2b8 in mem_timer_udomain () from /usr/lib/x86_64-linux-gnu/kamailio/modules/usrloc.so #2 0x7fa3e658bec6 in synchronize_all_udomains () from /usr/lib/x86_64-linux-gnu/kamailio/modules/usrloc.so #3 0x7fa3e65a465a in ?? () from /usr/lib/x86_64-linux-gnu/kamailio/modules/usrloc.so #4 0x0054d517 in ?? () #5 0x00552aa2 in slow_timer_main () #6 0x0047df69 in main_loop () #7 0x0041bcd1 in main () I can't find the proper kamailio-dbg DEB to install for 4.0.6. Only 4.0.7 is in the repo. Anyway, I still believe the trouble is with writing to the DB. Marc On Tue, Jun 16, 2015 at 12:05 PM, Alex Balashov abalas...@evaristesys.com wrote: On 06/16/2015 12:04 PM, Marc Soda wrote: Is it normal for Kamailio to segfault No. :-) Can you provide a GDB backtrace? -- Alex Balashov | Principal | Evariste Systems LLC 303 Perimeter Center North, Suite 300 Atlanta, GA 30346 United States Tel: +1-800-250-5920 (toll-free) / +1-678-954-0671 (direct) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/ ___ 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 ntended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
[SR-Users] rtpengine DTLS
I'm running a new kamailio/rtpengine instance and, using webrtc, I can't get audio to flow between the browser and rtpengine. Kamailio seems to be handing it off properly. Based on the rtpengine logs and a packet capture it doesn't look like DTLS is being negotiated properly: https://gist.github.com/marcantonio/ea0077a5884e4e4b6b45 I see SRTCP output wanted, but no crypto suite was negotiated and I've never seen that one before (the SRTCP part). I have this exact config working elsewhere, but this new setup is not working? Any advice? Thanks, Marc ___ 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
Re: [SR-Users] rtpengine DTLS
I wound up upgrading rtpengine and that resolved this issue. I ran into something new, but I opened an issue for it (here: https://github.com/sipwise/rtpengine/issues/92 if anyone is interested). Sorry for the noise. On Wed, Mar 25, 2015 at 1:46 PM, Marc Soda ms...@coredial.com wrote: I'm running a new kamailio/rtpengine instance and, using webrtc, I can't get audio to flow between the browser and rtpengine. Kamailio seems to be handing it off properly. Based on the rtpengine logs and a packet capture it doesn't look like DTLS is being negotiated properly: https://gist.github.com/marcantonio/ea0077a5884e4e4b6b45 I see SRTCP output wanted, but no crypto suite was negotiated and I've never seen that one before (the SRTCP part). I have this exact config working elsewhere, but this new setup is not working? Any advice? Thanks, Marc ___ 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
[SR-Users] Kamailio and rtpengine Load Testing
I'm wondering if anyone has any experience load testing with Kamailio and rtpengine using WebRTC. I've had success load testing just Kamailio with sipp, but now I'd like to add the media piece and, if possible, do it via WebRTC. Anyone have any thoughts? Thanks, Marc ___ 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
[SR-Users] Kamailio and rtpengine
How does Kamailio load balance traffic to rtpengine? Is it load based, round robin, etc? The module makes mention of this but I don't see how it works. Also, it talks about weighting the proxies. How is that accomplished? Thanks, Marc ___ 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
Re: [SR-Users] WebRTC to PSTN call, proxied through Kamailio
Our config is based on the example config and the WebRTC bits are based on Carlos'. I've attached the relevant parts. It's pretty heavily customized to our specific environment. The main differences are the way that we detect a video call, how we route to our backend servers, and that we send video calls directly to a registered peer and not the the backend Asterisk servers. On Thu, Feb 12, 2015 at 12:34 PM, Rahul MathuR rahul.ultim...@gmail.com wrote: Gentle Reminder ! Thanks Warm Regds, Rahul On Thu, Feb 12, 2015 at 12:13 AM, Rahul MathuR rahul.ultim...@gmail.com wrote: Thanks guys ! I did further investigation of the Chrome logs and found that... (this is really interesting), even though I disabled Video; still JSsip was sending video information in the m a lines. The fact that I was trying to call PSTN number made it mandatory to set video port to '0' in 183 and 200. However, JSsip was not happy with that and cribbed about codec-formats not being present, ergo Bad Media Description. Marc, Could you please share your config so that I'd be sure my kamailio rtpengine side is in proper shape. P.S. I am attaching mine here. On Wed, Feb 11, 2015 at 8:58 PM, Marc Soda ms...@coredial.com wrote: We are in the middle of designing a similar solution with Kamailio and rtpengine and after some initial problems things are going really well. I can tell you that we ended up going with SIPjs over JSSip and it handled a lot of the weird browser specific issues we were having. I'm not sure about the media description error, however, the crypto error is probably not a real issue. Richard explained it here: http://lists.sip-router.org/pipermail/sr-users/2014-December/086271.html I corrected the other issues I was having and that one seemed to resolve itself. Hope that helps, Marc On Tue, Feb 10, 2015 at 12:01 PM, Rahul MathuR rahul.ultim...@gmail.com wrote: Hello gents, I was trying my hands on getting a successful RTCweb call (JSsip, since Peter Dunkley mentioned that he's been using JSsip for most of the testing scenarios..) to PSTN, making my kamailio as proxy + protocol converter (sip over web-sockets to sip over udp). And yes, I've referred Carlos' config; the main problem is I get 'Bad Media Description' error in Google Chromium (Version 40.0.2214.111 m) my SIP server even sends 200 OK, but my phone doesn't ring. To make it worse, I can see rtpengine throwing this error - SRTCP output wanted, but no crypto suite was negotiated BTW, I have - [root@localhost log]# openssl version OpenSSL 1.0.1j 15 Oct 2014 I even tried building kamailio rtpengine using this openssl but in-vain. One thing that baffles me is that, apparently kamailio has started receiving RTP packets (perhaps early media) but the mobile phone hasn't ringed :-( I am attaching all possible logs seek some guidance from the array of experts in this list. Files attached: a) tcpdump on ext. interface b) tcpdump on loopback c) syslogs d) Chromium JS logs UAC (14.98.55.38), Kamailio (125.99.186.126), SIP Server (157.238.178.153), Media Server (199.27.244.6) -- Warm Regds. MathuRahul ___ 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 ___ 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 -- Warm Regds. MathuRahul -- Warm Regds. MathuRahul ___ 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 kam.cfg Description: Binary data ___ 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
Re: [SR-Users] WebRTC to PSTN call, proxied through Kamailio
We are in the middle of designing a similar solution with Kamailio and rtpengine and after some initial problems things are going really well. I can tell you that we ended up going with SIPjs over JSSip and it handled a lot of the weird browser specific issues we were having. I'm not sure about the media description error, however, the crypto error is probably not a real issue. Richard explained it here: http://lists.sip-router.org/pipermail/sr-users/2014-December/086271.html I corrected the other issues I was having and that one seemed to resolve itself. Hope that helps, Marc On Tue, Feb 10, 2015 at 12:01 PM, Rahul MathuR rahul.ultim...@gmail.com wrote: Hello gents, I was trying my hands on getting a successful RTCweb call (JSsip, since Peter Dunkley mentioned that he's been using JSsip for most of the testing scenarios..) to PSTN, making my kamailio as proxy + protocol converter (sip over web-sockets to sip over udp). And yes, I've referred Carlos' config; the main problem is I get 'Bad Media Description' error in Google Chromium (Version 40.0.2214.111 m) my SIP server even sends 200 OK, but my phone doesn't ring. To make it worse, I can see rtpengine throwing this error - SRTCP output wanted, but no crypto suite was negotiated BTW, I have - [root@localhost log]# openssl version OpenSSL 1.0.1j 15 Oct 2014 I even tried building kamailio rtpengine using this openssl but in-vain. One thing that baffles me is that, apparently kamailio has started receiving RTP packets (perhaps early media) but the mobile phone hasn't ringed :-( I am attaching all possible logs seek some guidance from the array of experts in this list. Files attached: a) tcpdump on ext. interface b) tcpdump on loopback c) syslogs d) Chromium JS logs UAC (14.98.55.38), Kamailio (125.99.186.126), SIP Server (157.238.178.153), Media Server (199.27.244.6) -- Warm Regds. MathuRahul ___ 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 ___ 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
Re: [SR-Users] NDB_REDIS password to REDIS remote DB
Thanks for the insight. I ended up doing something like this: redis_cmd(localredis, AUTH REDIS_PASS, r); if ($redis(r=type) == REDIS_REPLY_ERROR) { xlog(L_ERROR, Redis authentication error); exit; } I think the confusion came from the fact that you do not specify the password in the modparam() connection string, as you do with other DB modules. Maybe calling something like this out in the documentation would help clear that up. On Thu, Jan 29, 2015 at 3:48 PM, Marc Soda ms...@coredial.com wrote: Ah, so you should be able to do something like: redis_cmd(localredis, AUTH $var(redis_password)); Nice. I will try that and post my results. On Thu, Jan 29, 2015 at 1:28 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: Hello, it appears that hiredis library does the authentication after connecting and can be done from config -- that's on a very quick search, not sure if something has changed with the hiredis api meanwhile: - https://github.com/redis/hiredis/issues/56 Cheers, Daniel On 29/01/15 17:20, Marc Soda wrote: The only way it will work right now is to not use a password: modparam(ndb_redis, server, name=localredis;addr=localhost;port=6379) I've been wanting to look at contributing support at that, but no time... On Thu, Jan 29, 2015 at 10:16 AM, Yuriy Gorlichenko ovoshl...@gmail.com wrote: Hello. I try to use NDB_REDIS with remote REDIS DB and can not to connect because remote DB use password, but Kamailio module have no any variable or attr of modparam that implenets password for DB. How I can connect to my REDIS? ___ 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 ___ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-us...@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierlahttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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 ___ 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
Re: [SR-Users] NDB_REDIS password to REDIS remote DB
The only way it will work right now is to not use a password: modparam(ndb_redis, server, name=localredis;addr=localhost;port=6379) I've been wanting to look at contributing support at that, but no time... On Thu, Jan 29, 2015 at 10:16 AM, Yuriy Gorlichenko ovoshl...@gmail.com wrote: Hello. I try to use NDB_REDIS with remote REDIS DB and can not to connect because remote DB use password, but Kamailio module have no any variable or attr of modparam that implenets password for DB. How I can connect to my REDIS? ___ 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 ___ 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
Re: [SR-Users] NDB_REDIS password to REDIS remote DB
Ah, so you should be able to do something like: redis_cmd(localredis, AUTH $var(redis_password)); Nice. I will try that and post my results. On Thu, Jan 29, 2015 at 1:28 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: Hello, it appears that hiredis library does the authentication after connecting and can be done from config -- that's on a very quick search, not sure if something has changed with the hiredis api meanwhile: - https://github.com/redis/hiredis/issues/56 Cheers, Daniel On 29/01/15 17:20, Marc Soda wrote: The only way it will work right now is to not use a password: modparam(ndb_redis, server, name=localredis;addr=localhost;port=6379 ) I've been wanting to look at contributing support at that, but no time... On Thu, Jan 29, 2015 at 10:16 AM, Yuriy Gorlichenko ovoshl...@gmail.com wrote: Hello. I try to use NDB_REDIS with remote REDIS DB and can not to connect because remote DB use password, but Kamailio module have no any variable or attr of modparam that implenets password for DB. How I can connect to my REDIS? ___ 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 ___ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-us...@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierlahttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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 ___ 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
Re: [SR-Users] Media trouble with kamailio/rtpengine
On Fri, Dec 19, 2014 at 12:31 PM, Richard Fuchs rfu...@sipwise.com wrote: You've caught the same thing as Juha did just earlier, Firefox is doing something new called Trickle ICE, which at the moment breaks communications with endpoints not supporting it (such as rtpengine). I figured out the issue. It was totally client related. Are there plans for rtpengine support trickle ICE anytime soon? My (limited) understand is that without it I can't support Firefox WebRTC clients. Thanks, Marc ___ 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
[SR-Users] rtpengine stats
Does anyone know how a can get stats from rtpengine? I see the $rtpstat pseudo variable in Kamailio, but from the documentation it looks like that will only give me stats on a particular call. I'm looking for overall stats like concurrent calls, bandwidth, etc... Thanks, Marc ___ 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
Re: [SR-Users] SIP Fragments
That's how I ended up going. It's working now. Thanks. On Thu, Dec 18, 2014 at 4:11 PM, James Cloos cl...@jhcloos.com wrote: MS == Marc Soda ms...@coredial.com writes: MS I'm having a problem reassembling UDP packets on my Asterisk servers after MS passing through Kamailio You could try having the kama-ast socket use tcp. -JimC -- James Cloos cl...@jhcloos.com OpenPGP: 0x997A9F17ED7DAEA6 -- Marc Soda Sr. Systems Architect, Production Systems // *CoreDial, LLC* // coredial.com // [image: Twitter] https://twitter.com/coredial [image: LinkedIn] http://www.linkedin.com/company/99631 [image: Google Plus] https://plus.google.com/104062177220750809525/posts [image: Blog] http://success.coredial.com/blog 751 Arbor Way, Hillcrest I, Suite 150, Blue Bell, PA 19422 *P: *215.297.4400 x203 // *F: *215.297.4401 // *E: * ms...@coredial.com [image: Success Starts Here. Check out our blog and subscribe today!] http://cta-service-cms2.hubspot.com/cs/c/?cta_guid=59f8a888-5f9f-4320-bd00-59436c5af213placement_guid=9ea684ae-6f3c-407c-a8f7-1c93aa481db6portal_id=210539redirect_url=a/M/ef3qXLrO9PM9nt4KAyUqKgEk1bjS%2BVrjJ9WLfaFcK2fhsQYM3JV0AXyMHtXQEFZiDnBKD38%3Div=4s02rvvxZAY%3Dhsutk=canon=http%3A%2F%2Fwww.stratusinteractive.com%2Fcoredial%2Femail%2Fcoredial-signature.html The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
[SR-Users] Media trouble with kamailio/rtpengine
I'm trying to use Kamailio and rtpengine as a webrtc gateway. I'm not getting audio back to my browser. From a packet capture I can see media from the browser to rtpengine, and then bi-directional RTP back and forth from my asterisk server, but rtpengine is not sending the media on to the browser, i.e.: browser - kamailio/rtpengine - asterisk This is the output from rtpengine: https://gist.github.com/marcantonio/bfe72644306b205cc7e1 Thanks. ___ 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
Re: [SR-Users] Media trouble with kamailio/rtpengine
Even stranger, I get a media stream back to the browser when I use Chrome (the first was with Firefox), but I still hear nothing. Also I get errors like this in the log: SRTP output wanted, but no crypto suite was negotiated Full output: https://gist.github.com/marcantonio/6c5414aa931a8f1c0072 On Fri, Dec 19, 2014 at 10:47 AM, Marc Soda ms...@coredial.com wrote: I'm trying to use Kamailio and rtpengine as a webrtc gateway. I'm not getting audio back to my browser. From a packet capture I can see media from the browser to rtpengine, and then bi-directional RTP back and forth from my asterisk server, but rtpengine is not sending the media on to the browser, i.e.: browser - kamailio/rtpengine - asterisk This is the output from rtpengine: https://gist.github.com/marcantonio/bfe72644306b205cc7e1 Thanks. ___ 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
Re: [SR-Users] Media trouble with kamailio/rtpengine
Thanks for the response. You're right, the media stream is making it all the way back to my PC, I just don't hear anything. And yes, my speakers are turned up... I'm not sure what to try next... On Fri, Dec 19, 2014 at 12:31 PM, Richard Fuchs rfu...@sipwise.com wrote: On 12/19/14 10:47, Marc Soda wrote: I'm trying to use Kamailio and rtpengine as a webrtc gateway. I'm not getting audio back to my browser. From a packet capture I can see media from the browser to rtpengine, and then bi-directional RTP back and forth from my asterisk server, but rtpengine is not sending the media on to the browser, i.e.: browser - kamailio/rtpengine - asterisk This is the output from rtpengine: https://gist.github.com/marcantonio/bfe72644306b205cc7e1 You've caught the same thing as Juha did just earlier, Firefox is doing something new called Trickle ICE, which at the moment breaks communications with endpoints not supporting it (such as rtpengine). The second call you posted seems fine. The error you're seeing is because RTP was received before DTLS was established and so is expected. You can try --dtls-passive as a possible fix. Media should start to flow after DTLS gets established though, and according to the logs, media was indeed seen in both directions. Try tcpdump to confirm. cheers ___ 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 ___ 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
Re: [SR-Users] SIP Fragments
Content-Length: 1901. So trimming up the headers isn't going to get me anywhere... I'm not comfortable enough with WebRTC to know what to trim out of the SDP, either. How can I force Kamailio to use TCP for SIP when relaying the call? I haven't found much info on it. Marc On Thu, Dec 18, 2014 at 5:06 AM, Daniel-Constantin Mierla mico...@gmail.com wrote: On 18/12/14 02:58, Marc Soda wrote: So gzcompress is no good with Asterisk then? Is that meant to be used only with another Kamailio proxy? Apparently Apple Facetime is using this kind of compression (as it was reported on a blog and triggered the implementation in Kamailio), but one cannot interconnect with them anyhow. IIRC, FreeSwitch implemented it as well. We're trying to do a WebRTC POC with Kamailio as the proxy. The SIP headers and SDP are huge! I've never seen such big messages. This is the web world -- lot of data even for little content, like for html pages :-) Cheers, Daniel Thanks, Marc On Wed, Dec 17, 2014 at 6:47 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: On 17/12/14 23:20, Alex Balashov wrote: On 12/17/2014 05:14 PM, Marc Soda wrote: I'm having a problem reassembling UDP packets on my Asterisk servers after passing through Kamailio (it appears to me an OS level issue, nothing to do with Kamailio). Is there a way, with Kamailio, to limit the size of a SIP message? I know I can just start removing headers, but that doesn't seem like a realistic solution. I see that Kamailio can compress the message body, but can Asterisk handle that? How do other people handle this? 1. Any SIP-compliant endpoint should be able to handle compact headers. Per RFC 3261 7.3.3 (Compact Form): Implementations MUST accept both the long and short forms of each header name. I don't think compact names for headers or joining bodies under single header name helps that much, it would be in the range of few tens of bytes. 2. Some headers are critical should not be removed. Others really are mostly useless bloat commonly added by verbose UACs, and, practically speaking, the other peer will be neither colder nor warmer if they are removed, unless there is a specific use for them. Good candidates are: a) The Date header. b) Accept: headers listing every MIME type in the known universe. Mentioned on my previous email too -- keep_hf() from textopsx module can be handy here. 3. If one or more of your endpoints offer every codec in the known universe in the SDP, you can restrict the codecs offered to reduce the SDP size. Another option to reduce the size -- sdpops module has related functions for sdp management. 4. You could use TCP. In fact, RFC 3261 actually mandates this. Per RFC 3261 Section 18.1.1 (Sending Requests): If a request is within 200 bytes of the path MTU, or if it is larger than 1300 bytes and the path MTU is unknown, the request MUST be sent using an RFC 2914 [43] congestion controlled transport protocol, such as TCP. Of course, in reality, nobody cares or follows this, and many SIP endpoints don't even support TCP (also mandated by RFC 3261). 5. In some situations, header bloat comes from requests passing through numerous proxies, each of which add a stackable Via header and, if applicable, a Route/Record-Route set. Reducing the number of intermediate proxies can help with this. 6. You could run the traffic through a lightweight, signalling-only B2BUA, such as SEMS, which deals with fragmented UDP in incoming requests just fine, but does not reoriginate on leg B all the bloated headers that came in on leg A. SEMS (like any other application layer program) had very few to do with fragmentation. It is the kernel/operating system that sorts all this. It the application is the same 'recvfrom(...)'. At the end, Asterisk is also a B2BUA and I guess if there is a server with an OS that can handle udp fragmentation, the Asterisk will be run there instead of adding another b2bua. Cheers, Daniel 7. Other than these things, there are no real solutions. -- Alex -- Daniel-Constantin Mierla http://twitter.com/#!/miconda - http://www.linkedin.com/in/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 Mierlahttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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
[SR-Users] SIP Fragments
I'm having a problem reassembling UDP packets on my Asterisk servers after passing through Kamailio (it appears to me an OS level issue, nothing to do with Kamailio). Is there a way, with Kamailio, to limit the size of a SIP message? I know I can just start removing headers, but that doesn't seem like a realistic solution. I see that Kamailio can compress the message body, but can Asterisk handle that? How do other people handle this? Thanks in advance, Marc ___ 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
Re: [SR-Users] SIP Fragments
So gzcompress is no good with Asterisk then? Is that meant to be used only with another Kamailio proxy? We're trying to do a WebRTC POC with Kamailio as the proxy. The SIP headers and SDP are huge! I've never seen such big messages. Thanks, Marc On Wed, Dec 17, 2014 at 6:47 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: On 17/12/14 23:20, Alex Balashov wrote: On 12/17/2014 05:14 PM, Marc Soda wrote: I'm having a problem reassembling UDP packets on my Asterisk servers after passing through Kamailio (it appears to me an OS level issue, nothing to do with Kamailio). Is there a way, with Kamailio, to limit the size of a SIP message? I know I can just start removing headers, but that doesn't seem like a realistic solution. I see that Kamailio can compress the message body, but can Asterisk handle that? How do other people handle this? 1. Any SIP-compliant endpoint should be able to handle compact headers. Per RFC 3261 7.3.3 (Compact Form): Implementations MUST accept both the long and short forms of each header name. I don't think compact names for headers or joining bodies under single header name helps that much, it would be in the range of few tens of bytes. 2. Some headers are critical should not be removed. Others really are mostly useless bloat commonly added by verbose UACs, and, practically speaking, the other peer will be neither colder nor warmer if they are removed, unless there is a specific use for them. Good candidates are: a) The Date header. b) Accept: headers listing every MIME type in the known universe. Mentioned on my previous email too -- keep_hf() from textopsx module can be handy here. 3. If one or more of your endpoints offer every codec in the known universe in the SDP, you can restrict the codecs offered to reduce the SDP size. Another option to reduce the size -- sdpops module has related functions for sdp management. 4. You could use TCP. In fact, RFC 3261 actually mandates this. Per RFC 3261 Section 18.1.1 (Sending Requests): If a request is within 200 bytes of the path MTU, or if it is larger than 1300 bytes and the path MTU is unknown, the request MUST be sent using an RFC 2914 [43] congestion controlled transport protocol, such as TCP. Of course, in reality, nobody cares or follows this, and many SIP endpoints don't even support TCP (also mandated by RFC 3261). 5. In some situations, header bloat comes from requests passing through numerous proxies, each of which add a stackable Via header and, if applicable, a Route/Record-Route set. Reducing the number of intermediate proxies can help with this. 6. You could run the traffic through a lightweight, signalling-only B2BUA, such as SEMS, which deals with fragmented UDP in incoming requests just fine, but does not reoriginate on leg B all the bloated headers that came in on leg A. SEMS (like any other application layer program) had very few to do with fragmentation. It is the kernel/operating system that sorts all this. It the application is the same 'recvfrom(...)'. At the end, Asterisk is also a B2BUA and I guess if there is a server with an OS that can handle udp fragmentation, the Asterisk will be run there instead of adding another b2bua. Cheers, Daniel 7. Other than these things, there are no real solutions. -- Alex -- Daniel-Constantin Mierla http://twitter.com/#!/miconda - http://www.linkedin.com/in/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 ___ 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
[SR-Users] Contact Header User
Can someone recommend a way to extract the user part of a Contact header URI? Right now I'm just trying to pass it to xlog(). I have tried: - xlog(L_NOTICE, $(ct{uri.user})); This gives me an empty string. - xlog(L_NOTICE, @contact.uri.user); This gives me an error starting Kamailio: function xlog: parameter 2 is not constant. Note, I can't seem to get any select working, for example, @ruri gives me the same error. Any suggestions? Thanks, Marc ___ 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
Re: [SR-Users] Contact Header User
Finally! This seems to have done it: xlog(L_NOTICE, $sel(contact.uri.user)); Sorry for the noob question. On Mon, Dec 8, 2014 at 11:14 AM, Marc Soda ms...@coredial.com wrote: Can someone recommend a way to extract the user part of a Contact header URI? Right now I'm just trying to pass it to xlog(). I have tried: - xlog(L_NOTICE, $(ct{uri.user})); This gives me an empty string. - xlog(L_NOTICE, @contact.uri.user); This gives me an error starting Kamailio: function xlog: parameter 2 is not constant. Note, I can't seem to get any select working, for example, @ruri gives me the same error. Any suggestions? Thanks, Marc ___ 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
[SR-Users] Plz help: MSILO on TLS + cert based client auth enabled server
Hi, I have a SIP server with TLS + client certificate based authentication. The server is listening for SIP(UDP) on port 5060, and for SIPS(TLS) on port 5061) The client certificate based authentication is enforced on port 5061. I would like to fire up MSILO and face now a strange problem: At each REGISTER, the stored messages get dumped. Dumped messages get sent to the clients from senders logged in over port 5060(UDP) as SIP:xx...@xx.xx.xx.xx however Dumped messages are NOT sent to clients from senders logged in on port 5061(TLS) as SIPS:x...@xx.xx.xx.xx It looks like the messages get dumped so M-dump() is working, but they will never enter the route. I would assume TLS is stopping the dumped messages to entering the route logic. I would either 1. somehow force m_dump() to pipe the messages over SIP(and not SIPS), or 2. disable client auth for messages recieved from local ip Can you help me how to proceed? What would be the correct approach? Can you help me with either 1 or 2. You help is greatly appreciated!!! Marc ___ 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
[SR-Users] Trigger m_dump() with REGISTER
Hi, I have a basic MSILO setup up and running. For the moment every time the client sends a REGISTER, m_dump() is called. I would like to achieve the following: The clients are registering with either 200 or 300 sec expiration time. I would like to dump the messages only when the client is registering for 300 secs. Only a REGISTER with an expiration time of 300 should trigger m_dump(). Can you help me with this? Any help or idea is appreciated. thanks Marc ___ 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
Re: [SR-Users] MSILO - dumped messages get duplicated
Hi, Can anybody help me with these duplicate messages? I guess the first message should be removed from the db, since it got a reply 202. Despite that, it end up again in the db. Can you help me what I am doing wrong? Many thanks Marc From: proy...@hotmail.com To: sr-users@lists.sip-router.org Date: Tue, 3 Jun 2014 21:38:32 + Subject: [SR-Users] MSILO - dumped messages get duplicated Hi, I have a Kamailio 3.2 setup up and running. Recently I configured msilo for offline message store. Essentialy the setup runs fine. Messages to users without location info getting stored. In case the user has location info, but cannot be reached, I made failover_route, so the messages getting stored in this case too. Messages getting dumped at the next REGISTER. However, I have a group of new mobile clients, with unstable connection. It happens many times that they send a REGISTER, but the connection brakes afterwards. It this case the message is getting dumped, but since it cannot be delivered, it runs on the failover_route which stores the message again. However, the previous message is not removed from the db, so the same message is now twice in the db. Next time the message either gets delivered in double, or in case of a new failure, it gets stored 2x2= four times. I need to avoid this duplicates but still make sure the message get delivered sooner or later. Any help is highly appreciated. Here is my routing table: thanks Marc ### Routing Logic # Main SIP request routing logic # - processing of any incoming SIP request starts with this route route { # per request initial checks route(REQINIT); # NAT detection route(NAT); # handle requests within SIP dialogs route(WITHINDLG); ### only initial requests (no To tag) # CANCEL processing if (is_method(CANCEL)) { if (t_check_trans()) t_relay(); exit; } if (is_method(MESSAGE)) { log(1,WE HAVE A NEW MESSAGE\n); route(MSILO_MESSAGE); } t_check_trans(); # authentication route(AUTH); # record routing for dialog forming requests (in case they are routed) # - remove preloaded route headers remove_hf(Route); if (is_method(INVITE|SUBSCRIBE)) record_route(); # account only INVITEs if (is_method(INVITE)) { setflag(FLT_ACC); # do accounting } # dispatch requests to foreign domains route(SIPOUT); ### requests for my local domains # handle presence related requests route(PRESENCE); # handle registrations route(REGISTRAR); if ($rU==$null) { # request with no Username in RURI sl_send_reply(484,Address Incomplete); exit; } # dispatch destinations to PSTN route(PSTN); # user location service route(LOCATION); route(RELAY); } route[RELAY] { #!ifdef WITH_NAT if (check_route_param(nat=yes)) { setbflag(FLB_NATB); } if (isflagset(FLT_NATS) || isbflagset(FLB_NATB)) { route(RTPPROXY); } #!endif /* example how to enable some additional event routes */ if (is_method(INVITE)) { #t_on_branch(BRANCH_ONE); t_on_reply(REPLY_ONE); t_on_failure(FAIL_ONE); } if (!t_relay()) { sl_reply_error(); } exit; } ##storing offline messages route[MSILO_MESSAGE]{ if (lookup(location)){ t_on_failure(FAIL_MESSAGE); t_relay(); xlog(L_NOTICE,-MI: ($mi), MB: ($mb)\n); }else{ xlog(L_NOTICE,--MESSAGE PROCESSING: location not found, storing offline message ID: ($ru)\n); m_store($ru); sl_send_reply(202, ACCEPTED); xlog(L_NOTICE,--MESSAGE PROCESSING: location not found, stored offline message ID: ($ru)\n); }; exit; }; failure_route[FAIL_MESSAGE]{ xlog(L_NOTICE,--MESSAGE PROCESSING: user cannot be reached, storing offline message ID: ($ou)\n); m_store($ou); t_reply(202, ACCEPTED); xlog(L_NOTICE,--MESSAGE PROCESSING: user cannot be reached, stored offline message ID: ($ou)\n); exit; } # Per SIP request initial checks route[REQINIT] { #!ifdef WITH_ANTIFLOOD # flood dection from same IP and traffic ban for a while # be sure you exclude checking trusted peers, such as pstn gateways # - local host excluded (e.g., loop to self) if(src_ip!=myself) { if($sht
Re: [SR-Users] MSILO - dumped messages get duplicated
Hi Daniel! I applied now the source ip check and it is working! Thanks a lot! regards Marc From: proy...@hotmail.com To: sr-users@lists.sip-router.org Date: Tue, 3 Jun 2014 21:38:32 + Subject: [SR-Users] MSILO - dumped messages get duplicated Hi, I have a Kamailio 3.2 setup up and running. Recently I configured msilo for offline message store. Essentialy the setup runs fine. Messages to users without location info getting stored. In case the user has location info, but cannot be reached, I made failover_route, so the messages getting stored in this case too. Messages getting dumped at the next REGISTER. However, I have a group of new mobile clients, with unstable connection. It happens many times that they send a REGISTER, but the connection brakes afterwards. It this case the message is getting dumped, but since it cannot be delivered, it runs on the failover_route which stores the message again. However, the previous message is not removed from the db, so the same message is now twice in the db. Next time the message either gets delivered in double, or in case of a new failure, it gets stored 2x2= four times. I need to avoid this duplicates but still make sure the message get delivered sooner or later. Any help is highly appreciated. Here is my routing table: thanks Marc ___ 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 ___ 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
[SR-Users] SDP and NAT
Hey all, I have a Kamailio box functioning as a proxy. When some UAs send an INVITE the SDP has their private IP (c=IN IP4 10.x.x.x). Kamailio is passing this on without changing it to the proper public IP. What's the best way to rewrite that? I'm using a config based on the default one. ___ 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
[SR-Users] MSILO - dumped messages get duplicated
Hi, I have a Kamailio 3.2 setup up and running. Recently I configured msilo for offline message store. Essentialy the setup runs fine. Messages to users without location info getting stored. In case the user has location info, but cannot be reached, I made failover_route, so the messages getting stored in this case too. Messages getting dumped at the next REGISTER. However, I have a group of new mobile clients, with unstable connection. It happens many times that they send a REGISTER, but the connection brakes afterwards. It this case the message is getting dumped, but since it cannot be delivered, it runs on the failover_route which stores the message again. However, the previous message is not removed from the db, so the same message is now twice in the db. Next time the message either gets delivered in double, or in case of a new failure, it gets stored 2x2= four times. I need to avoid this duplicates but still make sure the message get delivered sooner or later. Any help is highly appreciated. Here is my routing table: thanks Marc ### Routing Logic # Main SIP request routing logic # - processing of any incoming SIP request starts with this route route { # per request initial checks route(REQINIT); # NAT detection route(NAT); # handle requests within SIP dialogs route(WITHINDLG); ### only initial requests (no To tag) # CANCEL processing if (is_method(CANCEL)) { if (t_check_trans()) t_relay(); exit; } if (is_method(MESSAGE)) { log(1,WE HAVE A NEW MESSAGE\n); route(MSILO_MESSAGE); } t_check_trans(); # authentication route(AUTH); # record routing for dialog forming requests (in case they are routed) # - remove preloaded route headers remove_hf(Route); if (is_method(INVITE|SUBSCRIBE)) record_route(); # account only INVITEs if (is_method(INVITE)) { setflag(FLT_ACC); # do accounting } # dispatch requests to foreign domains route(SIPOUT); ### requests for my local domains # handle presence related requests route(PRESENCE); # handle registrations route(REGISTRAR); if ($rU==$null) { # request with no Username in RURI sl_send_reply(484,Address Incomplete); exit; } # dispatch destinations to PSTN route(PSTN); # user location service route(LOCATION); route(RELAY); } route[RELAY] { #!ifdef WITH_NAT if (check_route_param(nat=yes)) { setbflag(FLB_NATB); } if (isflagset(FLT_NATS) || isbflagset(FLB_NATB)) { route(RTPPROXY); } #!endif /* example how to enable some additional event routes */ if (is_method(INVITE)) { #t_on_branch(BRANCH_ONE); t_on_reply(REPLY_ONE); t_on_failure(FAIL_ONE); } if (!t_relay()) { sl_reply_error(); } exit; } ##storing offline messages route[MSILO_MESSAGE]{ if (lookup(location)){ t_on_failure(FAIL_MESSAGE); t_relay(); xlog(L_NOTICE,-MI: ($mi), MB: ($mb)\n); }else{ xlog(L_NOTICE,--MESSAGE PROCESSING: location not found, storing offline message ID: ($ru)\n); m_store($ru); sl_send_reply(202, ACCEPTED); xlog(L_NOTICE,--MESSAGE PROCESSING: location not found, stored offline message ID: ($ru)\n); }; exit; }; failure_route[FAIL_MESSAGE]{ xlog(L_NOTICE,--MESSAGE PROCESSING: user cannot be reached, storing offline message ID: ($ou)\n); m_store($ou); t_reply(202, ACCEPTED); xlog(L_NOTICE,--MESSAGE PROCESSING: user cannot be reached, stored offline message ID: ($ou)\n); exit; } # Per SIP request initial checks route[REQINIT] { #!ifdef WITH_ANTIFLOOD # flood dection from same IP and traffic ban for a while # be sure you exclude checking trusted peers, such as pstn gateways # - local host excluded (e.g., loop to self) if(src_ip!=myself) { if($sht(ipban=$si)!=$null) { # ip is already blocked xdbg(request from blocked IP - $rm from $fu (IP:$si:$sp)\n); exit; } if (!pike_check_req()) { xlog(L_ALERT,ALERT: pike blocking $rm from $fu (IP:$si:$sp)\n); $sht(ipban=$si
[SR-Users] rport
I have a Kamailio server forwarding REGISTERs to an Asterisk box, similar to the way Daniel shows here: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb Can I force Kamailio to append rport=5060 to the topmost Via header, prior to forwarding the REGISTER to Asterisk? I tried add_local_rport() but it only included 'rport' and not 5060. Thanks, Marc ___ 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
Re: [SR-Users] rport
Basically, I'm trying to get Asterisk to send all future INVITEs to Kamailio on port 5060 and not the source port of the REGISTER. My REGISTER looks like this: U 1.1.1.1:59738 - 2.2.2.2:5060 REGISTER sip:2.2.2.2:5060 SIP/2.0. Via: SIP/2.0/UDP 1.1.1.1:5060;branch=z9hG4bK404.05c2e5a7.0. Via: SIP/2.0/UDP 3.3.3.3:10654 ;rport=56417;branch=z9hG4bK-d8754z-a5ad572f022375cb-1---d8754z-. Max-Forwards: 16. To: sip:sip7878_spqa@2.2.2.2. From: sip:sip7878_spqa@2.2.2.2;tag=d8932554. Call-ID: OWU3NDM5N2MxOTVkOTM5YjE4MjZkMDFjYWIyN2JlNjI.. CSeq: 2 REGISTER. Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE. Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri. User-Agent: Z 3.3.21933 r21903. Allow-Events: presence, kpml. Content-Length: 0. Path: sip:3.3.3.3:56417;lr. Contact: sip:sip7878_spqa@1.1.1.1:5060. Expires: 3600. . Subsequant INVITEs are sent to 1.1.1.1:59738 and not 1.1.1.1:5060. I need them to go to 1.1.1.1:5060. On Fri, Mar 28, 2014 at 2:28 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server forwarding REGISTERs to an Asterisk box, similar to the way Daniel shows here: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb Can I force Kamailio to append rport=5060 to the topmost Via header, prior to forwarding the REGISTER to Asterisk? I tried add_local_rport() but it only included 'rport' and not 5060. Thanks, Marc ___ 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
Re: [SR-Users] rport
I'm rewriting the Contact header in the REGISTER to be Kamailio on port 5060. For some reason Asterisk is sending INVITEs on the source port of the message and not 5060. I thought rport would correct that, but it sounds like rport is only intended to for subsequent messages in a given transaction... On Fri, Mar 28, 2014 at 2:43 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: Hello, rport and Via headers are used for routing the SIP responses back to the device sending the request. They are not used at all for routing INVITE requests. The tutorial you refer to is generating a new REGISTER from Kamailio to Asterisk, putting in it the Contact header with the address of kamailio. So Asterisk should send the INVITE to kamailio. Cheers, Daniel On 28/03/14 19:37, Marc Soda wrote: Basically, I'm trying to get Asterisk to send all future INVITEs to Kamailio on port 5060 and not the source port of the REGISTER. My REGISTER looks like this: U 1.1.1.1:59738 - 2.2.2.2:5060 REGISTER sip:2.2.2.2:5060 SIP/2.0. Via: SIP/2.0/UDP 1.1.1.1:5060;branch=z9hG4bK404.05c2e5a7.0. Via: SIP/2.0/UDP 3.3.3.3:10654 ;rport=56417;branch=z9hG4bK-d8754z-a5ad572f022375cb-1---d8754z-. Max-Forwards: 16. To: sip:sip7878_spqa@2.2.2.2. From: sip:sip7878_spqa@2.2.2.2;tag=d8932554. Call-ID: OWU3NDM5N2MxOTVkOTM5YjE4MjZkMDFjYWIyN2JlNjI.. CSeq: 2 REGISTER. Allow: INVITE, ACK, CANCEL, BYE, NOTIFY, REFER, MESSAGE, OPTIONS, INFO, SUBSCRIBE. Supported: replaces, norefersub, extended-refer, timer, X-cisco-serviceuri. User-Agent: Z 3.3.21933 r21903. Allow-Events: presence, kpml. Content-Length: 0. Path: sip:3.3.3.3:56417;lr. Contact: sip:sip7878_spqa@1.1.1.1:5060. Expires: 3600. . Subsequant INVITEs are sent to 1.1.1.1:59738 and not 1.1.1.1:5060. I need them to go to 1.1.1.1:5060. On Fri, Mar 28, 2014 at 2:28 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server forwarding REGISTERs to an Asterisk box, similar to the way Daniel shows here: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb Can I force Kamailio to append rport=5060 to the topmost Via header, prior to forwarding the REGISTER to Asterisk? I tried add_local_rport() but it only included 'rport' and not 5060. Thanks, Marc ___ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-us...@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda Kamailio World Conference - April 2-4, 2014, Berlin, Germanyhttp://www.kamailioworld.com ___ 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 ___ 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
[SR-Users] Redirect, maddr, and domain
I'm trying to handle a redirect with get_redirects(). It seems that Kamailio is ignoring the maddr param on the contact header. Is there a way to force maddr to be used? The Contact header on the 302 looks like this: sip:2404441...@domain.com:5060 ;maddr=1.1.1.1;q=0.5,sip:2404441...@comain.com:5060;maddr=2.2.2.2;q=0.25 The message is then being sent to domain.com, rather than 1.1.1.1. ___ 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
Re: [SR-Users] 401 after a 302
I found t_on_branch_failure() in 4.1. Would that be the way to handle this? On Thu, Mar 13, 2014 at 1:36 PM, Marc Soda ms...@coredial.com wrote: Can someone tell me how to handle a 401 from a 302 redirect? I am attempting to register with the uac module. Normally, I set a failure route for the 401 and call auc_auth(). In this case, I am receiving a 302, sending the register with get_redirects(), then getting a 401. However, Kamailio seems to be ignoring the 401. I see it in an onrely_route, but not a failure route. failure_route[REG_AUTH] { xlog(L_NOTICE,route[REG_AUTH]\n); # Handle redirects if ($T_reply_code == 302) { get_redirects(*, Redirected); t_on_failure(REG_AUTH); route(RELAY); } else if ($T_reply_code == 401) { uac_auth(); t_on_reply(REG_REPLY); route(RELAY); } } route[RELAY] { xlog(L_NOTICE,route[RELAY] ($rm)\n); if (is_method(INVITE|BYE|SUBSCRIBE|UPDATE)) { if (!t_is_set(branch_route)) t_on_branch(MANAGE_BRANCH); } if (is_method(INVITE|SUBSCRIBE|UPDATE)) { if (!t_is_set(onreply_route)) t_on_reply(MANAGE_REPLY); } if (is_method(INVITE)) { if (!t_is_set(failure_route)) t_on_failure(MANAGE_FAILURE); } xlog(L_NOTICE,t_relay()'ing ($rm)\n); if (!t_relay()) { sl_reply_error(); } exit; } Thanks! Marc -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
[SR-Users] 401 after a 302
Can someone tell me how to handle a 401 from a 302 redirect? I am attempting to register with the uac module. Normally, I set a failure route for the 401 and call auc_auth(). In this case, I am receiving a 302, sending the register with get_redirects(), then getting a 401. However, Kamailio seems to be ignoring the 401. I see it in an onrely_route, but not a failure route. failure_route[REG_AUTH] { xlog(L_NOTICE,route[REG_AUTH]\n); # Handle redirects if ($T_reply_code == 302) { get_redirects(*, Redirected); t_on_failure(REG_AUTH); route(RELAY); } else if ($T_reply_code == 401) { uac_auth(); t_on_reply(REG_REPLY); route(RELAY); } } route[RELAY] { xlog(L_NOTICE,route[RELAY] ($rm)\n); if (is_method(INVITE|BYE|SUBSCRIBE|UPDATE)) { if (!t_is_set(branch_route)) t_on_branch(MANAGE_BRANCH); } if (is_method(INVITE|SUBSCRIBE|UPDATE)) { if (!t_is_set(onreply_route)) t_on_reply(MANAGE_REPLY); } if (is_method(INVITE)) { if (!t_is_set(failure_route)) t_on_failure(MANAGE_FAILURE); } xlog(L_NOTICE,t_relay()'ing ($rm)\n); if (!t_relay()) { sl_reply_error(); } exit; } Thanks! Marc ___ 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
[SR-Users] Incorrect Contact address
I have Kamailio setup as a proxy in front of a backend server (Asterisk). When I make a call through the proxy, the Contact header in the 200 OK that is returned to the client has the IP of the backend server in it. Thus, the client is sending it's ACK directly to the backend server. Is there a special method to rewrite the Contact header to be Kamailio's IP? Where is a good place in the config to do this? (my config is loosely based on this: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb) Thanks! Marc ___ 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
Re: [SR-Users] Incorrect Contact address
Thanks Olle. I am calling record_record() on the initial INVITE. In fact, the OK has a Record-Route header: 1.1.1.1 is the endpoint 2.2.2.2 is the kamailio proxy 3.3.3.3 is the backend server SIP/2.0 200 OK Via: SIP/2.0/UDP 1.1.1.1:60077 ;rport=46110;branch=z9hG4bK-d8754z-eb9768c7e3a2d1e7-1---d8754z- Record-Route: sip:2.2.2.2;lr=on;ftag=db634167;nat=yes From: sip:sip7878_s...@edge.domain.com;transport=UDP;tag=db634167 To: sip:215...@edge.coredial.com;transport=UDP;tag=as3f9cf263 Call-ID: MzI5YTA3YmRkNzFiZjhhZTRkNTc2OGE1ZTc5ZjdjMmM. CSeq: 2 INVITE User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces Contact: sip:215@3.3.3.3 Content-Type: application/sdp Content-Length: 266 v=0 o=root 13486 13487 IN IP4 3.3.3.3 s=session c=IN IP4 3.3.3.3 t=0 0 m=audio 29990 RTP/AVP 0 8 101 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - a=ptime:20 a=sendrecv I don't think 3.3.3.3 should show up anywhere, it should be rewritten to 2.2.2.2. On Wed, Mar 5, 2014 at 1:34 PM, Olle E. Johansson o...@edvina.net wrote: On 05 Mar 2014, at 18:30, Marc Soda ms...@coredial.com wrote: I have Kamailio setup as a proxy in front of a backend server (Asterisk). When I make a call through the proxy, the Contact header in the 200 OK that is returned to the client has the IP of the backend server in it. Thus, the client is sending it's ACK directly to the backend server. Is there a special method to rewrite the Contact header to be Kamailio's IP? Check record_route() in the default configuration script. You need to add a route set by using record_route() in the initial transaction. Cheers, /O Where is a good place in the config to do this? (my config is loosely based on this: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb ) Thanks! Marc ___ 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 ___ 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 ___ 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
Re: [SR-Users] Incorrect Contact address
Yeah, I think I'm dealing with a buggy client... Thanks all. On Wed, Mar 5, 2014 at 1:57 PM, Carlos Ruiz DÃaz carlos.ruizd...@gmail.comwrote: Why is erroneous to have the contact header with the backend IP? With the record-route on the 200 Ok, the ACK should be directed to the backend IP, but containing a route header pointing to the Kamailio IP. Kamailio will loose_route() this request and send it to the backend server as expected. Regards, On Wed, Mar 5, 2014 at 3:53 PM, Marc Soda ms...@coredial.com wrote: Thanks Olle. I am calling record_record() on the initial INVITE. In fact, the OK has a Record-Route header: 1.1.1.1 is the endpoint 2.2.2.2 is the kamailio proxy 3.3.3.3 is the backend server SIP/2.0 200 OK Via: SIP/2.0/UDP 1.1.1.1:60077 ;rport=46110;branch=z9hG4bK-d8754z-eb9768c7e3a2d1e7-1---d8754z- Record-Route: sip:2.2.2.2;lr=on;ftag=db634167;nat=yes From: sip:sip7878_s...@edge.domain.com;transport=UDP;tag=db634167 To: sip:215...@edge.coredial.com;transport=UDP;tag=as3f9cf263 Call-ID: MzI5YTA3YmRkNzFiZjhhZTRkNTc2OGE1ZTc5ZjdjMmM. CSeq: 2 INVITE User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces Contact: sip:215@3.3.3.3 Content-Type: application/sdp Content-Length: 266 v=0 o=root 13486 13487 IN IP4 3.3.3.3 s=session c=IN IP4 3.3.3.3 t=0 0 m=audio 29990 RTP/AVP 0 8 101 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - a=ptime:20 a=sendrecv I don't think 3.3.3.3 should show up anywhere, it should be rewritten to 2.2.2.2. On Wed, Mar 5, 2014 at 1:34 PM, Olle E. Johansson o...@edvina.net wrote: On 05 Mar 2014, at 18:30, Marc Soda ms...@coredial.com wrote: I have Kamailio setup as a proxy in front of a backend server (Asterisk). When I make a call through the proxy, the Contact header in the 200 OK that is returned to the client has the IP of the backend server in it. Thus, the client is sending it's ACK directly to the backend server. Is there a special method to rewrite the Contact header to be Kamailio's IP? Check record_route() in the default configuration script. You need to add a route set by using record_route() in the initial transaction. Cheers, /O Where is a good place in the config to do this? (my config is loosely based on this: http://kb.asipto.com/asterisk:realtime:kamailio-4.0.x-asterisk-11.3.0-astdb ) Thanks! Marc ___ 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 ___ 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 ___ 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 -- Carlos http://caruizdiaz.com http://ngvoice.com +595981146623 ___ 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 -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
[SR-Users] INVITE proxy auth
Hey all, I have a pretty general SIP question that I'm hoping some of you can shed some light on. I hope this ok for the list. I am setting up a SIP proxy with Kamailio. The backend server (Asterisk in my case) requires authentication. Is it standard/best practice to require a proxy to authenticate to a backend server for INVITEs? I am already registering, with authentication, on behalf of the client, i.e, the client registers to the proxy, then the proxy registers to the backend server, all with authentication. I was hoping not to have to do this on INVITEs, but if I don't I'm left with the following: clientproxybackend | ---INVITE--- | | | 407- | | | -ACK | | | INVITE(auth) | | | 100- | | | | ---INVITE--- | | | 401- | | | -ACK | | 401- | | | -ACK | | | INVITE(auth) | | | 100- | | | | INVITE(auth) | | | 100- | | | -OK- | | -OK- | | | -ACK | | | | -ACK | It works, but, it's terrible... Before I try to make it work differently, what do you all think it should do? Marc ___ 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
Re: [SR-Users] REGISTER failure_route 401 problem
I forget to mention, the nat device is in front of the Kamailio servers, not the endpoints. On Fri, Feb 28, 2014 at 6:22 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server setup which is registers to a back end server on behalf of endpoints. The endpoints can register to Kamailio but Kamailio is failing to register to the server when I put a NAT device in front of it. Without the NAT device it works fine. The problem is the 401 that comes back seems to be ignored by Kamailio. I have a failure route setup to auth, but it is never hit. I see the 401 in onrely_route, but not the failure_route. I'm assuming it's a NAT issue because removing the device fixes the issue. Anyone have any ideas? The 401 being ignored: SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.10.11;branch=z9hG4bKe5d6.178378f7.0;received=198.XXX.XXX.XXX Via: SIP/2.0/UDP 127.0.0.1:12354 ;rport=6545;received=198.XXX.YYY.YYY;branch=z9hG4bK-1879-1-3 From: sip:sip7878_s...@64.yyy.yyy.yyy;tag=1 To: sip:sip7878_s...@64.yyy.yyy.yyy;tag=as00e32130 Call-ID: 1-1879@127.0.0.1 CSeq: 2 REGISTER User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces WWW-Authenticate: Digest algorithm=MD5, realm=fe-c7c5-9o.domain.com, nonce=151e4f60 Content-Length: 0 Thanks, Marc -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
Re: [SR-Users] REGISTER failure_route 401 problem
So I've found out that NAT has nothing to do with it. The bit about things working when the NAT device is removed was wrong. So my question becomes: Why would Kamailio ignore a 401 rather sending it to a failure route? Thanks in advance, Marc On Mon, Mar 3, 2014 at 9:10 AM, Marc Soda ms...@coredial.com wrote: I forget to mention, the nat device is in front of the Kamailio servers, not the endpoints. On Fri, Feb 28, 2014 at 6:22 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server setup which is registers to a back end server on behalf of endpoints. The endpoints can register to Kamailio but Kamailio is failing to register to the server when I put a NAT device in front of it. Without the NAT device it works fine. The problem is the 401 that comes back seems to be ignored by Kamailio. I have a failure route setup to auth, but it is never hit. I see the 401 in onrely_route, but not the failure_route. I'm assuming it's a NAT issue because removing the device fixes the issue. Anyone have any ideas? The 401 being ignored: SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.10.11;branch=z9hG4bKe5d6.178378f7.0;received=198.XXX.XXX.XXX Via: SIP/2.0/UDP 127.0.0.1:12354 ;rport=6545;received=198.XXX.YYY.YYY;branch=z9hG4bK-1879-1-3 From: sip:sip7878_s...@64.yyy.yyy.yyy;tag=1 To: sip:sip7878_s...@64.yyy.yyy.yyy;tag=as00e32130 Call-ID: 1-1879@127.0.0.1 CSeq: 2 REGISTER User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces WWW-Authenticate: Digest algorithm=MD5, realm=fe-c7c5-9o.domain.com, nonce=151e4f60 Content-Length: 0 Thanks, Marc ___ 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
Re: [SR-Users] REGISTER failure_route 401 problem
I resolved the issue, but I not quite sure why is worked. Rather than sending the REGISTER with t_reply(), I changed it to call route(RELAY) which does this: route[RELAY] { xlog(L_NOTICE,route[RELAY] ($rm)\n); if (is_method(INVITE|BYE|SUBSCRIBE|UPDATE)) { if (!t_is_set(branch_route)) t_on_branch(MANAGE_BRANCH); } if (is_method(INVITE|SUBSCRIBE|UPDATE)) { if (!t_is_set(onreply_route)) t_on_reply(MANAGE_REPLY); } if (is_method(INVITE)) { if (!t_is_set(failure_route)) t_on_failure(MANAGE_FAILURE); } xlog(L_NOTICE,t_relay()'ing ($rm)\n); if (!t_relay()) { sl_reply_error(); } exit; } I thought that maybe the issue was that I was getting a 100 TRYING right before the 401, and maybe I needed to setup a reply route as well. However, as you can see above, MANAGE_REPLY isn't set for REGISTERs. Why did this fix the problem? Marc On Mon, Mar 3, 2014 at 11:52 AM, Daniel-Constantin Mierla mico...@gmail.com wrote: Are you sure you have set t_on_failure() for the respective transaction? Cheers, Daniel On 03/03/14 17:44, Marc Soda wrote: So I've found out that NAT has nothing to do with it. The bit about things working when the NAT device is removed was wrong. So my question becomes: Why would Kamailio ignore a 401 rather sending it to a failure route? Thanks in advance, Marc On Mon, Mar 3, 2014 at 9:10 AM, Marc Soda ms...@coredial.com wrote: I forget to mention, the nat device is in front of the Kamailio servers, not the endpoints. On Fri, Feb 28, 2014 at 6:22 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server setup which is registers to a back end server on behalf of endpoints. The endpoints can register to Kamailio but Kamailio is failing to register to the server when I put a NAT device in front of it. Without the NAT device it works fine. The problem is the 401 that comes back seems to be ignored by Kamailio. I have a failure route setup to auth, but it is never hit. I see the 401 in onrely_route, but not the failure_route. I'm assuming it's a NAT issue because removing the device fixes the issue. Anyone have any ideas? The 401 being ignored: SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.10.11;branch=z9hG4bKe5d6.178378f7.0;received=198.XXX.XXX.XXX Via: SIP/2.0/UDP 127.0.0.1:12354 ;rport=6545;received=198.XXX.YYY.YYY;branch=z9hG4bK-1879-1-3 From: sip:sip7878_s...@64.yyy.yyy.yyy;tag=1 To: sip:sip7878_s...@64.yyy.yyy.yyy;tag=as00e32130 Call-ID: 1-1879@127.0.0.1 CSeq: 2 REGISTER User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces WWW-Authenticate: Digest algorithm=MD5, realm=fe-c7c5-9o.domain.com, nonce=151e4f60 Content-Length: 0 Thanks, Marc ___ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-us...@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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 ___ 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
Re: [SR-Users] REGISTER failure_route 401 problem
On Mon, Mar 3, 2014 at 12:24 PM, Daniel-Constantin Mierla mico...@gmail.com wrote: On 03/03/14 18:08, Marc Soda wrote: I resolved the issue, but I not quite sure why is worked. Rather than sending the REGISTER with t_reply() t_reply() is not sending REGISTER anywhere, it is sending a reply (sip response) for a request. Oops, I meant t_relay(). I forwarded the register by calling on_failure_route(), then route(RELAY), rather than on_failure_route(), then t_relay(). I realize that route(RELAY) eventually calls t_relay(), I'm just not sure why that fixed the issue. In short, be sure you set the appropriate failure route for the request and forward it with t_relay(). Cheers, Daniel , I changed it to call route(RELAY) which does this: route[RELAY] { xlog(L_NOTICE,route[RELAY] ($rm)\n); if (is_method(INVITE|BYE|SUBSCRIBE|UPDATE)) { if (!t_is_set(branch_route)) t_on_branch(MANAGE_BRANCH); } if (is_method(INVITE|SUBSCRIBE|UPDATE)) { if (!t_is_set(onreply_route)) t_on_reply(MANAGE_REPLY); } if (is_method(INVITE)) { if (!t_is_set(failure_route)) t_on_failure(MANAGE_FAILURE); } xlog(L_NOTICE,t_relay()'ing ($rm)\n); if (!t_relay()) { sl_reply_error(); } exit; } I thought that maybe the issue was that I was getting a 100 TRYING right before the 401, and maybe I needed to setup a reply route as well. However, as you can see above, MANAGE_REPLY isn't set for REGISTERs. Why did this fix the problem? Marc On Mon, Mar 3, 2014 at 11:52 AM, Daniel-Constantin Mierla mico...@gmail.com wrote: Are you sure you have set t_on_failure() for the respective transaction? Cheers, Daniel On 03/03/14 17:44, Marc Soda wrote: So I've found out that NAT has nothing to do with it. The bit about things working when the NAT device is removed was wrong. So my question becomes: Why would Kamailio ignore a 401 rather sending it to a failure route? Thanks in advance, Marc On Mon, Mar 3, 2014 at 9:10 AM, Marc Soda ms...@coredial.com wrote: I forget to mention, the nat device is in front of the Kamailio servers, not the endpoints. On Fri, Feb 28, 2014 at 6:22 PM, Marc Soda ms...@coredial.com wrote: I have a Kamailio server setup which is registers to a back end server on behalf of endpoints. The endpoints can register to Kamailio but Kamailio is failing to register to the server when I put a NAT device in front of it. Without the NAT device it works fine. The problem is the 401 that comes back seems to be ignored by Kamailio. I have a failure route setup to auth, but it is never hit. I see the 401 in onrely_route, but not the failure_route. I'm assuming it's a NAT issue because removing the device fixes the issue. Anyone have any ideas? The 401 being ignored: SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.10.11;branch=z9hG4bKe5d6.178378f7.0;received=198.XXX.XXX.XXX Via: SIP/2.0/UDP 127.0.0.1:12354 ;rport=6545;received=198.XXX.YYY.YYY;branch=z9hG4bK-1879-1-3 From: sip:sip7878_s...@64.yyy.yyy.yyy;tag=1 To: sip:sip7878_s...@64.yyy.yyy.yyy;tag=as00e32130 Call-ID: 1-1879@127.0.0.1 CSeq: 2 REGISTER User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces WWW-Authenticate: Digest algorithm=MD5, realm=fe-c7c5-9o.domain.com, nonce=151e4f60 Content-Length: 0 Thanks, Marc ___ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing listsr-us...@lists.sip-router.orghttp://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/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
[SR-Users] REGISTER failure_route 401 problem
I have a Kamailio server setup which is registers to a back end server on behalf of endpoints. The endpoints can register to Kamailio but Kamailio is failing to register to the server when I put a NAT device in front of it. Without the NAT device it works fine. The problem is the 401 that comes back seems to be ignored by Kamailio. I have a failure route setup to auth, but it is never hit. I see the 401 in onrely_route, but not the failure_route. I'm assuming it's a NAT issue because removing the device fixes the issue. Anyone have any ideas? The 401 being ignored: SIP/2.0 401 Unauthorized Via: SIP/2.0/UDP 10.0.10.11;branch=z9hG4bKe5d6.178378f7.0;received=198.XXX.XXX.XXX Via: SIP/2.0/UDP 127.0.0.1:12354 ;rport=6545;received=198.XXX.YYY.YYY;branch=z9hG4bK-1879-1-3 From: sip:sip7878_s...@64.yyy.yyy.yyy;tag=1 To: sip:sip7878_s...@64.yyy.yyy.yyy;tag=as00e32130 Call-ID: 1-1879@127.0.0.1 CSeq: 2 REGISTER User-Agent: CoreDialPBX Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO Supported: replaces WWW-Authenticate: Digest algorithm=MD5, realm=fe-c7c5-9o.domain.com, nonce=151e4f60 Content-Length: 0 Thanks, Marc ___ 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
[SR-Users] MSILO: remove Offline message prefix
Hi! I have an up and running msilo config with kamailio 4.0.4. However, all the queued messages are delivered with a prefix [Offline message - (date)(time)]. Non queued messages are delivered unchanged. Is there a way I can remove this prefix, so also queued messages get delivered unchanged? Please advise! Any help is appreciated! Thanks you, Marc ___ 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
[SR-Users] Limit the nr. of transaction retries
Hi! I Have a questions concerning t_realy() and failure route. If the t_realy() is not successful, it makes 12 re-tries before failure route is called. Can you help me, how can I lower the number of retries before move to failure route? My goal is to make 3 re-tries and then call failure route. (I gues it is a tm param?) Thansk you for your help in advance! regards Marc ___ 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
[SR-Users] Msilo: remove messages from db immediately after successful delivery
Hi! I have a running msilo config. However, messages remain in the db after after successful delivery, and get removed at the next clean period. Unfortunatelly, this makes support cases dificult, as we do not see from the db which messages are delivered and which are not. My goal is is either: Remove the message from the db immediately after successful delivery (preferred) and/or be able to see the individual message delivery status. Can you help me, how should I proceed? Many thanks in advance! Marc ___ 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
[SR-Users] TLS: support TLS v1.2 ?
Hi! I have question concerning TLS module. I would like to enable TLS 1.2 protocol. As I understand the TLS module is compiled with openssl, which as far as i know has TLS 1.2 support since openssl 1.0.1. I am wondering if there is way to enable TLS 1.2 on the TLS module? Many thanks Marc ___ 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
Re: [SR-Users] t_replicate() and Contact
Also, I tried setting the Contact header in onsend_route, but it seems that it's overwritten after that. Perhaps I need to modify it on the second Kamailio server? Is it possible to change it before it's sent on the first server? On Wed, Sep 4, 2013 at 8:53 AM, Marc Soda ms...@coredial.com wrote: Hey all, I have 2 Kamailio systems replicating REGISTER's to each other. However, I've noticed that the Contact header seems to be wrong on the second server. For example, if I have endpoint 1.1.1.1 registering to 2.2.2.2, then 2.2.2.2 is calling t_replicate() to 3.3.3.3, the Contact header once it is received on 3.3.3.3 is user@2.2.2.2. I think it should be user@1.1.1.1. Where's the best place to change this before it is sent? ___ 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
[SR-Users] t_replicate() and Contact
Hey all, I have 2 Kamailio systems replicating REGISTER's to each other. However, I've noticed that the Contact header seems to be wrong on the second server. For example, if I have endpoint 1.1.1.1 registering to 2.2.2.2, then 2.2.2.2 is calling t_replicate() to 3.3.3.3, the Contact header once it is received on 3.3.3.3 is user@2.2.2.2. I think it should be user@1.1.1.1. Where's the best place to change this before it is sent? -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
Re: [SR-Users] Loopback
On Thu, Aug 29, 2013 at 3:53 AM, Daniel-Constantin Mierla mico...@gmail.com wrote: what device is at 701? The 200ok receved from it has the contact address with the IP of kamailio: SFLPhone It seems there is a NAT between your kamailio and 701, as kamailio adds alias parameter to Contact in 200ok. That can be used to route the ack, like: handle_ruri_alias(); $ru = $du; $du = $null; There is no NAT in this scenario, although NAT support is enabled as we will have to deal with it. Should I still use handle_ruri_alias()? Thanks, Marc ___ 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
Re: [SR-Users] Loopback
I ended up doing this right before the call to loose_route(): if ((is_method(ACK) || is_method(BYE)) !isdsturiset()) { handle_ruri_alias(); if ($du != $null) { $ru = $du; $du = $null; } } Thanks a lot Daniel! On Thu, Aug 29, 2013 at 10:58 AM, Marc Soda ms...@coredial.com wrote: On Thu, Aug 29, 2013 at 3:53 AM, Daniel-Constantin Mierla mico...@gmail.com wrote: what device is at 701? The 200ok receved from it has the contact address with the IP of kamailio: SFLPhone It seems there is a NAT between your kamailio and 701, as kamailio adds alias parameter to Contact in 200ok. That can be used to route the ack, like: handle_ruri_alias(); $ru = $du; $du = $null; There is no NAT in this scenario, although NAT support is enabled as we will have to deal with it. Should I still use handle_ruri_alias()? Thanks, Marc -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
[SR-Users] Loopback
I think I found my missing ACKs! Can anyone tell me why they work be being sent to the loopback interface? The destination address is still the external (eth0) IP. -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
Re: [SR-Users] Loopback
Thanks, I appreciate it. In this setup the there are 2 endpoints (700 and 701) peered up to an Asterisk server (172.16.60.6) via a Kamailio proxy (172.16.60.20). 700 (172.16.60.28) is calling 701 (172.16.3.65). When 701 answers the OK is sent to the proxy and then to Asterisk. Asterisk is then ACKing the OK. The ACK is being sent to the proxy and then the proxy should be sending it back to the endpoint. It is not. The ACK is being sent to the proxy and then the proxy is sending to itself again, via the loopback interface. I believe loose_route() should be re-writing the destination to be the endpoint, but it not. Trace: U 172.16.60.28:54936 - 172.16.60.20:5060 INVITE sip:7...@eng-reg1.example.com SIP/2.0. Via: SIP/2.0/UDP 172.16.60.28:54936 ;rport;branch=z9hG4bKPjBsmwQX-oWu6srxf09JRx98W5IklAwE44. Max-Forwards: 70. From: sip:sip700_...@eng-reg1.example.com ;tag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P. To: sip:7...@eng-reg1.example.com. Contact: sip:sip700_tbs@172.16.60.28:54936;ob. Call-ID: BUDvyYQczBQPRIOhj7t7FodP7675QPGi. CSeq: 13862 INVITE. Route: sip:eng-reg1.example.com;transport=udp;lr. Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS. Supported: replaces, 100rel, timer, norefersub. Session-Expires: 1800. Min-SE: 90. User-Agent: CSipSimple_mecha-15/r2272. Proxy-Authorization: Digest username=sip700_tbs, realm=sip700_tbs, nonce=Uh39eVId/E2Vxz5hgWC/7jMNGAf7rxrV, uri=sip:7...@eng-reg1.example.com, response=8a74a8727baa45df84ea1374cb6668f2, cnonce=EYGYpa1zWmEXcOMighUzGZ20cY2HJ7AJ, qop=auth, nc=0001. Content-Type: application/sdp. Content-Length: 340. . v=0. o=- 3586685645 3586685645 IN IP4 172.16.60.28. s=pjmedia. c=IN IP4 172.16.60.28. t=0 0. m=audio 4004 RTP/AVP 99 0 8 101. c=IN IP4 172.16.60.28. a=rtcp:4005 IN IP4 172.16.60.28. a=sendrecv. a=rtpmap:99 SILK/24000. a=fmtp:99 useinbandfec=0. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-15. U 172.16.60.20:5060 - 172.16.60.28:54936 SIP/2.0 100 trying -- your call is important to us. Via: SIP/2.0/UDP 172.16.60.28:54936 ;rport=54936;branch=z9hG4bKPjBsmwQX-oWu6srxf09JRx98W5IklAwE44. From: sip:sip700_...@eng-reg1.example.com ;tag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P. To: sip:7...@eng-reg1.example.com. Call-ID: BUDvyYQczBQPRIOhj7t7FodP7675QPGi. CSeq: 13862 INVITE. Server: kamailio (4.0.3 (x86_64/linux)). Content-Length: 0. . U 172.16.60.20:5060 - 172.16.60.6:5060 INVITE sip:7...@eng-reg1.example.com SIP/2.0. Record-Route: sip:172.16.60.20;lr=on;ftag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P;nat=yes. Via: SIP/2.0/UDP 172.16.60.20;branch=z9hG4bKe51f.d2338795.0. Via: SIP/2.0/UDP 172.16.60.28:54936 ;rport=54936;branch=z9hG4bKPjBsmwQX-oWu6srxf09JRx98W5IklAwE44. Max-Forwards: 16. From: sip:sip700_...@eng-reg1.example.com ;tag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P. To: sip:7...@eng-reg1.example.com. Contact: sip:sip700_tbs@172.16.60.28:54936;ob. Call-ID: BUDvyYQczBQPRIOhj7t7FodP7675QPGi. CSeq: 13862 INVITE. Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS. Supported: replaces, 100rel, timer, norefersub. Session-Expires: 1800. Min-SE: 90. User-Agent: CSipSimple_mecha-15/r2272. Content-Type: application/sdp. Content-Length: 340. . v=0. o=- 3586685645 3586685645 IN IP4 172.16.60.28. s=pjmedia. c=IN IP4 172.16.60.28. t=0 0. m=audio 4004 RTP/AVP 99 0 8 101. c=IN IP4 172.16.60.28. a=rtcp:4005 IN IP4 172.16.60.28. a=sendrecv. a=rtpmap:99 SILK/24000. a=fmtp:99 useinbandfec=0. a=rtpmap:0 PCMU/8000. a=rtpmap:8 PCMA/8000. a=rtpmap:101 telephone-event/8000. a=fmtp:101 0-15. U 172.16.60.6:5060 - 172.16.60.20:5060 SIP/2.0 100 Trying. Via: SIP/2.0/UDP 172.16.60.20;branch=z9hG4bKe51f.d2338795.0;received=172.16.60.20;rport=5060. Via: SIP/2.0/UDP 172.16.60.28:54936 ;rport=54936;branch=z9hG4bKPjBsmwQX-oWu6srxf09JRx98W5IklAwE44. Record-Route: sip:172.16.60.20;lr=on;ftag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P;nat=yes. From: sip:sip700_...@eng-reg1.example.com ;tag=bmiDmchqpEnJnCFuHdLZNICQ-DisG41P. To: sip:7...@eng-reg1.example.com. Call-ID: BUDvyYQczBQPRIOhj7t7FodP7675QPGi. CSeq: 13862 INVITE. Server: Asterisk1.8. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH. Supported: replaces, timer. Session-Expires: 1800;refresher=uas. Contact: sip:701@172.16.60.6:5060. Content-Length: 0. . U 172.16.60.6:5060 - 172.16.60.20:5060 INVITE sip:sip701_tbs@172.16.60.20:5060 SIP/2.0. Via: SIP/2.0/UDP 172.16.60.6:5060;branch=z9hG4bK0919ead7;rport. Max-Forwards: 70. From: Alpha sip:700@172.16.60.6;tag=as5e1a80d8. To: sip:sip701_tbs@172.16.60.20:5060. Contact: sip:700@172.16.60.6:5060. Call-ID: 64a513d30fc6a51e54e8255b7169345c@172.16.60.6:5060. CSeq: 102 INVITE. User-Agent: Asterisk1.8. Date: Wed, 28 Aug 2013 13:34:03 GMT. Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH. Supported: replaces, timer. Content-Type: application/sdp. Content-Length: 263. . v=0. o=root 1276916964 1276916964 IN IP4 172.16.60.6.
[SR-Users] (no subject)
I trying to debug why Kamailio is dropping certain ACKs. I have debug level set to 4 and cfgtrace on. The last thing I see in the log for my missing ACKs is: Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=789 a=16 n=if Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=786 a=25 n=check_route_param Aug 26 12:22:29 eng-reg1 kamailio: DEBUG: rr [loose.c:974]: check_route_param(): params are ;alias=172.16.3.65~5060~1 Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=795 a=16 n=if Which corresponds to these lines in the config: if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB))) { return; } if (is_request()) {-LINE 795 if (!has_totag()) { if(t_is_branch_route()) { add_rr_param(;nat=yes); } } } Why would that be the last line that is traced? Is Kamailio really not processing past here? -- Marc ___ 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
[SR-Users] Config debugging
(Sorry for the double post) I trying to debug why Kamailio is dropping certain ACKs. I have debug level set to 4 and cfgtrace on. The last thing I see in the log for my missing ACKs is: Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=789 a=16 n=if Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=786 a=25 n=check_route_param Aug 26 12:22:29 eng-reg1 kamailio: DEBUG: rr [loose.c:974]: check_route_param(): params are ;alias=172.16.3.65~5060~1 Aug 26 12:22:29 eng-reg1 kamailio: ERROR: *** cfgtrace: c=[/etc/kamailio/kamailio.cfg] l=795 a=16 n=if Which corresponds to these lines in the config: if (!(isflagset(FLT_NATS) || isbflagset(FLB_NATB))) { return; } if (is_request()) {-LINE 795 if (!has_totag()) { if(t_is_branch_route()) { add_rr_param(;nat=yes); } } } Why would that be the last line that is traced? Is Kamailio really not processing past here? -- Marc ___ 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
Re: [SR-Users] What does this mean...
It's checking the source of the current message. If the source address of the message equals the variable pstn.gw_ip, return 1, otherwise return -1; On Mon, Aug 26, 2013 at 3:33 PM, arun Jayaprakash jayaprakasha...@yahoo.com wrote: This is a very basic question, but can someone let me know what this line means? if($si==$sel(cfg_get.pstn.gw_ip)) return 1; return -1; Thank you, A ___ 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 -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
Re: [SR-Users] What does this mean...
I think I found my missing ACKs! Can anyone tell me why they work be being sent to the loopback interface? The destination address is still the external (eth0) IP. On Mon, Aug 26, 2013 at 3:36 PM, Marc Soda ms...@coredial.com wrote: It's checking the source of the current message. If the source address of the message equals the variable pstn.gw_ip, return 1, otherwise return -1; On Mon, Aug 26, 2013 at 3:33 PM, arun Jayaprakash jayaprakasha...@yahoo.com wrote: This is a very basic question, but can someone let me know what this line means? if($si==$sel(cfg_get.pstn.gw_ip)) return 1; return -1; Thank you, A ___ 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 -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. -- Marc Soda, Sr. Systems Engineer *CoreDial, LLC* | www.coredial.com 1787 Sentry Parkway West, Building 16, Suite 100, Blue Bell, PA 19422 Office: (215) 297-4400 x203 | Fax: (215) 297-4401 | Email: ms...@coredial.com - - - - - The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. ___ 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
Re: [SR-Users] What does this mean...
Take a look at where route(frompstn) is being called. It's probably in a 'if' statement, meaning that if the source address is the pstn.gw_ip, then return TRUE. Returning -1 is like saying, FALSE. ___ 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
[SR-Users] Rtpproxy newbie question
Hi, I installed a kamailio from the debian repository, i use the default configuration. The only enable the tcp and tls transport modes, and configured mysql login. Everyting seems to be working fine. I would need now to configure rtprpoxy, but i just cant make it work. My goal is to force rtpproxy for all calls. Any help is highly appreciated!! Thank you Marc Rtpproxy is installed and seems to be running: This is my rtpproxy configuration: # Defaults for rtpproxy # The control socket. #CONTROL_SOCK=unix:/var/run/rtpproxy/rtpproxy.sock # To listen on an UDP socket, uncomment this line: CONTROL_SOCK=udp:127.0.0.1:2 LISTEN_ADDR=[external_ip] # Additional options that are passed to the daemon. EXTRA_OPTS=-l ${LISTEN_ADDR} /usr/sbin# - It seems to be running: --- /etc/init.d# ./rtpproxy start Starting RTP relay: rtpproxy. /etc/init.d# netstat -an|grep 2 udp0 0 127.0.0.1:2 0.0.0.0:* /etc/init.d# - Here is my kamailio configuration, default as is installed: --- #!KAMAILIO # # Kamailio (OpenSER) SIP Server v3.1 - default configuration script # - web: http://www.kamailio.org # - git: http://sip-router.org # # Direct your questions about this file to: sr-users@lists.sip-router.org # # Refer to the Core CookBook at http://www.kamailio.org/dokuwiki/doku.php # for an explanation of possible statements, functions and parameters. # # Several features can be enabled using '#!define WITH_FEATURE' directives: # # *** To run in debug mode: # - define WITH_DEBUG # # *** To enable mysql: # - define WITH_MYSQL # # *** To enable authentication execute: # - enable mysql # - define WITH_AUTH # - add users using 'kamctl' # # *** To enable IP authentication execute: # - enable mysql # - enable authentication # - define WITH_IPAUTH # - add IP addresses with group id '1' to 'address' table # # *** To enable persistent user location execute: # - enable mysql # - define WITH_USRLOCDB # # *** To enable presence server execute: # - enable mysql # - define WITH_PRESENCE # # *** To enable nat traversal execute: # - define WITH_NAT # - install RTPProxy: http://www.rtpproxy.org # - start RTPProxy: #rtpproxy -l _your_public_ip_ -s udp:localhost:7722 # # *** To enable PSTN gateway routing execute: # - define WITH_PSTN # - set the value of pstn.gw_ip # - check route[PSTN] for regexp routing condition # # *** To enable database aliases lookup execute: # - enable mysql # - define WITH_ALIASDB # # *** To enable multi-domain support execute: # - enable mysql # - define WITH_MULTIDOMAIN # # *** To enable TLS support execute: # - adjust CFGDIR/tls.cfg as needed # - define WITH_TLS # # *** To enable XMLRPC support execute: # - define WITH_XMLRPC # - adjust route[XMLRPC] for access policy # # *** To enable anti-flood detection execute: # - adjust pike and htable=ipban settings as needed (default is # block if more than 16 requests in 2 seconds and ban for 300 seconds) # - define WITH_ANTIFLOOD # # *** To enhance accounting execute: # - enable mysql # - define WITH_ACCDB # - add following columns to database #!ifdef ACCDB_COMMENT ALTER TABLE acc ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; #!endif ### Defined Values # # *** Value defines - IDs used later in config #!ifdef WITH_MYSQL # - database URL - used to connect to database server by modules such # as: auth_db, acc, usrloc, a.s.o. #!define mysql:[my_mysql_db_config] mysql://openser:openserrw@localhost/openser #!endif #!ifdef WITH_MULTIDOMAIN # - the value for 'use_domain' parameters #!define MULTIDOMAIN 1 #!else #!define MULTIDOMAIN 0 #!endif # - flags # FLT_ - per transaction (message) flags # FLB_ - per branch flags #!define FLT_ACC 1 #!define FLT_ACCMISSED 2 #!define FLT_ACCFAILED 3 #!define FLT_NATS 5 #!define FLB_NATB 6 #!define FLB_NATSIPPING 7 ### Global Parameters # #!ifdef WITH_DEBUG debug=2 log_stderror=no #!else debug=2 log_stderror=no #!endif memdbg=5 memlog=5 log_facility=LOG_DAEMON fork=yes children=4 /* uncomment the next line to disable TCP (default
[SR-Users] Rtpproxy newbie question
Hi, I installed a kamailio from the debian repository, i use the default configuration. The only enable the tcp and tls transport modes, and configured mysql login. Everyting seems to be working fine. I would need now to configure rtprpoxy, but i just cant make it work. My goal is to force rtpproxy for all calls. Any help is highly appreciated!! Thank you Marc Rtpproxy is installed and seems to be running: This is my rtpproxy configuration: # Defaults for rtpproxy # The control socket. #CONTROL_SOCK=unix:/var/run/rtpproxy/rtpproxy.sock # To listen on an UDP socket, uncomment this line: CONTROL_SOCK=udp:127.0.0.1:2 LISTEN_ADDR=[external_ip] # Additional options that are passed to the daemon. EXTRA_OPTS=-l ${LISTEN_ADDR} /usr/sbin# - It seems to be running: --- /etc/init.d# ./rtpproxy start Starting RTP relay: rtpproxy. /etc/init.d# netstat -an|grep 2 udp0 0 127.0.0.1:2 0.0.0.0:* /etc/init.d# - Here is my kamailio configuration, default as is installed: --- #!KAMAILIO # # Kamailio (OpenSER) SIP Server v3.1 - default configuration script # - web: http://www.kamailio.org # - git: http://sip-router.org # # Direct your questions about this file to: sr-users@lists.sip-router.org # # Refer to the Core CookBook at http://www.kamailio.org/dokuwiki/doku.php # for an explanation of possible statements, functions and parameters. # # Several features can be enabled using '#!define WITH_FEATURE' directives: # # *** To run in debug mode: # - define WITH_DEBUG # # *** To enable mysql: # - define WITH_MYSQL # # *** To enable authentication execute: # - enable mysql # - define WITH_AUTH # - add users using 'kamctl' # # *** To enable IP authentication execute: # - enable mysql # - enable authentication # - define WITH_IPAUTH # - add IP addresses with group id '1' to 'address' table # # *** To enable persistent user location execute: # - enable mysql # - define WITH_USRLOCDB # # *** To enable presence server execute: # - enable mysql # - define WITH_PRESENCE # # *** To enable nat traversal execute: # - define WITH_NAT # - install RTPProxy: http://www.rtpproxy.org # - start RTPProxy: #rtpproxy -l _your_public_ip_ -s udp:localhost:7722 # # *** To enable PSTN gateway routing execute: # - define WITH_PSTN # - set the value of pstn.gw_ip # - check route[PSTN] for regexp routing condition # # *** To enable database aliases lookup execute: # - enable mysql # - define WITH_ALIASDB # # *** To enable multi-domain support execute: # - enable mysql # - define WITH_MULTIDOMAIN # # *** To enable TLS support execute: # - adjust CFGDIR/tls.cfg as needed # - define WITH_TLS # # *** To enable XMLRPC support execute: # - define WITH_XMLRPC # - adjust route[XMLRPC] for access policy # # *** To enable anti-flood detection execute: # - adjust pike and htable=ipban settings as needed (default is # block if more than 16 requests in 2 seconds and ban for 300 seconds) # - define WITH_ANTIFLOOD # # *** To enhance accounting execute: # - enable mysql # - define WITH_ACCDB # - add following columns to database #!ifdef ACCDB_COMMENT ALTER TABLE acc ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE acc ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN src_domain VARCHAR(128) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_ouser VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_user VARCHAR(64) NOT NULL DEFAULT ''; ALTER TABLE missed_calls ADD COLUMN dst_domain VARCHAR(128) NOT NULL DEFAULT ''; #!endif ### Defined Values # # *** Value defines - IDs used later in config #!ifdef WITH_MYSQL # - database URL - used to connect to database server by modules such # as: auth_db, acc, usrloc, a.s.o. #!define mysql:[my_mysql_db_config] mysql://openser:openserrw@localhost/openser #!endif #!ifdef WITH_MULTIDOMAIN # - the value for 'use_domain' parameters #!define MULTIDOMAIN 1 #!else #!define MULTIDOMAIN 0 #!endif # - flags # FLT_ - per transaction (message) flags # FLB_ - per branch flags #!define FLT_ACC 1 #!define FLT_ACCMISSED 2 #!define FLT_ACCFAILED 3 #!define FLT_NATS 5 #!define FLB_NATB 6 #!define FLB_NATSIPPING 7 ### Global Parameters # #!ifdef WITH_DEBUG debug=2 log_stderror=no #!else debug=2 log_stderror=no #!endif memdbg=5 memlog=5 log_facility=LOG_DAEMON fork=yes children=4 /* uncomment the next line to disable TCP (default