Vous êtes sur la page 1sur 138

Université d’Abomey-Calavi (U.A.C.

Ecole Polytechnique d’Abomey-Calavi (E.P.A.C.)

Département de Génie Informatique et Télécommunication

MEMOIRE DE FIN DE FORMATION


Présenté pour l’obtention du Diplôme d’Ingénieur de Conception en
Génie Informatique et Télécommunication
Option : Réseaux Informatiques et Internet

Thème

ETUDE ET MISE EN ŒUVRE DES SERVICES RESEAU DE


BASE ET DE VOIX SUR IP DANS UN RESEAU IPv6
(Cas du Ministère de l’Economie et des Finances)

Présenté et soutenu par :

M. Abdoul Wahab MARCOS


Le 16 février 2011

Devant le Jury composé de :

Président : Dr. Marc K. ASSOGBA, Enseignant-Chercheur, EPAC

Membres : 1°) M. Léonard MONTEIRO, Enseignant, EPAC, Maître de mémoire

2°) M. Fréjus Roméo GBAGUIDI Ing. Réseaux Telecom au MEF

3°) M. Bienvenu OLORY, Enseignant, EPAC

Année Académique 2010 Ŕ 2011

Troisième Promotion
DEDICACES

A Dieu le Tout Miséricordieux,


Ton amour, ta miséricorde et tes grâces à mon endroit m’ont fortifié dans la
persévérance et l’ardeur au travail.

A Mon Père, El hadj Ibourahima MARCOS


En vous, je vois un père dévoué à sa famille. Ce mémoire est le fruit des
nombreux sacrifices consentis à mon égard.
Merci pour tout.

A Ma Mère, El hadja Rafiatou MARCOS née AKOHOUENDO


En vous, je vois la maman parfaite, toujours prête à se sacrifier pour le
bonheur de ses enfants.
Merci pour tout.

A mes frères et sœurs,


Trouvez en ce travail un symbole de courage et d’espoir.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) i
REMERCIEMENTS

Pour ce travail, nous adressons nos sincères remerciements à :

 M. Ignace CODJIA, Directeur de l’Organisation et de l’Informatique du

Ministère de l’Economie et des Finances pour avoir accepté notre

demande de stage.

 M. Léonard MONTEIRO, pour avoir accepté de suivre ce travail. Merci

pour son dévouement et sa promptitude à notre égard.

 M. Romaric SAGBO, Ingénieur Réseaux & Télécoms à la Direction de

l’Organisation et de l’Informatique, pour sa remarquable contribution

dans l’aboutissement de ce travail.

 M. Fréjus GBAGUIDI, Ingénieur Réseaux & Télécoms à la Direction

de l’Organisation et de l’Informatique, pour ses conseils et son suivi

permanent.

 M. Semiyou ADEDJOUMA, Chef du département Génie Informatique

et Télécommunications, pour son souci permanent de nous offrir de

meilleures conditions pour notre formation.

 M. Félicien AVLESSI, Directeur de l’EPAC, pour nous avoir offert un

environnement favorable pour nos études.

 tous les professeurs de l’EPAC, à qui nous devons notre formation.

 tous ceux qui d’une manière ou d’une autre n’ont ménagé aucun effort

pour nous assister dans ce travail.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) ii
Résumé

Le monde du réseau se prépare à une révolution avec l'arrivée du


format d'adressage, IPv6. Ce domaine est encore très méconnu des
professionnels et très peu enseigné dans les écoles.
Dans le cadre de notre projet de fin d’études, nous avons choisi
d’étudier le protocole et de l’utiliser pour mettre en œuvre les services réseau
de base et de voix sur IP dans un réseau d’entreprise.

La première étape de ce projet a été de faire une étude théorique


approfondie du protocole, de ses spécificités techniques et des différents
mécanismes de translation existants. De plus, nous avons passé en revue
les notions relatives à la voix sur IP.

Dans la deuxième partie, nous sommes passés à la pratique en


installant les différents services réseau de base dans un premier temps, puis
vient ensuite la mise en œuvre de notre système de téléphonie sur IP dans
notre réseau IPv6.

Pour mieux expérimenter les notions théoriques énoncées dans la


première partie, nous avons procédé à la capture de quelques paquets grâce
à Wireshark qui ont été par la suite analysés.

Mots clés : IPv6, IPv4, Voix sur IP, SIP, OpenSER

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) iii
Abstract

Network world is preparing for a revolution with the arrival of the new
format of addressing, IPv6. This area is still very poorly known by
professionals and very little taught in schools.

As part of our graduation project, we chose to study the new protocol


and also use it to implement basic and voice network services over IP in an
enterprise network.

The first stage of this project was to make a thorough theoretical study
of the new protocol, its technical characteristics and the different existing
mechanisms of conversion. In addition we reviewed the concepts relating to
Voice over IP.

In the second part, we went to practice by installing first, various basic


network services initially, then later came the implementation of our IP
telephony system in our IPv6 network.

To better test the theoretical concepts outlined in the first part, we


proceeded by capturing some packets with Wireshark, which were
subsequently analyzed.

Keywords: IPv6, IPv4, voice over IP, SIP, OpenSER

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) iv
Table des matières

Dédicaces ........................................................................................................i
Remerciements .............................................................................................. ii
Résumé ....................................................................................................... iii
Abstract ....................................................................................................... iv
Liste des figures ............................................................................................ xi
Liste des tableaux ....................................................................................... xiii
Table des abréviations ............................................................................... xiv

Introduction générale ..................................................................................... 1

PREMIERE PARTIE : ASPECTS THEORIQUES .......................................... 3

Chapitre 1: Les modèles réseaux................................................................... 4

Introduction ................................................................................................... 5
I. Le modèle OSI (Open Systems Interconnection) .................................... 5

A. La couche physique ......................................................................... 6


B. La couche liaison de données .......................................................... 7
C. La couche réseau ............................................................................. 7
D. Couche transport .............................................................................. 7
E. La couche session ........................................................................... 7
F. La couche présentation .................................................................... 8
G. La couche application....................................................................... 8
II. Le modèle TCP/IP (Transmission Control Protocol / Internet Protocol) ... 8
A. Description du modèle ..................................................................... 8

B. Comparaison des modèles TCP/IP et OSI ....................................... 9

C. Les protocoles de la couche application ....................................... 10

D. Les protocoles de la couche transport ........................................... 11


 Le Protocole UDP ................................................................. 11

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) v
 Le Protocole TCP .................................................................. 12
III. Le système d’adressage IPv4 ................................................................ 13
A. Le format d’adresse IPv4 ............................................................... 13
B. Les différentes classes d’adresses IPv4 ........................................ 14
C. Le routage dans les réseaux IPv4 ............................................... 16
D. Structure d’un datagramme IPv4 ................................................... 17
E. Insuffisances et limites de l’adressage IPv4 .................................. 18
Conclusion ................................................................................................... 20

Chapitre 2 : Le système d’adressage IPv6 .................................................. 21


Introduction .................................................................................................. 22
I. Structure des adresses IPv6................................................................... 22
II. Les différents types d’adresses IPv6 ...................................................... 23
A. Les adresses Unicast ..................................................................... 23
1. Les adresses globales Unicast .............................................. 24
2. Les adresses locales uniques ............................................... 24
3. Les adresses locales de lien ................................................. 25
B. Les adresses Multicast ................................................................... 26
C. Les adresses Anycast .................................................................... 27
III. Format d’un datagramme IPv6 ............................................................... 27
IV. ICMPv6 et l’auto-configuration................................................................ 29
A. ICMPv6 ........................................................................................ 29
B. La découverte de voisinage ........................................................... 30
C. La configuration automatique ......................................................... 31
D. Découverte de MTU ...................................................................... 31
V. Le routage dans un réseau IPv6 ............................................................. 32
A. Le routage statique ........................................................................ 32
B. Le routage dynamique .................................................................... 32
VI. Les mécanismes de transitions IPv4 vers IPv6 ...................................... 34

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) vi
A. La double-pile IP, ou Dual Stack .................................................... 34
B. Transport d’IPv6 dans IPv4 ............................................................ 34
1. Les tunnels statiques ............................................................ 35
2. Tunnels automatiques : IPv6 dans IPv4................................ 36
 6to4................................................................................... 36
 ISATAP ............................................................................. 37
 TEREDO ........................................................................... 38
VII. Etat de l’art du déploiement du protocole IPv6 ...................................... 39

Conclusion ................................................................................................... 40

Chapitre 3 : La Voix sur IP .......................................................................... 41

Introduction ................................................................................................. 42

I. Enjeux et avantages de la Téléphonie sur IP .......................................... 42


A. Enjeux de la Téléphonie sur IP....................................................... 42
B. Avantages de la Téléphonie sur IP ................................................. 43
II. Les différents composants d’un réseau de Téléphonie sur IP ................. 44
A. L’ IPBX ou PABX-IP ....................................................................... 44
B. Les téléphones IP ou IP-Phone ...................................................... 44
C. Les Softphones ............................................................................. 44
III. Les différents protocoles utilisés dans la Téléphonie sur IP .................... 45
A. Les protocoles de signalisation ...................................................... 45
1. Le protocole de signalisation H.323 ...................................... 45
2. Le protocole de signalisation SIP .......................................... 45
 Fonctionnement du protocole ....................................... 46
 Structure des messages SIP ........................................ 46
 Requête et réponses SIP.............................................. 48
 Composant d’un système SIP ...................................... 49
3. Le protocole IAX ................................................................... 50

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) vii
B. Les protocoles de transport ............................................................ 50
IV. La qualité de service dans la Téléphonie sur IP...................................... 51
A. L’échantillonnage ........................................................................... 51
B. Le délai de transit ........................................................................... 54
C. La gigue de phase .......................................................................... 54
D. La perte de données ...................................................................... 55
Conclusion ................................................................................................... 55

DEUXIEME PARTIE : MISE EN OEUVRE DES SERVICES RESEAU DE


BASE ET DE VOIX SUR IP ........................................................................ 56

Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6 .................. 57


Introduction .................................................................................................. 58
I. Architecture du réseau Intranet du Ministère de l’Economie et des
Finances ................................................................................................. 58
II. Installation du serveur et mise en œuvre des différents services réseau 60
A. Installation du serveur .................................................................... 60
1. Choix du système d’exploitation ............................................ 60
2. Installation du système d’exploitation sur le serveur .............. 61
3. Activation de la carte réseau et attributions des adresses ..... 63
4. Auto-configuration des postes de travail ................................ 63
 Auto-configuration avec état ......................................... 63
 Auto-configuration sans état ......................................... 63
5. Test du réseau ...................................................................... 64
B. Mise en œuvre des différents services réseau............................... 65
1. Installation et paramétrage du service DNS IPv6 .................. 65
 Réalisation avec BIND 9.2.3 ......................................... 65
 Test du service de résolution de nom .......................... 68
2. Le serveur web ...................................................................... 69

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) viii
 Installation de Apache 2 ............................................... 69
 Test du serveur web ..................................................... 69
3. Le service de messagerie ..................................................... 69
 Les MTA ...................................................................... 69
 Les MDA ..................................................................... 71
4. Le service de transfert de fichier ............................................ 72
 Installation de ProFTP .................................................. 72
 Configuration du serveur .............................................. 72
 Test du serveur ftp ........................................................ 73
Conclusion ................................................................................................... 73

Chapitre 5 : Mise en oeuvre du système de Téléphonie sur IPv6 et Analyse 74


Introduction ................................................................................................. 75
I. Choix des composants du système ........................................................ 75
A. OpenSER ....................................................................................... 75
1. Présentation d’OpenSER ...................................................... 75
2. Fonctionnalités et services .................................................... 76
3. Architecture d’OpenSER ....................................................... 76
 Le noyau ............................................................................. 76
 Les modules ........................................................................ 77
B. Les Softphones compatibles IPv6 .................................................. 78
1. Linphone ............................................................................... 78
2. Kphone .................................................................................. 78
II. Mise en œuvre du service de voix sur IP ................................................ 78
A. Architecture de notre système de Téléphonie sur IP .................. 78
B. Mise en œuvre du serveur OpenSER ........................................ 79
1. Téléchargement des différents paquets................................. 79
2. Installation des paquets téléchargés ..................................... 80
3. Configuration d’OpenSER et du module Mysql...................... 80

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) ix
 Ecriture du fichier /etc/openser/opnserctlrc ........................ 81
 Ecriture du fichier /etc/openser/openser.cfg ....................... 82
4. Redémarrage du service ....................................................... 84
5. Ajout des utilisateurs SIP ....................................................... 84
C. Configuration des clients ............................................................ 85
1. Installation des Softphones ................................................... 85
2. Configuration de Linphone .................................................... 85
III. Supervision et Analyse des performances du réseau ............................. 87
A. Choix des outils de supervision et d’analyse .............................. 87
1. NetStat.............................................................................. 87
2. Wireshark ......................................................................... 88
B. Installation et exécution de NetStat et Wireshark ....................... 89
1. Installation ............................................................................. 89
2. Supervision et analyse .......................................................... 89
Conclusion ...............................................................................................................................................97
CONCLUSION GENERALE......................................................................... 98

Références bibliographiques et webographiques ......................................... 99


Annexes ..................................................................................................... 101
Summary ................................................................................................... 113
Introduction ................................................................................................ 114
A. Objectives ............................................................................... 114
B. The protocol IPv6 .................................................................... 115
C. The Voice over IP ................................................................... 118
D. Implementation of network services in an IPv6 network ......... 119
E. Implementation of ToIPv6 service ........................................... 120
F. Supervision and analysis of network performance .................. 121
Conclusion ................................................................................................. 122

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) x
Liste des figures

Figure 1.1 : Comparaison TCP/IP – OSI ..................................................... 10

Figure 1.2 : Entête UDP sur 8 octets ........................................................... 12

Figure 1.3 : Entête TCP sur 20 octets ......................................................... 13

Figure 1.4 : Entête d’un datagramme IPv4 .................................................. 18

Figure 2.1 : Structure d’une adresse globale Unicast .................................. 24

Figure 2.2 : Structure d’une adresse locale unique ..................................... 25

Figure 2.3 : Structure d’une adresse locale de lien...................................... 25

Figure 2.4 : Structure d’une adresse Multicast ............................................ 26

Figure 2.5 : Structure d’une adresse Anycast .............................................. 27

Figure 2.6 : Format d’un datagramme IPv6 ................................................. 28

Figure 2.7 : Format d’un message ICMPv6 ................................................. 29

Figure 2.8 : Exemple de tunnel statique sous lTunnel Broker ..................... 35

Figure 2.9 : Fonctionnement de 6to4........................................................... 37

Figure 2.10: Fonctionnement de Teredo ..................................................... 38

Figure 3.1: Architecture SIP ........................................................................ 50

Figure 3.2 : Schéma synoptique de la voix sur IP........................................ 52

Figure 4.1 : Architecture du réseau Intranet du Ministère de l’Economie et


des Finances ............................................................................................... 59

Figure 4.2 : Prototype du réseau Intranet .................................................... 60

Figure 5.1 : Architecture d’OpenSER .......................................................... 77

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) xi
Figure 5.2 : Architecture finale du réseau .................................................... 79

Figure 5.3 : Etat du serveur OpenSER ........................................................ 84

Figure 5.4 : Interface graphique de Linphone .............................................. 85

Figure 5.5 : Activation du protocole IPv6 pour Linphone ............................. 86

Figure 5.6 : Configuration du proxy SIP ...................................................... 86

Figure 5.7 : Authentification d’un utilisateur ................................................. 87

Figure 5.8 : Résultat de la commande « netstat –lnp » ............................... 89

Figure 5.9 : Auto-configuration avec Radvd ................................................ 90

Figure 5.10 : Paquet ICMPv6 de type « Router advertissement » .............. 92

Figure 5.11 : Enregistrement de l’UA .......................................................... 93

Figure 5.12 : Requête « REGISTER » ....................................................... 94

Figure 5.13 : Réponse « OK » .................................................................... 94

Figure 5.14: Etablissement d’une session SIP ............................................ 95

Figure 5.15 : Graphe décrivant la session SIP entre PC1 et PC2................ 96

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) xii
Liste des tableaux

Tableau 1.1 : Les couches du modèle OSI .................................................... 6

Tableau 1.2 : Les couches du modèleTCP/IP ............................................... 9

Tableau 2.1: Les différents types de messages ICMPv6 ........................... 30

Tableau 3.1 : Les différents scores MOS définissant la qualité de la voix .... 53

Tableau 4.1 : Adressage des ordinateurs ................................................... 61

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) xiii
Table des abréviations

BGP Border Gateway Protocol


CIDR Classless Inter-Domain Routing
DHCPv6 Dynamic Host Control Protocol version 6
DNS Domain Name System
EIGRP Enhanced Interior Gateway Routing Protocol
FAI Fournisseur d’Accès Internet
FTP File Transfert Protocol
GPL General Public License
GRE Generic Routine Encapsulation
HTTP Hyper Text Transfert Protocol
IAX Inter-Asterisk eXchange
ICMPV6 Internet Control Message Protocol
IETF Internet Engineering Task Force
IGP Interior Gateway Protocol
IGRP Interior Gateway Routing Protocol
ISATAP Intra-Site Automatic Tunnel Addressing Protocol
IS-IS Intermediate System to Intermediate System
ITU International Telecommunications Union
LS Location Server
MDA Mail Delivery Agents
MMUSIC Multiparty Multimedia Session Control
MOS Mean Opinion Score
MTA Mail Transfer Agents
MTU Maximum Transfer unit
NAT Network Address Translation
NGN Next Generation Network
OSI Open Systems Interconnection

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) xiv
OSPF Open Short Path File
PABX Private Automatic Branch eXchange
PBX Private Branch eXchange
PC Personal Computer
POP3 Post Office Protocol version 3
QoS Quality of Service
RFC Request For Comment
RIP Routing Internet Protocol
RIPng Routing Internet Protocol new generation
RS Redirect Server
RTCP Real Time Control Protocol
RTP Real Time Protocol
RTSP Real Time Secure Protocol
SDP Session Description Protocol
SIP Session Initiation Protocol
SMTP Simple Mail Transfert Protocol
TCP/IP Transmission Control Protocol / Internet Protocol
TELNET TELecommunication NETwork
ToIP Telephony over Internet Protocol
UA User Agent
UAC User Agent Client
UAS User Agent Server
UDP User Datagram Protocol
URL Uniform Resource Locator
VLSM Variable length Subnet Mask
VoIP Voice over Internet Protocol
VPN Virtual Private Network

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) xv
INTRODUCTION GENERALE

INTRODUCTION GENERALE

L'Internet est bâti sur un modèle de réseau des réseaux. Son nom
vient d'ailleurs de l'anglais Inter Networking. Les équipements terminaux
sont des objets capables d’effectuer des traitements évolués.
Le processus de développement enclenché dans notre pays depuis
peu ne pourrait aboutir sans l’innovation dans les domaines des
technologies de l’information. Nous pouvons noter l’explosion des
services tels que le e-Business, le e-Commerce, le e-Learning, le e-Gouv,
la VoIP, tous exigeant des contraintes telles que la sécurité, la mobilité et
la qualité de service.
Le protocole IPv4 constitue jusqu’à nos jours le protocole de base
de l’Internet. Il permet d'utiliser un peu plus de quatre milliards d'adresses.
Depuis peu, on assiste à un épuisement du nombre d’adresses IPv4.
C'est principalement en raison de cette pénurie, mais également pour
résoudre quelques-uns des problèmes révélés par l'utilisation à vaste
échelle d'IPv4 tel que l’explosion des tables de routage, la QoS et la
sécurité, que l’IETF a mis en œuvre dès les années 1995 un nouveau
protocole IP baptisé IPv6. Ce protocole prend en compte un nombre quasi
inépuisable d’adresses IP, la sécurité des données, la mobilité des
utilisateurs et la qualité de service.
La voix sur IP constitue actuellement l’une des applications IP les
plus importantes. Elle correspond à l’ensemble des technologies
permettant la transmission d’une conversation vocale sur un réseau
utilisant le protocole IP. La VoIP étant un service réseau temps réel, elle
possède plusieurs exigences au nombre desquelles nous avons la bande
passante, la QoS, la sécurité, la mobilité. Elle a été jusque là implémentée
sur des réseaux IPv4, qui par leurs diverses insuffisances n’arrivent pas à
venir à bout de ces exigences. Tout ceci est corrigé au niveau d’IPv6 qui

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 1
INTRODUCTION GENERALE

