Вы находитесь на странице: 1из 60

L’étudiant Le tuteur

C’est vrai qu
Nom : P. Nom : W.
Prénom : JULIEN Prénom : STANISLAW
Promotion : 2008 Fonction : TECHNICAL DIRECTOR
Année scolaire : 2006/2007 Service/Departement : NETWORK
VA : RCM

Mise en place d’une plateforme de téléphonie et interconnexion de sites distants

Résumé :
Le stage que j’ai eu à réaliser s’est déroulé en Pologne dans la ville de Gliwice. J’y ai
intégré une entreprise dont la fonction principale est l’enseignement des bases de
l’informatique. Cette entreprise nommée SZKOLA KOMPUTEROWA IMPULS possède
néanmoins un service de réseau informatique dont le but principal est la
maintenance du parc informatique de l’entreprise ainsi que son évolutivité.
Le projet qui m’a été confié fut de réaliser une plateforme de téléphonie au sein de
l’entreprise afin de permettre les appels internes via un client SIP, ou encore de
permettre les appels via internet vers des sites distants. L’aspect utilisateur fut assez
important, il fut aussi nécessaire de mettre en place un système de voicemail,
permettant l’envoi des messages vocaux laissés par un correspondant sur la boîte
mail de l’utilisateur.
Ce stage fut une expérience enrichissante tant au point de vue technique que humain
et culturel.

Période du : 07/05/07 au : 27/07/07 (soit 12 semaines)

Référencement Entreprise

Liste de 10 mots clés techniques : Raison sociale : SARL


- Asterisk Adresse : ul. Piramowiscza 2/1 44-100 Gliwice
- VoIP Téléphone : +48(032)2382439
- IPBX Fax : +48(032)238 24 39
- SIP Web : www.ipnet.pl
- Protocole Service/département :
- IAX Domaine d’activité : Ecole d’informatique
- RTP Taille de la structure : 200m²
- Voicemail Profil du poste occupé : Stagiaire
- Serveur IVR
- Trixbox Chiffres clés

Nombre de pages :
Effectif : 8 - 10
Date de dépôt :
Chiffre d’affaires : 250 000 euros
A rendre au plus tard le 24 sept 2007
Nombre de sites : 1
Nombre d’exemplaires :
France/Europe/Monde : Pologne 1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Mise en place d’une plateforme de téléphonie


et
interconnexion de sites distants

Signature et cachet,

Stanislaw W., tuteur en entreprise : Julien P., stagiaire :

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Remerciements
________________________________________________________________

Je tiens à remercier particulièrement,

Stanislaw W.,
Responsable technique,
Tuteur de stage au sein de l’entreprise.

Anna W.,
Directrice générale de la société Szkola Komputerowa Impuls.

Grzegorz Dziczkowski,
Intervenant au sein de l’ESIGETEL.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Sommaire
________________________________________________________________

PARTIE 1 : PRÉSENTATION DU PROJET................................................................................. ..................6

I.PRÉSENTATION DU RAPPORT.......................................................................................................................................6
II.PRÉSENTATION DE L’ENTREPRISE...............................................................................................................................7
1.L’ENTREPRISE SZKOLA KOMPUTEROWA IMPULS.............................................................................................................7
2.LES DIFFÉRENTS SERVICES AU SEIN DE L’ENTREPRISE.......................................................................................................7
a.Le service éducation........................................................................................................................... ................7
b.Le service réseau............................................................................................................................... .................8
III.CONTEXTE DE TRAVAIL.........................................................................................................................................10
1.L'ÉQUIPE................................................................................................................................................................10
2.LE MATÉRIEL..........................................................................................................................................................10
3.LE LIEU.................................................................................................................................................................12
4.LA LANGUE............................................................................................................................................................12
5.L'ORGANISATION DU TRAVAIL....................................................................................................................................12
IV.LE SUJET DE STAGE..............................................................................................................................................13
1.INTRODUCTION GÉNÉRALE DU PROJET..........................................................................................................................13
2.LA PROBLÉMATIQUE.................................................................................................................................................13
3.L’INTÉRÊT POUR L’ENTREPRISE..................................................................................................................................13
4.DIAGRAMME DE GANTT ...........................................................................................................................................15
5.CAHIER DES CHARGES..............................................................................................................................................16
a.1ère étape : Intégration à l’architecture existante......................................................................................... .....16
b.2ème étape : Création d’extensions utilisant le protocole SIP..................................................... .....................16
c.3ème partie : Mettre en place un système de mail vocal..................................................................... ..............16
................................................................................................................................................... ........................16
a.4ème étape : Etablir une liaison téléphonique vers l’école Polytechnique via le protocole IAX ......................16
V.LA VOIX SUR IP....................................................................................................................................................18
1.INTRODUCTION........................................................................................................................................................18
2.PRINCIPE DE FONCTIONNEMENT..................................................................................................................................18
3.LE PROTOCOLE SIP (SESSION INITIATION PROTOCOL)...................................................................................................20
a.Format d’un paquet SIP....................................................................................................................... .............21
b.L’ouverture d’une session :........................................................................................................ ......................22
c.Les différentes méthodes de requêtes :....................................................................................... ......................22
d.Les différents composants d’une communication SIP :.................................................................... ................24
4.LE PROTOCOLE IAX2 (INTER-ASTERISK EXCHANGE)...................................................................................................25
VI.ASTERISK............................................................................................................................................................26
1.PRÉSENTATION........................................................................................................................................................26
2.FONCTIONNALITÉS...................................................................................................................................................26
VII.TRIXBOX...........................................................................................................................................................27
1.PRÉSENTATION........................................................................................................................................................27

PARTIE 2 : RÉALISATION DU PROJET................................................................................................. ....29

I.LA PLATEFORME TRIXBOX.......................................................................................................................................29


1.INSTALLATION.........................................................................................................................................................29
2.INSTALLATION D’UNE CARTE DIGIUM......................................................................................................................32
3.PRÉSENTATION DE L’INTERFACE.................................................................................................................................34

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

4.INTÉGRATION À L’ARCHITECTURE PRÉ EXISTANTE..........................................................................................................34


5.AJOUT DE NOUVELLES EXTENSIONS.............................................................................................................................36
a.Ajout d’une extension SIP................................................................................................................. ...............38
b.Ajout d’une extension ZAP.............................................................................................................. ................41
c.Connexion à l’aide d’un client SIP................................................................................................ ...................44
d.Test d’appel............................................................................................................................................ ..........46
e.Test d’appel via la route sortante........................................................................................................ ..............48
6.VOICEMAIL.............................................................................................................................................................49
7.INTERCONNEXION AVEC UN SITE DISTANT.....................................................................................................................50
a.Schématisation de la solution................................................................................................ ...........................50
b.Création d’un trunk IAX2..................................................................................................... ...........................51
c.Test de la connexion........................................................................................................................... ..............53
Conclusion technique....................................................................................................................... ...................55
Bilan personnel.................................................................................................................................................. ..56
Annexes............................................................................................................................................................ ...57

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Partie 1 : Présentation du projet


