Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Kamailio practice Quobis-University of Vigo Laboratory of Commutation 2011-2012
1. Laboratorio de Conmutación
Kamailio Lab (version 1.0)
Introduction
As you know, Quobis Networks is collaborating in the extended practice of Laboratorio de
Conmutación. This is our proposal for the Kamailio exercise. Honestly we can say it is not
difficult at all but it requires you to know a few VoIP concepts and learn how to configure
Kamailio. We recommend to read a SIP tutorial (see bibliography section) before starting the
practice, you will get very valuable skills for the practice and your professional life.
Why Kamailio?
We have already presented the amazing features of Kamailio in previous classes. It is the
most powerful SIP Open Source softswitch used in real VoIP operators such as 1&1 and
Freenet. In the bibliography section you can find links to good Kamailio documentation.
Exercise.
Welcome to an imaginary real-world: in this practice you will have to configure a SIP softswitch
for a ‘real’ operator.
Imagine an archipelago country, called United Archipelago Republic, formed by more than 100
islands. Fortunately, 99% of population happily lives in the 4 biggest islands, namely, Big
Banana, Big Treasure, Drake Island and Lost Island.
The national telecommunication operator has been recently sold and its new owner is a Galician
capital risk fund. For operative reasons, we, the technical managers decided to divide the
operator in four smaller operator based in the 4 main islands. This way they can avoid taxes for
2. big companies and get a more logical deployment from a technical point of view. You were
selected to manage the SIP deployment of the island operator you choose and you will be
posted there by your Telecom company.
To implement the central softswitch infrastructure you have a limited budget. You are willing to
work hard and get a solid know-how in VoIP technologies so you will use Kamailio project to
implement your VoIP network.
Basic functionality.
All groups must configure Kamailio so that tbe able to:
1. Register up to 100 users (except for team 2).
2. establish calls between registered users.
3. establish calls to each other groups.
Additional functionality.
Additionally to the basic exercise, every group must chose one of the following options:
Option 1: you will configure Kamailio for Big Banana Island. With a population of 10,000 native
residents, it reaches 100,000 during tourist season. To avoid service disruption Kamailio must
implement peak load protection. To simulate call peaks you can use sipp. XML sipp conf files
will be provided by Quobis. The prefix assigned for Big Banana island is: 001788[0-3]
Option 2: you will configure Kamailio for Big Treasure Island. This Island is famous by its
money laundering activities so encrypted communications are vital to protect their customers
from Interpol. This operator must offer their clients SIPS signaling (SIP over TLS) which is
perfectly supported by Kamailio. Only server authentication is required. The prefix assigned
for Big Treasure Island is: 001788[4-5]
Option 3: you will configure Kamailio for Drake Island. This island has been a pirate refuge for
centuries. This tradition survives and nowadays this island has the world highest cracker rate
per km2. Most of them use Sipvicious toolkit to attack VoIP servers. This is the reason why
security is a mandatory requirement for this operator. Kamailio must reject messages coming
from SIPvicious scripts. Quobis will provide info about how to use Sipvicious. The prefix
assigned for Drake Island is: 001788[6-7]
Option 4: Lost island. The Lost Island operator must offer services to many small islands
connected to Lost Island through WiMAX links. So bandwidth saving is a must in all the VoIP
3. communication. As you should know, in VoIP communication most of the required bandwidth is
consumed by audio/video RTP flows. You must configure Kamailio to modify the SDP
messages to only allow the use of GSM codec in every call. The prefix assigned for
Drake Island is: 001788[8-9]
Help!
Take it easy, luckily you are not alone. Quobis is going to support you during the practice, we
will offer at least one more lesson and provide e-mail support: university@quobis.com
On the other side, Kamailio project is supported by a big community formed by developers,
testers and users who are looking forward to helping you in your challenging project. You can
visit the Kamailio web site and subscribe to Kamailio mailing lists.
Note about using Kamailio mailing list: many people is going to invest their time in reading all
the list mails everyday so, please, read carefully the documentation and try to find similar
questions already answered in the list. If you don’t find the answer on your own, send a mail to
the list trying to write it in an understandable way, including what have you done so far.
What tools can I use?
There are many tools which can be really useful to carry out this exercise. Below you can find
some of them:
● wireshark: protocol analyzer.
● ngrep-sip: sip-adapted ngrep http://dev.sipdoc.net/projects/sip-stuff/wiki/Ngrep-
SIP
● sipp
● jitsi: a Java softphone.
● sipp and SIPvicous: check links included in bibliography section.
Bibliography
1. SIP tutorial: http://www.iptel.org/files/sip_tutorial.pdf
2. Kamailio Knowledge Base: http://kb.asipto.com/kamailio:index
3. Kamailio Wiki: http://www.kamailio.org/dokuwiki/doku.php/start
4. Sipp: http://sipp.sourceforge.net/
5. SIPvicious: http://blog.sipvicious.org/