Fixing SIP header addresses – Contact headers

Part 3 of this series of articles focusses on the Contact header. In particular, I examine the use-cases where it is necessary to “fix” (or alter) a received Contact header. Contact headers work in close combination with Record-Route and Route headers in a mechanism known as loose routing. To get the most from this article … Read more…

Fixing SIP header addresses – Via headers

In part 2, Via headers are put under the microscope. I examine how the address in the Via header is set by each node in the path; how and why it may differ from the source address. I will look at the functions available in OpenSIPS to detect and handle situations where the address in … Read more…

Contact and Record-Route headers explained

Diagnosing some problems in the world of VoIP requires close inspection of the SIP messages being exchanged, but there are many occasions where a good understanding of loose routing will be invaluable. The headers that underpin loose routing are Contact, Record-Route and Route. In this post, I explain how they work and provide some insight … Read more…

Using the Clusterer Module for contact replication

Summary In this, the second part of a three-part article about the Clusterer Module, I explain how I got on when testing a pair of OpenSIPS Registrar Proxies configured as a highly available cluster. The design, which uses Pacemaker to assign a floating IP to the currently active server, is described in some detail in … Read more…

HA Scenarios and the OpenSIPS Clusterer Module

Summary System reliability and avoidance of down-time are themes that recur time and again with Smartvox customers. In this article I will review some of options available to a system designer who wants to build a highly available OpenSIPS solution, paying particular attention to the new Clusterer module¬†which is at the heart of a set … Read more…

Using ClusterLabs Pacemaker with OpenSIPS

Summary In this article we examine how Pacemaker and Corosync might be used to supercharge OpenSIPS¬†and build a highly available clustered solution. The focus is entirely on High Availability rather than any form of load sharing. This means we are looking for a way to have more than one server contactable on the same IP … Read more…

Using TLS in OpenSIPS v2.2.x

Using TLS with OpenSIPS: Why do we need it and how is it configured? While support for TLS existed in version 1, the configuration changed significantly in version 2. This article briefly covers the new v2 setup. The role of TLS in VoIP calls Today, it is common practice to use encrypted communication over the … Read more…

SIP User Credentials in the ITSP environment – part 3

In this, the third part of the article, we will look at how the ITSP Proxy server handles outbound calls, paying particular attention to the authentication requirements and to the handling of Caller ID. You may also wish to refer back to part 1 where we reviewed the basic entities and concepts used to identify … Read more…

SIP User Credentials in the ITSP environment – part 2

In part 1 of this article we reviewed the basic entities and concepts used to identify a user, a handset or service. It discussed in detail how these entities are used to register devices, either simple single-line devices or SIP trunks. Now, in part 2, we will examine in more detail the handling of inbound … Read more…