I. Présentation du rapport

Ce rapport a pour objectif de relater mon parcours au sein de la société Szkola


Komputerowa Impuls, où j’ai réalisé un stage d’une durée de 12 semaines. Ce
stage comme l’impose le règlement de l’ESIGETEL s’est déroulé à l’étranger, en
Pologne plus particulièrement, c’est pourquoi en plus de devoir s’adapter à une
autre culture, tout dialogue devait se faire en anglais, le rapport est cependant
écrit en français, notre tuteur possédant quelques notions dans cette langue.
Dans ce rapport, j’expose ainsi l’expérience et les connaissances acquises durant
mon stage qui s’est articulé principalement autour de ce projet :

« Mise en place d’une solution de voix sur IP basée sur Asterisk, et interconnexion
de sites distants »

Mais aussi une présentation de mon entreprise d’accueil, et les problèmes


rencontrés ainsi que leurs solutions lors du développement de ce projet.

6
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

II.Présentation de l’entreprise
1. L’entreprise Szkola Komputerowa Impuls
Cette entreprise est située dans la ville de Gliwice en Pologne, elle compte en son
sein une équipe fixe de cinq personnes, des intervenants extérieurs peuvent y
travaillent aussi régulièrement. Son activité principale se porte sur l’enseignement
des bases de l’informatique aux débutants. Elle procure donc des formations dans
les domaines suivants par exemple : Word, Excel, initiation à certains langages de
programmation tels que HTML ou encore PHP.
Ceci est donc son activité principale, mais cette entreprise possède aussi une autre
activité, celle-ci beaucoup moins importante, qui consiste à proposer des services
de déploiement de solutions réseaux ou encore de dépannage informatique. Mon
stage consista donc à intégrer ce service afin d’y réaliser mon projet portant sur la
mise en place d’un serveur de VoIP basé sous Asterisk ainsi que son
implémentation au sein de l’entreprise.

2. Les différents services au sein de l’entreprise


Comme précisé précédemment, il existe deux services différents au sein de la
société Szkola Komputerowa Impuls, voici donc leurs objectifs principaux, ainsi
que leurs compositions :

a. Le service éducation

Ce service comme son nom l’indique est de procurer des cours, ces cours portent
principalement sur le domaine informatique, mais s’adressent à tout un panel de
personnes, allant des débutants aux plus confirmés. En effet, les cours dispensés
ici peuvent être :

7
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

- Des cours d’initiation à un domaine particulier, l’informatique en générale,


ou comment apprendre à taper à l’ordinateur, se familiariser avec des
logiciels très répandus tels Word, Excel.
- Des cours pour utilisateurs plus aguerris, pour des utilisateurs qui sont déjà
familiarisé avec l’informatique, mais qui par leur travail, nécessite une
formation dans un langage de programmation spécifique par exemple
(HTML, PHP, ou autre).

b. Le service réseau

Il s’agit d’une branche qui réalise les tâches « techniques » de l’entreprise, celle-ci
est moins importante en terme de profit ainsi qu’en terme de personnel, ce n’est
pas l’activité principale d’Impuls. Le service réseau est sollicité pour les tâches
suivantes :

- Gérer le réseau informatique de l’entreprise, l’activité principale étant


l’éducation, tout un parc informatique nécessite une administration régulière.

- Réalisation, installation et maintenance de projets dont l’axe principale est le


réseau pour entreprises ou particuliers.

8
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Directrice

Présidente - Comptable

Vice Présidente - Professeur

Service Service Service


Education Recherche et Développement Web

Cinq professeurs
Responsable Responsable
permanents
+
Intervenants
extérieurs

Emmanuel B. Julien P.
Stagiaire Stagiaire

9
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

III.Contexte de travail
1. L'équipe
Emmanuel Bussy (2ème année ESIGETEL) et moi-même avons intégré le service
recherche et développement de la société Impuls, ce service est dirigé par M.
Stanislaw W. Le service R&D n’étant pas l’activité principale de l’entreprise,
l’effectif est assez restreint, en effet, nous n’étions que trois en comptant
M. Stanislaw.

2. Le matériel
La société Impuls possède un parc informatique d’environ 30 postes informatiques,
l’architecture est quant à elle plutôt innovatrice, puisque aucun ordinateur destiné
à l’utilisateur lambda ne possède de disque dur, tout est centralisé sur deux
serveurs. Quelques petites explications s’imposent, le schéma suivant illustre
l’architecture informatique de l’entreprise.

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Comme montré sur la figure précédente, l’entreprise possède trois serveurs, le


premier est le serveur principal, il occupe à la fois les fonctions de routeur,
serveurs DHCP et DNS, passerelle Internet, ainsi que pare feu. Les deux autres
serveurs sont un peu plus spécifiques, sur l’un est installé une version de Linux
Fedora 6, tandis que sur l’autre une version de Windows 2000. Ces deux serveurs
ont une particularités, il contiennent chacun les comptes utilisateurs de toute
l’entreprise, et c’est chez eux qu’à chaque démarrage, un ordinateur de

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

l’entreprise va s’adresser via le protocole PXE (Preboot eXecution Evironment). Ce


protocole est sollicité lors du démarrage des ordinateurs.

3. Le lieu
La structure de l’entreprise est composée d’un accueil pour les personnes désirant
se renseigner sur les possibilités de cours que fournit l’entreprise. Une salle de
cours, qui regroupe une vingtaine de postes informatiques nécessaires au bon
déroulement des cours. Le bureau de la directrice Mme Anna W., une salle
regroupant les serveurs de l’entreprise. Enfin une salle en forme de pentagone qui
peut être utilisée dans le cas de présentation, cette salle étant la moins utilisée, ce
fut celle-ci qui nous servit de bureau (Emmanuel Bussy et moi-même).

4. La langue
La langue la plus parlée en Pologne est bien entendu le polonais, nous avons donc
du réaliser l’intégralité de notre stage en parlant anglais (le polonais nous étant
totalement inconnu). Il est utile de préciser que quasiment la totalité du personnel
de l’entreprise possédait de bonnes bases en anglais, ce qui permit un échange
enrichissant. De plus notre tuteur possédait quelques notions de français, ce qui
ajouta à notre stage un aspect des plus intéressant.