prend en compte le problème de la bande passante par son entête


beaucoup plus allégé, la sécurité par IPSEC et la mobilité.
Le Ministère de l’Economie et des Finances dispose d’un réseau
Intranet basé sur IPv4 et offrant divers services réseau tels que le DNS, la
messagerie, le web et le transfert de fichier. Compte tenu du rôle majeur
qu’il occupe dans notre pays, le passage à l’IPv6 de son réseau sera une
innovation et lui permettra de profiter des nombreux avantages qu’il offre.
Ainsi, la migration complète de cet Intranet vers IPv6 se fera
progressivement et doit faire l’objet d’une étude préalable.
Nous avons choisi de prendre comme thème de notre projet :
ETUDE ET MISE EN ŒUVRE DES SERVICES RESEAU DE BASE ET
DE VOIX SUR IP DANS UN RESEAU IPv6. (Cas du Ministère de
l’Economie et des Finances)
A travers ce thème, nous comptons étudier et maîtriser la plupart
des contours du système d’adressage IPv6 notamment la structure des
adresses IP, les différentes catégories d’adresses et leurs utilités, le
routage IPv6. Nous nous baserons ensuite sur l’architecture actuelle de
l’Intranet du ministère pour proposer une architecture future du réseau en
IPv6 puis, à travers un prototype, mettre en œuvre les services réseau
tels que le DNS, le service web, la messagerie. Enfin, on passera au
déploiement d’une solution de téléphonie sur IPv6 à l’aide d’OpenSER.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 2
PREMIERE PARTIE

PREMIERE PARTIE

ASPECTS THEORIQUES

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 3
Chapitre 1 : Les modèles réseaux

CHAPITRE 1

LES MODELES RESEAUX

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 4
Chapitre 1 : Les modèles réseaux

Chapitre 1: Les modèles réseaux

Introduction

Le principal intérêt du protocole IP est son adoption quasi


universelle. C’est au milieu des années 70 que l’agence américaine
DARPA (Defense Advanced Research Projects Agency) développe un
concept de réseaux interconnectés, appelés par la suite Internet. C’est le
réseau Internet qui a introduit le protocole IP. Ce protocole a été ensuite
repris pour réaliser des réseaux privés, tels les réseaux Intranet et
extranet ou les réseaux mis en place pour la domotique. Ces réseaux IP
présentent de nombreuses propriétés communes.
Ce chapitre porte sur les différents modèles proposés, les propriétés
des réseaux IP en décrivant leur fonctionnement et en détaillant les
principaux protocoles mis en œuvre.

I. Le modèle OSI (Open Systems Interconnection)

Au début des années 70, chaque constructeur a développé sa


propre solution réseau autour d’architectures et de protocoles privés. Il a
été donc remarqué qu’il serait impossible d’interconnecter ces différents
réseaux. Pour remédier à cela il fallait mettre en œuvre une norme. Cette
norme établie par l’International Standard Organization (ISO) est la
norme Open System Interconnection (OSI, interconnexion de systèmes
ouverts).
Le premier objectif de la norme OSI a été de définir un modèle basé
sur un découpage en sept couches, chacune de ces couches
correspondant à une fonctionnalité particulière du réseau.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 5
Chapitre 1 : Les modèles réseaux

Nous avons : la couche physique, la couche liaison de données, la


couche réseau, la couche transport, la couche session, la couche
présentation et la couche Application. [1]

Numéro Nom de la couche


1 Physique
2 Liaison de données
3 Réseau
4 Transport
5 Session
6 Présentation
7 Application

Tableau 1.1 : Les couches du modèle OSI

