Recently I had a strange issue I thought I’d share. Using Kamailio as an Interrogating-CSCF, Kamailio was getting the S-CSCF details from the User-Authorization-Answer’s “Server-Name” (602) AVP. The value was set to: sip:scscf.mnc001.mcc001.3gppnetwork.org:5060 But the I-CSCF was only looking up A-Records for scscf.mnc001.mcc001.3gppnetwork.org, not using DNS-SRV. The problem? The Server-Name I had configured as a […]
Extracting SDP Parameters with Kamailio
A quick post on a lesson that took me a while to learn with DNS, Kamailio and IMS.
Bad Extension is nothing to do with the Dialplan…
Quirks and gotchas of working with SMS on IMS on iPhones.
Using Redis with Kamailio
Some tricks to handle if you’ve got multiple headers all with the same name in Kamailio
Using the Rtimer module and UAC to be annoying, or very useful.
Using ENUM to resolve E.164 numbers into SIP URIs using Kamailio.
I’d been trying for some time to get Kamailio acting as a Diameter Routing Agent with mixed success, and eventually got it working, after a few changes to the codebase of the ims_diameter_server module. It is rather unstable, in that if it fails to dispatch to a Diameter peer, the whole thing comes crumbling down, […]
Using Docker to spin up environments to test Kamailio in
So far with most of our discussions about Kamailio we’ve talked about routing the initial SIP request (INVITE, REGISTER, SUBSCRIBE, etc), but SIP is not a one-message protocol, there’s a whole series of SIP messages that go into a SIP Dialog. Sure the call may start with an INVITE, but there’s the 180 RINGING, the […]
Things to keep in mind before using Kamailio as a Load Balancer for Asterisk
Kamailio world was an online event this year, but you can find all the videos here now they’ve all been posted.
Using UAC module to authenticate outbound calls where you need to respond to a 401 Unauthorised Response, or a 407 Proxy Authentication required
Using Docker to containerize Kamailio instanances
My first Pull / Merge in the Kamailio project was to fix the IMS P-CSCF config
Using Kamailio to send HTTP requests (POST & GET) to a HTTP server and store the result.
Running multiple instances of Kamailio on the same server using init.d
Using Transport Layer Security (TLS) to protect SIP traffic from modification / manipulation and guarantee message authenticity.