5. L'organisation du travail
L’organisation du travail fut assez simple, une fois les instructions données par
mon tuteur, et le projet spécifié, je bénéficiais d’une entière marge de manœuvre,
c'est-à-dire que je pouvais réaliser les étapes de mon projet dans l’ordre qui me
plaisait, un compte rendu devait cependant être effectué auprès de mon supérieur
régulièrement.

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

IV.Le sujet de stage


1. Introduction générale du projet
Le projet que j’ai eu à réaliser est une plateforme de téléphonie sur IP de plus en
plus répandue à l’heure actuelle, il s’agit d’un IPBX basé sur une solution open
source nommée Asterisk. Cette plateforme permettra d’établir des communications
entre un appelant et un appelé suivant différents protocoles, et devra être
implémentée dans l’architecture téléphonique pré existante.

2. La problématique
L’objectif de ce projet est de mettre en place une solution de voix sur IP au sein de
mon entreprise d’accueil. Cette solution devra posséder de multiples fonctions,
c’est pourquoi il est utile de séparer ce projet en plusieurs parties. La première
sera de créer un parc d’utilisateurs SIP, c'est-à-dire permettre à des utilisateurs de
l’entreprise d’émettre et de recevoir des appels via le protocole SIP. La deuxième
sera d’implémenter notre solution à l’architecture téléphonique déjà existante afin
de permettre aux usagers du protocole SIP d’émettre des appels extérieurs par
exemple. Enfin la dernière partie du projet sera de réaliser l’interconnexion de
deux solutions de voix sur IP distantes (via internet), pour cela nous devrons
trouver la meilleure méthode à employer, quels protocoles utiliser, quelles
sécurités (cryptage, authentification, etc.).

3. L’intérêt pour l’entreprise


Un tel système de nos jours est de plus en plus répandu, en effet, beaucoup
d’entreprises s’orientent vers les solutions de voix sur IP qu’elles soient totales ou
partielles. Une solution totale permet de réduire les coûts des communications
téléphoniques d’une entreprise, qui sont souvent très élevés en s’affranchissant de

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

son opérateur de téléphonie classique pour souscrire chez un opérateur de voix sur
IP lesquels possèdent des prix beaucoup plus compétitifs. Hormis le fait de pouvoir
émettre des appels à l’intérieur de l’entreprise, sans avoir besoin d’un PABX
classique, celle-ci peut aussi mettre en place nombre de services, annuaire
téléphonique, serveur vocal, voicemail, conférence, et beaucoup d’autres encore.
Cependant dans une solution partielle, l’entreprise ne s’affranchit pas de son
opérateur téléphonique classique, elle préfère implémenter ce nouveau système
afin de bénéficier de tous les services que procure la voix sur IP, tout en gardant
son ancienne configuration. C’est le cas ici de mon projet, l’entreprise possède tout
une architecture téléphonique existante, mais souhaite bénéficier des services
supplémentaires cités précédemment.

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

4. Diagramme de Gantt

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

5. Cahier des charges


Comme précisé précédemment l’objectif de ce projet est de mettre en place une
plateforme de téléphonie sur IP, ceci peut-être réalisé sous Asterisk de façon
gratuite puisque ce logiciel est développé librement. La solution qui a été retenue
est la plateforme Trixbox, celle-ci comprend toutes les fonctionnalités d’Asterisk
ainsi que plusieurs autres modules. L’avantage majeur de cette plateforme est
qu’elle comprend une interface graphique nous permettant de modifier toute
configuration par l’intermédiaire d’un navigateur internet.

a. 1ère étape : Intégration à l’architecture existante

Notre serveur Asterisk devra s’intégrer à l’architecture déjà existante, c’est-à-dire


être connecté au commutateur téléphonique de l’entreprise via une carte
téléphonique FXO afin de disposer d’une ligne téléphonique extérieur.

b. 2ème étape : Création d’extensions utilisant le protocole SIP

Ces types d’extension pourront être utilisée via un logiciel dit Soft phone ou encore
un téléphone pouvant être connecté directement sur le réseau local de l’entreprise,
il s’agit d’un IP phone. Chaque utilisateur possédera donc son identifiant et mot de
passe lui permettant d’accéder aux ressources de notre IPBX Asterisk, et ainsi
réaliser des appels internes et externes.

c. 3ème partie : Mettre en place un système de mail vocal

Dans le cas ou un utilisateur est absent, l’appelant pourra laisser un message


vocal, ce message sera ensuite envoyé au format .WAV vers la boîte de
messagerie de l’utilisateur concerné.

a. 4ème étape : Etablir une liaison téléphonique vers l’école


Polytechnique via le protocole IAX

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

L’objectif est de permettre les communications vers un site distant via Internet,
ceci se fera par le protocole IAX2, qui est utilisé afin de gérer les communications
entre serveurs Asterisk.

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

V.La voix sur IP


1. Introduction

La voix sur IP (Voice over Internet Protocol en anglais) est une technologie en
pleine émergence, en effet cette technologie permet de faire transiter des appels
vocaux via le réseau IP c'est-à-dire internet ou tout autre réseau local. Ce type de
réseau étant à l’heure actuelle très répandu, et en pleine effervescence, la voix sur
IP fait partie d’un tournant dans le monde de la communication ainsi que des
enjeux principaux du marché des télécommunications aujourd’hui.

Le schéma suivant illustre certaines possibilités qu’offre la voix sur IP ainsi que
plusieurs protocoles mis en œuvre :

2. Principe de fonctionnement
Schématiquement, le transport de la voix se fait de la manière suivante : le codec
audio de l'émetteur permet de numériser et de compresser la voix, ces données

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

numériques sont ensuite acheminées jusqu'au destinataire dans des paquets IP. Le
codec du destinataire effectue les opérations inverses (décompression, puis
restitution du son).

Pour assurer une certaine qualité de voix, plusieurs facteurs entrent en jeu.
L’information voyage à l’aide de datagrammes UDP, en effet, il s’agit d’un
protocole ne garantissant pas la livraison, il y a donc moins de traitement, et cela
est favorable au trafic de la voix, celle-ci ne doit pas attendre sinon le message
peut s’altérer voir même devenir incompréhensible. Certains datagrammes
peuvent donc être supprimés selon l’engorgement du réseau par exemple. La
signalisation est quant à elle la plupart du temps effectuée avec un protocole
s'appuyant sur TCP.
Vient ensuite la numérisation il s’agit là d’un processus discret, c'est-à-dire que
plusieurs fréquences contenues dans la voix ne sont pas numérisées ni restituées,
ce qui amène une perte d'information. Cette perte d’information est voulue, en
effet, trop d’information demande trop de bande passante, un compromis doit
donc être fait. Pour la voix, sans compression, la bande passante est de 64 kbps
(codec g711), il existe de nombreux autres codecs dont le g729 qui est moins
consommateur.

