Chapter 1. Introduction

Table of Contents

Independent and decentralized alternatives to federation
Private networks
Decentralized networks
Choosing between SIP and XMPP
Choice of operating system
Use latest software versions
Using IPv6
Example network used in the documentation

This quick start guide walks through the essential steps to build a working real-time communications platform with full support for federation with other autonomous domains over the public Internet.

We show the essential steps first: setting up a TURN server, SIP proxy and an XMPP server. Setting up an Asterisk or FreeSWITCH PBX is not essential, these are supplementary services that should be added in a later stage of the project.


Federation enables direct and efficient communication between any two autonomous organizations connected to the public Internet. Email is already distributed thanks to SMTP federation. The same paradigm has taken hold in the world of voice and video communications. Any two users or organisations can connect to each other dynamically without requiring cumbersome, outdated and expensive solutions from traditional phone companies.

A number of technologies help make federation work optimally. ENUM helps map traditional phone numbers to Internet domains, it is described in Chapter 15, Adding ENUM to DNS. DNS NAPTR and SRV records make it possible to locate servers willing to accept calls any given domain, they are described in Chapter 5, DNS setup. The SIP and XMPP protocols allow users to do much more than they can do with traditional phones, including cost-effective chat messaging, desktop sharing and videoconferencing.