Usuellement, on distingue les couches hautes (de la couche


Transport jusqu'à la couche Application) qui ont une fonction de traitement
des données indépendante de la technique de connexion entre 2
systèmes, et les couches basses (de la couche Physique jusqu'à la
couche Réseau) qui ont une fonction de transmission de l'information liée
à la technologie de communication.

A. La couche physique

La couche physique s'occupe de la transmission des bits de façon


brute sur un canal de communication. Elle est chargée de normaliser les
caractéristiques électriques, les caractéristiques mécaniques, les
caractéristiques fonctionnelles des circuits de données et les procédures
d'établissement, de maintien et de libération du circuit de données.
L'unité d'information typique de cette couche est le bit.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 6
Chapitre 1 : Les modèles réseaux

B. La couche liaison de données

Cette couche définit les moyens fonctionnels et procéduraux


nécessaires à l’activation et à l’établissement ainsi qu’au maintien et à la
libération des connexions de liaisons de données entre les entités du
réseau. L'unité d'information est la trame.

C. La couche réseau

Cette couche assure toutes les fonctionnalités de services entre les


entités du réseau, c’est à dire : l’adressage, le routage, le contrôle de flux,
la détection et la correction d’erreurs non résolues par la couche liaison
pour préparer le travail de la couche transport. L'unité d'information de la
couche réseau est le paquet.

D. Couche transport

La couche transport gère les communications de bout en bout


entre processus. Sa fonction de base est de traiter les données de la
couche session et de les découper au besoin en petites unités. Ces
petites unités sont ensuite transmises à la couche réseau tout en
s'assurant qu'elles sont parvenues à destination. L'unité d'information de
la couche réseau est le segment.

E. La couche session

Cette couche organise et synchronise les échanges entre tâches


distantes. Elle fournit aux entités de la couche présentation les moyens
d’organiser et de synchroniser les dialogues et les échanges de données.
Il s’agit de la gestion d’accès, de sécurité et d’identification des services.
Enfin elle permet d'insérer des points de reprise dans le flot de données

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 7
Chapitre 1 : Les modèles réseaux

de manière à pouvoir reprendre le dialogue après une panne. L’unité


d’information de cette couche est appelée SPDU (Session Protocol Data
Unit).

F. La couche présentation

Cette couche s'intéresse à la syntaxe et à la sémantique des


données transmises. C'est elle qui traite l'information de manière à la
rendre compatible entre tâches communicantes. Typiquement, cette
couche peut convertir les données, les reformater, les crypter et les
compresser. L’unité d’information de cette couche est appelée PPDU
(Presentation Protocol Data Unit).

G. La couche application

Cette couche est le point de contact entre l'utilisateur et le réseau.


C'est donc elle qui va apporter à l'utilisateur les services de base offerts
par le réseau, comme par exemple le transfert de fichier, la messagerie
etc. L’unité d’information de cette couche est appelée APDU (Application
Protocol Data Unit).

II. Le modèle TCP/IP


A. Description du modèle

Le modèle Internet ou encore modèle TCP/IP a été créé afin de


répondre à un problème pratique, alors que le modèle OSI permettait une
approche plus théorique, et a été développé plus tôt dans l'histoire
des réseaux. Le modèle OSI est plus facile à comprendre, mais le modèle
TCP/IP est le plus utilisé en pratique. Les notions théoriques acquises sur
le modèle OSI permettent de mieux comprendre le fonctionnement du
modèle TCP/IP. Tout comme le modèle OSI, le modèle TCP/IP repose sur

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 8
Chapitre 1 : Les modèles réseaux

une architecture en couches. Nous avons la couche Accès réseau, la


couche Internet, la couche Transport et la couche Application.

Numéro Nom de la couche


1 Accès réseau
2 Internet
3 Transport
4 Application

Tableau 1.2 : Les couches du modèleTCP/IP

 La couche application : Elle permet aux applications d’interagir


avec les protocoles de la couche Transport pour envoyer ou
recevoir des données.
 La couche transport : Elle est chargée de fournir un moyen de
communication de bout en bout entre 2 programmes. Elle agit en
mode connecté et en mode non connecté.
 La couche Internet : Elle encapsule les paquets reçus de la
couche Transport dans des datagrammes IP. Elle fonctionne en
mode non connecté et non fiable.
 La couche Accès Réseau : assure la transmission d'un
datagramme venant de la couche IP en l'encapsulant dans une
trame physique et en transmettant cette dernière sur un réseau
physique.

B. Comparaison des modèles TCP/IP et OSI

Les modèles OSI et TCP/IP sont tous les deux fondés sur le
concept de pile de protocoles indépendants. De plus, les fonctionnalités
des couches sont globalement les mêmes. Chaque couche du modèle
TCP/IP regroupe les fonctions de plusieurs couches du modèle OSI
comme l’illustre la figure suivante :

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 9
Chapitre 1 : Les modèles réseaux

Figure 1.1 : Comparaison TCP/IP – OSI

La différence entre ces deux normes est liée au mode de connexion.


Les modes orienté connexion et sans connexion sont disponibles dans les
deux modèles mais pas au niveau de la même couche. Pour le modèle
OSI, ils ne sont disponibles qu'au niveau de la couche réseau, alors qu'ils
ne sont disponibles qu'au niveau de la couche transport pour le modèle
TCP/IP. Le modèle TCP/IP a donc cet avantage par rapport au modèle
OSI car les applications qui utilisent directement la couche transport ont
véritablement le choix entre les deux modes de connexion.

C. Les protocoles de la couche application

Les protocoles d'application sont des protocoles de haut niveau,


adaptés aux besoins d'applications spécifiques. Ils s'appuient sur les
protocoles de la couche transport pour permettre le transfert
d'informations entre une application serveur et ses applications clientes.
On distingue :
 Le protocole HTTP (Hyper Text Transfert Protocol) : Il est utilisé
pour la navigation web entre un serveur HTTP et un utilisateur. Il
permet aux clients tels qu’Internet Explorer ou Firefox d’envoyer des
requêtes et de recevoir les réponses des serveurs HTTP sans
problèmes particuliers.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 10
Chapitre 1 : Les modèles réseaux

 Le protocole FTP (File Transfert Protocol) : Il permet d'assurer le


transfert de fichiers de façon indépendante des spécificités des
systèmes d’exploitation. Ainsi, un client FTP sous Windows peut
télécharger un fichier depuis un serveur UNIX.
 Le protocole SMTP (Simple Mail Transfert Protocol) : Ce
protocole permet d'acheminer le courrier depuis le serveur SMTP de
l'émetteur, jusqu'au serveur SMTP du destinataire, qui le classe
dans les boîtes aux lettres de ses clients.
 Le protocole POP3 (Post Office Protocol version 3) : Ce
protocole permet au client de relever à distance le courrier classé
dans sa boîte aux lettres.
 Le protocole TELNET : Un client TELNET est une console en
mode texte, capable de se connecter sur la plupart des serveurs,
comme POP3 ou SMTP. Il devient alors possible d'envoyer et de lire
des messages, si l'on connaît les commandes inhérentes aux
protocoles SMTP et POP3. Par contre, un serveur TELNET est un
outil qui permet l'administration à distance d'une machine.

D. Les protocoles de la couche transport

Il s’agit des protocoles UDP et TCP :


 Le Protocole UDP (User Datagram Protocol) : Il est situé au
niveau de la couche 4 (couche transport) du modèle OSI. Il n'ouvre
pas de session et n'effectue pas de contrôle d’erreur. Il est peu
fiable mais permet aux applications d'accéder directement à un
service de transmission rapide de Datagrammes. UDP est utilisé
pour transmettre de faibles quantités de données où le coût de la
création de connexions et du maintien de transmissions fiables
s'avère supérieur aux données à émettre. UDP peut également être

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 11
Chapitre 1 : Les modèles réseaux

utilisé pour les applications satisfaisant à un modèle de type


"interrogation-réponse". La réponse étant utilisée comme un accusé
de réception à l'interrogation. UDP est aussi utilisé pour les
applications de transferts de voix telles que la VoIP. L'envoi en
temps réel est primordial, donc si une trame n'arrivait pas, la
retransmission serait inutile. Chaque machine contient un ensemble
de points de destination abstraits appelés protocole ports, identifiés
par un entier positif codé sur deux octets. Une application qui
souhaite communiquer sur le réseau avec une autre application doit
se raccorder à un port.
Une application est donc identifiée sur le réseau par :
 L’adresse IP de la station sur laquelle elle se trouve.
 Le protocole TCP ou UDP.
 Le numéro du port auquel elle s’est raccordée.
Nous avons ci-dessous la structure de l’entête UDP basé sur 8 octets.

Entête UDP sur 8 octets

Port source Longueur

Port destinataire Checksum

Figure 1.2 : Entête UDP sur 8 octets

 Le protocole TCP (Transfert Control Protocol) : Il est situé au


niveau de la couche 4 du modèle OSI. Il ouvre une session et
effectue lui même le contrôle d’erreur. Il fonctionne en mode
connecté. Pour cela, il fournit un service fiable, avec contrôle de
flux, ordonné et en mode full duplex.TCP tout comme UDP utilise la

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 12
Chapitre 1 : Les modèles réseaux

notion de port excepté que TCP utilise la connexion comme


abstraction de port. Une connexion est identifiée par une adresse IP
de destination et un port de destination. La figure suivante présente
la structure de l’entête TCP basé sur 20 octets.

Port source Offset-4bits


Séquence Checksum
Rsrvé – 6
bits m
Port destinataire Numéro d’ACK URG – 1 bit Fenêtre Pointeur
ACK – 1bit
PSH – 1 bit
RST - 1 bit
SYN – 1 bit
FIN – 1 bit

Figure 1.3 : Entête TCP sur 20 octets

III. Le système d’adressage IPv4

Le rôle fondamental de la couche réseau (niveau 3 du modèle OSI)


est de déterminer la route que doivent emprunter les paquets. Cette
fonction de recherche de chemin nécessite une identification de tous les
hôtes connectés au réseau. Dans un réseau, un hôte est identifié par une
adresse unique. Le modèle TCP/IP utilise un système particulier
d'adressage appelé adressage IP. Actuellement ce système d’adressage
existe en deux versions dont la plus ancienne et plus utilisée sera étudiée
dans cette section.

A. Le format d’adresse IPv4

Les adresses IPv4 sont composées de 4 octets. Par convention, on


note ces adresses sous forme de 4 nombres décimaux de 0 à 255
séparés par des points «.». L'originalité de ce format d'adressage réside

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 13
Chapitre 1 : Les modèles réseaux

dans l'association de l'identification du réseau avec l'identification de


l'hôte.
 La partie réseau est commune à l'ensemble des hôtes d'un
même réseau.
 La partie hôte est unique à l'intérieur d'un même réseau.

On distingue deux types d'adresses IP : les adresses IP privés et les


adresses IP publiques.
 Les adresses privées : Ce sont des adresses pouvant être
attribuées librement au sein d’un réseau local mais qui ne
peuvent être routées sur Internet.
 Les adresses publiques : Ce sont des adresses délivrées
par une structure mondiale (ICAAN) qui en assure l'unicité.
Ceci est capital pour assurer l'efficience du routage.

B. Les différentes classes d’adresses IPv4

Dans le but d'optimiser le routage des paquets entre les différents


réseaux, plusieurs groupes d’adresses ont été définis. Ces groupes ont
été baptisés classes d'adresses IP. Ces classes correspondent à des
regroupements en réseaux de même taille. Les réseaux de la même
classe ont le même nombre d'hôtes maximum. Pour la version 4 de
l’adressage IP on distingue cinq (5) classes d’adresses : La classe A, la
classe B, la classe C, la classe D et la classe E.

Classe A
Le premier octet a une valeur comprise entre 1 et 126, soit un bit de
poids fort égal à 0. Ce premier octet désigne le numéro de réseau et les 3
autres correspondent à l'adresse de l'hôte.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 14
Chapitre 1 : Les modèles réseaux

L'adresse réseau 127.0.0.0 est réservée pour les communications


en boucle locale.

Classe A
Partie réseau Partie hôte

0... ....

Octet 1 Octet 2 Octet3 Octet 4

Classe B
Le premier octet a une valeur comprise entre 128 et 191, soit 2 bits
de poids fort égaux à 10. Les 2 premiers octets désignent le numéro de
réseau et les 2 autres correspondent à l'adresse de l'hôte.

Classe B
Partie réseau Partie hôte

10.. ....

Octet 1 Octet 2 Octet3 Octet 4

Classe C
Le premier octet a une valeur comprise entre 192 et 223, soit 3 bits
de poids fort égaux à 110. Les 3 premiers octets désignent le numéro de
réseau et le dernier correspond à l'adresse de l'hôte.

Classe C
Partie réseau Partie hôte

110. ....

Octet 1 Octet 2 Octet3 Octet 4

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 15
Chapitre 1 : Les modèles réseaux

Classe D
Le premier octet a une valeur comprise entre 224 et 239, soit 3 bits
de poids fort égaux à 111. Il s'agit d'une zone d'adresses dédiées aux
services de multidiffusion vers des groupes d'hôtes.

Classe D
Adresse Multidiffusion

111. ....

Octet 1 Octet 2 Octet3 Octet 4

Classe E
Le premier octet a une valeur comprise entre 240 et 255, soit 4 bits
de poids fort égaux à 1111. Ce sont des adresses réservées.

Classe E
Adresses réservées

1111 ....

Octet 1 Octet 2 Octet 3 Octet 4

C. Le routage dans les réseaux IPv4


Octet 2 Octet3 Octet 4

Dans les réseaux de type TCP/IP tel que Internet, le routage


constitue l’un des processus les plus importants puisqu’il se charge de
transférer les données entre différents réseaux. Au cœur du routage se
trouve les routeurs qui sont des éléments actifs du réseau.
Les routeurs sont des équipements permettant de déterminer le meilleur
chemin que les datagrammes vont emprunter pour arriver à destination. Il
s'agit de machines ayant plusieurs cartes réseaux dont chacune est reliée

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 16
Chapitre 1 : Les modèles réseaux

à un réseau différent. Il existe deux types de routage : Nous avons le


routage statique et le routage dynamique.
 Le routage statique
Dans ce type de routage, l’administrateur se charge lui-même
d’indiquer les différentes routes pour transférer les paquets d’un réseau à
un autre. Il est souvent utilisé dans les architectures où le nombre de
routeurs à relier est moins important.
 Le routage dynamique
Il se fait essentiellement grâce au protocole de routage et est utilisé
dans des architectures complexes.
Les protocoles de routage déterminent le meilleur chemin vers
chaque sous-réseau du réseau, lequel est ensuite ajouté à la table de
routage. Ils permettent aux routeurs de partager de manière dynamique
des informations sur les réseaux distants et d’ajouter automatiquement
ces informations à leurs propres tables de routage.
On distingue deux grands types de protocoles de routage :
 Les protocoles de routage interne : Ils assurent le routage des
informations à l'intérieur d'un domaine de routage. Il s’agit de: RIP,
IGRP, EIGRP OSPF, IS-IS.
 Les protocoles de routage externe : Ils sont implémentés sur des
routeurs assurant une interconnexion de plusieurs domaines de
routage. Le protocole BGP (Border Gateway Routing) est
aujourd’hui utilisé comme protocole de routage externe pour
interconnecter les différents FAI.

D. Structure d’un datagramme IPv4

Au niveau IP, les données des utilisateurs ou des applications sont


encapsulées à l'intérieur d'unités de transfert appelées datagrammes IP. Le

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 17
Chapitre 1 : Les modèles réseaux

protocole IP fournit un service d'acheminement des datagrammes IP sans


connexion et non fiable. Un datagramme se compose d'un entête et de
données. Avant transmission sur un réseau physique, le datagramme IP
est encapsulé dans une trame. La figure suivante représente la structure
de l’entête d’un datagramme IPv4 sur 32 octets.

4bits 4bits 8bits 3bits 13 bits


version Longueur Type de service Longueur totale
d'IP de l'en-
tête
Identification Flags Fragment offset

Durée de vie Protocole Somme de contrôle de l'en-tête

Adresse source

Adresse destination

Option(s) + bourrage

Figure 1.4 : Entête d’un datagramme IPv4

E. Insuffisances et limites de l’adressage IPv4

L'Internet Protocol version 4 est la première version du protocole IP


à avoir été largement déployée, et constitue encore la base de l'Internet.
Elle est décrite dans la RFC 791 de septembre 1981. IPv4 utilise
une adresse IP sur 32 bits, soit 4 294 967 296 (232) adresses possibles.
Depuis quelques années avec l’explosion de l’internet, le nombre
d’utilisateurs ne cessant de s’accroitre exponentiellement, il est évident
que l’adressage IPv4 a atteint sa limite quant aux nombres d’adresses
valables. Cependant, les concepteurs de normes ayant anticipé ce
problème ont mis en place des techniques afin de freiner ce déficit. Parmi
ces techniques nous avons :

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 18
Chapitre 1 : Les modèles réseaux

 Le NAT (Network address Translation): C’est un mécanisme qui


permet de faire correspondre une ou plusieurs adresses externes
publiques visibles sur Internet à toutes les adresses privés
d'un réseau local. Par exemple si nous disposons d’un réseau
composé de 2000 postes clients il suffirait juste d’utiliser un routeur
implémentant un NAT avec une centaine d’adresses IP publiques
pour pouvoir relier notre réseau à Internet. Le NAT permet donc de
diminuer significativement le nombre d'adresses IP publiques utilisé.

 CIDR (Classless Inter-Domain Routing) et VLSM (Variable length


Subnet Mask) : L’une des causes de la pénurie d’adresses IPv4 fut
le gaspillage observé au début de l’Internet. En effet on octroyait
une adresse de classe B soit 65536 adresses a une entreprise
ayant besoin de plus de 256 adresses. En réponse à cela, le
groupe de travail IETF a mis au point le routage inter domaine sans
classe (CIDR), qui utilise la technique du masque de sous-réseau
de longueur variable (VLSM) afin d’optimiser l’espace d’adressage.
Ainsi, les fournisseurs de services Internet peuvent désormais
attribuer un sous-réseau à un client et un sous-réseau différent à un
autre client. La technique VLSM découpe habituellement un réseau
(ou sous-réseau) en d’autres sous-réseaux. Les sous-réseaux
peuvent être eux-mêmes découpés en sous-réseaux plus petits. Ce
qui permet d’optimiser le nombre d’adresses IP pour un sous réseau
donné.
Ces différentes méthodes ont vite présenté leurs insuffisances
surtout dans la mise en œuvre des nouveaux services basés sur IP
exigeant des contraintes telles que la QoS, la sécurité et la mobilité et
l’avènement des Réseaux de Nouvelle Génération (NGN). Par exemple
avec l’utilisation du NAT, on n’arrive pas à identifier un utilisateur par une
adresse IP unique puisqu’il permet à plusieurs utilisateurs d’utiliser une

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 19
Chapitre 1 : Les modèles réseaux

même adresse IP publique pour accéder à internet. Ceci pose alors des
problèmes de sécurité et empêche de lutter efficacement contre les
pratiques telles que la cybercriminalité. De plus on se rend compte qu'un
protocole de sécurisation des datagrammes comme IPSec est
incompatible avec le NAT.
Tout ceci a poussé l’IETF à mettre en place un groupe de réflexion
sur la mise en œuvre d’un système d’adressage qui pallierait aux
insuffisances et limites du système d’adressage IPv4.

Conclusion

Depuis plusieurs décennies, les réseaux IP contribuent énormément


à un essor remarquable dans tous les domaines d’activités. Cependant,
les différents standards et protocoles mise en œuvre depuis ont atteint
leur limite et doivent être changés.
C’est le cas par exemple d’IPv4 qui pendant près de 30 ans a été la
base même des réseaux IP. Ses différentes faiblesses observées suite à
son utilisation à grande échelle posent d’énormes problèmes au
développement d’Internet. L’avènement d’un nouveau protocole est alors
vu comme l’unique solution.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 20
Chapitre 2 : Le nouveau système d’adressage IPv6

Chapitre 2

Le système d’adressage IPv6

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 21
Chapitre 2 : Le nouveau système d’adressage IPv6

Chapitre 2 : Le système d’adressage IPv6

Introduction

Le Protocole IPv6 aussi appelé IPng est le successeur d’IPv4. Il a


été conçu pour l’améliorer, lui apporter les modifications nécessaires et
prendre en compte les besoins des utilisateurs. C’est ainsi que de 1992 à
1994, une combinaison des propositions reçues, a abouti à l’adoption du
protocole SIPP (Simple Internet Protocole Plus) devenu par la suite IPv6.
Ce protocole permet principalement de disposer d’un plus grand
nombre d'adresses pour chaque élément du réseau. Il offre également
une plus grande facilité de configuration et améliore les mécanismes de
gestion de la mobilité IP. Il intègre nativement la sécurité, les classes de
service et la diffusion Multicast. Nous présenterons dans cette section les
spécificités du nouveau système d’adressage et les diverses
améliorations observées par rapport au système d’adressage IPv4.

I. Structure des adresses IPv6

L’adressage IPv6 propose des adresses d’une longueur de 128


bits. La représentation textuelle d'une adresse IPv6 se fait en découpant
le mot de 128 bits de l'adresse en 8 mots de 16 bits séparés par le
caractère «:», chacun d'eux étant écrit en hexadécimal.
Nous avons par exemple :
FEDC:0000:0000:0000:0400:A987:6543:210F
Dans un champ, il n'est pas nécessaire d'écrire les zéros placés en tête :
FEDC:0:0:0:400:A987:6543:210F
En outre plusieurs champs nuls consécutifs peuvent être abrégés par «::».
Ainsi l'adresse précédente peut s'écrire comme suit :
FEDC::400:A987:6543:210F

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 22
Chapitre 2 : Le nouveau système d’adressage IPv6

Pour éviter toute ambiguïté, l'abréviation «::» ne peut apparaître


qu'une seule fois au plus dans une adresse.
La représentation des préfixes IPv6 est similaire à celle utilisée
pour les préfixes IPv4. Un préfixe IPv6 est donc représenté par la
notation :
adresse-IPv6 / longueur-du-préfixe-en-bits
Nous avons par exemple les représentations suivantes :
3EDC :B198 :7654 : 3210 :0000 :0000 :0000 :0000 / 64 ou encore
3EDC :B198 :7654 : 3210 :0 :0 :0 :0 /64
Le caractère « : » utilisé pour séparer les mots peut créer des
ambiguïtés. Pour cela le RFC 2732 propose d’inclure l’adresse IPv6 entre
« [ ] ».
Toutes ces représentations des adresses IPv6 peuvent apparaître
beaucoup plus complexes qu'avec IPv4, mais leur attribution répond à
des règles strictes, ce qui favorise leur mémorisation. De plus, les
fonctions d'auto-configuration font qu'il est très rare, même pour un
ingénieur réseau, de les manipuler.

II. Les différents types d’adresses IPv6

Contrairement à l’adressage IPv4 qui utilise des adresses par


classe, IPv6 dispose de 3 grands groupes d’adresses ayant chacun des
spécificités bien définies. Nous avons les adresses Unicast, les adresses
Multicast et les adresses Anycast.

A. Les adresses Unicast

Les adresses Unicast sont les plus simples. Une adresse de ce type
désigne une interface unique. Un paquet envoyé à une telle adresse, sera
donc remis à l'interface ainsi identifiée.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 23
Chapitre 2 : Le nouveau système d’adressage IPv6

Il existe différents types d’adresses Unicast classés selon leur


portée. [7]

1. Les adresses globales Unicast

Ce sont des adresses Unicast ayant une portée globale. Elles


permettent de désigner sans ambigüité une machine sur le réseau
Internet. Elles représentent les 1/8e de l’espace d’adressage d’IPv6. Elles
sont caractérisées par le préfixe 2000::/3.
Les adresses Unicast globales sont ouvertes à la réservation
depuis 1999. Ces adresses sont allouées par bloc /23 à /12 par l'IANA à
un registre Internet régional. Certains blocs sont réservés à un usage
particulier c’est le cas par exemple du bloc 2002::/16 utilisé pour mettre
en œuvre les tunnels broker 6to4.
La figure ci-dessous illustre la structure d’une adresse globale
Unicast telles que définie dans le RFC 3587.

001 Global Prefix SID Interface ID


3 bits 45 bits 16 bits 64 bits

Préfixe allouée par le Identifiant de sous Identifiant


Fournisseur d’accès réseaux. d’interface

Figure 2.1 : Structure d’une adresse globale Unicast

2. Les adresses locales uniques

Elles sont utilisées pour les communications locales et ne sont


routables que sur les sites qui le souhaitent.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 24
Chapitre 2 : Le nouveau système d’adressage IPv6

1111 1110 11 0 ID Subnet ID Interface


10bits 38bits 16bits 64bits

Figure 2.2 : Structure d’une adresse locale unique

Les 48 premiers bits sont toujours fixes pour ce type d’adresse et


commencent par FEC0 ::/48
Subnet ID (16 bits) représente l’identifiant d'un sous réseau à l'intérieur
du site.
Interface ID (64 bits) représente l'identifiant d'interface.

3. Les adresses locales de lien

Les adresses de type lien-local (link local use address) sont des
adresses dont la validité est restreinte à un lien, c'est-à-dire l'ensemble
des interfaces directement connectées sans routeur intermédiaire comme
par exemple des machines branchées sur un même réseau Ethernet. Les
adresses lien-local sont configurées automatiquement à l'initialisation de
l'interface et permettent la communication entre nœuds voisins. L'adresse
est obtenue en concaténant le préfixe FE80::/64 aux 64 bits de l'identifiant
d'interface. L'identifiant d'interface est généralement basé sur l'adresse
MAC. Contrairement aux adresses globales, les adresses lien-local ne
sortent jamais du réseau local où elles sont utilisées. Elles sont
caractérisées par le préfixe fe80::/64 .
La figure ci-dessous donne la structure d’une adresse locale de lien.

FE80 0…0 Interface ID


10 bits 54 bits 64 bits

Figure 2.3 : Structure d’une adresse locale de lien

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 25
Chapitre 2 : Le nouveau système d’adressage IPv6

Les adresses locales de lien et locales de site ne sont pas routables


sur Internet. Au niveau des adresses Unicast, le champ Interface ID peut
être configuré automatiquement à partir de l’adresse MAC du poste.
Cependant, il est souhaitable d’imposer manuellement une valeur à ce
champ au niveau des routeurs et des serveurs. Cet identifiant, lorsqu’il est
attribué automatiquement, porte le nom de EUI-64 (Extended Unique
Identifier sur 64 bits). Le principe d’obtention de l’EUI est très simple.
Supposons une interface ayant pour adresse physique aa:bb:cc:dd:ee:ff.
Elle aura pour identifiant EUI-64 le suffixe 02bb:ccff:fedd:eeff.
Ainsi, toute interface ayant pour adresse MAC aa:bb:cc:dd:ee:ff
aura par exemple pour adresse IPv6 Link Local: fe80::02bb:ccff:fedd:eeff
De la même façon que l’adresse MAC est unique, l'EUI-64 est unique.

B. Les adresses Multicast

Une adresse de type Multicast désigne un groupe d'interfaces qui en


général appartiennent à des nœuds différents pouvant être situés
n'importe où dans l'Internet. Lorsqu'un paquet a pour destination une
adresse de type Multicast, il est acheminé par le réseau à toutes les
interfaces membres de ce groupe. Il faut noter qu'il n'y a plus d'adresses
de type Broadcast comme sous IPv4, elles sont remplacées par des
adresses de type Multicast qui saturent moins un réseau local constitué
de commutateurs.
Les adresses Multicast sont caractérisées par le préfixe ff00::/8

1111 1111 000T Scope ID Group

Figure 2.4 : Structure d’une adresse Multicast

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 26
Chapitre 2 : Le nouveau système d’adressage IPv6

Cette adresse peut être permanente (T=0) ou temporaire(T=1), le bit


T marque cette différence. L’étendue de la diffusion est définie par le
champ scope de l’adresse. Par exemple pour une vidéoconférence, sa
diffusion peut être confinée au lien local, au site ou au-delà selon la valeur
du champ scope.

C. Les adresses Anycast

Une adresse de type Anycast désigne un groupe d'interfaces, la


différence avec l’adresse Multicast réside dans le fait que lorsqu'un
paquet a pour destination une telle adresse, il est acheminé à un des
éléments du groupe et non pas à tous. Nous avons ci-dessous la
structure d’une adresse Anycast.

Subnet Prefix ID Group


n bits 128 Ŕ n bits

Figure 2.5 : Structure d’une adresse Anycast

III. Format d’un datagramme IPv6

L'en-tête du paquet IPv6 est de taille fixe à 40 octets [4], tandis


qu'en IPv4 la taille minimale est de 20 octets, des options pouvant la
porter jusqu'à 60 octets, ces options demeurant rares en pratique. La
figure ci-dessous montre l’entête d’un datagramme IPv6. Certains champs
d'IPv4 ont été supprimés, ceci afin de réduire le coût de traitement des
paquets et de bande passante des entêtes IPv6.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 27
Chapitre 2 : Le nouveau système d’adressage IPv6

Version Classe Label


Longueur Entête suivant Saut maximum

Adresse de la source

Adresse de destination

Figure 2.6 : Format d’un datagramme IPv6

Version : Le champ est codé sur 4 bits. Il représente le numéro de


version du Protocole Internet. Sa valeur est donc égale à 6.

Classe (Traffic Class) : Il est codé sur 8 bits. Il définit la priorité du


datagramme afin que des nœuds origines et des routeurs transmetteurs
puissent identifier et distinguer la classe ou la priorité du paquet IPv6.

Label (Flow Label) : Ce champ est codé sur 20 bits. Il peut être utilisé par
une source pour nommer des séquences de paquets pour lesquels un
traitement spécial de la part des routeurs IPv6 est demandé.

Longueur (Payload Length) : Il est codé sur 16 bits. Il indique le nombre


d'octet des données qui suivent l’entête IPv6. Il faut noter que les options
de l'entête IPv6 sont considérés comme de la donnée et font donc partie
du calcul du champ Longueur.

Entête suivante (Next Header) : Il est codé sur 8 bits. Il identifie le type
de donnée ou de l'option qui se trouve derrière l'entête IPv6.

Saut maximum (Hop Limit) : Il est codé sur 8 bits. Il indique le nombre
de routeur maximum que le datagramme pourra traverser et est
décrémenté de un (1) par chaque nœud que le paquet traverse.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 28
Chapitre 2 : Le nouveau système d’adressage IPv6

Adresse source (Source Address) : Ce champ est codé sur 128 bits. Il
représente l'adresse IP de l'émetteur.

Adresse destination (Destination Address) : Ce champ est codé sur


128 bits. Il représente l'adresse IP du destinataire.

IV. ICMPv6 et l’auto-configuration

A. ICMPv6 (Internet Control Message Protocol version 6)

ICMPv6 est la version du protocole ICMP, le protocole de contrôle


d’IP, correspondant à IPv6. Définit par le RFC 2463, il intègre en plus des
fonctions de gestion des groupes de Multicast, réalisées jusqu’alors par le
protocole IGMP, les fonctions du protocole ARP et gère les messages de
découverte du voisinage (sollicitation d’un voisin, annonce de routeur, ...).
Chaque message ICMPv6 est précédé par un entête IPv6 au minimum.
L’entête ICMPv6 est identifié par une valeur du champ « Next Header » à
58 dans l’entête du datagramme IPv6. La figure ci-dessous donne le
format d’un message ICMPv6.

Type Code Checksum

Messages

Figure 2.7 : Format d’un message ICMPv6

On distingue plusieurs types de messages ICMPv6 qui se


différencient par la valeur du champ <type> comme le montre le tableau
suivant. [8]

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 29
Chapitre 2 : Le nouveau système d’adressage IPv6

Type Signification
1 Destination Unreachable
2 Packet Too Big
3 Time Exceeded
4 Parameter Problem
128 Echo Request
129 Echo Reply
130 Group Membership Query
131 Group Membership Report
132 Group Membership Reduction
133 Router Solicitation
134 Router Advertisement
135 Neighbor Solicitation
136 Neighbor Advertisement
137 Redirect

Tableau 2.1: Les différents types de messages ICMPv6

B. La découverte de voisinage (Neighbor Discovery Protocol)

Le protocole de découverte des voisins permet à un équipement de


s'intégrer dans l'environnement du réseau local, c'est à dire le lien sur
lequel sont physiquement transmis les paquets IPv6. Il possède plusieurs
fonctionnalités :

 La résolution d'adresses : Le principe est très proche du protocole


ARP d'IPv4. La principale différence vient de l'emploi de messages
standards ICMPv6 à la place de la définition d'un autre protocole.
Comme pour ARP, une table de correspondance entre les adresses
physiques et les adresses IPv6 est construite.
 La détection d'inaccessibilité des voisins : Cette fonction
appelée aussi "NUD" (Neighbor Unreachability Detection) n'existe

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 30
Chapitre 2 : Le nouveau système d’adressage IPv6

pas en IPv4. Elle permet d'effacer dans le cache des voisins les
entrées correspondants aux voisins inaccessibles (panne,
changement d'adresse ...).

C. La configuration automatique

L’auto-configuration est l’un des principaux atouts d’IPv6. Il se fait


en deux modes. Le mode Stateful (auto-configuration avec état) et le
mode Stateless (auto-configuration sans état).

 Le mode Stateful : Il consiste soit en une configuration manuelle de


l’équipement, soit une configuration automatique avec DHCPv6.
 Le mode Stateless : Il est utilisé pour une configuration des nœuds
simples uniquement. Ce mode d’auto-configuration se base sur le
protocole NDP, avec en particulier les sollicitations et annonces de
routeurs qui permettent de véhiculer les informations concernant le
préfixe, la passerelle par défaut…

D. Découverte de MTU (Maximum Transmission Unit)

Avec IPv6 les routeurs ne doivent plus fragmenter les paquets qui
sont transmis. Le MTU minimum doit être de 1280 pour un lien souhaitant
supporter IPv6. Si tel n’est pas le cas, des mécanismes de fragmentation
et de réassemblage doivent être effectués par les couches inférieures à la
couche réseau. La nécessité d’adapter la taille des paquets à transmettre
pour un flot important de données existe quand même. Si elle n’est pas
réalisée par les routeurs, la fragmentation doit donc se faire à la source.
Un algorithme de découverte permet de connaître la taille optimale des
paquets à transmettre, cet algorithme est appelé Path MTU Discovery et
se présente comme suit :

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 31
Chapitre 2 : Le nouveau système d’adressage IPv6

(1) Le nœud source considère que le MTU du chemin considéré est égal
au MTU du premier saut de ce chemin.
(2) Envoi d’un paquet à la destination.
(3) Si réception d’un message ICMPv6 de type « Packet To Big », la
source réduit le MTU courant. Retour à (2).
(4) Si pas de réponse de la destination, retourne à (2).
(5) Si réponse de la destination, le MTU du chemin est le MTU courant.

Sur certains liens, le MTU peut varier au cours de la communication. Afin


de tirer partie d’une augmentation de MTU, la source reprendra
l’algorithme à intervalles réguliers.

V. Le routage dans un réseau IPv6

Le routage est un processus très important dans les réseaux IP.


Avec l’apparition du protocole IPv6, plusieurs changements ont été
observés au niveau du routage au sein des réseaux. Ces changements
sont essentiellement liés à la prise en compte du format de l'adresse IPv6,
ainsi qu'à l'ajout d'une nouvelle table de routage dédiée à IPv6. Nous
passerons en revue tous les types de routage à savoir le routage
statique, le routage interne et le routage externe.

A. Le routage statique

Le routage statique en IPv6 est identique à celui d’IPv4 avec le préfix et


l’adresse du tronçon suivant qui sont en IPv6.

B. Le routage dynamique

Le routage dynamique comme en IPv4 se base essentiellement sur des


algorithmes de routage. En IPv6, ces algorithmes de routage qui

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 32
Chapitre 2 : Le nouveau système d’adressage IPv6

existaient sous IPv4 n’ont pas vraiment changé. Cependant, ils profitent
des propriétés maintenant incluses dans la nouvelle version du protocole
IP comme l'authentification ou le Multicast.
Nous avons alors les protocoles de routage IPv6 suivant : [9]

 RIPng : C’est le premier protocole de routage dynamique proposé


pour IPv6 par le RFC 2080. RIPng est une simple extension à IPv6
du protocole RIPv2 d'IPv4. Il en hérite les mêmes caractéristiques à
savoir le nombre maximum de saut qui est de 15 et les mises à jour
qui sont régulières. Les paquets RIPv2 et RIPng sont identiques,
seule la fonction d'authentification a disparu. Elle est en effet inutile
car RIPng peut s'appuyer sur les mécanismes de sécurité IPSec
disponibles en IPv6. Les paquets RIPng sont émis vers l'adresse
de Multicast all-rip-router FF02::9 et encapsulés dans un paquet
UDP avec le numéro de port 521.
 OSPFv3 : Il est basé sur l'algorithme du plus court chemin et est
plus difficile à mettre en œuvre que RIPng. Il est plus efficace dans
les détections et la suppression des boucles dans les phases
transitoires. OSPF a été adapté à IPv6 par le RFC 2740 et est
passé de la version 2 à la version 3. La plupart des algorithmes
implémentés dans OSPFv2 ont été réutilisés à quelques
changements près afin de prendre en compte la structure des
adresses IPv6. OSPFv3 utilise des adresses lien-local pour
l'échange sur les liens. Le mécanisme de sécurité d’OSPFv2 a été
remplacé par les mécanismes d'authentification et de confidentialité
d'IPsec.
 IS-IS: Il est comme OSPF un protocole interne de routage à états
de liens. La particularité de IS-IS est qu’il n’utilise pas IP comme
protocole réseau pour l'échange de ses messages. Cette

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 33
Chapitre 2 : Le nouveau système d’adressage IPv6

caractéristique lui permet donc d’être totalement indépendant des


protocoles qu’il route.
 BGP : Dans les réseaux IPv6, le protocole BGP joue le même rôle,
il permet le routage des paquets entre Système Autonomes ou
domaine de routage. Ainsi, la version pour IPv4 nommée BGP-4 a
été plus ou moins transformé pour donner un nouveau protocole
appelé MP-BGP.

VI. Les mécanismes de transitions IPv4 vers IPv6

A. La double-pile IP ou Dual Stack

La double pile IP consiste à équiper un équipement du réseau d'une


double pile protocolaire (Dual Stack) et à lui affecter une adresse IPv4 et
une adresse IPv6. Cela peut s'appliquer sur la plupart des systèmes
d'information. Les serveurs doivent alors avoir deux sockets, l'une
correspondant à une écoute via IPv4, et l'autre correspondant à une
écoute via IPv6. Il faut donc garder en mémoire que, dans ce cas là, les
deux protocoles sont installés sur le même système. Ils communiquent
directement entre eux et séparément avec l'extérieur.

B. Transport d’IPv6 dans IPv4

Il n'est pas toujours possible d'avoir une double pile IP ou un réseau


IPv6 de bout-en-bout. Cependant, les trames IPv6 doivent pouvoir être
transmises, même si un réseau intermédiaire ne supporte qu'IPv4.
Plusieurs solutions sont disponibles pour former un tunnel. Les paquets
IPv6 transitent alors encapsulés dans IPv4, ce qui s'appelle autrement un
tunnel IPv4. Nous distinguons les tunnels statiques et les tunnels
automatiques.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 34
Chapitre 2 : Le nouveau système d’adressage IPv6

1- Les tunnels statiques

La solution la moins souple consiste à établir un tunnel par le


protocole GRE (Generic Routine Encapsulation), comme cela se fait déjà
sous IPv4 pour d'autres protocoles. Le tunnel est statique, et il faut alors
effectuer des modifications aux deux extrémités du tunnel. Il n'y a par
ailleurs, tel quel, aucune garantie de sécurité.
Au lieu de configurer manuellement chaque extrémité des tunnels, il
est aussi possible d'automatiser un peu la procédure, tout en maintenant
la structure statique du tunnel. Le principe est très similaire à celui d'un
VPN. Des serveurs, nommés IP Tunnel Brokers [18] servent pour la
transition. Il faut se connecter à l'un d'eux en IPv4 pour obtenir une
adresse et accéder à la configuration du tunnel vers un réseau IPv6. Ce
procédé est bien statique (ou semi-dynamique), dans la mesure où il
nécessite de connaître et de configurer correctement IPv4 au niveau du
Tunnel Broker. Ce dernier se charge du routage et des configurations des
extrémités des tunnels.

Tunnel Broker 3. Le Tunnel Broker envoie la


configuration du tunnel au
client et en informe le routeur
1. Le client envoie une demande
de tunnel au Tunnel Broker

Réseau IPv4
Réseau IPv6

2. Le client établit le tunnel avec Destination B


le routeur puis communique B Pile IPv6

Client A
Pile IPv4

Figure 2.8 : Exemple de tunnel statique sous la tutelle du Tunnel Broker

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 35
Chapitre 2 : Le nouveau système d’adressage IPv6

2- Tunnels automatiques : IPv6 dans IPv4

Dans le cas d'un tunnel automatique, une liaison fixe point à point
est établie entre les machines impliquées. Ce tunnel formé fragmente les
paquets selon IPv4 et met en œuvre les mécanismes de découverte des
voisins. Si une erreur survient au cours de l'acheminement IPv4, un
paquet ICMPv4 est envoyé. Idéalement, le point à la source du tunnel
devrait récupérer ce message, puis le traduire en un paquet ICMPv6
équivalent afin de le retourner vers la source du datagramme IPv6. Le
transport de datagrammes IPv6 dans une trame IPv4 est précisé dans le
RFC 2893. Il existe à l'heure actuelle trois mises en œuvre majeures pour
effectuer l'acheminement d'IPv6 sous IPv4 : 6to4, ISATAP, Teredo.

 6to4

Le mécanisme 6to4 permet d'interconnecter entre eux des sites


IPv6 isolés en créant des tunnels automatiques IPv6 dans IPv4 en
fonction du destinataire des données. Le mécanisme définit plusieurs
composants :
 La machine terminale 6to4
 Le routeur de bordure qui doit encapsuler les paquets IPv6 dans
des paquets IPv4 et qui est connecté à IPv4 et IPv6
 Le relais 6to4 qui est un équipement réseau dont l'adresse est bien
connue. Il assure la connexion à l'internet version 6. La figure qui suit
décrit le fonctionnement de 6to4. [18]

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 36
Chapitre 2 : Le nouveau système d’adressage IPv6

Figure 2.9: Fonctionnement de 6to4

 ISATAP (Intra-Site Automatic Tunnel Addressing Protocol)

ISATAP est en quelque sorte la déclinaison des principes de 6to4 à


un réseau local, de façon à permettre un tunneling automatique et
l'échange de flux IPv6 entre terminaux double pile interconnectés via un
réseau local IPv4 uniquement. ISATAP permet le déploiement de
terminaux dual-stack et d'application IPv6 sur une infrastructure locale
IPv4, comme typiquement celle d'un réseau d'entreprise. ISATAP peut
être déployé de plusieurs façons:
 soit simplement au sein des terminaux concernés afin de leur
permettre d'échanger des flux IPv6 alors qu'ils sont connectés
sur une infrastructure IPv4,
 soit en combinaison avec des routeurs 6to4 de façon à
échanger des flux IPv6 localement et avec des sites distants.
ISATAP permet d'interconnecter des équipements terminaux IPv6
isolés dans un réseau IPv4, en gérant de manière automatique
l'encapsulation des paquets IPv6 dans des paquets IPv4. Contrairement à
6to4, cette technique s'applique à l'intérieur d'un domaine.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 37
Chapitre 2 : Le nouveau système d’adressage IPv6

 TEREDO

Le principale objectif de Teredo comme décrit dans le RFC 4380,


est de fournir automatiquement une connectivité IPv6 à un terminal situé
derrière un NAT et ne disposant donc pas d'une adresse IPv4 globale. Ce
mécanisme de type client/serveur s'appuie sur des serveurs et des relais
de façon à optimiser le chemin parcouru par les paquets IPv6. Cependant,
l'optimisation du chemin parcouru par les paquets IPv6 encapsulés
conduit à une certaine complexité dans les échanges client/serveur relais,
en particulier lors de chaque phase d'initialisation d'une communication.
Teredo est un outil de dernier recours, destiné à être utilisé en l'absence
de connectivité IPv6 native, de tunnel configuré ou de la mise en œuvre
de 6to4. Ce mécanisme concerne exclusivement des terminaux
individuels ne disposant pas d'une adresse IPv4 publiques. Il ne
s'applique pas à des sous-réseaux. La figure qui suit illustre le
fonctionnement de Teredo. [18]

Figure 2.10 : Fonctionnement de Teredo

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 38
Chapitre 2 : Le nouveau système d’adressage IPv6

VII. Etat de l’art du déploiement du protocole IPv6

 En Europe et en Amérique
En Europe et en Amérique, l’IPv6 est actuellement déployé surtout
grâce aux Institutions telles que le RENATER et les différents Task Force
IPv6 qui organisent régulièrement des séances de formations sur la mise
en œuvre du protocole. Ainsi, le RENATER a commencé à expérimenter
IPv6 depuis 1996. Le projet [17]« Mise en place de services IPv6 à l’Unité
réseau du CNSR » a permis de raccorder le réseau du CNSR au réseau
IPv6 du RENATER en y installant les services réseau IPv6. Le document
issu de ce projet nous a aidé dans la réalisation de notre projet.
Plusieurs FAI tels que Nérim, Orange ou Free fournissent déjà en
Europe une connexion IPv6. Les services tels que le web, le ftp, le
streaming sont actuellement proposés dans leurs versions IPv6. C’est le
cas de Google, Youtube, ou Facebook.

 En Asie
IPv6 s’est aujourd’hui imposé dans les pays asiatiques notamment avec
l’utilisation des terminaux mobiles tels que le « Flet’s Phone ». On assiste
alors au déploiement de plusieurs réseaux d’entreprise basés sur IPv6 et
surtout des systèmes de Voix sur IP utilisant IPv6 et profitant ainsi de ses
avantages à savoir, la mobilité, la sécurité et le grand nombre d’adresses.

 En Afrique et au Bénin
Dans les pays d’Afrique tels que le Sénégal, le Maroc, la Tunisie,
des groupes de recherches (Task Force IPv6) se sont mis en place pour
aider au déploiement d’IPv6 notamment par l’acquisition d’un préfixe
d’adresse IPv6 Unicast globale et des programmes de formation orientés
IPv6. Particulièrement dans notre pays le Benin, malgré le forum organisé
par l’ISOC en 2007 sur l’IPv6, le déploiement du protocole tarde à
démarrer. Au niveau du Ministère de l’Economie et des Finances qui

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 39
Chapitre 2 : Le nouveau système d’adressage IPv6

constitue notre cadre d’étude, le présent projet a été initié afin de faire une
étude du protocole et choisir les différents outils nécessaires pour son
futur déploiement au sein de son réseau Intranet.

Conclusion

Au terme de ce chapitre, nous pouvons dire que le protocole IPv6


apporte plusieurs avantages en termes de stabilité, de flexibilité et de
simplicité dans la gestion du réseau. IPv6 constitue aujourd’hui le seul
espoir pour la continuité et l’évolution d’Internet.
Il est lentement mis en œuvre à travers les réseaux et coexistera
pendant longtemps avec IPv4. Alors que les travaux techniques liés au
protocole ont été en grande partie accomplis, il reste le déploiement.
Malheureusement celui-ci ne se fait pas assez rapidement et cela pourrait
s’avérer un obstacle important pour l’aboutissement à un adressage
mondial uniforme.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 40
Chapitre 3 : La voix sur IP

Chapitre 3

La voix sur IP

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 41
Chapitre 3 : La voix sur IP

Chapitre 3 : La Voix sur IP

Introduction

La voix sur IP constitue actuellement l’une des applications IP en


pleine émergence. Cette technologie marque un tournant dans le monde
de la communication en permettant de transmettre de la voix sur un réseau
IP. C’est en 1996 que naquit la première norme relative à la Voix sur IP,
appelée H323. Depuis, cette technologie a progressé et a permis d’aboutir
à plusieurs standards.
Ce chapitre présente les enjeux de cette technologie, les différentes
normes y afférentes et ses spécificités techniques.

I. Enjeux et avantages de la Téléphonie sur IP

A. Enjeux de la Téléphonie sur IP

Le principal enjeu de la Voix sur IP est de réussir à faire converger le


réseau de données IP et le réseau téléphonique actuel. Cette technologie
est actuellement très importante pour les entreprises. En effet, elle exploite
un réseau de données IP pour offrir des communications vocales à
l’ensemble de l’entreprise sur un réseau unique. Cette convergence des
services de communication données, voix et vidéo sur un réseau unique,
s’accompagne des avantages liés à la réduction des coûts
d’investissement, à la simplification des procédures d’assistance et de
configuration et à l’intégration accrue de filiales et de sites distants aux
installations du réseau d’entreprise.
On assiste à une baisse considérable des coûts d’installation des
infrastructures réseaux puisque le téléphone et le PC partagent le même
câble Ethernet. De plus, les frais d'administration du réseau sont
également minimisés. Il est ainsi possible de réaliser des économies

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 42
Chapitre 3 : La voix sur IP

puisqu’on aura l’administration d'un seul réseau, un fournisseur d'accès


unique, un unique contrat de maintenance, un câblage commun, une
gratuité des communications interurbaines.
Les fonctions simplifiées de création, de déplacement et de
modification réduisent le temps nécessaire pour ajouter de nouveaux
utilisateurs au réseau. Le déploiement de nouveaux services est accéléré.
L'utilisation d'une infrastructure IP commune et d'interfaces standards
ouvertes permet de développer et de déployer très rapidement des
applications innovantes. Enfin, Les bénéfices récurrents seront apportés
par les gains de productivité liés à l’utilisation de nouveaux services et de
nouveaux applicatifs tels que la messagerie unifiée.

B. Avantages de la Téléphonie sur IP

Les avantages liés à la Voix sur IP sont multiples. Nous pouvons citer par
exemple : [2]
 Le coût de maintenance du réseau : En effet, grâce à
l’intégration de la téléphonie, les entreprises qui auparavant
étaient obligées de maintenir deux réseaux, celui de la téléphonie
et celui des données, n’ont plus qu’un seul réseau à maintenir.
 L’augmentation du nombre de services : On a remarqué
qu’avec l’avènement de la Voix sur IP, plus de services sont
offerts par rapport à la téléphonie classique.
 La convergence ou le Triple Play : Quel que soit le type de
données véhiculées, le réseau est unique : les flux de voix, de
vidéo, de textes et d’applicatifs transitent sur le même réseau.
 Une optimisation des ressources : La téléphonie sur IP utilise
moins de canaux que la téléphonie classique ce qui permet une
optimisation de la bande passante.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 43
Chapitre 3 : La voix sur IP

 La facilité d’administration, une évolutivité plus facile du


réseau.
 Une simplification des infrastructures puisque les PABX sont
remplacés par des IPBX plus faciles à gérer.

II. Les différents composants d’un réseau de Téléphonie sur IP

A. L’IPBX ou PABX-IP

C’est un autocommutateur téléphonique logiciel capable d’acheminer


les appels sur un réseau utilisant le protocole IP. Il assure le transfert des
flux de voix, des données et de la vidéo au sein d’un réseau informatique. Il
assure aussi la gestion des communications vers les réseaux
téléphoniques classiques ou RTC.

B. Les téléphones IP ou IP-Phone

C’est un terminal téléphonique fonctionnant sur le réseau LAN avec


une norme soit propriétaire ou ouverte. Il possède plusieurs codecs pour
l'audio et dispose d'un écran monochrome ou couleur. Il est en général
doté d'un hub passif à un seul port pour pouvoir alimenter le PC de
l'utilisateur (l'IP-Phone se raccorde sur la seule prise Ethernet mural et le
PC se raccorde derrière l'IP-Phone).

C. Les Softphones

Un softphone est un programme informatique qui permet de réaliser


des appels téléphoniques à partir d’un ordinateur. Le logiciel se substitue
parfaitement à un téléphone classique par l’intermédiaire d’un casque avec
micro connecté à l’ordinateur. Parmi les Softphones disponibles nous
pouvons citer par exemple Kphone, Skype, Linphone etc.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 44
Chapitre 3 : La voix sur IP

III. Les différents protocoles utilisés dans la Téléphonie sur IP

Avec le développement du multimédia sur les réseaux, il est devenu


nécessaire de créer des protocoles qui supportent ces nouvelles
fonctionnalités telles que l'envoi de son et de vidéo. On distingue deux
types de protocoles : Les protocoles de signalisation et les protocoles de
transport.

A. Les protocoles de signalisation

La signalisation est indispensable pour établir une communication


téléphonique. Elle permet dans un premier temps d’envoyer des messages
avant la communication, d’avertir l’utilisateur, de connaître la progression
de l’appel et de mettre fin à la communication.
Les principaux protocoles de signalisation utilisés dans la Téléphonie
sur IP sont : H.323, SIP et IAX.

1. Le protocole de signalisation H.323

Le standard H.323 fournit depuis son approbation en 1996, un cadre


pour les communications audio, vidéo et de données sur les réseaux IP. Il
a été développé par l'ITU (International Telecommunications Union) pour
les réseaux ne garantissant pas une qualité de service. Il concerne le
contrôle des appels, la gestion du multimédia, la gestion de la bande
passante pour les conférences point à point et multipoints. H.323 traite
également de l'interfaçage entre le LAN et les autres réseaux.

2. Le protocole de signalisation SIP

SIP est un protocole de signalisation appartenant à la couche


application du modèle OSI. Son rôle est d'ouvrir, modifier et libérer les
sessions. Pour ouvrir une session, un utilisateur émet une invitation

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 45
Chapitre 3 : La voix sur IP

transportant un descripteur de session permettant aux utilisateurs


souhaitant communiquer de s'accorder sur la compatibilité de leur média.
 Fonctionnement du protocole
SIP intervient aux différentes phases de l'appel :
 Localisation du terminal correspondant ;
 Analyse du profil et des ressources du destinataire ;
 Négociation du type de média (voix, vidéo, données...) et des
paramètres de communication ;
 Disponibilité du correspondant : Il détermine si le poste appelé
souhaite communiquer, et autorise l'appelant à le contacter ;
 Etablissement et suivi de l'appel : Il avertit les parties appelant
et appelé de la demande d'ouverture de session, gère le
transfert et la fermeture des appels ;
 Gestion de fonctions évoluées : cryptage, retour d'erreurs, etc.
SIP autorise différents mode de communication à savoir :
 Le mode point-à-point : Communication entre 2 machines, on
parle d'Unicast ;
 Le mode diffusif : Plusieurs utilisateurs en Multicast, via une
unité de contrôle M.C.U (Multipoint Control Unit) ;
 Le mode combinatoire : Plusieurs utilisateurs pleinement
interconnectés en Multicast via un réseau à maillage complet
de connexions.
 Structure des messages SIP [5]
Les messages SIP sont caractérisés par une ligne de début,
plusieurs entêtes et le corps du message.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 46
Chapitre 3 : La voix sur IP

 Les entêtes des messages SIP


Les entêtes ont pour rôle de fournir des informations sur le
message et de permettre le traitement du message. A cet effet, le
protocole SIP est doté d’un certain nombre d’entête dont la structure
dépend de la nature du message. Les différents types d’entête
utilisés par les messages SIP sont au nombre de quatre:
L’entête général : Il est toujours présent et contient les
informations de base permettant le traitement du message. Il a des champs
obligatoires qui sont :
Via : il identifie l’entité de relais. En effet, chaque entité qui émet ou
relaye un message SIP insère son identité afin de prévenir les
boucles et indiquer le chemin de réponse.
From : il identifie l’initiateur de la requête.
To : il identifie le destinataire de la requête.
Call‐Id : c’est l’identificateur unique de la session.
Cseq : il identifie la séquence d’un appel. On peut avoir par exemple
plusieurs messages « invite » avec de Cseq différents.
L’entête de requête : Cet entête n’est pas toujours utilisé. Il
contient des informations supplémentaires à destination du serveur SIP et
permet le traitement de la requête par celui‐ci.
L’entête de réponse : Tout comme l’entête de requête, cet entête
n’est pas toujours utilisé. Il contient des informations supplémentaires
ajoutées par le serveur SIP permettant le traitement de la réponse.
L’entête d’entité : Cet entête est toujours utilisé. Son rôle est de
définir le type et le format des informations contenues dans les messages.
 Le corps du message
Il fournit suffisamment d’informations pour permettre la
participation à une session multimédia. Ces informations sont : le
codec, la destination (adresse IP et port UDP), le nom de la session,

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 47
Chapitre 3 : La voix sur IP

etc. Le message du corps est codé conformément au protocole SDP


(Session Description Protocol).

 Requêtes et réponses SIP


Les échanges entre un terminal appelant et un terminal appelé se
font par l'intermédiaire de requêtes et de réponses que sont :
 Invite : Cette requête indique que l'application (ou utilisateur)
correspondante à l'URL SIP spécifié est invité à participer à
une session.
 Ack : Cette requête 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 l'UAS
(terminal) appelé, 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.
 Register : Cette méthode est utilisée par le client pour
s’enregistrer auprès du serveur.

A ces requêtes, sont associées des réponses qui sont dans le même
format que celles du protocole HTTP. Voici les plus importantes d’entre
elles :
 1XX – messages d’informations (100 – essai, 180 – sonnerie,
183 – en cours)
 2XX – succès de la requête (200 –OK)

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 48
Chapitre 3 : La voix sur IP

 3XX – Redirection de l’appel, la demande doit être dirigée


ailleurs
 4XX – Erreur du client (La requête contient une syntaxe
erronée)
 5XX – Erreur du serveur (le serveur n’a pas réussi à traiter une
requête correcte
 6XX – Echec général (606 – requête non acceptable)

 Composants d’un système SIP


Dans un système SIP on retrouve deux types de composantes, les
User Agents (UAS, UAC) et un réseau de serveurs :

 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'UAC (User Agent Client) : Il représente l'agent de la partie
appelante. C'est une application de type client qui initie les
requêtes.
 Le relais mandataire ou Proxy Server (PS) : Il est relié à un
terminal fixe ou mobile et agit à la fois comme un client et
comme un serveur. Un tel serveur 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. Un Redirect Server est considéré comme un simple
serveur et ne peut émettre de requêtes contrairement au PS.
 Le LS (Location Server) : Il fournit la position courante des
utilisateurs dont la communication traverse les RS et PS
auxquels il est rattaché.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 49
Chapitre 3 : La voix sur IP

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


Register. Il offre également un service de localisation comme le
LS. Chaque PS ou RS est généralement relié à un Registrar.

Figure 3.1 : Architecture SIP

3. Le protocole IAX

IAX est un protocole ouvert développé par la société Digium. La


version actuelle est IAX2. Les composants et matériels utilisés dans les
architectures IAX sont semblables à ceux de SIP. IAX a la particularité
d’être implémenté directement sur l’IPBX Asterisk.

B. Les protocoles de transport

Lors d’une communication ToIP, une fois la phase de signalisation


réalisée, la phase de communication est initiée. Dans cette phase, un
protocole de transport permet d’acheminer les données de voix entre
plusieurs utilisateurs vu que la couche TCP propose un transport fiable
mais lent et la couche UDP un transport rapide mais non fiable.
La communauté IETF a mis en place un nouveau couple de protocole
RTP (Real‐Time transport Protocol) et RTCP (Real‐Time Control Protocol)
pour apporter la fiabilité à l’UDP tout en exploitant sa rapidité.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 50
Chapitre 3 : La voix sur IP

RTP et RTCP sont les deux protocoles qui sont principalement utilisés pour
le transport de flux média sur le réseau IP. RTP permet de transporter les
données entre plusieurs utilisateurs en plus de la gestion en temps réel des
sessions. Tandis que, RTCP est utilisé pour transmettre régulièrement des
paquets de contrôle, qui contiennent diverses statistiques permettant de
vérifier la qualité de transmission.

IV. La qualité de service dans la Téléphonie sur IP

Les aspects déterminants pour la qualité de la voix sur un réseau


sont le traitement de la voix, la clarté, le délai de bout en bout et l’écho. Ils
dépendent des différents composants de la chaîne de transmission, de leur
paramétrage, de l’architecture générale de la chaîne et dans le cas de la
VoIP des flux concurrents.
Nous présenterons à la suite les principaux paramètres influents en
VoIP que sont : les échantillonnages, le délai de transit, la gigue de phase
et les pertes de données.

A. L’échantillonnage

Lorsque l'on parle dans un téléphone classique, notre voix transite


analogiquement jusqu'au destinataire via le réseau commuté. Pour
la téléphonie sur IP, la voix est numérisée pour être transmise sur un
réseau de données. On utilise donc un codec qui échantillonne la voix.

 Echantillonnage : Il s'agit d'enregistrer à des intervalles très


rapprochés la valeur d'un signal afin de pouvoir disposer d'un
enregistrement proche de la valeur réelle de ce signal. Plus
l'intervalle est petit, plus la qualité de l'échantillonnage est bonne.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 51
Chapitre 3 : La voix sur IP

Une fois la voix échantillonnée, il faut la compresser pour que le flux


d'informations soit moins important. On utilise donc un codec qui
permet de réduire significativement la taille du flux.

 Codec : Codec est une abréviation pour Codeur/Décodeur. Un


codec est basé sur un algorithme qui permet la compression des
données qu'on lui donne. On distingue les codecs à pertes et les
codecs sans pertes.
Une fois le signal numérisé et encodé, il est prêt à être transmis. Le
transport des données peut se faire par l'intermédiaire de plusieurs
protocoles dont notamment RTP et RTCP, le contrôle du flux se faisant via
les autres protocoles nommés plus haut. Arrivé du coté du récepteur, le
signal est décodé en utilisant le même codec et ensuite restitué.

Figure 3.2 : Schéma synoptique de la voix sur IP [6]

Dans le domaine de la téléphonie sur IP, les différents codecs


retransmettent plus ou moins bien le signal original. Pour mesurer la qualité
de la voix restituée, le facteur quantifié est le score MOS (Mean Opinion
Score). C'est une note comprise entre 1 et 5 et attribuée par des auditeurs
jugeant de la qualité de ce qu'ils entendent. Le tableau suivant définit la
qualité de la voix par rapport à différentes valeurs du score MOS.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 52
Chapitre 3 : La voix sur IP

Score MOS Définition


4à5 Haute qualité
3,5 à 4 Qualité commerciale
3 à 3,5 Qualité acceptable
2,5 à 3 Qualité militaire
inférieur à 2,5 Qualité synthétique

Tableau 3.1 : Les différents scores MOS définissant la qualité de la voix [6]

Les différents codecs intervenant dans la téléphonie sur IP sont :

1. G.711
Ce codec est le premier à avoir été utilisé dans la VoIP. Il produit un
flux d'une taille de 64kbit/s et le score MOS qu'il a obtenu est de 4,2 ce qui
en fait un codec de bonne qualité de restitution.

2. G.722
Ce codec transforme le spectre jusqu'à 7kHz ce qui restitue encore
mieux la voix. Les débits que ce codec fournit sont 48,56 ou 64kbit/s. Une
des particularités est de pouvoir immédiatement changer de débit. Ceci est
fortement appréciable lorsque la qualité du support de transmission se
dégrade.

3. G.722.1
Dérivé du codec précédent, celui ci propose des débits encore plus
faibles soient 32 ou 24kbit/s. Il existe même des versions propriétaires de
ce codec fournissant un débit de 16kbit/s.

4. G.723.1
C'est le codec par défaut lors des communications à faible débit.
Deux modes sont disponibles. Le premier propose un débit de 6,4kbit/s et
le deuxième un débit de 5,3kbit/s. Les scores MOS obtenus avec ce codec
varient entre 3,7 et 3,9.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 53
Chapitre 3 : La voix sur IP

5. G.729
Ce codec est avec G.723 un des plus utilisés en VoIP. A l'instar de ce
dernier, il ne convient que pour des transmissions de la voix. Le score
MOS obtenu est 4.0.

B. Le délai de transit

Le délai de transit (end-to-end delay) est un des paramètres critiques


influençant fortement la QoS en ToIP. C’est le temps que va mettre en
moyenne un paquet IP contenant un échantillon de voix pour traverser
l’infrastructure entre deux interlocuteurs. Ce temps de transit comporte
quatre composantes :
 Le délai d’échantillonnage,
 Le délai de propagation,
 Le délai de transport,
 Le délai des buffers de gigue.

C. La gigue de phase

La variation de temps de transit, ou gigue de phase, est la


conséquence du fait que tous les paquets contenant des échantillons de
voix ne vont pas traverser le réseau à la même vitesse. Cela crée une
déformation de la voix ou un hachage. La gigue de phase est
indépendante du délai de transit. Le délai peut être court et la gigue
importante ou inversement. La gigue est une conséquence de congestions
passagères sur le réseau, ce dernier ne pouvant plus transporter les
données de manière constante dans le temps. La valeur de la gigue va de
quelques millisecondes à quelques dizaines de millisecondes.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 54
Chapitre 3 : La voix sur IP

D. La perte de données

La transmission de la voix par paquets s’appuie sur le protocole RTP.


Ce dernier permet de transmettre sur IP les paquets de voix en
reconstituant les informations même si la couche de transport change
l'ordre des paquets. Il utilise pour cela des numéros de séquence et
s’appuie sur UDP. Les contraintes temps réel de délai de transit évoquées
plus haut rendent inutile la retransmission des paquets perdus puisque
même retransmis un datagramme RTP arriverait bien trop tard pour être
d’une quelconque utilité dans le processus de reconstitution de la voix. En
voix sur IP on ne retransmet donc pas les données perdues. Ces pertes de
données VoIP sont dues aux congestions sur le réseau, qui entraînent des
rejets de paquets tout au long du réseau, ou à une gigue excessive qui va
provoquer des rejets de paquets dans les buffers de gigue du récepteur.
Une perte de données régulière mais faible est moins gênante en
voix sur IP que des pics de perte de paquets espacés mais élevés. En effet
l’écoute humaine s’habituera à une qualité moyenne mais constante et en
revanche supportera peu de soudaines dégradations de la QoS. Le taux de
perte en VoIP est typiquement de quelques pourcents.

Conclusion

La Téléphonie sur IP étant une nouvelle technologie de communication,


elle n’a pas encore de standard unique. En effet, chaque constructeur
apporte ses normes et ses fonctionnalités à ses solutions. Il existe tout de
même des références telles que les architectures basées sur SIP, H.323,
ou IAX. Avec l’avènement de l’IPv6 et ses principaux atouts comme le
grand nombre d’adresses IP et la mobilité, la téléphonie sur IP sera de
plus en plus vulgarisée.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 55
DEUXIEME PARTIE

DEUXIEME PARTIE
MIse eN Œuvre des servIces reseau DE BASE ET DE
VOIX SUR IP

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 56
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Chapitre 4
coNceptIoN d’uN réseau d’eNtreprIse basé sur IPv6

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 57
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Introduction

Le développement actuel des technologies de l’information ont poussé la


plupart des entreprises à mettre en œuvre dans leur structure un réseau
d’entreprise. Ceci se manifeste par la mise en place d’Intranet assurant
ainsi le travail collaboratif, la messagerie, la téléphonie sur IP et bien
d’autres services. Avec l’avènement de la nouvelle version d’IP, IPv6, il
est inéluctable que ces réseaux d’entreprise intègrent ses nouvelles
fonctionnalités. Le présent chapitre porte sur la mise en œuvre d’un
réseau d’entreprise basé essentiellement sur IPv6.

I. Architecture du réseau Intranet du Ministère de l’ Economie et


des Finances

La figure suivante montre l’architecture globale de l’Intranet du Ministère


de l’Economie et des Finances. Il est composé de plusieurs serveurs
dédiés à savoir : un serveur DNS, un serveur web, un serveur de
messagerie, un serveur de transfert de fichier et un serveur d’antivirus. Le
plan d’adressage actuel est en IPv4 avec deux plages d’adresses à
savoir: le 137.10.0.0 et le 10.6.0.0.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 58
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Figure 4.1 : Architecture du réseau Intranet du Ministère de l’Economie et


des Finances

Le passage à l’IPv6 pour un tel réseau Intranet, n’apporte pas de


modifications majeures dans l’architecture du réseau. Les changements
sont surtout observés au niveau de l’adressage des serveurs et des
postes de travail et surtout dans la migration des services réseau en IPv6.
Dans le cadre de notre projet, nous avons proposé ci-dessous une
architecture simplifiée du réseau Intranet du Ministère de l’Economie et
des Finances. Cette architecture nous a permis ensuite de faire un
prototype du réseau afin de mettre en œuvre les différents services
réseau en IPv6. L’adressage se fera ici avec des adresses Unicast
globales puisque avec le grand nombre d’adresses IPv6 globales il est

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 59
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

actuellement inutile d’utiliser des adresses privées ou adresses locales de


site.
Serveur DNS, Web,
Mail, MySQL, FTP

Poste de travail Poste de travail

Poste de travail

Figure 4.2 : Prototype du réseau Intranet

II. Installation du serveur et mise en œuvre des différents services


réseau

A. Installation du serveur

1. Choix du système d’exploitation

La plupart des systèmes d’exploitation actuels intègre nativement ou


optionnellement IPv6. Windows Vista et Windows 7 l’intègre nativement
tandis que Windows XP dispose d’un module supplémentaire pour le

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 60
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

support d’IPv6. Pour les systèmes d’exploitation UNIX, toutes les


distributions disposant d’un noyau supérieur à la version 2.2.2 sont
capables d’implémenter IPv6.
Pour notre présent projet, nous avons opté pour des logiciels libres.
Notre serveur tournera alors sous linux Debian Lenny qui est l’une des
distributions libres mieux adaptée pour un serveur. La version 5.04 sera
utilisée. Elle dispose d’un noyau 2.6.

Adressage du réseau
Pour l’adressage on utilisera des adresses IPv6 avec le préfixe
2001 ::/64. Le serveur aura une adresse fixe tandis que les postes de
travail seront configurés automatiquement. Le tableau ci-dessous donne
les détails sur l’attribution des adresses.

OS Adresse locale de site


Serveur Debian 5.04 2001::1/64
Poste client 1 Debian 5.04 2001::EUI-64/64
Poste client 2 Debian 5.04 2001 ::EUI-64 /64

Tableau 4.1 : Adressage des ordinateurs

Comme expliqué plus haut, le suffixe EUI-64 se forme automatiquement


grâce à l’adresse physique de la carte réseau.

2. Installation du système d’exploitation sur le serveur

L’installation se fait en plusieurs étapes avec le DVD N°1 de Debian.


 Choix du type d’installation
 Choix de la disposition du clavier
 Création des différentes partitions
 Installation du système de base

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 61
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

 Création du compte ROOT et configuration du mot de passe


ROOT
 Création d’un utilisateur
 Installation du GRUB
 Redémarrage du système

3. Activation de la carte réseau et attributions des adresses

La distribution Debian dans sa version 5.04 intègre de façon native


IPv6 puisqu’elle dispose d’un noyau 2.6. De ce fait, la carte réseau de
notre serveur dispose d’une adresse IPv6 de lien dès son montage.
Comme nous l’avons vu plus haut, cette adresse est obtenue
automatiquement et a pour préfixe fe80::/64.
Pour monter la carte réseau, on utilise la commande :

# /sbin/ifconfig <interface> up

Pour démonter la carte réseau, on utilise la commande :

# /sbin/ifconfig <interface> down

Dans le cadre de notre projet, nous avons activé l’interface Ethernet par la
commande :
# /sbin/ifconfig eth0 up

On a alors visualisé notre adresse locale de lien par la commande :

# /sbin/ifconfig eth0

On a alors
# /sbin/ifconfig eth0
serveur:/home/wahabest# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:1e:ec:8f:d4:20
adr inet6: 2001::1/64 Scope:Global
adr inet6: fe80::21e:ecff:fe8f:d420/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:30 errors:0 dropped:0 overruns:0 frame:0

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 62
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Pour attribuer à notre interface l’adresse globale fixe statique


2001::1/64 on a ajouté les lignes ci-dessous dans le fichier
/etc/network/interfaces.

#/etc/network/interfaces
Auto eth0
Iface eth0 inet6 static
Pre-up modprobe IPv6
Address 2001::1
Netmask 64

4. Auto-configuration des postes de travail

Dans les spécificités techniques du protocole IPv6, nous avons


montré que l’un de ses principaux atouts est l’auto-configuration des
postes. Ici nous traiterons des deux types d’auto-configuration à savoir
l’auto-configuration sans état et l’auto-configuration avec état mais seule
l’auto-configuration sans état sera mise en œuvre dans notre projet.
 Auto-configuration avec état : Il consiste en une auto
configuration avec DHCPv6. Il suffit d’installer le paquet
correspondant sur notre serveur et d’écrire les différents fichiers de
configuration. De plus, le poste de travail à auto-configurer doit
disposer du client DHCPv6. Ce qui pose quelques problèmes
puisque tous les systèmes d’exploitation n’intègre pas le client
DHCPv6.
 Auto-configuration sans état : Il permet à un poste de travail de
se renseigner sur le préfixe du réseau puis de former sa propre
adresse IPv6 en y ajoutant son suffixe EUI64 qu’il génère à partir de
son adresse MAC. Sa mise en œuvre se fait grâce au paquet radvd
("Router Advertisement demon").

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 63
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

 Installation de radvd
Elle se fait par la commande

# apt-get install radvd

 Configuration de radvd
Il faut écrire le fichier de configuration /etc/radvd.conf avec le
préfixe 2001::/64

interface eth0
{
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;
AdvLinkMTU 1280;
# Disable Mobile IPv6 support
AdvHomeAgentFlag off;
prefix 2001::/64{
AdvOnLink on;
AdvAutonomous on;
}; };

 Lancement du service
On lance ensuite radvd par la commande

# /etc/init.d/radvd

5. Test du réseau

Les différents outils utilisés pour effectuer les tests de connectivité


dans un réseau IPv4 ont leur correspondant sous IPv6. L’utilitaire ping est
remplacé par ping6 et l’outil traceroute est remplacé par tracert6. Ainsi pour
envoyer un ping au poste client ayant l’adresse 2001 ::2 on a :

# ping6 2001::2

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 64
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

B.Mise en œuvre des différents services réseau

Les différents services réseau retrouvés dans un réseau IPv4 sont


présents sous IPv6 à l’exception de quelques uns. Nous avons le serveur
de nom de domaine (DNS), le serveur de messagerie, le serveur web, le
serveur de transfert de fichier…

1. Installation et paramétrage du service DNS IPv6

Le service de résolution de nom permet de corréler une adresse IP


à un nom dans le cadre de réseaux étendus. Ce système de nom de
domaine consiste en une hiérarchie de noms permettant de garantir
l'unicité d'un nom dans une structure arborescente. Son usage est déjà
très répandu avec IPv4, pour donner un aspect plus familier et plus facile
à retenir qu'une suite de chiffres. Avec IPv6, les adresses sont codées sur
128 bits, ce qui ferait à chaque fois 32 caractères hexadécimaux à
mémoriser. Le service DNS prend donc tout son sens avec cette nouvelle
version. Le protocole DNS a d'ailleurs été un des premiers à être adapté.
La grande force de DNS est qu'il participe à la compatibilité avec
IPv4. En effet, plutôt que de développer un nouveau protocole, de
nouveaux messages ont été intégrés à l'ancien. En pratique, un nouveau
type d'information a été ajouté : il s'agit du champ AAAA. Son rôle est
équivalent à celui du champ A en IPv4. Au sein de notre prototype, nous
avons creé le domaine 6finance.bj

 Réalisation avec BIND 9.2.3


L’installation du paquet BIND 9.2.3 se fait avec la commande

# apt-get install Bind 9.2.3

Après l'installation des paquets correspondants, il faudra écrire les


différents fichiers de configuration. Il s’agit du fichier de configuration

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 65
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

principale named.conf et les fichiers de zone directe et inverse


db.6finance.bj et db.rev.6finance.bj dont des extraits sont présentés ci-
dessous.

Extrait du fichier named.conf

options {
listen-on-v6 { any; }; // Activation du protocol IPV6
// (...)
};
//local host IPv6
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa." {
type master;
file "/etc/bind/db.local";
};
zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa." {
type master;
file "/etc/bind/db.local";
};
// Zone 6finance.bj
zone "6finance.bj" {
type master;
file "/etc/bind/db.6finance.bj";
};
// Zone reverse 6finance.bj IPV6
zone "1.0.0.2.ip6.arpa" {
type master;
file "/etc/bind/db.rev.6finance.bj";
};

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 66
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Extrait du fichier de zone direct : db.6finance.bj

;
; Fichier de zone pour 6finance.bj
;
$TTL 604800
@ IN SOA serveur.6finance.bj. root.6finance.bj. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS serveur.6finance.bj.
@ IN MX 10 serveur.6finance.bj.

;la table de résolution de nom d’hôte en adresse IP

localhost IN A 127.0.0.1
localhost IN AAAA ::1
serveur IN AAAA 2001::1
clienttest IN AAAA 2001::2
www IN CNAME serveur.6finance.bj.
ftp IN CNAME serveur.6finance.bj.

Extrait du fichier de zone reverse : db.rev.6finance.bj


; BIND reverse data file for 6finance.bj zone
;
$TTL 604800
@ IN SOA serveur.6finance.bj. root.6finance.bj. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS 6finance.bj.
@ IN MX 10 6finance.bj.

;la table de résolution de nom d’hôte en adresse IP

$ORIGIN 1.0.0.2.ip6.arpa.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR serveur. 6finance.bj.
2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR client1. 6finance.bj.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 67
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

Extrait du fichier de zone reverse : db.local

;File: localhost
@ IN SOA serveur. 6finance.bj. root. 6finance.bj. (
3 ; Serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
;
IN NS localhost.
;
localhost. IN A 127.0.0.1
1.0.0.127.in-addr.arpa. IN PTR localhost.
;
localhost. IN AAAA ::1
localhost. IN AAAA ::
$ORIGIN 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR localhost.

$ORIGIN 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa.
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR localhost.

 Test du service de résolution de nom


Dans un premier temps, il faut tester le fichier de zone par la commande:

# named-checkzone 6finance.bj db. 6finance.bj


Ensuite vient le test de la configuration globale du service grâce à la
commande :
# named- checkconf

Enfin, il faudra redémarrer le service par la commande :

# /etc/init.d/bind9 reload
A partir d’un poste client, nous avons exécuté la commande

# dig +short –t aaaa serveur.6finance.bj

Et qui nous a retourné l’adresse IPv6 de notre serveur : 2001 ::1

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 68
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

2. Le serveur web

La plupart des serveurs web utilisé jusque là en IPv4 ont été modifié
pour supporter la nouvelle version du protocole. Ainsi, le serveur HTTP
Apache inclut le support du protocole IPv6 en natif dans ses versions
2.0.x. Par défaut les sockets écoutent en v6 et les directives de
configuration telles que Listen, NameVirtualHost ou encore VirtualHost
supportent les adresses IPv6.

 Installation de Apache 2

# apt-get install apache2

Pour la configuration d’Apache, il suffit d’écrire dans le fichier de


configuration /etc/apache2/httpd.conf, les lignes suivantes :
#Port d’écoute du service
Listen[2001 ::1] :8080
# Support de IPV6
ServerName serveur. 6finance.bj

 Test du serveur web


Il suffit de créer une page web sur le serveur et ensuite ouvrir un
navigateur internet à partir de l’une des machines hôtes et accéder à cette
page web.

3. Le service de messagerie
 Les MTA
Les MTA sont les agents de transport de courrier. Ce sont eux qui
sont chargés de l’expédition d’un courrier électronique. Les échanges de
courrier électronique sont basés sur le protocole SMTP. La RFC 2821 qui
le définit, précise que SMTP est un protocole indépendant du système de
transmission et qui exige un transport fiable et ordonné. Ceci étant dit, il

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 69
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

est donc logique de penser que la transition d’IPv4 vers IPv6 sera
transparente au niveau de ce protocole dès lors que l’on possède un DNS
correctement configuré et une bonne connectivité IPv6. Il reste donc pour
cela que les différentes implémentations de ce protocole supportent le
nouveau format d’adresse, les enregistrements DNS AAAA...

 Réalisation avec Postfix 2.2


Postfix 2.2 a introduit le support du protocole IPv6. Il utilise le même
protocole SMTP sur IPv6 que sur IPv4, et effectue une recherche DNS de
type AAAA en complément des anciennes requêtes de type A. La
configuration de Postfix en IPv6, ne pose aucun problème particulier. Il
suffit d’ajouter des enregistrements DNS AAAA à votre serveur de
messagerie comme suit :
@ MX 10 smtp
smtp AAAA 2001 ::1

Et de modifier le fichier /etc/postfix/main.cf [10] comme ci-dessous :

myorigin = /etc/mailname
#Nom du domaine
mydomaine = serveur. 6finance.bj
myhostname = serveur
mydestination = 6finance.bj, serveur, localhost.localdomain, localhost , serveur. 6finance.bj
relayhost = serveur. 6finance.bj
#Mes addresses réseaux
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [2001::1]
#support de IPv6
inet_protocols = IPv6
smtp_bind_address6 = 2001::1
inet_interfaces = [::1], [2001::1]
home_mailbox = Maildir/

 Redémarrage du service

# /etc/init.d/postfix restart

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 70
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

 Les MDA
Le MDA (Mail Delivery Agent) aussi appelé LDA (Local Delivery
Agent) est le service de remise du courrier dans les boites aux lettres des
destinataires, une fois que le courrier est arrivé sur le MTA de destination.
Il existe plusieurs MDA supportant déjà IPv6. Nous avons par exemple
Courrier et Cyrus. Pour notre présent projet, nous avons choisi Courrier.
En effet, il intègre les fonctionnalités de serveur POP et de serveur IMAP.
Nous installerons ici le serveur Courier-imap.

 Installation de Courier-imap

Elle se fait grâce à la commande :

# apt-get install courier-authdaemon courier-imap

 Configuration de Courier-imap
Le fichier de configuration est /etc/courier/imapd. Un extrait de ce
fichier est présenté ci-dessous.

#Extraie du fichier /etc/courier/imapd


#Adresse du serveur Imap
ADDRESS=2001::1
#Port d’écoute de IMAP
PORT=143
#démarrage automatique du serveur IMAP
IMAPDSTART=YES
# Nom du repertoire Maildir
MAILDIRPATH=Maildir

 Redémarrage du service

# /etc/init.d/courier-imap /etc/init.d/authdaemonrc restart

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 71
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

4. Le service de transfert de fichier

La mise en œuvre d’un serveur ftp dans un réseau IPv6 est


actuellement possible puisque la plupart des serveurs ftp tels que ProFTP
ou Vsftp intègre dans leur version récente le protocole IPv6. Nous avons
alors choisi d’ajouter à notre réseau IPv6 actuel le service de transfert de
fichier en utilisant ProFTP.

 Installation de ProFTP
Elle se fait grâce au paquet proftpd avec la commande :

# apt-get install proftpd

 Configuration du serveur
Le fichier de configuration principale à éditer est
/etc/proftpd/proftpd.conf. Il faut alors veiller à ce que les lignes ci-dessous
ne restent pas commentées.

# Activation de IPv6
UseIPv6 on
ServerName "serveur"
# Port d’écoute de FTP
Port 21
#Connexion anonyme au serveur
<Anonymous ~ftp>
User ftp
Group nogroup
UserAlias anonymous ftp


</Anonymous>

Enfin, pour prendre en compte les modifications, il faut relancer le


serveur par la commande :

# /etc/init.d/proftpd restart

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 72
Chapitre 4 : Conception d’un réseau d’entreprise basé sur IPv6

 Test du serveur ftp


Pour effectuer le test de serveur ftp, nous avons placé un dossier
dans le dossier de publication ftp /home/ftp puis avions tapé dans le
navigateur web de l’un de nos PC clients :

ftp://serveur.6finance.bj

Les dossiers publiés se sont donc affichés dans notre navigateur et


nous avons pu les ouvrir ou les télécharger.

Conclusion

Au terme de ce chapitre, on remarque aisément que le protocole


IPv6 est actuellement prêt quant à son adoption pour la conception des
réseaux d’entreprise. Il est parfaitement intégré dans la plupart des
services réseau de base et doit pouvoir s’imposer à long terme. Aussi les
différentes méthodes de transition disponibles permettent une migration
progressive et transparente vis-à-vis des utilisateurs.
Dans les années à venir, le réseau Intranet du Ministère de
l’Economie et des Finances devra passer en IPv6 et le présent travail sera
un outil très indispensable surtout pour le choix et la mise en œuvre des
logiciels Open Source.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 73
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Chapitre 5

Mise en oeuvre du système de téléphonie sur IPv6 et


analyse

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 74
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Chapitre 5 : Mise en oeuvre du système de Téléphonie sur IPv6 et


Analyse

Introduction

Après la migration des différents services réseau de base en IPv6,


nous avons mis en œuvre dans ce chapitre les services de voix sur IP au
sein de notre réseau. Nous avons opté pour le protocole de signalisation
SIP car il est actuellement le seul qui intègre parfaitement IPv6. Nous
nous sommes appuyés sur le serveur OpenSER pour assurer le routage
des paquets SIP au sein de l’Intranet.

I. Choix des composants du système

A. OpenSER

1. Présentation d’OpenSER

Kamailio ou OpenSER est une solution Open Source de Voix sur IP


distribué sous licence GPL. Il est une version héritée de SER (SIP
Express Router) qui avait été repris par un groupe de développeurs du
projet à la fin de l'année 2005 pour constituer un nouveau logiciel mieux
documenté et entièrement configurable [11]. OpenSER a de nombreuses
fonctionnalités dans le cadre des appels VoIP. Il est entièrement
compatible avec IPv6 et permet de gérer les enregistrements, le compte
des appels, les échanges RADIUS, l’authentification etc. Il est en outre
renforcé par une variété d'outils SIP supplémentaires, qui fournissent des
fonctionnalités pour la gestion et le traitement des médias. De plus, il
permet de rediriger les appels vers les PABX tels que Asterisk. Ici, nous
traiterons principalement de la partie routage d’appels SIP (utilisation
d’OpenSER en tant que softswitch) et de la gestion des utilisateurs avec
le module Mysql.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 75
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

2. Fonctionnalités et services

OpenSER prend en charge les fonctions suivantes :


 Proxy Server : il assure les fonctions de transfert des requêtes et
réponses SIP entre deux Users Agents.
 Registrar Server : il gère les requêtes REGISTER envoyées par
les Users Agents pour signaler leur emplacement courant.
 Location Server : il permet de fournir les détails d’emplacement
courant d’un utilisateur.
 Redirect Server : il redirige les Users Agents (UA) vers un autre
Proxy server.
 Application Server : il fournit des services avancés pour les
utilisateurs tels que service de présence, messagerie instantanée,
etc…

3. Architecture d’OpenSER

OpenSER dispose d’une architecture modulaire. Vu d’une manière


globale, il se décompose en deux parties :
 Le noyau : C’est le composant qui fournit les services minimum
d’OpenSER. Il offre les services de :
 Gestionnaire de mémoire
 Analyseur de message SIP
 Système de verrouillage
 DNS complet et gestion de la couche de transport
 Analyseur de fichier de configuration et d'interprète
 Couche d'abstraction de base de données
 Interface de gestion
 Moteur de statistiques

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 76
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

 Les différents modules : Ils sont chargés de fournir des services


spécifiques. Nous pouvons obtenir des fonctionnalités telles que:
 La localisation de l'utilisateur
 La comptabilité, l'autorisation et l'authentification
 Les opérations d'expression régulière
 La messagerie instantanée
 Le support de RADIUS
 La connexion à une base de données
 Les SMS
 Le NAT
 Les extensions SIP pour Perl et Java

La figure ci-dessous illustre l’architecture globale d’OpenSER [12]

Figure 5.1 : Architecture d’OpenSER

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 77
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

B. Les Softphones compatibles IPv6

Il existe actuellement plusieurs Softphones qui intègrent


parfaitement IPv6. Parmi ceux-ci, nous avons Linphone [15] et Kphone.

1. Linphone

Linphone est un logiciel de téléphonie libre, il est distribué sous la


License publique GNU. Il permet d’effectuer des conversations
comprenant deux participants en utilisant un réseau IP comme Internet. Il
possède les caractéristiques suivantes :
 Il fonctionne sous IPv4 et IPv6
 Il possède une interface graphique conviviale
 Il inclut une grande variété de codecs
 Il utilise le protocole SIP, réputé et standardisé
 Il est disponible sous Linux, Windows, MacOS…

2. Kphone

Kphone est un logiciel libre de téléphonie sur IP fonctionnant sur le


système d'exploitation Linux. Il est retrouvé sous le gestionnaire
graphique KDE. Kphone est un logiciel Open source. Il possède les
mêmes caractéristiques que Linphone.

II. Mise en œuvre du service de voix sur IP

A. Architecture du système de Téléphonie sur IP

L’architecture finale du réseau Intranet du Ministère de l’Economie et des


Finances sera alors composée des serveurs dédiés pour le service DNS,
le service web, la messagerie, et le transfert de fichiers. Pour les services
de voix sur IP, nous avons ajouté deux autres serveurs, l’un implémente

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 78
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

les services de routage des paquets SIP avec OpenSER et l’autre fait
office de serveur de base de données MySQL pour la gestion de
l’authentification des utilisateurs.

La figure qui suit nous montre l’architecture finale du réseau Intranet


avec les services de voix sur IP.

Figure 5.2 : Architecture finale du réseau

B. Mise en œuvre du serveur OpenSER

1. Téléchargement des différents paquets nécessaires

Pour installer le serveur OpenSER et le module Mysql


correspondant, nous avons téléchargé les paquets Debian correspondant
sur le site : [16]
http://packages.debian.org/lenny/openser

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 79
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

La version 1.3.2-3 est la version la plus stable actuellement. On a alors


les paquets « openser_1.3.2-3_i386.deb » et openser-mysql-
module_1.3.2-3_i386.deb.
Pour fonctionner correctement, OpenSER a besoin de certaines
dépendances que nous avons installées. Il s’agit de :
 adduser
 GCC
 Bison
 Flex
 libradiusclient-ng2

Pour le module MySql, il dépend de MySql Server que nous avons aussi
installé.

2. Installation des paquets téléchargés

Sous Debian, les paquets .deb sont installés par la commande :

# dpkg –i adresse_complète_du_paquet_debian

Après le téléchargement des paquets, nous les avons tous


regroupés dans le dossier /home/wahabest/Desktop/logiciel et lancé les
commandes ci-dessous :

# dpkg –i openser_1.3.2-3_i386.deb

# dpkg –i openser-mysql-module_1.3.2-3_i386.deb

3. Configuration d’OpenSER et du module Mysql

OpenSER dispose pour sa configuration de deux fichiers. Il s’agit


de : /etc/openser/opnserctlrc et de /etc/openser/openser.cfg.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 80
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

 Ecriture du fichier /etc/openser/opnserctlrc


Ce fichier est utilisé par le serveur OpenSER pour manipuler la base
de données Mysql. Il se présente comme suit : [13]

# $Id: openserctlrc 4133 2008-05-08 10:39:51Z miconda $


#
# The OpenSER configuration file for the control tools.

## your SIP domain


SIP_DOMAIN=6finance.bj
# If you want to setup a database with openserdbctl, you must at least specify
# this parameter.
DBENGINE=MYSQL
## database host
DBHOST=localhost
## database name
DBNAME=openser

# database path used by dbtext or db_berkeley


# DB_PATH="/usr/local/etc/openser/dbtext"
## database read/write user
DBRWUSER=openser
## password for database read/write user
DBRWPW="openserrw"
## database read only user
DBROUSER=openserro
## password for database read only user
DBROPW=openserro
## database super user
DBROOTUSER="root"
# user name column
# USERCOL="username"
## type of aliases used: DB - database aliases; UL - usrloc aliases
## - default: none
ALIASES_TYPE="DB"
## - default FIFO
CTLENGINE="FIFO"
## verbose - debug purposes - default '0'
VERBOSE=1

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 81
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

 Ecriture du fichier /etc/openser/openser.cfg


C’est le fichier principal de configuration d’OpenSER. Il est subdivisé
en trois parties.
Première partie : Elle traite des configurations globales. Il faut renseigner
l’adresse du serveur et le port d’écoute. Par défaut, OpenSER utilise le
port 5060.

####### Global Parameters #########


debug=3
log_stderror=no
log_facility=LOG_LOCAL0
fork=yes
children=4
/* uncomment the next line to disable TCP (default on) */
disable_tcp=yes
#Activation de la recherché dns IPv6
dns_try_IPv6=yes
#Port
port=5060
#Adresse d’écoute
listen=udp:[2001::1]:5060

Deuxième partie : Elle concerne les différents modules et leur


paramétrage. Dans notre cas, seul le module Mysql est utilisé. Il faut alors
décommenter les lignes comme ci-dessous : [14]

#Modules sections
...
loadmodule "mysql.so"
...
loadmodule "auth.so"
loadmodule "auth_db.so"
...
modparam("usrloc", "db_mode", 2)
...
modparam("auth", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
...

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 82
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Troisième partie : C’est la partie qui assure le routage des paquets SIP.
Il s’agit d’un script avec une syntaxe proche de celle du langage C. Il
définit les opérations à effectuer à la réception des requêtes SIP
individuelles. Pour un routage simple des paquets SIP, il n’est pas
modifié. Cependant, puisque dans notre cas nous avons rajouté le module
Mysql, il a fallu décommenter certaines lignes et rajouter les informations
concernant notre domaine.

####### Routing Logic ########

# main request routing logic

route{


if (!(method=="REGISTER") && from_uri==myself)


{
if (!proxy_authorize("6finance.bj", "subscriber")) {
proxy_challenge("6finance.bj", "0");
exit;
}
if (!check_from()) {
sl_send_reply("403","Forbidden auth ID");
exit;
}


if (is_method("REGISTER"))
{
# authenticate the REGISTER requests (uncomment to enable auth)
if (!www_authorize("6finance.bj", "subscriber"))
{
www_challenge("6finance.bj", "0");
exit;
}
}


Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 83
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

4. Redémarrage du service

Après avoir écrit les fichiers de configuration, nous avons redémarré


le serveur avec la commande :

# /etc/init.d/openser restart

La commande

# openser

nous a permis de vérifier l’état de notre serveur.

Figure 5.3 : Etat du serveur OpenSER

5. Ajout des utilisateurs SIP

Pour l’authentification des utilisateurs, il est nécessaire de créer au


préalable ses utilisateurs dans notre base de données grâce au module
Mysql d’OpenSER. Nous avons exécuté la commande :

# openserdbctl create

Cette commande permet de créer la base donnée Mysql et les


différents tables nécessaire pour l’authentification. Ensuite nous avons
ajouté les utilisateurs avec la commande :

# openserctl add <nom> <mot_de_passe> <email>

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 84
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

C. Configuration des clients

1. Installation des Softphones

Au niveau des postes clients, nous avons choisi d’installer le


Linphone compte tenu de ses différentes caractéristiques énoncées
précedemment et surtout parce que nous utilisons l’environnement
Gnome avec lequel il est compatible. Nous l’avons installé avec la
commande :

# apt-get install Linphone

2. Configuration de Linphone

Comme nous l’avons dit plus haut, Linphone possède une interface
graphique qui facilite sa configuration et son utilisation.
La figure qui suit, montre l’interface obtenue après lancement du logiciel.

Figure 5.4 : Interface graphique de Linphone

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 85
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Pour la configuration, on active d’abord le protocole IPv6.

Figure 5.5 : Activation du protocole IPv6 pour Linphone

Ensuite, on passe dans l’onglet SIP pour renseigner l’URL SIP de


l’utilisateur et l’adresse de notre serveur SIP.

Figure 5.6 : Configuration du proxy SIP

L’URL SIP se présente sous la forme : [3]


SIP: nom@[adresse_IPv6_serveur]

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 86
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Enfin il faut s’authentifier auprès du serveur en indiquant le mot de


passe de l’utilisateur spécifié.

Figure 5.7 : Authentification d’un utilisateur

III. Supervision et Analyse des performances du réseau

A. Choix des outils de supervision et d’analyse

Dans la conception d’un réseau, l’une des parties les plus


importantes concerne la supervision du réseau. Elle se fait à travers la
capture de paquets et la supervision des différents serveurs grâce à des
outils adéquats. Parmi ces outils nous avons NetStat et Wireshark. Le
premier nous permet de connaître les connexions TCP actives sur le
serveur et ainsi de lister l'ensemble des ports TCP et UDP ouverts sur
l'ordinateur tandis que le second permet de capturer différents types de
paquets suivant un protocole bien défini.

1. NetStat

La commande NetStat, pour « network statistics », est une


commande en ligne affichant des informations sur les connexions
réseaux, les tables de routage et un certain nombre de statistiques. La
commande possède plusieurs arguments qui permettent d’affiner le
résultat à obtenir. On a :

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 87
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

« -a » : Affiche toutes les connexions TCP actives et les ports TCP et


UDP sur lesquels l'ordinateur écoute.
« -p » : Affiche le nom du programme impliqué dans la création de
chaque connexion et le PID associé (Linux uniquement).
« -e »: Affiche les statistiques Ethernet comme le nombre d'octets et de
paquets envoyés et reçus. Ce paramètre peux être combiné avec -s.
« -n» : Affiche les connexions TCP actives, cependant les adresses et les
ports sont affichés au format numérique, sans tentative de résolution de
nom.
« -s »: Affiche les statistiques par protocole. Par défaut, les statistiques
sont affichées pour IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP et
UDPv6. L'option -p peut être utilisée pour spécifier un sous-jeu de la
valeur par défaut.

2. Wireshark

Wireshark autrefois appelé Ethereal, est l'analyseur réseau le plus


populaire. Cet outil extrêmement puissant fournit des informations sur des
protocoles réseaux et applicatifs à partir de données capturées sur un
réseau. Comme un grand nombre de programmes, il utilise la librairie
réseau pcap pour capturer les paquets.
La force de Wireshark vient de:
 sa facilité d'installation.
 sa simplicité d'utilisation grâce à son interface graphique.
 son très grand nombre de fonctionnalités.
Wireshark est multiplateforme, il fonctionne sous Windows, Mac OS,
Linux, Solaris, ainsi que sous FreeBSD. Il reconnait 759 différents
protocoles.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 88
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

B. Installation et exécution de NetStat et Wireshark

1. Installation

Par défaut, l’utilitaire NetStat est installé sur notre serveur. Pour
Wireshark, nous l’avons installé grâce à la commande :

# apt-get install Wireshark

2. Supervision et analyse

Pour l’exécution, nous avons défini plusieurs scenarii. Pour notre


prototype, nous disposons de deux postes clients PC1 et PC2 et du
serveur.
Scenario 1 : Supervision des différents services
Dans le terminal de notre serveur, nous avons exécuté la
commande
# Netstat -lnp

La figure suivante montre un extrait du résultat obtenu.

Figure 5.8 : Résultat de la commande « netstat –lnp »

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 89
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Analyse du résultat obtenu

On remarque sur la capture d’écran présentée ci-dessus que tous


les services sont actifs sur notre serveur. De plus, on remarque que les
protocoles de couche 4 utilisés par les services en IPv6 sont différents de
ceux utilisés par les services en IPv4. Par exemple pour le service de
nom, il utilise à la fois les protocoles TCP6 et UDP6 sur le port 53 tandis
que le daemon OpenSER utilise UDP6 sur le port 5060.

 Scénario 2 : L’auto-configuration des postes clients

L’auto-configuration des postes clients avec Radvd expliquée plus


haut s’effectue avec des échanges de paquets ICMPv6. Nous avons
exécuté Wireshark sur notre serveur et l’avons paramétré pour la capture
des paquets ICMPv6. Nous avons ensuite connecté à notre réseau un
poste client non configuré. Nous avons la capture d’écran ci-dessous :

Figure 5.9 : Auto-configuration avec Radvd

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 90
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Analyse

On remarque que le serveur envoie de façon périodique un paquet


ICMPv6 avec le champ « type » égal à 134 et correspondant à un paquet
de type « Router Advertissement » à l’adresse multicast ff02::1 en utilisant
son adresse IPv6 de lien. Ceci est possible grâce aux lignes ci-dessous
écrites dans le fichier de configuration de Radvd.
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;

Ce paquet contient le préfix réseau indiqué dans le fichier de configuration


de radvd.
De plus, lorsqu’on connecte le poste client au réseau, il envoie
automatiquement un paquet ICMPv6 avec le champ « type » égal à 133
et correspondant à un paquet de type « Router Sollicitation » à l’adresse
ff02 ::2. Ces différents paquets ICMPv6 lui permettent d’acquérir le préfixe
du réseau et par suite, créer sa propre adresse du réseau en concaténant
le préfixe du réseau et son suffixe EUI-64. Dans le cas présent, le poste
client a pour adresse MAC 00 :0b :5d :53 :04 :81 , le préfixe du réseau
étant 2001 ::/64, il possède après auto-configuration l’adresse
2001 ::20b :5dff :fe53 :481.
La figure ci-dessous montre le contenu du paquet ICMPv6 de type
« router advertissement » envoyé par le serveur.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 91
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Figure 5.10 : Paquet ICMPv6 de type « Router advertissement »

On observe là clairement le champ « Prefix information » contenant toutes


les informations nécessaires à l’auto-configuration.

 Scénario 3 : Enregistrement des UA auprès du serveur OpenSER

Dans notre réseau, pour le service de voix sur IP, nous avons utilisé
OpenSER pour assurer le routage des paquets SIP et son module Mysql
pour l’authentification. Avant l’établissement de l’appel entre PC1 et PC2,
il faut que chacun d’eux s’authentifie afin de s’enregistrer auprès du
serveur. Ce scénario nous a permis d’observer ce processus. Nous avons
lancé Wireshark sur le serveur et configuré Linphone sur chacun des
postes clients. La figure qui suit, montre les paquets SIP échangés entre
le serveur et l’UA lors de l’enregistrement de l’utilisateur SIP.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 92
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Figure 5.11 : Enregistrement de l’UA


Analyse

En observant la capture d’écran, on constate que pour s’enregistrer,


l’UA envoie au serveur une requête de type « REGISTER ».Le serveur lui
répond en lui envoyant une réponse avec un code « 200 » correspondant
à une réponse « OK ». Ce processus est nécessaire avant l’établissement
d’une session SIP.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 93
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Figure 5.12 : Requête « REGISTER »

Figure 5.13 : Réponse « OK »

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 94
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

 Scénario 4 : Etablissement d’une session SIP entre PC1 et PC2

Pour mieux comprendre ce qui se passe lors de l’établissement d’un


appel, nous avons lancé Wireshark sur le serveur, puis nous avons
appelé le poste client 2 à partir du poste client 1. Nous avons assisté à
des échanges de paquets SIP entre PC1 et le serveur puis entre PC2 et
le serveur comme le montre la capture d’écran ci-dessous :

Figure 5.14 : Etablissement d’une session SIP


Analyse

Ces échanges de paquets traduisent simplement l’établissement


d’une session entre PC1 et PC2 à travers le serveur OpenSER qui
effectue là le routage des paquets SIP. Wireshark dispose d’un puissant
outil d’analyse de session SIP et qui permet d’obtenir un graphe illustrant
l’établissement d’une session SIP entre PC1 et PC2 à travers le serveur
OpenSER. Le graphe est présenté ci-après :

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 95
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Figure 5.15 : Graphe décrivant la session SIP entre PC1 et PC2

Le contenu des paquets SIP échangés lors de cette session a été


récupéré dans un fichier. Le contenu du fichier est présenté en annexe.
Après l’établissement de la session entre PC1 et PC2, la communication
entre les deux correspondants se traduit par un échange de paquets RTP.
Nous avons utilisé UDP pour le transport des paquets de voix, donc RTP
se charge ici d’assurer une bonne remise des paquets puisque la voix sur
IP est l’un des services IP qui n’autorise pas la perte de paquet.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 96
Chapitre 5 : Mise en œuvre du système de téléphonie sur IPv6 et Analyse

Conclusion

Après la mise en œuvre des différents services de base dans notre


réseau IPv6, nous avons mis en œuvre dans ce chapitre le service de
voix sur IP. En effet, la voix sur IP a de nos jours un grand succès au sein
des réseaux d’entreprise. Avec l’avènement de l’IPv6, ce service
connaitra encore un essor car il pourra s’appuyer sur les nouveautés
apportées telles que l’auto-configuration, la mobilité et la sécurité.
Au sein du Ministère de l’Economie et des Finances, il permettra de
s’affranchir d’un réseau supplémentaire pour la téléphonie au sein de
l’Intranet. Il faudra ensuite compléter la mise en œuvre de ce système de
téléphonie sur IP actuel avec les outils adéquats (passerelles) qui lui
permettront de s’ouvrir aux réseaux de téléphonie fixe (RTC) et mobile.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 97
Conclusion générale

CONCLUSION GENERALE

Avec l'évolution d'internet le protocole IPv6 devient une nécessité.


La phase de test est aujourd’hui dépassée et il faudra passer à l’étude et
à la mise en œuvre de ce protocole.
Avec IPv6, les adresses sont codées sur 128 bits, ce qui permet de
s'affranchir de toutes les contraintes liées à la pénurie d'adresses, et ce
même à long terme. De nouveaux services ont été également
développés. Le mécanisme d'auto-configuration sans état permet à une
nouvelle machine d’intégrer facilement le réseau en déterminant
automatiquement les paramètres à appliquer. La sécurité qui était
autrefois optionnelle en IPv4, y est intégrée nativement avec IPSEC. Le
panel de possibilités du protocole a été élargi surtout pour les applications
telles que la voix sur IP.
Le Ministère de l’Economie et des Finances de notre pays, qui a été
notre cadre d’étude gagnera beaucoup à passer en IPv6. Il profiterait ainsi
de tous les avantages y afférents. De plus, il faudra s’assurer de
développer des infrastructures qui, dès aujourd’hui supporte IPv6 pour
éviter un re-engineering des processus et architectures lors d’un passage
futur en IPv6. Le présent projet a permis d’étudier les différentes
spécificités du protocole IPv6 et surtout de mettre en œuvre les différents
services réseau ainsi que la téléphonie sur IP basé sur OpenSER à
travers un prototype du réseau Intranet du Ministère.
Ce projet a été pour nous, une initiation à la conception et
l’administration d’un réseau d’entreprise. Grâce à l’outil d’analyse
Wireshark nous avons pu observer et comprendre comment se fait l’auto-
configuration d’un poste de travail ainsi que l’établissement d’une session
SIP pour la Téléphonie sur IP.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 98
Références bibliographiques et webographiques

Références bibliographiques et webographiques

[1] Guy Pujolle, Juillet 2003. Les réseaux, 4e édition, éditions Eyrolles,
pp29, 30, 893-913,

[2] Romaric SOSSA, EPAC 2009, Etude et Déploiement d'un réseau de


téléphonie sur IP. Cas d'utilisation du PABX logiciel Asterisk, 110p

[3] P.O’Hanlon (UCL), S.Varakliotis (UCL), R.Ruppelt (FhG), J.Fiedler


(FhG), 2005. Realisation of IPv6/IPv4 VoIP Integration Scenarios,
79p

[4] S. Deering, R. Hinden, RFC 2460 - Internet Protocol, version 6


(IPv6) Specification, www.ietf.org/rfc/rfc2460.txt consulté le 10
Septembre 2010

[5] V. Gurbani, C. Boultond, R. Sparks, RFC 5118 - Session Initiation


Protocol (SIP) Torture Test Messages for Internet Protocol Version 6
(IPv6), www.rfc-editor.org/rfc/rfc5118.txt consulté le 10 Septembre
2010

[6] http://www.frameip.com/VoIP/ consulté le 11 Septembre 2010

[7] http://fr.wikipedia.org/wiki/IPv6 consulté le 18 Septembre 2010

[8] http://fr.wikipedia.org/wiki/ICMPv6 consulté le 20 Septembre 2010

[9] http://livre.g6.asso.fr/ consulté le 20 Septembre 2010

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 99
Références bibliographiques et webographiques

[10] Peter Bieringer, HOWTO IPv6 Linux (fr)


http://guidespratiques.traduc.org/vf/Linux+IPv6-HOWTO.html
consulté le 18 Août 2010

[11] http://www.kamailio.org consulté le 10 Octobre 2010

[12] http://www.VoIP-info.org/wiki/view/OpenSER consulté le 10 Octobre


2010

[13] http://users.ecs.soton.ac.uk/dct05r/guides/VOIP-SER-Part1.pdf
consulté le 10 Octobre 2010

[14] http://users.ecs.soton.ac.uk/dct05r/guides/VOIP-SER-Part2.pdf
consulté le 10 Octobre 2010

[15] Linphone. http://www.linphone.org/ consulté le 20 Octobre 2010

[16] http://packages.debian.org/lenny/ consulté le 11 Novembre 2010

[17] Mohamed El Mahdi BOUMEZZOUGH, 2009, « Mise en place de


services IPv6 à l’Unité réseau du CNSR »,
www.renater.fr/IMG/pdf/Rapport_TOIP_final2.pdf consulté le 12
Novembre 2010.

[18] Migration IPv6 : enjeux de sécurité,


www.certa.ssi.gouv.fr/.../CERTA-2006-INF-004.html, consulté le 13
Décembre 2010

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 100
Annexes

ANNEXES

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 101
Annexes

ANNEXE 1 : Contenu du fichier principal de configuration d’OpenSER

# $Id: openser.cfg 4083 2008-04-24 19:26:11Z miconda $


#
# OpenSER basic configuration script
# by Anca Vamanu <anca@voice-system.ro>
#
# Please refer to the Core CookBook at
http://www.openser.org/dokuwiki/doku.php
# for a explanation of possible statements, functions and parameters.
#

####### Global Parameters #########

debug=3
log_stderror=no
log_facility=LOG_LOCAL0

fork=yes
children=4

/* uncomment the following lines to enable debugging */


#debug=6
#fork=no
#log_stderror=yes

/* uncomment the next line to disable TCP (default on) */


#disable_tcp=yes

/* uncomment the next line to enable the auto temporary blacklisting of


not available destinations (default disabled) */
#disable_dns_blacklist=no

/* uncomment the next line to enable IPv6 lookup after IPv4 dns
lookup failures (default disabled) */
#dns_try_ipv6=yes

/* uncomment the next line to disable the auto discovery of local aliases
based on revers DNS on IPs (default on) */
#auto_aliases=no

/* uncomment the following lines to enable TLS support (default off) */


#disable_tls = no
#listen = tls:your_IP:5061
#tls_verify_server = 1
#tls_verify_client = 1
#tls_require_client_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/etc/openser/tls/user/user-calist.pem"

port=5060

/* uncomment and configure the following line if you want openser to

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 102
Annexes

bind on a specific interface/port/proto (default bind on all


available) */

listen=udp:[2001::1]:5060

####### Modules Section ########

#set module path


mpath="/usr/lib/openser/modules/"

/* uncomment next line for MySQL DB support */


loadmodule "mysql.so"
loadmodule "sl.so"
loadmodule "tm.so"
loadmodule "rr.so"
loadmodule "maxfwd.so"
loadmodule "usrloc.so"
loadmodule "registrar.so"
loadmodule "textops.so"
loadmodule "mi_fifo.so"
loadmodule "uri_db.so"
loadmodule "uri.so"
loadmodule "xlog.so"
loadmodule "acc.so"
/* uncomment next lines for MySQL based authentication support
NOTE: a DB (like mysql) module must be also loaded */
loadmodule "auth.so"
loadmodule "auth_db.so"
/* uncomment next line for aliases support
NOTE: a DB (like mysql) module must be also loaded */
#loadmodule "alias_db.so"
/* uncomment next line for multi-domain support
NOTE: a DB (like mysql) module must be also loaded
NOTE: be sure and enable multi-domain support in all used modules
(see "multi-module params" section ) */
#loadmodule "domain.so"
/* uncomment the next two lines for presence server support
NOTE: a DB (like mysql) module must be also loaded */
#loadmodule "presence.so"
#loadmodule "presence_xml.so"

# ----------------- setting module-specific parameters ---------------

# ----- mi_fifo params -----


modparam("mi_fifo", "fifo_name", "/tmp/openser_fifo")

# ----- rr params -----


# add value to ;lr param to cope with most of the UAs
modparam("rr", "enable_full_lr", 1)
# do not append from tag to the RR (no need for this script)
modparam("rr", "append_fromtag", 0)

# ----- rr params -----

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 103
Annexes

modparam("registrar", "method_filtering", 1)
/* uncomment the next line to disable parallel forking via location */
# modparam("registrar", "append_branches", 0)
/* uncomment the next line not to allow more than 10 contacts per AOR */
#modparam("registrar", "max_contacts", 10)

# ----- uri_db params -----


/* by default we disable the DB support in the module as we do not need
it
in this configuration */
modparam("uri_db", "use_uri_table", 0)
modparam("uri_db", "db_url", "")

# ----- acc params -----


/* disable RADIUS support */
modparam("acc", "radius_config", "")
/* what sepcial events should be accounted ? */
modparam("acc", "early_media", 1)
modparam("acc", "report_ack", 1)
modparam("acc", "report_cancels", 1)
/* by default ww do not adjust the direct of the sequential requests.
if you enable this parameter, be sure the enable "append_fromtag"
in "rr" module */
modparam("acc", "detect_direction", 0)
/* account triggers (flags) */
modparam("acc", "failed_transaction_flag", 3)
modparam("acc", "log_flag", 1)
modparam("acc", "log_missed_flag", 2)
/* uncomment the following lines to enable DB accounting also */
modparam("acc", "db_flag", 1)
modparam("acc", "db_missed_flag", 2)

# ----- usrloc params -----


modparam("usrloc", "db_mode", 0)
/* uncomment the following lines if you want to enable DB persistency
for location entries */
#modparam("usrloc", "db_mode", 2)
#modparam("usrloc", "db_url",
# "mysql://openser:openserrw@localhost/openser")

# ----- auth_db params -----


/* uncomment the following lines if you want to enable the DB based
authentication */
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
modparam("auth_db", "db_url",
"mysql://openser:openserrw@localhost/openser")
modparam("auth_db", "load_credentials", "")

# ----- alias_db params -----


/* uncomment the following lines if you want to enable the DB based
aliases */
#modparam("alias_db", "db_url",

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 104
Annexes

# "mysql://openser:openserrw@localhost/openser")

# ----- domain params -----


/* uncomment the following lines to enable multi-domain detection
support */
#modparam("domain", "db_url",
# "mysql://openser:openserrw@localhost/openser")
#modparam("domain", "db_mode", 1) # Use caching

# ----- multi-module params -----


/* uncomment the following line if you want to enable multi-domain
support
in the modules (dafault off) */
#modparam("alias_db|auth_db|usrloc|uri_db", "use_domain", 1)

# ----- presence params -----


/* uncomment the following lines if you want to enable presence */
#modparam("presence|presence_xml", "db_url",
# "mysql://openser:openserrw@localhost/openser")
#modparam("presence_xml", "force_active", 1)
#modparam("presence", "server_address", "sip:192.168.1.2:5060")

####### Routing Logic ########

# main request routing logic

route{

if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
exit;
}

if (has_totag()) {
# sequential request withing a dialog should
# take the path determined by record-routing
if (loose_route()) {
if (is_method("BYE")) {
setflag(1); # do accouting ...
setflag(3); # ... even if the transaction fails
}
route(1);
} else {
/* uncomment the following lines if you want to enable
presence */
##if (is_method("SUBSCRIBE") && $rd ==
"your.server.ip.address") {
## # in-dialog subscribe requests
## route(2);
## exit;
##}
if ( is_method("ACK") ) {
if ( t_check_trans() ) {

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 105
Annexes

# non loose-route, but stateful ACK; must be


an ACK after a 487 or e.g. 404 from upstream server
t_relay();
exit;
} else {
# ACK without matching transaction ... ignore
and discard.\n");
exit;
}
}
sl_send_reply("404","Not here");
}
exit;
}

#initial requests

# CANCEL processing
if (is_method("CANCEL"))
{
if (t_check_trans())
t_relay();
exit;
}

t_check_trans();

# authenticate if from local subscriber (uncomment to enable auth)


if (!(method=="REGISTER") && from_uri==myself)
{
if (!proxy_authorize("6finance.bj", "subscriber")) {
proxy_challenge("6finance.bj", "0");
exit;
}
#if (!check_from()) {
# sl_send_reply("403","Forbidden auth ID");
# exit;
#}

#consume_credentials();
# caller authenticated
}

# record routing
if (!is_method("REGISTER|MESSAGE"))
record_route();

# account only INVITEs


if (is_method("INVITE")) {
setflag(1); # do accouting
}
if (!uri==myself)
/* replace with following line if multi-domain support is used */
##if (!is_uri_host_local())
{
append_hf("P-hint: outbound\r\n");
# if you have some interdomain connections via TLS
##if($rd=="tls_domain1.net") {

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 106
Annexes

## t_relay("tls:domain1.net");
## exit;
##} else if($rd=="tls_domain2.net") {
## t_relay("tls:domain2.net");
## exit;
##}
route(1);
}

# requests for my domain

/* uncomment this if you want to enable presence server


and comment the next 'if' block
NOTE: uncomment also the definition of route[2] from below */
##if( is_method("PUBLISH|SUBSCRIBE"))
## route(2);

if (is_method("PUBLISH"))
{
sl_send_reply("503", "Service Unavailable");
exit;
}

if (is_method("REGISTER"))
{
# authenticate the REGISTER requests (uncomment to enable
auth)
if (!www_authorize("6finance.bj", "subscriber"))
{
www_challenge("6finance.bj", "0");
exit;
}
##
##if (!check_to())
##{
## sl_send_reply("403","Forbidden auth ID");
## exit;
##}

if (!save("location"))
sl_reply_error();

exit;
}

if ($rU==NULL) {
# request with no Username in RURI
sl_send_reply("484","Address Incomplete");
exit;
}

# apply DB based aliases (uncomment to enable)


##alias_db_lookup("dbaliases");

if (!lookup("location")) {
switch ($retcode) {
case -1:

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 107
Annexes

case -3:
t_newtran();
t_reply("404", "Not Found");
exit;
case -2:
sl_send_reply("405", "Method Not Allowed");
exit;
}
}

# when routing via usrloc, log the missed calls also


setflag(2);

route(1);
}

route[1] {
# for INVITEs enable some additional helper routes
if (is_method("INVITE")) {
t_on_branch("2");
t_on_reply("2");
t_on_failure("1");
}

if (!t_relay()) {
sl_reply_error();
};
exit;
}

# Presence route
/* uncomment the whole following route for enabling presence
NOTE: do not forget to enable the call of this route from the main
route */
##route[2]
##{
## if (!t_newtran())
## {
## sl_reply_error();
## exit;
## };
##
## if(is_method("PUBLISH"))
## {
## handle_publish();
## t_release();
## }
## else
## if( is_method("SUBSCRIBE"))
## {
## handle_subscribe();
## t_release();
## }
##
## exit;
##}

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 108
Annexes

branch_route[2] {
xlog("new branch at $ru\n");
}

onreply_route[2] {
xlog("incoming reply\n");
}

failure_route[1] {
if (t_was_cancelled()) {
exit;
}

# uncomment the following lines if you want to block client


# redirect based on 3xx replies.
##if (t_check_status("3[0-9][0-9]")) {
##t_reply("404","Not found");
## exit;
##}

# uncomment the following lines if you want to redirect the failed


# calls to a different new destination
##if (t_check_status("486|408")) {
## sethostport("192.168.2.100:5060");
## append_branch();
## # do not set the missed call flag again
## t_relay();
##}
}

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 109
Annexes

ANNEXE 2 : Les différents paquets SIP échangés lors de l’établissement d’un appel entre
sip:zoul@[2001::20b:6aff:fe7f:befa] et sip:romaric@[2001::20b:5dff:fe53:481]

INVITE sip:zoul@[2001::20b:6aff:fe7f:befa]:5060;line=ca31a5d84ebca42
SIP/2.0
Record-Route: <sip:[2001:0:0:0:0:0:0:1];lr=on>
Via: SIP/2.0/UDP [2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.0
Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK1851534259
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>
Call-ID: 901609585
CSeq: 21 INVITE
Contact: <sip:romaric@[2001::20b:5dff:fe53:481]:5060>
Proxy-Authorization: Digest username="romaric", realm="6finance.bj",
nonce="4cee09ea9796149ce5912bd816d2c7cc0add66c8",
uri="sip:zoul@[2001::1]", response="11216daa7d8a134bc813239406d3e2f0",
algorithm=MD5
Content-Type: application/sdp
Max-Forwards: 69
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Subject: Phone call
Expires: 120
Content-Length: 338

v=0
o=romaric 123456 654321 IN IP6 2001::20b:5dff:fe53:481
s=A conversation
c=IN IP6 2001::20b:5dff:fe53:481
t=0 0
m=audio 7078 RTP/AVP 111 110 0 3 8 101
a=rtpmap:111 speex/16000/1
a=rtpmap:110 speex/8000/1
a=rtpmap:0 PCMU/8000/1
a=rtpmap:3 GSM/8000/1
a=rtpmap:8 PCMA/8000/1
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-11
SIP/2.0 100 Trying
Via: SIP/2.0/UDP
[2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.0;received=2001::1
Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK1851534259
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>
Call-ID: 901609585
CSeq: 21 INVITE
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

SIP/2.0 101 Dialog Establishement


Via: SIP/2.0/UDP
[2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.0;received=2001::1

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 110
Annexes

Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK1851534259
Record-Route: <sip:[2001:0:0:0:0:0:0:1];lr=on>
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>;tag=266093709
Call-ID: 901609585
CSeq: 21 INVITE
Contact: <sip:zoul@[2001::20b:6aff:fe7f:befa]:5060>
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

jaK.SIP/2.0 180 Ringing


Via: SIP/2.0/UDP
[2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.0;received=2001::1
Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK1851534259
Record-Route: <sip:[2001:0:0:0:0:0:0:1];lr=on>
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>;tag=266093709
Call-ID: 901609585
CSeq: 21 INVITE
Contact: <sip:zoul@[2001::20b:6aff:fe7f:befa]:5060>
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

SIP/2.0 200 OK
Via: SIP/2.0/UDP
[2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.0;received=2001::1
Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK1851534259
Record-Route: <sip:[2001:0:0:0:0:0:0:1];lr=on>
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>;tag=266093709
Call-ID: 901609585
CSeq: 21 INVITE
Contact: <sip:zoul@[2001::20b:6aff:fe7f:befa]:5060>
Content-Type: application/sdp
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 320

v=0
o=zoul 123456 654321 IN IP6 2001::20b:6aff:fe7f:befa
s=A conversation
c=IN IP6 2001::20b:6aff:fe7f:befa
t=0 0
m=audio 7078 RTP/AVP 111 110 0 3 8 101
a=rtpmap:111 speex/16000/1
a=rtpmap:110 speex/8000/1
a=rtpmap:0 PCMU/8000/1
a=rtpmap:3 GSM/8000/1
a=rtpmap:8 PCMA/8000/1
a=rtpmap:101 telephone-event/8000
ACK sip:zoul@[2001::20b:6aff:fe7f:befa]:5060 SIP/2.0
Via: SIP/2.0/UDP [2001:0:0:0:0:0:0:1];branch=z9hG4bK37da.34ebeb56.2

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 111
Annexes

Via: SIP/2.0/UDP
[2001::20b:5dff:fe53:481]:5060;received=2001:0:0:0:20B:5DFF:FE53:481;bran
ch=z9hG4bK881641294
From: <sip:romaric@[2001::1]>;tag=889048061
To: <sip:zoul@[2001::1]>;tag=266093709
Call-ID: 901609585
CSeq: 21 ACK
Contact: <sip:romaric@[2001::20b:5dff:fe53:481]:5060>
Proxy-Authorization: Digest username="romaric", realm="6finance.bj",
nonce="4cee09ea9796149ce5912bd816d2c7cc0add66c8",
uri="sip:zoul@[2001::1]", response="11216daa7d8a134bc813239406d3e2f0",
algorithm=MD5
Max-Forwards: 69
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

BYE sip:romaric@[2001::20b:5dff:fe53:481]:5060 SIP/2.0


Via: SIP/2.0/UDP [2001::20b:6aff:fe7f:befa]:5060;branch=z9hG4bK1748767368
Route: <sip:[2001:0:0:0:0:0:0:1];lr=on>
From: <sip:zoul@[2001::1]>;tag=266093709
To: <sip:romaric@[2001::1]>;tag=889048061
Call-ID: 901609585
CSeq: 22 BYE
Contact: <sip:zoul@[2001::20b:6aff:fe7f:befa]:5060>
Max-Forwards: 70
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

SIP/2.0 200 OK
Via: SIP/2.0/UDP
[2001::20b:6aff:fe7f:befa]:5060;received=2001:0:0:0:20B:6AFF:FE7F:BEFA;br
anch=z9hG4bK1748767368
From: <sip:zoul@[2001::1]>;tag=266093709
To: <sip:romaric@[2001::1]>;tag=889048061
Call-ID: 901609585
CSeq: 22 BYE
User-Agent: Linphone/2.1.1 (eXosip2/3.1.0)
Content-Length: 0

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 112
Summary

SUMMARY

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 113
Summary

Introduction

One of the major challenges for the future of the Internet is its ability
to connect billions of people and devices. A key part of scalability is the
Internet Protocol (IP). The Internet Protocol specifies how communications
take place between one device and another through an addressing
system. Each device must have an IP address in order to communicate.
However, the currently used version of the Internet Protocol, IPv4, is
expected to run out of previously unallocated addresses in 2012. IPv4
addresses, are nearing full allocation, with just 8% of addresses remaining
in March 2010.
When IPv4 addresses are fully allocated, operators and service
providers must support the newer version of the Internet Protocol (IPv6) in
order to add additional customers or devices to their networks. Otherwise,
they will need to employ complex and expensive layers of network
address translation (NAT) to share scarce IPv4 addresses among multiple
users and devices. For this reason, the timely deployment of IPv6 by
network operators and content/application providers is an increasing
priority for all Internet stakeholders. In terms of public policy, IPv6 plays an
important role in enabling growth of the Internet to support further
innovation. In addition, security, interoperability and competition issues
are involved with the depletion of IPv4.

A. Objectives

The overall objective of this project is to study the new protocol and
used it to implement basic network services and voice over IP in an
enterprise network.
First stage was to make a thorough theoretical study of the new
protocol, its technical characteristics and the different existing

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 114
Summary

mechanisms of conversion. In addition we reviewed the concepts related


to Voice over IP.
In the second part, we went to practice by installing first various
network services initially, then came to the implementation of our IP
telephony system in our IPv6 network.
To better test the theoretical concepts outlined in the first part, we
went on to capture some packets with Wireshark, which were
subsequently analyzed.

B. The protocol IPv6

IPv6 is the successor to the Internet's first addressing infrastructure,


Internet Protocol version 4 (IPv4). In contrast to IPv4, which defined an IP
address as a 32-bit number, IPv6 addresses have a size of 128 bits,
largely expanding the addressing capability of the Internet Protocol.

 Presentation
An IPv6 address is represented as eight groups of four hexadecimal
digits, each group representing 16 bits (two octets). The groups are
separated by a colon (:). A typical example of an IPv6 address is
FEDC:0000:0000:0000:0400:A987:6543:210F
The hexadecimal digits are case-insensitive.
The full representation of eight 4-digit groups may be simplified by
several techniques. Each group must contain at least one hexadecimal
digit.
Leading zeroes in a group may be omitted, each group must contain
at least one hexadecimal digit. Thus, the example address may be written
as:
FEDC:0:0:0:400:A987:6543:210F

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 115
Summary

One or any number of consecutive groups of zero value may be


replaced with two colons. This substitution may only be applied once in an
address, as multiple occurrences would create an ambiguous
representation. With this rule, the example address may be further
simplified:
FEDC::400:A987:6543:210F
The localhost (loopback) address, 0:0:0:0:0:0:0:1, and the IPv6
unspecified address, 0:0:0:0:0:0:0:0, are reduced to ::1 and ::,
respectively.

 IPv6 address classes


IPv6 addresses are classified by the primary addressing and routing
methodologies common in networking: unicast addressing, anycast
addressing, and multicast addressing.
A unicast address identifies a single network interface. The
Internet Protocol delivers packets sent to a unicast address to that specific
interface.
 An anycast address is assigned to a group of interfaces,
usually belonging to different nodes. A packet sent to an anycast address
is delivered to just one of the member interfaces, typically the nearest
host, according to the routing protocol’s definition of distance.
A multicast address is also assigned to a set of interfaces that
typically belong to different nodes. A packet that is sent to a multicast
address is delivered to all interfaces that have joined the corresponding
multicast group

 IPv6 Datagram
The header of the IPv6 packet size is fixed at 40 bytes, while in IPv4
the minimum size is 20 bytes of options that can carry up to 60 bytes. The

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 116
Summary

figure below shows the header of an IPv6 datagram. Some IPv4 fields
have been removed or are now optional, thus reducing the cost of packet
processing and bandwidth of IPv6 headers.

Version Traffic Class Flow Label


Payload Length Next Header Hop Limit

Source Address

Destination Address

 IPv6 routing
Routing is the process of forwarding packets between connected network
segments. In IPv6, packet routing is very similar to that observed in IPv4.
There are always two types of routing: static routing and dynamic routing.
The major changes are noticed in the dynamic routing where different
routing protocols have been amended to reflect the new address format
and the various innovations introduced by IPv6. We have new protocols:
RIPng, OSPFv3 ...

 IPv6 transition Mechanisms


For technical reasons, IPv6 is not directly compatible with IPv4 and
consequently, the technical transition from IPv4 to IPv6 is complex .A wide
range of techniques have been identified and implemented, basically
falling into three categories:
 Dual-stack techniques, to allow IPv4 and IPv6 to co-exist in the
same devices and networks. This allow indefinite co-existence of
IPv4 and IPv6, and gradual upgrades to IPv6 usage.
 Tunneling techniques, to avoid order dependencies when upgrading
hosts, routers, or regions. We have many methods such as Tunnel
Broker and 6to4 which exist for establishing tunnels.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 117
Summary

 Translation techniques like Teredo, to allow IPv6-only devices to


communicate with IPv4-only devices.
All these techniques can be combined.

C. The Voice over IP

The telephony over IP permits to combine the telephone and computer by


using internet protocol (IP). In ToIP, the voice is digitized and compressed
by many coding algorithms or codecs such as G.711, G.723.1, G.726,
G.729, and GSM. The Codecs’s role is to digitize analog voice and carry
across the Internet. These codecs generate some voice packets.
Afterwards, the heading RTP, UDP and IP are added to the voice packets.
It uses two categories of protocols:
 Signaling protocols: they permit to initiate and manage the
communication sessions. They permit to research IP address by
using the phone number. We have:

SIP: Session Initiation Protocol: SIP is standardized by IETF institute


(RFC 3261). It is an application layer protocol which uses 5060 port and it
looks like HTTP and SMTP protocols. SIP uses messages (request and
response) to communicate between peers. The request messages are:
 INVITE: initiates a call
 ACK: finishes an INVITE request
 OPTIONS
 BYE: stops the call
 CANCEL: cancels a running call
 REGISTER: permits to register a peer on the server

The responses are composed of integers which are coded on 3 numbers


(1xx, 2xx, 3xx, 4xx, 5xx or 6xx).

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 118
Summary

 Transport protocols: when the connection is established, the


transport protocols (RTP, UDP, RTCP) permit to transmit the voice
flow.

D. Implementation of network services in an IPv6 network

To better understand the implementation of IPv6, we developed a


local network which architecture is presented below. We chose to use
only Open Source software and operating systems. For that purpose all
machines ran on Debian lenny 5.04.

 Network architecture
Architecture simplifiée d’un réseauServer
d’entreprise
2001 ::1

2001 ::2

Switch

2001 ::EUI64

Router
Internet
Page 1

Network Architecture

 Installing network services


After designing the network, we installed basic network services like DNS,
email, web, file transfer. We noticed that all these services are already
integrating the new protocol. The table below summarizes the various
packages used in the implementation of each of these services.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 119
Summary

Services Packages used


Domain Name System Bind9
Web Apache 2
Mail Postfix , Courier-imap
File transfer ProFTP

E. Implementation of ToIPv6 service

In addition to basic network services, we have implemented the


VoIP service in our IPv6 network. We chose the software OpenSER to
which we added the authentication module based on Mysql. At the
endpoint, we used the softphone Linphone which is compatible with IPv6
and offers many advantages.

 The Open Source OpenSER


Kamailio (former OpenSER) is an Open Source SIP Server released
under GPL, able to handle thousands of call setups per second. Among
features: asynchronous TCP, UDP and SCTP, secure communication via
TLS for VoIP (voice, video), SIMPLE instant messaging and presence,
ENUM, least cost routing, load balancing, routing fail-over, accounting,
authentication and authorization against MySQL, Postgres, Oracle,
Radius, LDAP, XMLRPC control interface, SNMP monitoring. It can be
used to build large VoIP servicing platforms or to scale up SIP-to-PSTN
gateways, PBX systems or media servers like Asterisk, FreeSWITCH or
SEMS.

 Linphone
Linphone is a VoIP application available on Linux or Windows. It
uses the Session Initiation Protocol for communication and is licensed
under the GNU General Public License. Linphone uses GTK+ for GUI and

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 120
Summary

on Linux it can be also run as a console-mode application. Of course,


even though Linphone is a software tool, in order to use it, you’ll need
some basic hardware, such as a headset and a microphone. Linphone
support many audio codec such as G.711, GSM.

 Setting up our ToIPv6 system


The different steps of setting up ToIPv6 system are:
 OpenSER and MySQL module installing: We install the open
source OpenSER with all dependences and his MySQL module.
 Configuration of OpenSER: We have configured the server
OpenSER by writing his two configuration files:
/etc/openser/opnserctlrc and /etc/openser/openser.cfg.
 Creation of users in the database: For authentication, it is
necessary to create different users of our system by giving each a
name and a password.
 Softphone installation and configuration: We installed linphone
on workstations and have configured and took care to enable the
use of IPv6 protocol and indicating the OpenSER server settings.

F. Supervision and analysis of network performance

For monitoring and analyzing the performance of our network, we


used Wireshark which is a powerful tool used by most network
administrator. We then captured individual packets flowing through the
network. This allowed us to understand how the registration of a User
Agent (UA) on the OpenSER server and the initializing of a SIP session
are done.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 121
Summary

 Registration of UA
To register, the UA sends a «REGISTER» request to the server.
The server responds by sending a response with a code «200»
corresponding to «OK». This process is necessary before the
establishment of a SIP session.

 Initializing a SIP session


The Steps of iniatializing a SIP session are:
 Initiation of the call : The caller sends an «INVITE» message
 Communication: When the called accepts the call, they can now
exchange packet voice using RTP protocol.
 Finished call: At the end of the call, the caller or called sends a
«BYE» message to hang up the call.

Conclusion
With the evolution of Internet protocol IPv6 becomes a necessity.
The range of possibilities of the protocol was extended especially for
applications such as voice over IP. The test phase is now over and the
IPv6 will soon be introduced in our curricula at EPAC.
This work has enabled us first to discover the IPv6 protocol and then
to establish a corporate network "full IPv6" in order to implement network
services such as DNS, mail, web and finally VoIP. Further, with the
analysis tool Wireshark, we could observe and understand the self-
configuring of a workstation and the establishment of a SIP session for IP
telephony.

Etude et Mise en œuvre des services réseau de base et de voix sur IP dans un réseau IPv6
(Cas du Ministère de l’Economie et des Finances) 122