1
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

3. Le protocole SIP (Session Initiation Protocol)


Le protocole SIP est un protocole certifié et normalisé par l’IETF, celui-ci a été
conçu pour établir, modifier et terminer des sessions multimédia. En d’autres
termes, il ne s’occupe que de la signalisation, il ne transportera jamais de données
telles la voix ou la vidéo. Il est à l’heure actuelle le standard le plus répandu dans
le monde de la voix sur IP, et vise à devenir le standard des télécommunications
multimédia.

Avec SIP, les utilisateurs qui ouvrent une session peuvent communiquer en mode
point à point, en mode diffusif ou dans un mode combinant ceux-ci.
SIP permet donc l’ouverture de sessions en mode :

- point à point : communication entre 2 machines, on parle d’unicast (a)

- téléphonie sur IP

- diffusif : plusieurs utilisateurs en multicast, via une unité de contrôle M.C.U


(Multipoint Control Unit) (b)

- visioconférence
- forum

- combinatoire : plusieurs utilisateurs pleinement interconnectés en multicast via


un réseau à maillage complet de connexions (c)

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

a. Format d’un paquet SIP

Un message SIP peut être à la fois une requête d’un client (terminal appelant) vers
un serveur (terminal appelé), ou une réponse d’un serveur vers un client :

Requête d’un serveur vers un client :

Ligne de requête
(Méthode, Requête URI, version SIP)

En tête général, ou de requête, ou d’entité

CRLF (permet de spécifier la fin du champ d’en-têtes, et


le début du corps du message)

Corps du message

Requête d’un client vers un serveur :

Ligne d’état
(version SIP, code d’état, Reason Phrases)

En tête général, ou de réponse, ou d’entité

CRLF (permet de spécifier la fin du champ d’en-têtes,


et le début du corps du message)

Corps du message

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

b. L’ouverture d’une session :

- Suivant nature des échanges, choix des protocoles les mieux adaptés (RSVP,
RTP, RTCP, SAP, SDP).
- Détermination du nombre de sessions : par exemple, pour véhiculer de la
vidéo, 2 sessions doivent être ouvertes (l’une pour l’image et l’autre pour la
vidéo).
- Chaque utilisateur et sa machine est identifié par une adresse que l’on nomme
URL SIP et qui se présente comme une URL Mailto :

Informations_utilisateur@domaine paramètres en-têtes

- Informations_utilisateur : nom d’utilisateur ou numéro de téléphone


- Domaine : nom de domaine ou adresse IP : port
- Paramètres : transport = udp ou tcp / user = phone ou IP / method =
INVITE, ACK, OPTIONS, BYE, CANCEL, REGISTER / ttl = 0 à 255 / maddr =
adresse IP de multicast…
- En-têtes : hname = hvalue & hname = hvalue…

- Requête URI : permet de localiser le proxy server auquel est rattachée la


machine de l’appelé.

- Requête SIP : une fois le client (machine appelante) connecté à un serveur SIP
distant, il peut lui adresser une ou plusieurs requêtes SIP et recevoir une ou
plusieurs réponses de ce serveur. Les réponses contiennent certains champs
identiques à ceux des requêtes, tels que : Call-ID, Cseq, To et From.

c. Les différentes méthodes de requêtes :

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Les échanges entre un terminal appelant et un terminal appelé se font par


l’intermédiaire de requêtes :

- INVITE : cette requête indique que l’application (ou utilisateur) correspondante


à l’URL SIP spécifiée est invitée à participer à une session. Le corps du message
décrit cette session (par ex : médias supportés par l’appelant). En cas de réponse
favorable, l’invité doit spécifier les médias qu’il supporte.

- ACK : permet de confirmer que le terminal appelant a bien reçu une réponse
définitive à une requête INVITE.

- OPTIONS : un proxy server en mesure de contacter un terminal appelé, il doit


répondre à une requête OPTIONS en précisant ses capacités à contacter le même
terminal.

- BYE : cette requête est utilisée par le terminal de l’appelé afin de signaler qu’il
souhaite mettre un terme à la session.

- CANCEL : cette requête est envoyée par un terminal ou un proxy server afin
d’annuler une requête non validée par une réponse finale :

- Si une machine ayant été invitée à participer à une session, et ayant


acceptée l’invitation ne reçoit pas de requête ACK, alors elle émet une
requête CANCEL.

- REGISTER : cette méthode est utilisée par un client pour enregistrer son
adresse auprès du serveur auquel il est relié.
Une réponse à une requête est caractérisée, par un code et un motif, appelés code
d’état et reason phrase respectivement. Un code d’état est un entier codé sur 3
bits indiquant un résultat à l’issue de la réception d’une requête. Ce résultat est

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

précisé par une phrase, textbased (UTF-8), expliquant le motif du refus ou de


l’acceptation de la requête. Le code d’état est donc destiné à l’automate gérant
l’établissement des sessions SIP et les motifs aux programmeurs. Il existe 6
classes de réponses et donc de codes d’état, représentées ici :

1xx = Information - La requête a été reçue et continue à être traitée


2xx = Succès - L’action a été reçue avec succès, comprise et acceptée
3xx = Redirection - Une autre action doit être menée afin de valider la requête
4xx = Erreur du client - La requête contient une syntaxe erronée ou ne peut pas
être traitée par ce serveur
5xx = Erreur du serveur - Le serveur n’a pas réussi à traiter une requête
apparemment correcte
6xx = Echec général - La requête ne peut être traitée par aucun serveur

d. Les différents composants d’une communication SIP :

Il existe deux types de composants lors d’une communication SIP :

- Les user agents


- Les serveurs

 User agents

Un user agent est une application cliente utilisée avec un réseau particulier, un
navigateur web est ainsi un user agent pour aller sur internet.

Les user agents que l’on peut retrouver au sein d’une communication SIP sont :

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

L’UAS (User Agent Server) : Il représente l’agent de la partie appelée. C’est une
application de type serveur qui contacte l’utilisateur lorsqu’une requête SIP est
reçue. Et elle renvoie une réponse au nom de l’utilisateur.

L’U.A.C (User Agent Client) : Il représente l’agent de la partie appelante. C’est


une application de type client qui initie les requêtes.

 Les serveurs

Le relais mandataire ou proxy server : auquel est relié un terminal fixe ou


mobile, agit à la fois comme un client et comme un serveur. Il peut interpréter et
modifier les messages qu’il reçoit avant de les retransmettre

Le RS (Redirect Server) : Il réalise simplement une association (mapping)


d’adresses vers une ou plusieurs nouvelles adresses (lorsqu’un client appelle un
terminal mobile (redirection vers le Proxy Server le plus proche) ou en mode
multicast (le message émis est redirigé vers toutes les sorties auxquelles sont
reliés les destinataires). Notons qu’un Redirect Server est consulté par l'UAC
comme un simple serveur et ne peut émettre de requêtes contrairement au Proxy
Server.

Le LS (Location Server) : Il fournit la position courante des utilisateurs dont la


communication traverse les Redirect Server et Proxy Server auxquels il est
rattaché. Cette fonction est assurée par le service de localisation.

Le RG (Registrar) : C'est un serveur qui accepte les requêtes Register et offre


également un service de localisation comme le Location Server. Chaque Proxy
Server ou Redirect Server est généralement relié à un Registrar.

4. Le protocole IAX2 (Inter-Asterisk eXchange)

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Le protocole IAX2 est un protocole de voix sur IP issu du projet de PABX open
source Asterisk. Il permet la communication entre client et serveur ainsi qu'entre
serveurs. Il est plus puissant que SIP car il a été conçu pour le contrôle et la
transmission de flux multimédias avec un débit plus faible (notamment pour la
voix) et l'intégration dans les réseaux NATés, en effet IAX n'utilise qu'un seul port
UDP: le 4569 pour la signalisation et les données (contrairement à SIP qui n’utilise
le port 5060 que pour la signalisation). Il s’agit ici de la version 2 du protocole, la
première version n’étant quasiment plus utilisée.

A compléter_______________________________________________

VI.Asterisk
1. Présentation
Asterisk est né en 1999, créé par un étudiant de l'université d'Auburn, il s’agit
d’une application open source qui implémente un PBX (Private Branch eXchange)
créée par Digium, Inc.

Il peut être installé sous Linux, BSD ainsi que MacOS X et fournit toutes les
fonctionnalités que l’on attend d’un PBX et même bien plus.

Son atout majeur est bien sur qu’il est gratuit puisqu’il est développé en Open
Source. Le seul coût qu’il revient à l’entreprise est celui de l’ordinateur sur lequel
devra être installé Asterisk, à l’exception des éventuelles SIPphones.

Un autre atout important que possède Asterisk est son évolutivité, en effet, étant
développé sous Open Source, le projet ne cesse d’avancer, les développeurs
rajoutant sans cesse de nouvelles fonctionnalités.

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

2. Fonctionnalités
Asterisk comprend un nombre très élevé de fonctions pour répondre à la majorité
des besoins en téléphonie.

Il permet de remplacer totalement, par le biais de cartes FXO/FXS, un PABX


propriétaire, et d'y adjoindre des fonctionnalités de VoIP pour le transformer en
IPBX. Il permet également de fonctionner totalement en VoIP, par le biais de
téléphones SIP ou IAX du marché. Enfin, des fonctionnalités de routage d'appel,
menu vocal et boites vocales, entre autres, le placent au niveau des PBX les plus
complexes.

Des modules tiers permettent de visualiser ou paramétrer le PBX via une interface
Web.

VII.Trixbox
1. Présentation

Trixbox, anciennement connu sous le nom de Asterisk@home est une solution de


voix sur IP très complète, celle-ci est basée sur la distribution linux nommée
CentOS, le package d’installation comprend énormément d’outils tels FreePBX
(précédemment appelé Asterisk), MySQL, Apache, et beaucoup d’autres.

Trixbox en plus de posséder toutes les possibilités de FreePBX permettant de


transformer un simple ordinateur en commutateur téléphonique, est aussi capable
de gérer différents protocoles tels SIP ou encore IAX2

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

SugarCRM
Il s’agit d’une application permettant de gérer les bases de données relationnelles
d’une entreprise, cette solution est de plus en plus utilisée dans les entreprises, en
effet elle centralise d’une manière simple les informations de la clientèle.

Munin
Il s’agit d’un logiciel utilisé afin de récolter différentes informations sur les
ordinateurs, pour exemple : la charge processeur, RAM, réseau, espace disque…

HUDlite
Cet outil est utilisé dans le but de gérer les appels téléphoniques, à l’aide de celui-
ci, on peut facilement vérifier le statut d’un poste, transferer, ou mettre en attente
un appel.

phpMyAdmin
Reconnu dans le monde entier, cet outil permet à l’aide d’une interface PHP de
faciliter la gestion des bases de données MySQL.

Webmin
Application permettant d’administrer un serveur à distance, un cryptage SSL est
possible.

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Partie 2 : Réalisation du projet


I. La plateforme Trixbox
1. Installation
Le package Trixbox est disponible à partir de l’adresse suivante :

http://www.trixbox.org

Il existe deux méthodes d’installation :

- A l’aide d’une machine virtuelle nommée VMWare, l’image de Trixbox peut


directement être émulée sous Windows par exemple, ceci permet un gain de
temps, et ne nécessite pas d’ordinateur supplémentaire. Cependant
l’utilisation d’une bonne machine est recommandée.

- A l’aide d’une machine réelle, et il suffit seulement de graver l’image Trixbox


sur un cd et démarrer l’ordinateur à l’aide de celui-ci afin de commencer
l’installation. Les besoins en ressource dans ce cas ci sont beaucoup moins
importants.

2
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

L’installation est totalement automatisée, elle requiert néanmoins la présence de


l’utilisateur afin de saisir le mot de passe administrateur (root) ainsi que les
configurations réseaux.

A la fin de l’installation, et une fois le système lancé, l’étape suivante, et la plus


importante est de mettre à jour le système, en effet, des failles de sécurité sont
découvertes tous les jours, et dans le but de posséder un système fiable, il est
utile de le mettre à jour régulièrement.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

La mise à jour du système se fait par la console, en étant loggé en root, soit sur le
poste concerné, soit via une connexion SSH. Cette dernière possibilité peut être
réalisée seulement si l’on connaît l’adresse IP de la machine.

[root@asterisk1 ~]# trixbox-update.sh

La commande précédente permet de mettre à jour le fichier de script pilotant la


mise à jour, il est indispensable de posséder la dernière version afin de recevoir les
dernières mises à jour.

Après redémarrage, on peut enfin lancer la vraie mise à jour :

[root@asterisk1 ~]# trixbox-update.sh update

Celle-ci télécharge les mises à jour pour la plateforme Trixbox seulement, la


commande pour réaliser la mise à jour de la distribution de Linux CentOS ainsi que
des patches de sécurités est la suivante :

[root@asterisk1 ~]# yum –y update

Cette opération peut prendre pas mal de temps, en fonction de la version de


CentOS installée. Le système est maintenant à jour, la configuration de notre PBX
peut alors commencer.
L’étape suivante afin de parfaire la sécurité de notre système est modifier les mots
de passe définis par défaut. Notamment le mot de passe permettant l’accès à
l’interface Web en mode administrateur. La commande à taper est la suivante :

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

2. Installation d’une carte DIGIUM

Une carte Digium est une carte permettant de recevoir une/plusieurs ligne
téléphoniques (port(s) FXO) et de fournir un/plusieurs port(s) FXS sur lesquels des
hard phones ; ou des fax peuvent être connectés. Cette carte se loge dans un
emplacement PCI de l’ordinateur, sa détection est entièrement prise en charge par
Trixbox, il est nécessaire de taper la commande suivante :

[root@asterisk1 ~]# genzaptelconf

Celle-ci permet de générer les fichiers de configuration liés aux différents ports
FXO et FXS, ainsi que d’installer les pilotes de la carte. La console affiche les
informations suivantes :

Pour plus d’informations sur les différents canaux qui ont été déclarés ci-dessus, et
en vue de créer notre extension ZAP sur le bon canal, il est nécessaire de se
renseigner sur les numéros de canaux ainsi qu’à quoi ils correspondent. Pour cela il

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

suffit de jeter un œil au fichier de configuration zapata-auto.conf. Ce fichier a été


généré automatiquement par la commande genzaptel, il ne faut surtout pas le
modifier manuellement.

Il existe donc deux ports actifs, les deux autres pouvant être activés par l’ajout
d’un module sur la carte. Parmi les deux ports actifs, le canal 1 permettra la
connexion d’une extension ZAP, tandis que le canal 4 sera utilisé par le trunk ZAP
afin de connecter une ligne provenant du PABX de l’entreprise.

Les configurations de base étant maintenant effectuées, nous pouvons nous


connecter sur l’interface Web dans le but de commencer l’administration du
serveur. Rappelons que l’administration de notre PBX se fait de manière
graphique, Trixbox génère automatiquement les fichiers de configurations, c’est là
l’un des points forts de cette plateforme, elle est accessible à un plus grand public,
même aux débutants.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

3. Présentation de l’interface

L’interface Trixbox comme précisé précédemment est accessible via un navigateur


classique, il s’agit d’une interface réalisée en Flash, et qui permet de configurer la
totalité des fonctionnalités du PBX.

4. Intégration à l’architecture pré existante

L’entreprise Impuls possède en premier lieu un commutateur, ou PABX, ainsi que


deux accès RNIS pour les communications extérieures. Les configurations de bases
de notre IPBX étant réalisées, nous pouvons maintenant l’intégrer à l’architecture
pré existante et connecter l’IPBX au PABX de l’entreprise afin de réaliser des
appels à partir de clients SIP vers l’extérieur par exemple.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Afin de passer des appels vers le PABX de l’entreprise, et ensuite atteindre soit le
réseau téléphonique de Impuls ou le réseau téléphonique extérieur, il est
nécessaire de définir ce qu’on appelle un trunk ZAP, il s’agit d’une ligne qui
permettra d’effectuer des appels externes. Ce trunk doit être définit dans le but
d’atteindre le PABX.
Il est définit dans le fichier extension.conf, ce fichier permet de gérer entièrement
le plan de numérotation de l’IPBX, lorsqu’un appel arrive, l’IPBX vient chercher la
procédure à suivre à l’intérieur. Lorsque nous créons le trunk à l’aide de l’interface
graphique la ligne suivante est ajoutée dans la zone globale du fichier
extension.conf.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Cette ligne permet de préciser le type de ligne qui vient d’être déclaré, ici il s’agit
d’un trunk ZAP.
La deuxième étape maintenant est de déclarer une route sortante, qui utilisera ce
trunk, dans le but d’acheminer des appels extérieurs.
Les lignes suivantes sont ajoutées dans le fichier extension.conf.

Le préfixe que l’utilisateur devra composer avant le numéro de son correspondant


est le « 9 ». Les macros renvoient à des fonctions définies par trixbox, ici on fait
appel en premier lieu à la macro dialout-trunk, l’argument « 1 » précise le numéro
de trunk, le deuxième argument renvoie au numéro composé par l’utilisateur, et le
troisième au mot de passe de la route dans le cas ou l’on souhaite restreindre
l’accès à un certain panel de personnes.

5. Ajout de nouvelles extensions


Une extension doit être déclarée pour chaque poste téléphonique que l’on souhaite
installer, c’est de cette manière que chaque poste téléphonique pourra être joint. Il
existe différents types d’extensions, ceux-ci varient en fonction du protocole qui
est utilisé, Sous Trixbox nous pouvons compter SIP, IAX2, ZAP, et une dernière
appelée CUSTOM :

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Extension SIP (Session Initiation Protocol) :


Il s’agit du type d’extension utilisé lorsque l’on souhaite connecter un téléphone IP,
ou encore un soft phone. En d’autres termes, la voix est numérisée afin de
transiter par le biais de la couche IP.

Extension IAX2 (Inter-Asterisk eXchange) :


Il s’agit d’un protocole de voix sur IP crée par la société Digium afin de permettre
la communication entre clients serveurs ainsi qu’entre serveurs. Il est plus
puissant que SIP car il a été conçu pour le contrôle et la transmission de flux
multimédia avec un débit plus faible (notamment pour la voix) et l'intégration dans
les réseaux NATés, en effet IAX n'utilise qu'un seul port UDP: le 4569 pour la
signalisation et les données.

Extension ZAP :
Ce type d’extension est utilisé lorsque l’IPBX Asterisk est pourvu d’une carte
possédant des interfaces FXO ou FXS, ces cartes permettent de connecter une

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

ligne téléphonique (FXO - Foreign Exchange Office) ou un hard phone (FXS -


Foreign exchange station). De telles cartes sont utilisées lorsque l’on souhaite
implémenter notre IPBX Asterisk au sein d’une entreprise qui possède déjà son
propre PABX par exemple, dans ce cas-ci, seulement le port FXO est requis.

Extension CUSTOM :
Cette extension est utilisée lorsque l’extension que l’on souhaite installer n’est pas
du type des trois précédentes, c’est le cas notamment du protocole H.323, qui
reste largement utilisé, malgré l’apparition de SIP et de IAX2, qui sont reconnus
plus performants.

a. Ajout d’une extension SIP

Prenons l’exemple d’une extension SIP, nous commençons avec l’interface


suivante :

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Précisons cependant que toutes les options possibles n’ont pas été affichées dans
un soucis d’esthétique, seules les plus importantes ont été retenues afin de garder
une certaine clarté dans le rapport.

3
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Les champs obligatoires à saisir sont :


- User extension
- Display name

Les autres ne sont que des options supplémentaires, tels la messagerie vocale, et
l’envoi de messages électroniques vocaux.

Nous allons ajouter un utilisateur SIP :

Le numéro que nous devrons composer afin d’atteindre cet utilisateur est le 21 et
le nom qui s’affichera à l’écran du téléphone sera : Julien P.
Nous pouvons maintenant observer ce que l’interface Trixbox a modifié à
l’intérieur des fichiers de configuration :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

b. Ajout d’une extension ZAP

Le procédé reste le même que la définition précédente, néanmoins il est utile et


obligatoire de rajouter certaines informations nécessaires au bon fonctionnement
de l’extension ZAP.

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

La fenêtre de saisie demande les mêmes informations que pour l’extension SIP,
ainsi que le numéro du canal sur lequel envoyer la signalisation FXS, l’extension
SIP n’ayant pas besoin de canal. Une fois l’extension créer le fichier de
configuration est de la forme suivante :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Problème pouvant s’immiscer dans le fichier de configuration :


Durant la réalisation de mon projet, je fus témoins d’un bug de la part de la
plateforme trixbox, celui-ci survient lors de la création d’une extension, qu’importe
le protocole utilisé. A la fin de la création, Trixbox génère automatiquement les
lignes de codes se référant à la configuration de cette extension, néanmoins il se
peut que certains caractères s’immiscent dans ce fichier altérant alors la bonne
compréhension du code.

Ces points virgules se rajoutent toujours au début du nom de l’extension, or étant


le caractère permettant d’ajouter des commentaires au code, cela signifie
maintenant que le nom de notre extension vient d’être mis en commentaire, et
qu’il n’existe pas dans le système d’extension portant le nom « 10 ».

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Afin de corriger le problème il est nécessaire de modifier le code et de le remettre


à jour au sein du système, ceci n’est souvent pas sûr, mais dans ce cas ci, cela
marche parfaitement et ne cause aucun problème dans la configuration de notre
plateforme. Le point négatif de ce bug est donc qu’il est nécessaire de vérifier
manuellement les fichiers de configuration se rapportant à la configuration des
extensions, c'est-à-dire les fichiers :

- sip_additional.conf
- iax_additional.conf
- zapata_additional.conf

Le fichier extension.conf ainsi que tous les fichiers y étant inclus ne semblent pas
souffrir de ce bug, ceci est une bonne chose vu l’importance de ce fichier qui
permet de gérer le plan de numérotation.

c. Connexion à l’aide d’un client SIP

Il existe différentes manières de se connecter au serveur Asterisk via les noms


d’utilisateur et mots de passe définis précédemment, nous pouvons utiliser un
téléphone IP, que l’on nomme plus communément un SIP phone (s’il s’agit du
protocole SIP en l’occurrence) ou un IAX phone (pour le protocole IAX). Ce genre
de téléphone coûte un certain prix, mais offre la possibilité d’être indépendant d’un
ordinateur. L’autre solution est d’utiliser un logiciel qui offre les mêmes
fonctionnalités que le SIP phone, hormis le fait qu’il nécessite l’usage d’un
ordinateur. Le point positif d’un tel outil est qu’il est entièrement gratuit, il existe
bon nombre de ce type de logiciels, certains plus complets que d’autres.
Notamment ZoIPer (anciennement connu sous le nom de Idefisk), qui implémente
à la fois les protocoles SIP et IAX2. L’utilisateur peut être connecté sur deux
comptes en même temps. Tout au long de mon projet, j’ai utilisé le logiciel ZoIPer,
dont l’interface est la suivante :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

La première étape après avoir installer ce logiciel est donc de s’authentifier auprès
de notre IPBX Asterisk. Pour cela, il est nécessaire de connaître l’adresse IP de la
machine, le nom d’utilisateur et le mot de passe qui nous sont alloués.

La connexion de notre SIP phone sur l’IPBX génère le trafic suivant :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

On remarque ici des envois d’erreurs de la part de notre IPBX, ces erreurs portent
le numéro 401, qui correspond à une erreur d’authentification. Cette erreur est le
plus majoritairement vue lorsque l’utilisateur a rentré un mauvais mot de passe.
En revanche, ici ce n’est pas le cas, après analyse, il est apparu que le client
essayait de se connecter sans authentification, l’IPBX renvoie donc un message
SIP lui demandant de renvoyer ses identifiants.

d. Test d’appel

Nous allons maintenant réaliser un appel entre compte utilisateur SIP vu


précédemment et le téléphone connecté sur la carte FXS de notre IPBX. Les
extensions sont définies de la manière suivante dans leurs fichiers de configuration
respectifs :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Le numéro que l’on doit composer afin d’atteindre l’extension ZAP est le numéro
10, inversement pour joindre l’extension SIP le numéro à composer sera le 21. La
définition de toutes les différentes commandes est fournit en annexe X.

On réalise un appel à partir de l’extension SIP vers l’extension ZAP, le trafic


suivant est observé sur l’ordinateur possédant le client SIP.

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

L’utilisateur 21 envoie une requête à l’IPBX pour appeler le numéro 10, l’IPBX
demande une authentification. 21 renvoie un message contenant son
authentification, puis réitère sa requête d’appel vers le numéro 10. L’IPBX renvoie
une tonalité à l’utilisateur 21, puis informe 21 des différentes caractéristiques de
l’appel, les informations utiles aux paquets RTP pour l’échange de voix. 23 acquitte
la configuration et décroche, la conversation commence.

L’utilisateur 10 raccroche, une requête BYE est envoyée à l’utilisateur 23, qui
acquitte immédiatement, la conversation est terminée.

e. Test d’appel via la route sortante

Lorsque l’utilisateur tente un appel vers le numéro interne « 15 » par exemple, il


devra composer « 915 », on observe sur Asterisk les différentes macros appelées :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

On retrouve bien le numéro de trunk correspondant au type ZAP, ainsi que les
différents arguments.

6. Voicemail
Le voicemail est un outil très innovateur, comme son nom l’indique, il permet
d’envoyer le message laissé sur le répondeur de l’utilisateur sur la boite mail
spécifiée ainsi, le message peut être consulté de partout. Le message est en
premier lieu compressé au format .wav, puis transmis au programme sendmail qui
se charge d’envoyer le message au format mail.

Le programme sendmail doit cependant être configuré de manière à bien pouvoir


envoyer des mails à travers le serveur mail de l’entreprise par exemple

Le fichier hosts doit être modifier afin de préciser l’adresse de la passerelle à qui
s’adresser dans le cas de l’envoie de mail.

L’étape suivante est de modifier le fichier de configuration du client mail afin qu’il
sache par qui envoyer les mails qu’il aura reçu. Pour ce faire, le fichier
/etc/mail/sendmail.mc doit être modifié de la façon suivante :

4
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Enfin et pour clore la configuration, il est nécessaire de redémarrer le daemon lié


au programme client de messagerie.

La configuration est maintenant opérationnelle.

7. Interconnexion avec un site distant


L’entreprise Impuls entretient un partenariat avec l’école polytechnique de Gliwice,
c’est pourquoi ce projet peut être utile au dialogue entre les deux services. Les
utilisateurs des deux sites n’ont plus besoin d’utiliser le réseau téléphonique
classique, ni de payer les communications.
Une plateforme Trixbox est installée sur le site de polytechnika, et administrée par
un technicien. J’ai du travailler à distance avec cette personne afin de choisir la
configuration idéale pour permettre les appels téléphoniques entre ces deux sites.
La solution qui a été retenu est celle du trunk via le protocole IAX2. Comme définit
précédemment ce protocole a été initié par les développeurs d’Asterisk, il transite
via le port 4569, et contrairement au protocole SIP, il n’est pas sujet au problème
de translation d’adresse (NAT) car les paquets de signalisation et de voix transitent
sur le même port.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

a. Schématisation de la solution

b. Création d’un trunk IAX2

La création du trunk permettra à tous les utilisateurs d’atteindre le site de


polytechnika en spécifiant un préfixe avant le numéro d’extension qu’ils souhaitent
joindre.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

La première fenêtre concerne les informations sortantes, c'est-à-dire qu’à chaque


fois qu’un utilisateur souhaitera utiliser le trunk IAX2, Trixbox le renverra vers le
contexte nommé impuls, puis effectuera l’authentification sur le site de
polytechnika à l’aide du nom d’utilisateur et mot de passe définit ici. Le type ici
définit est « peer » car il permet seulement d’émettre des appels, en effet il s’agit
seulement du trafic sortant, il n’est nul besoin d’utiliser un type « friend » pour
permettre la conversation dans les deux sens.
La deuxième fenêtre concerne le trafic entrant, l’utilisateur distant devra se
connecter à l’aide du mot de passe « iax2impuls, et le nom d’utilisateur
« polytechnika ». Le type ici définit est « user » car on souhaite que le trafic n’aille
que dans un seul sens, le sens entrant.
Le contexte précise que l’utilisateur distant sera renvoyé au contexte from-internal
à l’intérieur du plan de numérotation, comme s’il s’agissait d’un utilisateur interne.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Il est nécessaire par la suite d’ajouter une route sortante qui redirigera l’utilisateur
vers le trunk IAX2. Cela se fait de la même manière que précédemment pour le
trunk ZAP. Cette fois le préfixe que l’utilisateur devra spécifier sera le « 8 ».

c. Test de la connexion

Afin de tester la connexion dans le cas d’un appel distant, une extension SIP a été
déclarée sur le site de polytechnika. A partir de l’extension SIP « 21 » nous
réalisons l’appel vers l’extension distante.
Il est possible d’observer les informations qui transitent sur l’IPBX Asterisk en
activant la CLI (Command Line Interface).

L’option –rvvv permet à la fois de se placer en mode console, mais aussi de fixer le
degré d’affichage, ici il est à trois. Certaines informations seront donc affichées et
d’autres cachées.
Affichage des informations concernant le protocole IAX2 :

Maintenant nous pouvons commencer la tentative de connexion vers l’hôte distant.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

L’IPBX envoie une requête à l’adresse indiquée dans la configuration du trunk


(157.158.97.218), cette requête contient le nom d’utilisateur de l’appelant, ainsi
que les préférences en terme de codecs de voix.
L’IPBX distant répond en demandant le mot de passe de l’utilisateur. Enfin, notre
IPBX renvoie le mot de passe crypté avec la méthode md5 (Message Digest 5).
L’IPBX distant accepte la connexion, le codec retenu est celui en tête de liste, il
s’agit du U-law.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Conclusion technique
________________________________________________________________

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Bilan personnel
________________________________________________________________

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Annexes
________________________________________________________________

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Option SIP

General options

Port : Il s’agit du port que Asterisk écoutera pour les connexions SIP entrants par
défaut ce sera le 5060.
Bindaddr : Permet de spécifier l’adresse que Asterisk devra écouter pour les
connexions SIP entrantes, la valeur par défaut est d’écouter toutes les adresses.
Context : Contexte à l’intérieur duquel est place l’extension.

Client Options
Type : spécifie les droits de l’utilisateurs, il en existe trios différents:
peer : L’utilisateur peut seulement appeler.
User : L’utilisateur peut seulement recevoir des appels.
Friend : L’utilisateur peut recevoir et émettre des appels.
Secret : Il s’agit du mot de passe de l’utilisateur, celà doit être sous forme
alphanumérique.
Host : spécifie l’adresse IP ou le nom d’hôte du serveur. On peut spécifier
« dynamic » afin de permettre à l’hôte distant de se connecter par l’intermédiaire
de n’importe quelle IP.
Defaultip : permet de spécifier l’adresse IP par défaut de l’utilisateur, celà est
utilise lorsque le client n’a pas encore eu le temps de s’enregistrer auprès du
serveur.
Username : nom d’utilisateur du client.
Canreinvite : cette option est utilisée pour dire au serveur de ne jamais renvoyer
d’invitation au client, certains bugs ont été observés, notamment avec les
téléphones Cisco ATA 186.
Context : définis à l’intérieur de la définition du client, il permet de spécifier le
contexte seulement pour l’utilisateur concerné.

5
Rapport de stage P. Julien

2ème année ESIGETEL VA RCM

Bibliographie
________________________________________________________________

http://www-rp.lip6.fr/~corre/SIP-EXPOSE.pdf
http://www.voipfr.com
http://asterisktutorials.com
http://kgarrison.blogspot.com
http://VOIPSpeak.net
http://www.figer.com/Publications/Trixbox.htm
http://www.asterisk-france.net

Вам также может понравиться