Étude et Mise en place d'une interconnexion
sécurisée entre systèmes autonomes : application
à l'interconnexion réseau de deux institutions.
TRAVAIL DE FIN D'ETUDES
Par
LUZAYADIO NKINZI Hordally
EPIGRAPHE
« Pour connaitre les
amis il est nécessaire de passer par le succès et le malheur.
Dans le succès, nous vérifions la quantité et dans le
malheur la qualité ».
Confucius.
DEDICACES
A mes chers parents NKINZI BUKAKA Jean Claude et NKEMBI
LEMA Evodie,
Je vous dédie ce travail pour les sacrifices tant
moral que financier endurés pour mon éducation, pour votre amour
et conseils qui ont fait de moi ce que jesuis aujourd'hui.
Ce travail est l'une de mes récompenses à
votre égard à perpétuité. Que le Dieu Tout Puissant
créateur vous bénisse.
LUZAYADIO NKINZI Hordally
RESUME
Français
L'échange sécurisé de données et
l'acheminement de ces dernières le plus rapidement possible se
positionne aujourd'hui comme l'un des chalenges dans les réseaux
informatiques lorsqu'on cherche à interconnecter deux ou plusieurs
systèmes autonomes (AS). L'objectif de ce travail, est de faire une
étude approfondie du protocole de routage BGP (Border Gateway Protocol),
d'identifier les mécanismes de sécurité des
échanges BGP et d'appliquer ces notions à l'interconnexion des
deux institutions qui sont ISP/Mbanza-Ngungu et ISP/Kisantu. Les tests
réalisés montrent que les routes implémentées
permettent de faire transiter des flux de données de manière
rapide, efficace et sécurisée. Ce travail affirme donc
l'efficacité du protocole BGP pour l'interconnexion des sites distants
et constitue donc un atout majeur pour les deux institutions
interconnectées dans l'échange des flux d'informations de tout
type sans problème.
Mots clés : Routage,
IP, Interconnexion des sites, BGP, ISP / Mbanza-Ngungu, ISP / Kisantu,
Système autonome, Sécurité des échanges,
Sécurité des données.
Anglais
The secure exchange of data and their routing as fastas
possible is nowadays one of the challenges in computer networks when seeking to
interconnect two or more autonomous systems (AS). The aim of this work is to
make a study of the routing protocol BGP (Border Gateway Protocol), to identify
the security mechanisms of BGP exchanges and to apply these concepts to the
interconnection of the two institutions (ISP/Mbanza-Ngungu and ISP/Kisantu).The
tests carried out on the configured architecture show that, the routes
implemented allow the transit of data flows in a fast, efficient and secure
manner. This work therefore affirms the effectiveness of the BGP protocol for
the interconnection of remote sites and therefore constitutes a major asset for
the two interconnected institutions in the exchange of information flows of all
types without problems.
Keywords: Routing, IP, Site
Interconnection, BGP, ISP / Mbanza-Ngungu, ISP / Kisantu, Autonomous System,
Data security.
REMERCIEMENTS
Nous avons le plaisir de présenter nos sincères
remerciements en premier lieu à Dieu tout puissant qui par son amour, sa
bienveillance et sa grâce n'a cessé de nous protéger durant
notre formation scientifique au second cycle d'études supérieures
au département d'Informatique au sein de l'Institut Supérieur
Pédagogique de Mbanza-Ngungu (ISP/Mbanza-Ngungu), option conceptions des
systèmes informatiques.
Notre gratitude s'adresse au Professeur DocteurSelain
KASEREKA KABUNGA pour avoir accepté de diriger ce
travail avec dévotion et abnégation, malgré ses multiples
occupations.
Nos remerciements s'adressent également à toutes
les autorités académiques de l'ISP/Mbanza-Ngungu en
général et à celles du département de
l'informatique en particulier pour leur encadrement et formation dont nous
étions bénéficiaires. Entre autres nous citons :
Professeur Ruffin-Benoit NGOIE, les Chefs de Travaux Alfred DIKIAVOVAKO, le
Ruffin MBAKA, Richard MBUBA, les assistants Obed YAMBA MUAMBA et PAMELA
MUKOKO.
Nous ne pouvons pas clore cette Section sans remercier tous
nos camarades entre autres : Julien ONGA, Prince MAKUAKALA, NDAKAYI
Placide, Hurcyl KIVIKA, westerBadjango, Brodellard, Guylain SENZELE, Jojo
MATETA, Christine MOMA, Nketi l'or, Grison NZAMBE, Kiningoma, Fiston
NGOLELA,pour les moments les plus merveilleux que nous avons passés
ensemble.
Que tous ceux dont le nom n'est pas repris dans ce travail
trouvent ici l'expression de notre profonde gratitude.
LUZAYADIO NKINZI Hordally
LISTE DES FIGURES
Figure 1: Le modem (source [17])
3
Figure 2: Le modem (Source [14])
12
Figure 3: Le modem (Source [14])
13
Figure 4: Le modem (Source [16])
15
Figure 5: Répéteur (source [2])
15
Figure 6: Pont (source [17])
16
Figure 7: Hub (concentrateur) (source [17])
16
Figure 8: Switch (commutateur) (source [17])
16
Figure 9: Routeur (source [17])
17
Figure 10: Network-layer Protocol Operations (source
[16])
17
Figure 11: Les opérations de routage
dynamique (source [16])
20
Figure 12: Les protocoles de routage
intérieur et extérieur (source [17])
21
Figure 13: VPN d'accès Client (source
[16])
24
Figure 14: Illustration de BGP (iBGP et eBGP)
28
Figure 15: Illustration du fonctionnement du BGP
(source [14])
29
Figure 16: Exemple d'activation de BGP sur un
routeur (Source [16])
33
Figure 17: Exemple d'annonce d'un réseau avec
BGP (Source [16])
35
Figure 18: Exemple d'utilisation des AS-paths
(Source [16])
37
Figure 19: Utilisation du paramètre Next-hop
(Source [16])
39
Figure 20: Exemple d'utilisation du paramètre
"weight" (Source [16])
40
Figure 21: Exemple d'utilisation du paramètre
local-pref (Source [14])
41
Figure 22: Exemple d'utilisation du paramètre
metric (Source [14])
42
Figure 23: Table des valeurs des distances des
protocoles (Source [15])
43
Figure 24: Exemple du filtrage basé sur le
réseau (Source [14])
45
Figure 25: Différents applications VPNS
(Source [3])
53
Figure 26: Architecture globale
56
Figure 27: Architecture Physique
Simplifiée
59
Figure 28: Architecture Physique
Simplifiée
60
LISTE DES ABREVIATIONS
1. ACL: Access Control List
2. AS: Autonomous System
3. BGP: Border Gateway Protocol
4. eBGP: Exterior Border Gateway Protocol
5. EGP: Exterior Gateway Protocol
6. H-IDS: Host Based Intrusion Detection System
7. HTTP : HyperText Transfer Protocol
8. HTTPS: HyperTexte Transfer Protocol Secured
9. iBGP: Interior Border Gateway Protocol
10. IDS: Intrusion Detection System
11. IGP: Interior Gateway Protocol
12. IP: Internet Protocol
13. IPSec: Internet Protocol Secured
14. IPv4 : Internet Protocol version 4
15. IPv6: Internet Protocol version 6
16. ISP : Institut Supérieur Pédagogique
17. LAN:Local Areal Networl
18. MODEM: Modulator Demodulator
19. NAS: Network Access Server
20. N-IDS: Network Based Intrusion Detection System
21. OSI: Open SystemsInterconnexion
22. RIP: Routing Information Protocol
23. RTP: Routing Table Protocol
24. SSL: Secure Sockets Layers
25. TCP: Transfer Control Protocol
26. VLAN: Virtual LAN
27. VPN: Virtual Private Network
INTRODUTION GÉNÉRALE
De nos jours, les réseaux informatiques ont envahi
notre vie quotidienne. L'Internetest devenu un élément
incontournable pour beaucoup de gens en général, et indispensable
pour les informaticiens en particulier. Il permet aux personnes de communiquer
comme jamais auparavant.Au centre du réseau se trouve le routeur qui
fonctionne au niveau de la couche réseau du modèle OSI (couche
3). En raison de la capacité d'acheminer les paquets en fonction des
informations de couche, le routeurest devenu le backbone d'Internet et
exécute le protocole IP. Son rôle consiste à examiner les
paquets entrants, à choisir le meilleur chemin pour les transporter sur
le réseau et à les commuter ensuite au port de sortie
approprié. Sur les grands réseaux, les routeurs sont les
équipements de régulation du trafic les plus importants.
Lorsque les réseaux sont à forte
évolution et/ou de grande taille, les protocoles de routage sont mis en
contribution. Actuellement, d'une part, le besoin en termes de trafic et de
faire transiter le plus rapidement possible les flux d'information d'un point A
à un point B ne cesse croitre. D'autre part, le souci de
sécuriser ce flux se positionne comme une action indispensable dans le
monde actuel. Pourtant, les protocoles de routage ont été
considérée très vulnérable à plusieurs types
d'attaque et n'implémentent pas de véritable couche de
sécurité.Cela peut donc affecterglobalement la
connectivité de réseau, rediriger le trafic ou causer
l'instabilité permanente dans le réseau. C'est donc autours de ce
chalenge que ce travail a été rédigé.
Pour arriver à
répondre aux exigences d'interconnexion sécurisée, il faut
mettre en place des protocoles de routage utilisant des algorithmes de routage
efficace, étudier différents algorithmes des routages pour
comprendre leur fonctionnement et faire un choix judicieux, et assurer la
sécurité de ces routes de données entre sites distants.
Les questions de nos recherches se présentent de la
manière suivante :
· Comment assurer l'interconnexion réseau fiable
de deux ou plusieurs institutions distantes ?
· Le routage peut-il être considéré
comme une solution efficace à ce problème ?
· Quel protocole de routage est-il approprié pour
l'interconnexion des sites distants ?
· Le protocole de routage BGP (Border Gateway Protocol)
peut-il être efficace pour cette interconnexion des sites?
· Quelles sont les mécanismes de
sécurité à mettre en place pour assurer la
confidentialité des échanges des flux de données entre les
sites ainsi interconnectés ?
Pour répondre aux questions posées, nous pensons
que le routage est le moyen efficace et approprié pour l'interconnexion
des sites, car en plus de l'acheminement des flux de données aux
destinateurs, le routeur choisi le meilleur chemin pour l'échange de
données. Nous pensons que le protocole BGP permettra de mettre en place
une politique optimale de partage des informations afin que l'échange
des données ne puisse poser de problèmes entre sites. Plusieurs
mécanismes de sécurité étant offert à nous,
nous pensons que les ACL (Access List) peuvent être une solution efficace
pour assurer la sécurité des échanges.
Le sujet de ce mémoire revêt d'une importance
capitale dans le sens où les échanges entressuccursales d'une
même institution ou des institutions différentes permet une
communication efficace entres services. Les échanges que permettra ce
réseau vont de la voix, fichiers et vidéos, et en toute
sécurité. Dans le cas d'une interconnexion des universités
(comme c'est le cas dans ce travail), les étudiants d'une institution A
peuvent accéder aux ressources d'une autre institution B en un temps
record et de manière sécurisée.
Pour arriver au bon port, plusieurs méthodes et
techniques ont été utilisées.
· La méthode historique nous a
permisd'étudier le passé des pour préparer
l'évolution future dans le domaine, mais aussi dans les
institutions considérées ;
· La méthode analytique nous a permis
d'analyser en détail le composant du système existant. Elle nous
a permis de décomposer les éléments du système
existant enfin de le définir, les analyser et d'en dégager les
spécificités auxquelles le nouveau système fera
face ;
· La méthode descriptive nous a permis de
décrire certains principes et concepts ;
· La technique documentaire nous a permis de consulter
divers documents pour mieux appréhender les activités qui se
déroulent dans la direction informatique.
· La technique de simulation
nous a permis de configurer les architectures choisies via un simulateur.
Dans ce travail, nous nous proposons donc d'étudier les
algorithmes de routage de BGP, le configurer dans un réseau
d'interconnexion de deux sites en utilisant et proposer un mécanisme de
sécurisé des échanges de données. Dans le temps, ce
travail se déroule au cours de l'année académique
2019-2020. Dans l'espace, les institutions ISP/Mbanza-Ngungu et ISP/Kisantu
sont les cadres d'études considérés.
Lors de la réalisation de ce travail, quelques
difficultés ont été racontées, notamment les
problèmes liés à la documentation et l'acquisition des
informations relatives aux institutions à interconnecter.
A part, l'Introduction et la conclusion
générales, ce travail est subdivisé en quatre
chapitres :
· Dans le Chapitrepremier, Concepts et
théories de base,les généralités sur les
réseaux informatiques, les protocoles routés et les protocoles de
routages sont présentés. Ce chapitre présente aussi
quelques équipements d'interconnexion réseaux.
· Dans le Chapitre deuxième, Le protocole de
routage BGP, nous présentons l'intérêt et l'objectif
d'utiliser BGP, son fonctionnement, le processus de décision BGP,
comment activer BGP sur un routeur, Comment annoncer des réseaux avec
BGP, le processus détaillé de décision BGP, le filtrage
BGP et beaucoup d'autres fonctionnalités que BGP exploite.
· Dans le Chapitre troisième,
Sécurité dans le routage IP, nous parlons de dispositifs
de sécurité (le pare-feu), différents types de firewalls,
VPN, IPsec et les ACLs.
· Dans le dernier et Chapitre quatrième,
Interconnexion et sécurisationdes sites distants : cas de
l'ISP/Mbanza-Ngungu et ISP/Kisantu, nous présentons la partie
pratique, une application de l'interconnexion et sécurisation des sites
distants. Ici, une proposition d'architecture et sa configuration sont
élucidées.
CHAPITRE 1 : CONCEPTS ET THÉORIES DE
BASE [1][2] [3][14]
INTRODUCTION
Dans ce chapitre, nous présentons brièvement
quelques concepts et théories de base sur les réseaux
informatiques. D'abord, en commençant par définir le
réseau informatique ensuite nous allons parler deséquipements
d'interconnexion utilisés dansles réseaux informatiques, les
modèles OSI et TCP/IP,enfin nous présentonsle protocole de
routage et les protocoles routés avant de parler de la
sécurisation des protocoles de routage et le VPN (Virtual Private
Network).
1.1. QUELQUES DÉFINITIONS
a.
Réseau : est un ensemble d'objets (ou entités)
interconnectes les uns avec les autres. Il permet de faire circuler des
éléments entre chacun de ces objets.
b.
Réseau informatique :est un ensemble
équipements informatiques reliés entre eux grâce à
des lignes physiques et/ou virtuelle et échangeant des informations sous
forme de données numériques (des valeurs binaires) [1].
c.
Protocole :est un ensemble des règles qui régissent
la communication entre entités.
1.2. MODÈLE DE
RÉFÉRENCE OSI
Le modèle OSI (Open System Interconnexion) est un
modèle inventé par la norme OSI par opposition de système
propriétaire, est né en 1984 (10 ans après TCP/IP). Il
définit un modèle en sept couches réseau destiné
à normaliser les échanges entre deux machines. Il définit
précisément les fonctions associées à chaque couche
[1].
Le principe adapté dans la conception de d'être
le plus indépendant possible des supports physiques. La plupart de
protocole respectent tout ou en partie les principes d'architecture OSI
(appelé aussi modèle de référence)
éditée par l'organisme de normalisation ISO (International
Standard Organization).
Comme illustré sur la Figure 1, pour réaliser
une communication aÌ travers un ou plusieurs
systèmesintermédiaires (relais), il faut:
1. Relier les systèmes par un lien physique (couche
PHYSIQUE) ;
2. Contrôler qu'une liaison peut être correctement
établie sur ce lien (couche LIAISON) ;
3. Assurer aÌ travers le relais (réseau)
l'acheminement des données et la délivrance au bon destinataire
(couche REìSEAU) ;
4. Contrôler, avant de délivrer les
données aÌ l'application que le transport s'est
réaliséì correctement de bout en bout (couche
TRANSPORT) ;
5.
Organiserledialogueentretouteslesapplications,engérantdessessionsd'échange(couche
SESSION) ;
6. Traduire les données selon une syntaxe
d'échangecompréhensible par les deux entités d'application
(couche PREìSENTATION) ;
7. Fournir aÌ l'application utilisateur tous les
mécanismesnécessaires pour masquer aÌ celle-ci les
contraintes de transmission (couche APPLICATION).
Le modèle de référence OSI, comme
illustré par la Figure 1, ne définit pas seulement les
fonctionnalités de chaque couche mais précise aussi la
dénomination des unités de donnéesmanipulées par
chacune d'elle. La Figure 1présente une synthèse des
fonctionnalités de chacune des couches composant le modèle OSI.
Figure 1: Le modem (source [17])
Encapsulation dans le modèle OSI
Chaque couche du modèleinsère un en-tête
de protocole PCI contenant les donnéesnécessaires au protocole.
La Figure 2, ci-dessous illustre le principe de l'encapsulation pour les
couches basses.
Figure 2: Le modem (Source [14])
1.3. MODÈLE TCP/IP
Le model TCP/IP (appelé aussi modèle Internet)
qui date 1976, a été stabilisé bien avant la publication
du modèle OSI en 1984. Il présente aussi une approche modulaire
(utilise de couche) mais, ce modèle ne compte que quatre couches :
· Accès réseau
· Internet
· Transport
· Application
Précédant le modèle OSI, TCP en
diffère fortement. Non seulement par le nombre de couches, mais aussi
par l'approche. Le modèle OSI spécifie des services (approche
formaliste), TCP/IP des protocoles (approche pragmatique).
Développéì au-dessus d'un environnement existant, TCP/IP
ne décrit. aÌ l'origine, ni de couche physique ni de couche
liaison de données. Les applications s'appuient directement sur le
service de transport. Aussi l'architecture TCP/IP ne comprend que deux couches
: la couche transport (TCP) et la couche inter-reìseau (IP). La Figure 3
compare les deux architectures (OSI et TCP).
Figure 3: Le modem (Source [14])
Il n'y a pas de couche application au sens OSI du terme,
c'est-aÌ-dire de couche présentant des « API »
(Application Programminglnterface) aux applications qui rendent transparents
aÌ ces dernières le ou les sous-réseauxréels de
transport utilisés. Cependant, un mécanisme particulier, les
sockets, assure une communication d'application aÌ application en
masquant les élémentsréseaux.
1.4. COMPOSANT PHYSIQUE D'UN
RÉSEAUINFORMATIQUE
1.5.1. Équipements de base de réseau
informatique
Un réseau informatique est caractérisé
par (1) un aspect matériel : le matériel
réseau (des câbles, des ordinateurs, des ressources),
c'est-à-dire les éléments physiques qui composent le
réseau.(2) un aspect logiciel : les protocoles de
communication.
Notons que chaque type de réseau nécessite un
matériel spécial ainsi que des protocoles bien
déterminés.
a) Serveur : les serveurs sont des
ordinateurs puissants qui fournissent des ressources partagées aux
utilisateurs. Ils disposent d'une carte réseau, d'un ou plusieurs
processeurs, d'un mémoire vive importante, de plusieurs disques durs et
des composants logiciels de communication.
Un serveur assume un seul ou plusieurs de tâches, nous
pouvons citer :
· Serveur de fichiers : stockage des données
des utilisateurs ;
· Serveur d'impression : stockagedes files
d'attente;
· Serveur d'authentification : gère les
connexions des utilisateurs.
· Etc.
b) Clients : tout type d'ordinateur ou
terminal, quel que soit son système d'exploitation (Windows, linux,
Macintosh) muni d'une carte réseau et des composants logiciels de
communication. Les clients accèdent aux ressources partagées
fournies par serveur de réseau.
c) Liaisons :les liaisons s'effectuent
à l'aide de câble (liaison filière, paire torsadé,
fibre optique, câble coaxial, etc.) ou sans câble (radio, infra
rouge).
d) Carte réseau :pour relier un
ordinateur à un réseau, il faut aussi disposer d'une carte
réseau situé généralement à
l'intérieur de l'ordinateur. Elle comporte à son
extrémité un connecteur (port) qui permet d'insérer un
câble du serveur.
e) Données partagées :ce
sont des fichiers accessibles sur les serveurs du réseau. Les
données des utilisateurs ne sont plus stockées sur un disque dur
local, mais sur des espaces de stockage hébergés par des serveurs
(disque dur, Cd-Rom) ou archivés sur des supports amovibles.
1.5.2. Équipements d'interconnexion
L'interconnexion des réseaux peut être
locale : les réseaux sont sur le même site
géographique. L'interconnexion peut aussi concerner des réseaux
distants, il est alors nécessaire de relier ces réseaux par une
liaison téléphone.
a) Modem :les modems
(modulateur/démodulateur) permettent aux ordinateurs d'échanger
des données par l'intermédiaire des réseaux
téléphoniques. Le modem émetteur a pour rôle de
convertir les données de l'ordinateur (données numériques)
pour les rendre transmissibles à travers la ligne
téléphonique (signaux analogique).
Figure 4: Le modem (Source [16])
b) Répéteur :un des
problèmes les plus gênants lors de la construction d'un
réseau est la limitation en termes de distances qui est introduite par
les mediums de communication. En effet, plus un câble n'est long, plus
l'atténuation du signal qui circuler sur ce câble leva être
grande.
Figure 5: Répéteur (source [2])
c) Pont :un Pont est un appareil qui
permet aux ordinateurs d'un réseau d'échanger des
informations :
· La création d'inter-réseau : les
Ponts servent à relier les réseaux isolés pour leur
permettre de fonctionner ensemble sous la forme d'un même grand
réseau.
· La subdivision d'un réseau existant.
Un pont permet de :
· La création d'inter-réseaux
· La subdivision d'inter-réseaux existant
· Le filtrage
Notons que les ponts améliorent ainsi les performances
des réseaux qu'ils séparent en ne faisant suivre les informations
à un réseau donné que lorsque c'est nécessaire.
Figure 6: Pont (source [17])
d) Concentrateur (Hub) et Commutateur (Switch)
Un Hub ou Switch est un système de connexion
centralisé ou se rejoigne tous les câbles. Les réseaux
modèles utilisent presque tout ce type d'équipement. Il
possède généralement 4, 8, 16, ou 32 ports.
e) Un Hubconstitue un
« répéteur multiports » car tout signal
reçu sur un port est répété (diffusé) sur
tous les autres ports.
Figure 7: Hub (concentrateur) (source [17])
f) Un Switchconstitue « un pont
multiports » car il filtre le trafic pour l'acheminer uniquement vers
son destinateur.
Figure 8: Switch (commutateur) (source [17])
g) Passerelle :c'est une interface qui
permet de relier des réseaux des types différents ainsi, il est
possible d'utiliser une passerelle pour transférer des informations
entre un réseau de Macintosh et un réseau PC.
h) Un Routeur :un routeur permet de
relier différents réseaux les uns aux autres. Il a pour
rôle de diriger les informations dans la direction appropriée.
Figure 9: Routeur (source [17])
1.6.
Les Protocoles routés
Un protocole routé est un protocole réseau dont
l'adresse de couche réseau fournit suffisamment d'informations pour
permettre l'acheminement d'un paquet d'un hôte vers un autre, sur la base
du modèle d'adressage. Les protocoles routés définissent
le format des champs d'un paquet. Ainsi donc les protocoles routés sont
des protocoles d'adressages qui peuvent traverser les routeurs pour être
envoyés vers d'autres routeurs, d'autres réseaux. Les protocoles
d'adressage tels queIP, IPX, DECnet et Appletalk peuvent traverser les
routeurs, donc ils sont des protocoles dits routables. Par contre, Netbeui est
un protocole qui n'est pas routable, alors les paquets Netbeui ne peuvent pas
passer d'un routeur à un autre pour arriver à la destination.
Une solution pour Netbeui est que les messages soient
encapsulés par un autre protocole qui peut passer les routeurs, comme IP
par exemple. Netbeui n'est pas routable seul car il n'y a aucune
hiérarchie. Netbeui a été fait pour les petits
réseaux locaux et pour être un protocole de transfert rapide des
données. Par rapport à Netbeui, IP hiérarchise
l'identification du poste selon un numéro de réseau, de
sous-réseau et de poste; des regroupements.
Ci-dessous nous proposons, dans la figure 1, un schéma
où le poste X envoie un paquet au poste Y. Pour que le paquet arrive
à la destination indiquée, il doit traverser plusieurs noeuds
(routeurs) dont le routeur A, B et C. Pour que le paquet franchisse ces noeuds,
il se doit d'avoir un type d'adressage comme IP, IPX, DECnet ou Appletalk. Les
couches correspondantes du modèle OSI exploitées sont aussi
représentées.
Figure 10: Network-layer Protocol Operations (source
[16])
A nos jours, il convient de noter que de tous les protocoles
routés, le plus utilisé est le protocole IP. C'est pourquoi nous
nous proposons dans les lignes qui suivent de parler d'IP passant par une
explication simple de ses caractéristiques. Le protocole IPX est aussi
abordé.
1.6.1. Le protocole IP
L'Internet Protocol, généralement
abrégé IP, est un protocole de communication de réseau
informatique. IP est le protocole d'Internet.IP est un protocolede niveau 3 du
modèle OSI et du modèle TCP/IP permettant un service d'adressage
unique pour l'ensemble des terminaux connectés.
Le protocole IP est considéré comme la pierre
angulaire du réseau Internet, il réalise le transfert en
datagramme mais n'assure pas la détection de paquets en erreurs et
n'indique pas qu'une donnée est perdue (erronée) et fait
abstraction des caractéristiques de sous réseaux.
1.6.2. Fonctionnement
Lors d'une communication entre deux postes, les données
provenant des protocoles des couches supérieures sont encapsulées
dans des datagrammes à leur passage au niveau de la couche réseau
par le protocole IP. Ces datagrammes sont ensuite transmis à la couche
liaison de données (niveau 2 du modèle OSI) afin d'y être
encapsulés dans des trames.
Lorsque deux terminaux communiquent entre eux via ce
protocole, aucun circuit pour le transfert des données n'est
établi à l'avance : on dit que le protocole est non
orienté connexion. Par opposition, pour un système comme le
réseau téléphonique classique, le chemin par lequel va
passer la voix (ou les données) est établi au commencement de la
connexion : on parle de protocole orienté connexion.
1.6.3. Services délivrés par le protocole IP
Le protocole IP assure l'acheminement au mieux (best-effort
delivery) des datagrammes, non-orienté connexion. IP ne se
préoccupe pas du contenu des datagrammes, mais recherche un chemin pour
les mener à destination.
IP est considéré comme étant un protocole
nonfiable. Cela ne signifie pas qu'il n'envoie pas correctement les
données sur le réseau, cela signifie qu'il n'offre aucune
garantie pour les datagrammes envoyés pour aucun des points suivants
:
· Corruption de donnée ;
· Ordre d'arrivée des datagrammes (un datagramme A
peut être envoyé avant un datagramme B, mais le datagramme B peut
arriver avant le datagramme A) ;
· Perte ou destruction de datagramme ;
· Ré-émission des datagrammes en cas de
non-réception.
En termes de fiabilité, le seul service offert par IP
est de s'assurer que les en-têtes de datagrammes transmis ne comportent
pas d'erreurs grâce à l'utilisation de somme de contrôle
(checksum). Si l'entêted'un datagramme comprend une erreur, son checksum
ne sera pas valide et le datagramme sera détruit sans être
transmis. En cas de destruction de datagrammes, aucune notification n'est
envoyée à l'expéditeur (encore qu'un datagramme ICMP peut
être envoyé).
Pour garantir ces points de fiabilité qu'IP n'offre
pas, un protocole de niveau supérieur doit être utilisé.
La raison principale de cette absence de gestion de la
fiabilité au niveau IP est la volonté de réduire le niveau
de complexité des routeurs et ainsi de leur permettre de disposer d'une
plus grande rapidité. L'intelligence est alors déportée
vers les points d'extrémité du réseau.
1.6.4. Avantage du protocole IP
Plusieurs avantages sont reconnus au protocole IP :
· Service en datagramme ;
· Gestion des paquets facilitée ;
· Résolution des engorgements ;
· Pas besoin d'établissement de connexion ;
· Adressage (réseau, hôte) ;
· Souplesse ;
· Extension de la source et de la destination ;
· Routage indépendant du type de routage
sélectionné.
1.6.5. Inconvénients du protocole IP
Quelques inconvénients sont a citer :
· Qualité de service peu étendue ;
· Peu de sécurité, d'où
l'implémentation de IPSec (la version 6 de IP incorpore le IPSec).
Grâce à l'évolution de la technologie dans
le domaine des réseaux, aujourd'hui la version 6 du protocole IP (IPv6)
commence à prendre de la place dans les grands réseaux à
travers le monde.
1.7.
PROTOCOLES DE ROUTAGE
Les protocoles de routage supportent un protocole routé
en fournissant les mécanismes de partage des informations de routage.
Les routeurs utilisent donc des protocoles de routage pour s'échanger et
se partager leurs tables de routage et trouver par où envoyer le paquet
afin de transmettre les paquets d'une façon performante. Notons que
lorsqu'une route est créée entre deux routeurs sans s'appuyer sur
un protocole de routage, on parle de routage statique et dans le cas contraire
on parle de routage dynamique. Ci-dessous nous présentons dans la Figure
2 les opérations du routage dynamique.
Figure 11: Les opérations de routage dynamique
(source [16])
Un protocole de routage résout essentiellement trois
problèmes :
· Il découvre les autres routeurs du réseau
;
· Il construit les tables de routage ;
· Il maintient les tables de routage à jour.
Ainsi, ils permettent à chaque routeur de pouvoir se
construire une carte des chemins possibles à travers le réseau.
Ils sont utilisés lorsque les chemins que doivent prendre les paquets
sont trouvés dynamiquement.
Aussi, un protocole de routage définit comment le
routeur communique avec ses voisins, quand il envoie les mises à jour
par exemple.
1.7.1. Classification
Le domaine global de routage a été
subdivisé en domaines de routage autonomes (AS, Autonomous System) pour
palier au problème d'encombrement du trafic et pour une meilleure
gestion de réseau. Cette division conduit à distinguer les
protocoles de routage. Deux grandes familles sont répertoriées
:
· Les protocoles intérieurs ou internes (IGP :
Interior Gateway Protocol) : utilisés entre routeurs d'un même
réseau, Les paquets de service du protocole de routage identifient le
domaine d'appartenance, tout paquet qui n'appartient pas au même domaine
est ignoré. Cette technique limite la diffusion à l'intra
réseau :
ü RIP
ü IGRP, EIGRP...
ü OSPF, IS-IS ...
· Les protocoles extérieurs ou externes (EGP :
Exterior Gateway Protocol) : utilisés pour les interconnexions de
réseaux distincts ou systèmes autonomes. Ces protocoles doivent
prendre en compte les accords commerciaux ou politiques entre systèmes
autonomes. Parmi ces protocoles nous pouvons citer le EGP, BGP (le protocole
que nous développons au chapitre 2 de ce travail), ...
Figure 12: Les protocoles de routage intérieur
et extérieur (source [17])
1.7.2. RIP: The Routing Information Protocol
RIP set un protocole Internet utilisé pour
transférer l'information entre les routeurs. Il est l'un des plus
anciens protocoles et il est basé sur l'algorithme de
Bellman-Ford pour ARPANET.
Il existe plusieurs versions de RIP, comme le Xerox
protocol,GWINFO, routed, le AppleTalk Routing Table Maintenance Protocol (RTMP)
et Banyan VINES Routing Table Protocol (RTP). La dernière version, pour
le moment, est le RIP2.
Ce protocole calcule la distance à atteindre une
destination. Il fait partie des protocoles de distance-vector, il est donc
parmi les protocoles appelés « protocole à vecteur de
distance ». L'échelle de distance est appelée hop, donc le
chemin avec le moins de hop est celui retenu par le routeur. Par défaut,
les distances sont calculées par 30 secondes. Lorsque le hop prend la
valeur 16, c'est que la destination est considérée «
unreachable ». Étant donné que le hop ne peut pas prendre
une valeur plus grande que 15, c'est une bonne façon de limiter les
boucles de routage.
RIP envoie des messages de mise à jour à
intervalle régulière ainsi que lorsque la topologie du
réseau change. Seul le meilleur chemin, celui dont le hop est le plus
petit, est gardé dans la table de routage.
Pour ce qui est de la stabilité, RIP utilise des
mécanismes comme le split-horizon et le hold-down pour prévenir
que des informations incorrectes se propagent partout dans le réseau.
RIP utilise des compteurs de temps ; un routing-update timer,
un route-timeout et un route-flush timer. Le routing-update timer est
généralement de 30 secondes, plus un léger temps (nombre
aléatoire) ajouté pour ainsi éviter les collisions qui
arriveraient si tous les routeurs envoyaient tous en même temps leurs
messages. Lorsque le temps de route-flush timer d'une destination est à
zéro, cette route est enlevée de la
table de routage.
Quelques avantages et désavantages de
RIPsont les suivants :
· Avantages : il est très facile à
implémenter. Pour un petit réseau, il ne demande presque pas de
temps pour la gestion.
· Désavantages : ce protocole ne peut atteindre
une cible (noeud ou routeur) qui compte plus de 15 hop.
1.7.3. EGP: Le Exterior Gateway Protocol
Exterior Gateway Protocol ou EGP est un protocole de routage
dans Internet. Décrit pour la première fois en octobre 1982 dans
la RFC827, il a été formalisé deux ans plus tard dans la
RFC 904. EGP est un protocole dit de bordures permettant le routage entre
différents systèmes autonomes de routage.
La version 3 de ce protocole a été
utilisée au début d'Internet. Aujourd'hui, ce protocole est
obsolète et remplacé par BGP (protocole détaillé un
peu plus bas).
Nous devons noter, que l'acronyme EGP est aussi utilisé
pour désigner, de façon générale, les protocoles de
routage extérieur ou de bordures, c'est-à-dire entre deux
systèmes autonomes différents, et par opposition aux protocoles
de routage Internet.
1.7.4. BGP: Border Gateway Protocol
C'est un protocole externe, Il a été
développé pour remplacer son prédécesseur, Exterior
Gateway Protocol (EGP) qui est un protocole faisant parti des exterior Gateway
Protocol. Ce protocole est développé dans le chapitre 2 de ce
travail.
1.8.
VPN(virtualprivate network)
1.8.1. Introduction
Les applications et les systèmes distribués font
de plus en plus partie intégrante du paysage d'un grand nombre
d'entreprises. Ces technologies ont pu se développer grâce aux
performances toujours plus importantes des réseaux locaux. Mais le
succès de ces applications a fait aussi apparaître un de leur
écueil.
En effet si les applications distribuées deviennent le
principal outil du système d'information de l'entreprise, comment
assurer leur accès sécurisé au sein de structures parfois
réparties sur de grandes distances géographiques ?
Concrètement comment une succursale d'une entreprise
peut-elle accéder aux données situées sur un serveur de la
maison mère distant de plusieurs milliers de kilomètres ? Les VPN
ont commencé à être mis en place pour répondre
à Ce type de problématique. Mais d'autres problématiques
sont apparues et les VPN ont aujourd'hui pris une place importante dans les
réseaux informatique et l'informatique distribuées. Nous verrons
ici quelles sont les principales caractéristiques des VPN à
travers un certain nombre d'utilisation type. Nous nous intéresserons
ensuite aux protocoles permettant leur mise en place.
1.8.2. Principe de fonctionnement
Un réseau VPN repose sur un protocole appelé
"protocole de tunneling". Ce protocole permet de faire circuler les
informations de l'entreprise de façon cryptée d'un bout à
l'autre du tunnel. Ainsi, les utilisateurs ont l'impression de se connecter
directement sur le réseau de leur entreprise.
Le principe de tunneling consiste à construire un
chemin virtuel après avoir identifié l'émetteur et le
destinataire. Par la suite, la source chiffre les données et les
achemine en empruntant Ce chemin virtuel. Afin d'assurer un accès
aisé et peu coûteux aux intranets ou aux extranets d'entreprise,
les réseaux privés virtuels d'accès simulent un
réseau privé, alors qu'ils utilisent en réalité une
infrastructure d'accès partagée, comme Internet.
Les données à transmettre peuvent être
prises en charge par un protocole différent d'IP. Dans Ce cas, le
protocole de tunneling encapsule les données en ajoutant un
en-tête. Le tunneling est l'ensemble des processus d'encapsulation, de
transmission et de dés encapsulation.
1.8.3. Fonctionnalités des VPN
Il existe 3 types standards d'utilisation des VPN. En
étudiant ces schémas d'utilisation, il est possible d'isoler les
fonctionnalités indispensables des VPN.
Figure 13: VPN d'accès Client (source
[16])
Le VPN d'accès est utilisé pour permettre
à des utilisateurs itinérants d'accéder au réseau
privé. L'utilisateur se sert d'une connexion Internet pour
établir la connexion VPN. Il existe deux cas
· L'utilisateur demande au fournisseur d'accès de
lui établir une connexion cryptée vers le serveur distant : il
communique avec le NAS (Network Access Server) du fournisseur d'accès et
c'est le NAS qui établit la connexion cryptée.
· L'utilisateur possède son propre logiciel client
pour le VPN auquel cas il établit directement la communication de
manière cryptée vers le réseau de l'entreprise.
Les deux méthodes possèdent chacune leurs
avantages et leurs inconvénients :
· La première permet à l'utilisateur de
communiquer sur plusieurs réseaux en créant plusieurs tunnels,
mais nécessite un fournisseur d'accès proposant un NAS compatible
avec la solution VPN choisie par l'entreprise. De plus, la demande de connexion
par le NAS n'est pas cryptée Ce qui peut poser des problèmes de
sécurité.
· Sur la deuxième méthode Ce
problème disparaît puisque l'intégralité des
informations sera cryptée dès l'établissement de la
connexion. Par contre, cette solution nécessite que chaque client
transporte avec lui le logiciel, lui permettant d'établir une
communication cryptée. Nous verrons que pour pallier Ce problème
certaines entreprises mettent en place des VPN à base de SSL,
technologie implémentée dans la majorité des navigateurs
Internet du marché.
Quelle que soit la méthode de connexion choisie, Ce
type d'utilisation montre bien l'importance dans le VPN d'avoir une
authentification forte des utilisateurs. Cette authentification peut se faire
par une vérification "login / mot de passe", par un algorithme dit
"Tokens sécurisés" (utilisation de mots de passe
aléatoires) ou par certificats numériques.
1.9.
SÉCURISATION DES PROTOCOLES DE ROUTAGE
Routage messages protocoles d'échange qui maintiennent
chaque routeur dans un réseau mis à jour sur la situation
actuelle des autres réseaux.
Quand un routeur reçoit de mauvaises informations de
routage il provoque le chaos dans le réseau. Réseaux deviennent
inaccessibles, ce qui coute temps et argent. Sécuriser les protocoles de
routage a été développés pour sécuriser que
les données contenues dans est légitime et sans erreur.
a. OSPF
OSPF prend en charge trois types d'authentification :
nulle, texte et MD5. Authentification nulle, ou tapez 0 est la valeur par
défaut et signifie qu'aucune information d'authentification est inclus
dans les paquets de mise à jour de routage. L'authentification en texte
brut ou type 1, utilise un mécanisme simple mot de passe pour
authentifier le routage des paquets de mise à jour. Authentification
MD5, ou de type 2, est le plus sur car il utilise le cryptage MD5 pour
sécuriser les mots de passe utilisés pour authentifier les
paquets de mise à jour de routage.
b. EIGRP
Authentification dans EIGRP utilise une clé
pré-partagée pour authentifier les paquets de mise à jour
de routage. Chaque routeur qui participe à la mise à jour de
routage est configuré avec une clé, qui est créé
par l'administrateur, qui permet les mises à jour devant être
authentifiée par ses concurrents. Lorsque l'authentification est
configurée sur un routeur avec EIGRP, il ne reçoit plus les mises
à jour de routage non-authentifiés.
c. IS-IS
IS-IS prend en charge deux types d'authentification :
texte clair et MD5. MD5 est l'option la plus sure, et peut être mis en
place au niveau 1 ou 2 de manière indépendante, ce qui entraine
des options de configuration souples pour les administrateurs. Avec
l'authentification MD5, les mots de passe peuvent êtremodifiés
sans perturber le flux de messages.
d. RIPv2
RIPv2 prend également en charge l'authentification MD5,
qui impose à chaque mise à jour de routage à être
authentifié avant que les mises à jour soient contenues et
appliquée à la table de routage du routeur.
CONCLUSION PARTIELLE
Dans ce chapitre, nous avons expliqué le fonctionnement
d'un réseau informatique et nous avons présenté les
différents équipements, Sécurisation des protocoles de
routage, VPN etc.Le chapitre suivant aborde présente en détail le
protocole de routage BGP.Quelques configurations de ce protocole seront aussi
exhibées dans ce chapitre.
CHAPITRE 2 : LE PROTOCOLE DE ROUTAGE BGP[11] [12][14]
[15] [16] [17]
2.1.
Introduction
Le protocole BGP permet d'établir un routage
inter-domaine entre deux systèmes autonomes, sans boucle de routage. Un
système autonome est défini par un numéro d'AS (Autonomous
System). Un AS peut désigner un ou plusieurs routeurs dépendants
d'une même entité administrative/technique.
Un numéro d'AS est compris entre 1 et 65535, deux
catégories des numéros d'AS sont répertoriées :
· Numéros publics/officiels : 1...64511
· Numéros privés : 64512...65535
Une session BGP établie entre deux routeurs d'un
même AS est une session iBGP (Interior BGP) tandis qu'une session
établie entre deux routeurs d'AS différents est une session eBGP
(Exterior BGP).BGP est le protocole officiel pour l'interconnexion des
réseaux d'opérateurs, trois catégories sont
répertoriées :
· BGP4 pour IPv4
· BGP4+ pour IPv6
· MBGP pour le Multicast
Il est à noter que, à l'origine, MBGP signifie
MultiProtocol BGP et non pas Multicast BGP. Mais, l'usage a fait que MBGP est
maintenant utilisé pour désigner les extensions Multicast de BGP,
tandis que MP-BGP est utilisé pour MultiProtocol BGP (MP-BGP
étant en outre désormais un terme couramment utilisé pour
désigner les extensions MPLS de BGP).
2.2.
INTERETS ET OBJECTIFS DE BGP
Plusieurs intérêts et objectifs sont à
répertorier :
· Indépendance vis-à-vis des protocoles IGP
: les routeurs d'un même AS peuvent utiliser plusieurs IGP
différents pour échanger entre eux des informations de routage,
et un EGP pour router les paquets à l'extérieur de l'AS.
· Le pouvoir d'échanger du trafic entre
entités indépendantes : opérateurs, réseaux de
collectes, gros sites mono ou multi connectés (« multi-homing
») souhaitant maîtriser leur politique de routage vis-à-vis
de l'extérieur.
· Avoir un protocole de routage minimisant le trafic
induit sur les liaisons : seul le différentiel est transmis lors des
échanges BGP entre deux routeurs.
· Avoir un protocole de routage minimisant la taille des
tables de routage à manipuler : possibilité d'agréger les
tables de routage via le protocole CIDR (Classless Inter-Domain Routing).
· Donner une bonne stabilité au routage par le
fait d'éviter les boucles de routage et la possibilité
d'éliminer temporairement de la table de routage des réseaux
considérés comme instables (« route flap ») en termes
d'accessibilité en y associant un compteur de pénalités
(via une politique de « dampening »). Nous avons la
possibilité de désactiver le «dampening» sur un routeur
BGP via la commande :
nobgpdampening
Nous pouvons noter que l'utilisation de « dampening
» est néanmoins de plus en plus contestée à cause des
effets de bords associés.
Avoir un protocole fonctionnant à l'échelle de
l'Internet («scalableprotocol») est aussi la preuve d'une bonne
stabilité qu'apporte BGP.
Dans la figure Xci-dessous, nous présentons
l'illustration de BGP (iBGP et eBGP)
Figure 14: Illustration de BGP (iBGP et eBGP)
2.3.
FONCTIONNEMENT DE BGP
Pour un bon fonctionnement, BGP maintient des tables de
routage, transmet des mises à jour de routage et base ses
décisions de routage sur des mesures. La première fonction du BGP
est d'échanger des informations sur ce qui est atteignable, des
informations à propos de listes de chemins de systèmes autonomes
avec les autres BGP (Figure 15). Cette information peut être
utilisée pour construire un graphe des connexions de systèmes
autonomes qui servira à briser les boucles de routages et renforcer la
prise de décisions.
Figure 15: Illustration du fonctionnement du BGP
(source [14])
La table de routage maintenue par le routeur BGP comprend des
listes de tous les chemins possibles vers un réseau particulier. Ces
routeurs ne rafraîchissent pas leur table. Les informations restent dans
la table, jusqu'à ce qu'une mise à jour soit reçue ou
effectuée.
Lorsqu'un routeur se connecte pour la première fois sur
le réseau, les routeurs BGP s'échangent entièrement leur
table de routage BGP. Lorsque la table de routage change, le routeur BGP
n'envoie que la portion qui a été modifiée. Les routeurs
BGP n'envoient pas de messages de mise à jour périodique de
routage et BGP envoie seulement dans ses messages de mise à jour le
meilleur chemin.
BGP utilise seulement une métrique pour
déterminer quel est le meilleur chemin vers un réseau. Cette
métrique est faite d'un nombre arbitraire qui spécifie le
degré de préférence d'un lien. La mesure est normalement
assignée à chaque lien par un administrateur réseau. La
valeur assignée à un lien peut être basée sur
n'importe quel nombre de caractéristiques, y compris le nombre de
systèmes autonomes qui passent par le chemin, la stabilité, la
vitesse, les délais et le coût.
Les routeurs BGP échangent des informations quant
à la manière de joindre des réseaux (liste de l'ensemble
des chemins, ou « AS-paths », pouvant être empruntés
dans le but d'atteindre une destination donnée).Il est bien sûr
possible de laisser le protocole BGP choisir systématiquement les
chemins considérés comme les meilleurs, mais il est
également possible d'intervenir sur la politique de routage, de filtrer
des réseaux ou des « AS-paths », d'appliquer des
priorités sur certains « AS-paths ».
BGP utilise TCP (Transfer Control Protocol) comme protocole de
transport (port 179).Deux routeurs BGP établissent une connexion TCP
entre eux et échangent des messages pour ouvrir et confirmer la
connexion. Ces routeurs sont alors appelés routeurs de peering («
peers ») ou voisins (« neighbors »). Les messages transmis lors
de l'ouverture de la session sont, entre autres, le numéro d'AS, la
version de BGP, le routeur ID, la valeur de « keepalive »,
dès acceptation par le voisin BGP de ces données, la session BGP
est établie.
Il est à noter que le routeur BGP conserve en
mémoire un numéro de version de la table BGP, numéro
identique pour tous les voisins BGP. Le numéro de version change
à chaque modification de la table de routage.Des paquets «
keepalive» sont envoyés pour vérifier que la connexion est
toujours bien établie entre les voisins BGP.Des paquets de notification
sont envoyés en réponse à des erreurs ou conditions
spéciales (ou lors des changements dans les tables de routage).
Le routage avec BGP se fait de l'une des trois façons
suivantes:
· Extra-autonomous system routing : se produit lorsqu'il
y a plusieurs routeurs BGP dans de différents systèmes autonomes.
Les communications entre les BGP voisins doivent être sur un même
réseau entre deux systèmes BGP. Internet est un exemple concret
de ce fait.
· Intra-autonomous system routing : se produit lorsqu'il
y a plusieurs routeurs BGP localisés dans un même système
autonome. BGP est utilisé pour déterminer lequel des routeurs
seront le point de connexion pour un système externe autonome.
· Pass-throughautonomous system routing : Se produit
lorsque plusieurs routeurs EGP s'échangent des données au travers
d'un système autonome. Le trafic dans ce système autonome peut
alors ne pas provenir de leur propre système.
2.3.1. Les messages types de BGP :
Quatre messages types sont spécifiés dans le RFC
1771; open message, update message, notification message et keep-alive
message.
· Open message : Après que la
connexion soit établie (protocole de transport), open message est le
premier message envoyé par chacun des deux routeurs.
· Update message : Il est utilisé
pour permettre une mise à jour de routage vers les autres routeurs BGP,
pour permettre aux routeurs d'avoir une bonne perspective de la topologie du
réseau. Les mises à jour envoyées utilisent TCP pour
s'assurer de la sûreté de l'envoi.
· Notification message : Ce message est
envoyé lorsqu'une erreur est détectée. Ce message est
utilisé pour fermer une session et pour informer les
périphériques connectés du pourquoi de la fin de la
session.
· Keep-alive message : Ce message dit
à l'autre BGP que l'appareil est actif. Ce message est envoyé
assez souvent pour garder la connexion.
2.4.
PROCESSUS (TRES) SIMPLIFIE DE DECISION BGP
Chaque routeur implémentant BGP manipule une table de
routage contenant la liste des réseaux (ou destinations: blocs
d'adresses) pouvant être joints, avec un ou plusieurs « AS-path
» associés à chaque réseau.Si une destination est
joignable par plusieurs chemins, c'est d'abord « l'AS-path »
associé au réseau le plus explicite qui sera choisi, ensuite,
sauf politique de routage spécifique, c'est « l' ASpath » le
plus court qui sera sélectionné : plus il est court et moins on
traverse d'AS, donc de réseaux différents, et donc le temps de
transit pour accéder à la destination est supposé
être court. Par défaut le meilleur « AS-path »
(appelé « best-path ») sera choisi par le routeur, mais si un
problème (panne par exemple) arrive sur ce chemin, automatiquement le
routeur BGP recherche le nouveau «best-path » ;
Des fonctionnalités permettent de modifier la politique
de routage utilisée par défaut par BGP pour la sélection
des chemins : possibilité d'appliquer plusieurs types/niveaux de
priorité à un «ASpath », indépendamment de la
longueur de cet « AS-path » ;
En ultime recours, si deux «AS-paths » (ou plus)
sont de même longueur, et que tous les types/niveaux de priorité
sont identiques, alors c'est le voisin BGP qui a l'adresse IP la plus
«basse » qui est choisi.
Nous présentons à cet effet un exemple des
décisions simplifiées de BGP :
shipbgp193.40.0.0
BGP routing table entry for 193.40.0.0/16, version
18525585
Paths: (4 available, best #1, table
Default-IP-Routing-Table)
Advertised to peer-groups: V4-IBGP-to-CLIENT-RR
V4-EBGP-to-CLIENT-FULL
Advertised to non peer-group peers:
193.51.178.12 195.154.252.10
20965 3221, (Received from a RR-client),
(received & used)
62.40.103.53 (metric 3) from 193.51.178.11
(193.51.178.11)
Origin IGP, localpref 350, valid, internal, best
Community: 2200:20965
20965 3221, (received & used)
62.40.103.53 (metric 3) from 193.51.178.12
(193.51.178.12)
Origin IGP, localpref 350, valid, internal
Community: 2200:20965
Originator: 193.51.178.11, Cluster list:
195.220.98.17
5511 1299 20965 3221
193.51.185.1 from 193.51.185.1 (193.251.151.104)
Origin IGP, metric 40, localpref 300, valid,
external
Community: 2200:5511
5511 1299 20965 3221,
(received-only)
193.51.185.1 from 193.51.185.1 (193.251.151.104)
Origin IGP, metric 10, localpref 100, valid,
external
Community: 5511:666 5511:710 5511:5511, mpls labels in/out
unknown/exp-null
Dans cet exemple, le meilleur chemin est le #1 car il a une
LOCALPREF de 350 (contre 300 et 100 pour les autres). Le chemin #2 est aussi
connu avec une LOCALPREF de 350 et les AS-path 1 et 2 sont de même
longueur, par contre, le chemin #1 est connu par un voisin BGP dont l'adresse
est plus basse (193.51.178.11 contre 193.51.178.12).
2.5.
ACTIVATION DE BGP SUR UN ROUTEUR
Pour que nous puissions utiliser BGP sur un routeur, nous
devons de prime à bord l'activer sur notre routeur:
2.5.1. Activation de BGP sur un routeur
· Déclaration d'un routeur BGP :
routerbgp[numéro d'AS]
Il est à noter que par définition, un routeur
BGP n'appartient qu'à un seul AS, et il n'est donc pas possible
d'utiliser plusieurs lignes de commande « router bgp » sur un
même équipement. Par contre il est tout à fait possible de
configurer, par exemple, plusieurs lignes de commande «router ospf
».
· Déclaration d'un voisin BGP :
neighbor[adresse IP du voisin]
remote-as [numéro d'AS du voisin]
C'est à ce niveau qu'on définit les voisins avec
lesquels le routeur x va définir des routes, avant de penser aux
réseaux à annoncer aux voisins ou à recevoir d'eux. La
figure ci-dessous illustre un exemple concret de l'activation du protocole BGP
sur un routeur
Figure 16: Exemple d'activation de BGP sur un routeur
(Source [16])
Il est à noter que les routeurs iBGP n'ont pas besoin
d'être directement interconnectés à partir du moment
où il y a un IGP les autorisant à s'atteindre mutuellement, alors
qu'il est très fréquent que deux routeurs eBGP soient directement
interconnectés.
Configuration
Configuration routeur R1
routerbgp 1 Session eBGP
neighbor 193.49.1.2 remote-as 2
Configuration routeur R2
routerbgp 2
neighbor 193.49.1.1 remote-as 1 Session
eBGP
neighbor 195.98.40.1 remote-as 2 Session
iBGP
Configuration routeur R4
routerbgp 2
neighbor 195.98.10.1 remote-as 2 Session
iBGP
Lorsque vous activez BGP sur un routeur, quelques points et
recommandations doivent être respectés :
· Pour vérifier que les voisins BGP sont
joignables, il est conseillé de faire un «ping » étendu
entre les adresses IP respectives des voisins, de façon à forcer
le routeur d'où part le « ping » d'utiliser comme source
l'adresse IP spécifiée dans la commande « neighbor »
plutôt que l'adresse IP de l'interface d'où est issue le paquet
ICMP.
· A chaque changement de configuration d'une session BGP,
il est conseillé de faire un « reset » de la session BGP pour
être sûr que les nouveaux paramètres sont bien pris en
compte :
clearipbgp[adresse IP du voisin]
[soft]
· Il est en outre conseillé de vérifier
l'état de la session BGP pour être sûr qu'elle est bien
activée :
shipbgpneighbor[adresse IP du voisin]
soit
shipbgp neighbors soit
shipbgp summary
· Quand une session BGP vient d'être
configurée sur un routeur, il est aussi conseillé de
vérifier les réseaux annoncés au voisin BGP, et les
réseaux reçus de ce dernier :
shipbgpnei[adresse IP du voisin]
advertised-routes
shipbgpnei[adresse IP du voisin]
received-routes
Notons ici que, pour que les commandes «
advertised-routes » et « received-routes » fonctionnent, il faut
ajouter une ligne spécifique au niveau du peering BGP :
neighbor[adresse IP du voisin]
soft-reconfiguration inbound
La commande suivante permet de vérifier les
réseaux réellement appris d'un voisin BGP (à
différencier de la commande « receivedroutes » qui affiche les
réseaux reçus) :
shipbgpnei[adresse IP du voisin]
routes
· Il est possible de sécuriser la session BGP en y
associant un mot de passe (il faut alors configurer le même mot de passe
sur les 2 routeurs BGP qui ont établi un peering) :
neighbor[adresse IP du voisin] password
[type cryptage (0- 7)] [mot de passe]
· Il est possible de fixer une limite sur le nombre de
réseaux en provenance d'un voisin BGP pour se protéger d'un
voisin qui annoncerait, par erreur, un très grand nombre de
réseaux, mettant en péril le routeur qui reçoit ces
annonces si sa taille mémoire est limitée (cela permet aussi
d'éviter des problèmes de routage, si un voisin qui
habituellement envoie quelques réseaux, se met à envoyer du
« full-routing ») :
neighbor[adresse IP du voisin]
maximum-prefix[nb maximum de préfixes
autorisés]
[paramètres facultatifs dont [valeur du pourcentage
d'alerte] [restart [fréquence de redémarrage de la
session BGP en cas de dépassement]] [warning-only]]
2.6.
ANNONCER DES RESEAUX AVEC BGP
Avec BGP pour que les réseaux puissent dialoguer, il
faut les annoncer de part et d'autre dans les routeurs BGP. Pour annoncer des
réseaux via BGP, il faut utiliser la commande suivante :
network[réseau] [mask [masque
réseau]]
Cette commande (network) n'aura d'effet que si le
réseau que l'on cherche à annoncer est soit connu du routeur par
une interface directement connectée, soit appris de manière
statique ou dynamique. Les réseaux annoncés via la commande
« network » auront pour origine l'AS du routeur sur lequel cette
commande est appliquée.
Il convient de noter que lors de la configuration d'un routeur
BGP, la commande «network » est à utiliser dans la section
« router bgp [numéro d'AS] ».
Ci-dessous nous présentons sur la Figure 17un exemple
concret de ces notions :
Figure 17: Exemple d'annonce d'un réseau avec
BGP (Source [16])
Configuration
Configuration sur le routeur R1
routerbgp1
network193.1.0.0 mask
255.255.255.0
network193.1.1.0 mask
255.255.255.0
neighbor193.49.1.2 remote-as
2
Configuration sur le routeur R2
routerbgp2
network193.2.0.0 mask
255.255.255.0
network193.2.1.0 mask
255.255.255.0
neighbor193.49.1.1 remote-as
1
Plusieurs variantes interviennent dans l'annonce des
réseaux avec BGP sur un routeur. Nous présentons quelques aspects
:
2.6.1. Redistribution
Plutôt que de multiplier les commandes du type «
network », il peut être souhaitable de pouvoir automatiquement
réinjecter tout ou une partie des réseaux d'un IGP (RIP, IS-IS,
OSPF) dans l'EGP : c'est la commande « redistribute » qui remplit ce
rôle. Il est aussi possible de réinjecter dans BGP des «
routes » statiques, mais ces réseaux seront marqués avec une
origine « inconnue » dans la table de routage (réseaux
marqués « ? »).
Par défaut, si aucun filtrage particulier n'est
configuré sur le routeur eBGP, ce dernier va retransmettre à ses
voisins l'intégralité des réseaux connus (en fait tous les
« best-paths») dans sa table de routage (protocole transitif).
D'où, par exemple, la nécessité pour ce routeur eBGP, de
ne pas forcément tout rediffuser à d'autres voisins eBGP. La
fonction «distributelist », associée à la commande
« neighbor », remplit ce rôle:
neighbor[adresse IP du voisin]
distribute-list[numéro d'ACL] [in | out]
2.6.2. Synchronisation
Une des règles de BGP précise qu'un routeur ne
doit pas annoncer, à ses voisins eBGP, de réseaux appris par des
voisins iBGP par exemple, à moins que ces réseaux ne soient
également propagés au sein de l'AS. Ce principe s'appelle la
« synchronisation BGP ».
Il est possible de désactiver la synchronisation BGP
sur un routeur, surtout si un « full-mesh » iBGP est
configuré, garantissant ainsi que la destination reste joignable dans
l'iBGP. Pour désactiver la synchronisation, il faut appliquer la
commande suivante dans la section « router bgp [numéro d'AS]
»:
no synchronisation
2.6.3. Masques CIDR
BGP est un protocole «classless », et il est
possible d'annoncer aussi bien des « subnets » que des «
supernets » (en IPv4, un « subnet » correspond à un
masque CIDR > /24, un « supernet » correspond à un masque
< /24).
Tel est le cas de:
a) 193.1.0.0/25 <=>193.1.0.0 ... 193.1.0.127
=>network 193.1.0.0 mask 255.255.255.128
b) 193.1.0.0/24 <=> 193.1.0.0 ... 193.1.0.255
=>network 193.1.0.0 mask 255.255.255.0
c) 193.1.0.0/23 <=> 193.1.0.0 ... 193.1.1.255
=>network 193.1.0.0 mask 255.255.254.0
2.7.
PROCESSUS DETAILLE DE DECISION BGP
L'algorithme de décision BGP utilise, entre autres, les
critères suivants : AS-path, origin, next-hop, local-preference, metric,
community...
2.7.1. Paramètre « AS-path »
Les routeurs BGP qui ont établi des « peerings
» entre eux s'échangent des informations de routage, au
démarrage de la sessionBGP, et à chaque modification
d'informations dans la table de routage (ex: modifications d'informations pour
un réseau particulier, ajouté, modifié ou
supprimé).
A chaque fois qu'une information du style « mise à
jour d'un réseau » traverse un AS, l'AS en question est
ajouté à l'information de routage transportée. Au fur et
à mesure que cette information progresse, d'un routeur BGP à
l'autre, le chemin d'AS ainsi constitué s'allonge : ce chemin est
appelé « AS-path ». Le dernier AS traversé sera ainsi
le premier AS à apparaître dans l'AS-path. Sauf
spécification particulière,BGP va privilégier l'AS-path le
plus court pour le considérer comme le meilleur («
bestpath»).
Dans une table de routage BGP, pour un réseau
donné, il existe alors un ou plusieurs « AS-paths » qui
représentent les différents chemins connus par le routeur pour
joindre ce réseau.Un routeur qui fait du « full-routing »
connaît l'ensemble des réseaux de l'Internet et les
différents AS-paths associés (actuellement on compte environ
240000 routes/préfixes, nombre en évolution constante).
Il convient de signaler que faire du « full-routing
» nécessite une quantité de mémoire très
importante sur un routeur, et peut être la source d'une sollicitation
importante de la CPU.Il est noté qu'afin d'éviter les boucles, un
routeur eBGP n'acceptera pas d'un autre routeur les informations de routage qui
ont pour origine son propre AS
Figure 18: Exemple d'utilisation des AS-paths (Source
[16])
Dans cet exemple R1 a établi un peeringeBGP avec R2, R2
a établi un peeringeBGP avec R3, R1 a aussi établi un peeringeBGP
avec R3, et on prend comme hypothèse que R2 autorise le transit.
Le routeur R1 connaîtra alors les AS-paths suivants :
ü AS-path {3} pour joindre 193.3.0.0/24 et 193.3.1.0/24
(car peering direct entre R1 et R3) mais aussi AS-path {2 3} pour ces
réseaux car R2 autorise le transit et les annonce à R1.
ü AS-path {2} pour joindre 193.2.0.0/24 et
193.2.1.0/24
2.7.2.Paramètre «Origin »
Le paramètre « Origin » définit
l'origine de l'information du chemin. Il peut avoir l'une des valeurs
suivantes, en fonction de la«NLRI» (Network Layer Reachability
Information) :
· « IGP » : la NLRI vient de l'AS d'origine (un
« i » apparaît dans l'information de routage). un réseau
annoncé via la commande «network » ou via agrégation
sera considéré comme Internet à l'AS.
· « EGP » : la NLRI est apprise par un EGP (un
« e » apparaît dans l'information de routage)
· « Incomplete » : la NLRI est inconnue (un
« ? » apparaît dans l'information de routage) (exemple : une
route statique redistribuée dans BGP)
Il y a lieu de souligner qu'afin d'éviter les boucles,
un routeur eBGP n'acceptera pas les informations de routage qui ont pour
origine son propre AS.
2.7.3. Paramètre « next-hop »
Le paramètre « next-hop » est l'adresse IP du
voisin qui va être utilisé pour joindre une destination
donnée.
Pour eBGP, le « next-hop » est, par défaut,
l'adresse IP du voisin spécifiée dans la commande « neighbor
».Pour iBGP, le « next-hop » n'est pas forcément le
voisin directement connecté, car iBGP considère que la valeur de
« next-hop » annoncée par eBGP doit être
transportée dans iBGP (donc valeur de « next-hop » non
modifiée).
Il est possible de forcer BGP à utiliser une adresse IP
comme «next-hop », plutôt que de laisser le protocole
décider par lui-même. C'est le paramètre «
next-hop-self », associé à la commande « neighbor
», qui remplit ce rôle :
neighbor[adresse IP du voisin]
next-hop-self
Nous présentons ci-dessous un exemple d'utilisation de
next-hop
Figure 19: Utilisation du paramètre Next-hop
(Source [16])
Dans l'exemple ci-dessus :
ü Le routeur R1 va considérer que pour joindre les
réseaux
193.2.0.0/24 et 193.2.1.0/24, son next-hop est 193.49.1.2
ü R2 va considérer que pour joindre les
réseaux 193.1.0.0/24 et
193.1.1.0/24, son next-hop est 193.49.1.1
ü R3 va considérer que pour joindre les
réseaux 193.1.0.0/24 et
193.1.1.0/24, son next-hop est 193.49.1.1 (et non
pas195.98.10.1).
2.7.4. Paramètre « weight »
Le paramètre « weight » est utilisé
pour la sélection du meilleur chemin, ce paramètre
propriétaire Cisco reste Internet au routeur BGP sur lequel il est
configuré, il n'est jamais propagé lors d'un «update »
BGP. C'est donc un paramètre à utiliser avec modération,
car il y a risque de routage asymétrique : un routeur R1 peut
décider d'attribuer une valeur « weight » élevée
aux réseaux reçus d'un routeur R2, mais ce dernier peut
décider de ne pas accorder de priorité aux réseaux
reçus de R1. Il est préférable d'utiliser des techniques
basées sur l'« ASprepending » (répétition d'un
même AS pour allonger artificiellement l'ASpath), les
«communautés BGP » ou des « metric ».
Notons que pour une même destination, les réseaux
marqués avec la valeur «weight » la plus forte sont
préférés aux autres réseaux.
Ci-dessous, nous présentons sur la Figure 20un exemple
d'utilisation du paramètre «weight »
Figure 20: Exemple d'utilisation du paramètre
"weight" (Source [16])
Il est possible de marquer tous les réseaux
reçus d'un voisin BGP avec une valeur « weight »
particulière :
neighbor[adresse IP du voisin]
weight [valeur weight]
Dans l'exemple ci-dessus, si R2 préfère
systématiquement R3 à R1, voici la configuration possible de R2
:
Configuration routeur R2
routerbgp2
neighbor193.49.1.1 remote-as
1
neighbor193.49.1.1 weight
100
neighbor195.98.10.2 remote-as
3
neighbor 195.98.10.2 weight 200
Il est aussi possible de marquer les réseaux
reçus d'un voisin BGP avec une valeur « weight »
donnée, via une « filter-list » ou via une
«route-map», mais ces méthodes sont plutôt à
utiliser si le but est de marquer avec une valeur «weight » une
partie seulement des réseaux reçus d'un voisin, ou de marquer les
réseaux reçus avec des valeurs «weight »
différentes en fonction de certains critères.
2.7.5. Paramètre « local-preference »
Le paramètre « local-preference » ou «
local-pref » est utilisé au sein d'un AS pour préciser quel
est le meilleur chemin pour sortir de l'AS afin d'atteindre un réseau
donné.Nous devons retenir que le paramètre « local-pref
» est propagé au sein d'un même AS lors d'un « update
» BGP.
Pour une même destination, les réseaux
marqués avec la valeur « local-pref » la plus forte sont
préférés aux autres réseaux. La valeur de «
local-pref » par défaut est 100. Mais il est possible de modifier
cette valeur et en appliquer une nouvelle :
1. Au niveau du routeur BGP, via la commande :
bgp default local-preference [valeur
local-pref]
2. Au niveau d'un ou plusieurs peerings configurés sur
ce routeur via une «route-map », contenant la commande :
set local-preference [valeur
local-pref]
Ci-dessous, nous présentons un exemple d'utilisation du
paramètre localpref
Figure 21: Exemple d'utilisation du paramètre
local-pref (Source [14])
Dans l'exemple ci-dessus, les routeurs de l'AS 2 peuvent
joindre le réseau ou la destination X de plusieurs manières (via
l'AS 1 ou via l'AS 3). Une «local-preference » est donc
appliquée sur les réseaux appris de AS 1 et de AS 3 pour
prioriser par exemple la porte de sortie via AS 3 quand l'AS 2 veut joindre la
destination X.
2.7.6. Paramètre «metric» ou « MED
» (Multi Exit Discriminator)
Le paramètre MED a pour objectif de forcer un routeur
externe à un AS (routeur eBGP) de choisir un chemin particulier pour
joindre un réseau de l'AS, alors que ce routeur externe dispose de
plusieurs chemins possibles pour cela.
Il est à noter que la valeur du paramètre «
metric » est échangée entre deux AS, mais n'est ensuite pas
retransmise par le routeur qui reçoit l'information. C'est ce qui
signifie que pour une même destination, les réseaux marqués
avec la valeur de « metric » la plus faible sont
préférés aux autres réseaux. Tandis que la valeur
de « metric » par défaut est 0. Mais il est possible de
modifier cette valeur et en appliquer une nouvelle, au niveau d'un ou plusieurs
peerings configurés sur ce routeur via une « route-map »,
contenant la commande :
setmetric[valeur metric]
Il est important de signaler que, par défaut, pour
établir le choix du meilleur chemin, BGP ne va comparer que les valeurs
de MED au sein d'un AS, et pas les valeurs de MED venant d'un autre AS. Pour
que BGP compare l'ensemble des valeurs de MED (y compris celles envoyés
par d'autres AS) il faut activer la commande suivante sur le routeur :
bgpalways-compare-med
Voici à cet effet un exemple d'utilisation du
paramètre metric(Figure 22)
Figure 22: Exemple d'utilisation du paramètre
metric (Source [14])
Dans l'exemple ci-dessus, l'AS2 est doublement
interconnecté à l'AS 1. L'AS 2 peut donc décider de forcer
l'AS 1 à passer en priorité par l'un des deux chemins (ici, en
l'occurrence par le chemin R1-R21 plutôt que par le chemin R1-R22).
Notons que, si au lieu de définir un chemin principal
et un chemin secondaire, on décidait par exemple d'opter pour un partage
de charge, on peut faire appel à la fonctionnalité « bgp
multi path » qui consiste à établir autant de peering qu'il
y a d'interconnexion et ajouter la commande ci-dessous dans la section «
router bgp [numéro d'AS du voisin] » (un partage est alors
effectué en fonction des destinations).
maximum-paths[nombre de chemins]
2.7.7. Paramètre « community »
Le paramètre « community » ou «
communauté » permet de rassembler dans un même groupe
plusieurs réseaux ou destinations et d'y appliquer des décisions
de routage communes. On peut ainsi « marquer » des réseaux
avec une communauté et y appliquer un traitement spécifique, ce
qui est le plus pratique pour créer une «communauté »
est d'utiliser une «route-map » contenant la commande :
setcommunity[numéro de
communauté] [additive]
Une attention est à attirer, à cet effet, si
l'option «additive » n'est pas mentionnée dans la commande,
alors la communauté en question va écraser les autres
informations de communauté.
2.7.8. Paramètre « distance »
Plusieurs protocoles différents (IGP ou EGP) peuvent
cohabiter sur un routeur, d'où la nécessité de prioriser
certains protocoles par rapport à d'autres pour éviter des
confusions. Aussi, chaque protocole a un « poids » relatif qui est
appelé « distance ». Le routeur va accorder la priorité
à une information issue du protocole dont la valeur de distance est la
plus faible.
Valeurs de distance :
Figure 23: Table des valeurs des distances des
protocoles (Source [15])
Soulignons qu'il est techniquement possible de changer la
valeur de distance associée à BGP, mais il n'est pas du tout
conseillé de le faire !
distancebgp[distance externe (0..255)]
[distance Internet (0..255)] [distance locale (0..255)]
Les valeurs par défaut des distances ci-dessus sont
respectivement 20, 200, 200.
Un réseau appris par eBGP sera
préféré à un réseau appris par un IGP.
Plutôt que de changer la valeur de distance du protocole eBGP, il est
préférable d'utiliser la fonctionnalité BGP
«backdoor» qui permet de préférer un réseau
appris par un IGP. La fonctionnalité «backdoor » est à
appliquer sur le routeur BGP :
network[réseau]
backdoor
2.8.
ALGORITHME
Voici les principales étapes pour déterminer le
« best-path » :
1. Préférer le chemin ayant la valeur «
weight » la plus grande (paramètre propriétaire Cisco)
2. Préférer le chemin ayant la valeur «
local-pref » la plus grande.
3. Préférer le chemin ayant une origine locale,
donc généré via une commande « network » ou
«aggregate » (les réseaux générés via la
commande « network » étant eux-mêmes prioritaires par
rapport aux agrégats) ou appris via une redistribution d'un IGP.
4. Préférer le chemin ayant l'AS-path le plus
court.
5. Préférer le chemin avec le type d'origine le
plus petit : IGP(i) est plus petit que EGP (e), et EGP est plus petit que
Incomplete (?)
6. Préférer le chemin ayant la valeur «
metric » (MED) la plus petite.
7. Préférer un chemin externe (eBGP) à un
chemin Internet (iBGP).
8. Préférer le chemin annoncé par le
routeur ayant la valeur de
9. «router-ID » la plus petite (la valeur de «
router-ID » est par défaut l'adresse IP la plus «haute »
du routeur, les adresses de «Loopback» étant
préférées) (il est possible de spécifier une valeur
de « router-ID »
10. ID » via la commande « bgp router-id [adresse
IP] »).
11. Préférer le chemin annoncé par le
routeur ayant l'adresse IP la plus «basse ».
2.9.
FILTRAGE BGP
Il existe plusieurs types de filtrage BGP, nous retenons
notamment le :
· Filtrage basé sur les « réseaux
»
· Filtrage basé sur les «AS-paths »
· Filtrage basé sur les « communautés
»
2.9.1. Filtrage basé sur les « réseaux
»
Le filtrage BGP basé sur les réseaux consiste
à appliquer, au niveau de la déclaration d'un voisin BGP, une ACL
routage. Ce type de filtrage permet alors de ne pas annoncer à un voisin
BGP certains réseaux (ACL « out »), ou de refuser certains
réseaux reçus de ce voisin BGP (ACL « in »):
neighbor[adresse IP du voisin]
distribute-list[numéro ACL] [in|out]
Nous présentons sur la Figure 24ci-dessous un exemple
du filtrage basé sur le réseau
Figure 24: Exemple du filtrage basé sur le
réseau (Source [14])
Dans l'exemple ci-dessus, si aucun filtrage n'est
effectué, R2 va retransmettre tous les réseaux clients de R1
à R3. On souhaite par exemple que R2 ne retransmette à R3 que le
réseau 193.1.0.0/24 issu de R1 et pas le réseau 193.1.1.0/24.
D'où la configuration possible de R2, en utilisant une «
distribute-list » :
Configuration routeur R2
routerbgp2
network193.2.0.0
network193.2.1.0
neighbor193.49.1.1 remote-as 1
neighbor195.98.10.2 remote-as 3
neighbor195.98.10.2 distribute-list 10
out
-
access-list 10 deny 193.1.1.0
0.0.0.255
access-list 10 permit 0.0.0.0
255.255.255.255
Il convient de souligner qu'une solution plus « propre
» consisterait à configurer une « routemap » en «
out » sur le peering BGP et appliquer dans cette « route-map »
une « prefix-list » acceptant seulement le préfixe
193.1.0.0/24 ou éliminant le préfixe 193.1.1.0/24.
2.9.2. Filtrage basé sur les « AS-paths »
Le filtrage BGP basé sur les « AS-paths »
consiste à appliquer une «filter-list » ou une «
route-map » au niveau de la déclaration du voisin BGP. Ce type de
filtrage permet de ne pas annoncer à un voisin BGP certains
réseaux (marqués avec un «AS-path » donné), ou
de refuser certains « réseaux » (marqués avec un «
AS-path » donné) reçus de ce voisin.
Un filtre BGP basé sur les « AS-paths »,
s'écrit sous forme d'une expression régulière, et fait
appel à une syntaxe particulière, dont voici les principaux
symboles :
1. « ^ » : désigne le
début d'une chaîne de caractères (peut être aussi
utilisé pour la négation d'une chaîne de caractères
si utilisés au début d'une désignation d'un intervalle de
caractères : [^intervalle de caractères])
2. « $ » : désigne la fin
d'une chaîne de caractères
3. « . » : désigne n'importe
quel caractère seul (y compris l'espace)
4. « _ » : correspond à des
caractères spéciaux (y compris le début ou la fin d'une
chaîne de caractères ou l'espace)
5. « [ ] » : désigne un
intervalle de caractères
6. « - » : séparateur d'un
intervalle
7. « ? » : Signifie aucun ou un
élément valide
8. « * » : signifie aucun ou
plusieurs éléments valides
9. « + » : signifie un ou plusieurs
éléments valides
Nous montrons ci-dessous un exemple de configuration du
filtrage basé sur le AS-paths.
Si aucun filtrage n'est effectué, R2 va retransmettre
tous les réseaux clients de R1 à R3. On souhaite par exemple que
R2 ne retransmette à R3 aucun des réseaux de R1. D'où
l'existence de la configuration possible de R2, en appliquant une
«filterlist» au niveau du peering avec R3 :
Configuration routeur R2
routerbgp2
network193.2.0.0
network193.2.1.0
neighbor193.49.1.1 remote-as
1
-
neighbor195.98.10.2 remote-as
3
neighbor 195.98.10.2 filter-list 10 out
-
ip as-path access-list 10 deny
_1$
ip as-path access-list 10 permit
.*
2.9.3. Filtrage basé sur les « communautés
»
Dans l'exemple de la Figure 27 ci-dessus, si aucun filtrage
n'est effectué, R2 va retransmettre tous les réseaux clients de
R1 à R3. On souhaite par exemple que R2 ne retransmette à R3
aucun des réseaux de R1. D'où la configuration possible de R1, en
utilisant une communauté prédéfinie « no-export
» :
Configuration routeur R1
routerbgp1
network193.1.0.0
network193.1.1.0
neighbor193.49.1.2 remote-as
2
neighbor193.49.1.2
send-community
neighbor193.49.1.2 route-map rm
out
route-maprm permit 10
set community no-export
2.10. AVENIR DU PROTOCOLE BGP
Les technologies évoluent à une vitesse de
croisière, les protocoles naissent au jour les jours. Les avantages
qu'amène la mise en oeuvre du protocole BGP prouve que dans les jours
avenirs, il sera omni présent dans les grands réseaux du monde,
surtout lorsqu'il va s'appuyer intégralement sur le protocole IPv6 qui,
le pousse à avoir une nomination particulière qui est «
BGP4+ », intégrant ainsi les avantages qu'apporteIPv6 entre autres
la sécurité avancée avec l'implémentation native de
IPSec. Nous pouvons donc dire qu'un avenir meilleur du protocole BGP
dépend des avancées d'IPv6 qui, jusque-là intègre
timidement les grands réseaux du monde.
La vulgarisation du protocole IPv6 doit rester une tâche
quotidienne de chaque amoureux de la technologie de pointe. Demain, tout aura
tendance à être connecté sur Internet (voitures,
bicyclettes, appareils ménagers, montre, stylo, ...), le besoin
élevé des adresses IP sera constaté et c'est à ce
niveau que IPv6 fera l'affaire avec sa capacité de plus ou moins
667×10adresses IP par mm², comme qui dirai même un poisson dans
l'eau aura son propre adresse IP.
La possession des adresses IP par les entités
disparates occasionnera ainsi un besoin accru de partage des ressources via les
milieux de transmission passant surement par la toile d'araignée
mondiale qui est un ensemble des noeuds interconnecté grâce aux
protocoles routés et de routage. C'est ici que BGP4+ qui est une
combinaison de BGP et IPv6 aura sa place.
2.11. Conclusion partielle
Dans ce chapitre nous avons présenté les
informations nécessaires pour comprendre le Protocole BGP. Quelques
configurations ont été présentées pour
élucider le fonctionnement de BGP. Dans le chapitre suivant nous
présentons la sécurité de routage IP.
CHAPITRE 3 :
SÉCURITÉ DANS LE ROUTAGE IP [2]
[4][18]
3. 1 Introduction
La sécurité des réseaux depuis quelques
années, a vu son importance s'accroître au point de devenir une
priorité. Des outils automatisés de plus en plus complexes, des
virus attaquent les réseaux et menacent en permanence
l'intégrité des systèmes d'information. Les
mécanismes de la sécurité deviennent fortement
consommatrices de temps. Donc, il faut améliorer la gestion de la
sécurité pour garantir la qualité de service surtout dans
les applications temps réel. Il s'agit en fait de la qualité du
transport des informations dans le sens où les données arrivent
avec un délai de transmission contrôlé. Par exemple, pour
la visioconférence, la qualité de service est nécessaire
pour éviter d'avoir des mauvaises transmissions. Donc en assurant la
sécurité, il faut prendre en compte plusieurs paramètres
et de les gérer d'une manière qui respecte la QoS. Parmi
celles-ci on retrouve :
· Le délai : différents délais
peuvent être pris en compte. Dans ce cas, on s'intéresse au
délai de transport, c'est-à-dire le temps total passé au
niveau des composants actifs du réseau (switch, firewall, etc...) ;
· La latence : la somme de tous les délais, dans
une direction, dans une communication en temps réel. Une limite de 75
millisecondes est tolérable. Au-delà, la communication est
dégradée ou de faible qualité.
· La variance (Jitter) : la variation de la latence. Le
maximum toléré est de 20 millisecondes.
3.2.
Lesdispositifsde la sécurité
3.1.1. Le pare-feu
3.1.1.1. Définition et fonctionnement
Un pare-feu (firewall, en anglais) est un dispositif
matériel et/ou logiciel qui implémente la fonction de
sécurité de contrôle d'accès. Un pare-feu est donc
un dispositif pour filtrer les accès, les paquets IP, les flux entrant
et sortant d'un système. Un pare-feu est installé en coupure sur
un réseau lorsqu'il sert de passerelle filtrante pour un domaine
à la frontière d'un périmètre fermé.
Un pare feu est un système permettant de filtrer les
paquets de données échangés avec le réseau, il
s'agit aussi d'une passerelle filtrante comportant au minimum les interfaces
réseaux suivante:
· Une interface pour le réseau à
protéger (réseau Internet).
· Une interface pour le réseau externe.
Un pare-feu met en vigueur une politique de
sécurité qui laisse passer, ou arrête les trames ou les
paquets d'information selon cette politique. Il peut donc autoriser ou
empêcher des communications selon leur origine, leur destination ou leur
contenu. Dans la pratique, un pare-feu lit et analyse chacun des paquets qui
arrivent. Après analyse, il décide du passage ou de l'arrêt
selon l'adresse IP de l'émetteur, du récepteur, selon le type de
transport (TCP ou UDP) et le numéro de port, en relation avec le type
d'application réseau.
Quand la politique de sécurité ne concerne que
les couches basses, la seule analyse du paquet permet d'autoriser, de rejeter
ou d'ignorer le paquet.Quand la politique décrit des règles de
sécurité qui mettent en jeu le transport fiable, les sessions ou
les applications, le pare feu doit connaître l'état
momentané de la connexion et doit garder en mémoire de nombreux
paquets pendant un certain temps de façon qu'il puisse décider de
l'autorisation ou du rejet des paquets.
Les pare-feu ont des limitations : ils doivent être
très puissants en termes de ressources pour ne pas ralentir le trafic,
dans un sens ou dans un autre, puisqu'ils ont en coupure sur le réseau.
Ils ne doivent pas être court-circuités par d'autres passerelles
ou des modems connectés directement à l'extérieur. Ils
sont des « bastions », c'est-à-dire des cibles pour les
attaquants qui peuvent les assaillir pour saturer leur ressource.
Un pare-feu doit posséder un système de
journalisation (.log) sophistiqué a posteriori tous les faits importants
qui jalonnent la vie de cette passerelle filtrante : tentatives d'intrusion,
événements anormaux, attaques par saturation, par balayage.
Un pare feu est en général architecturé
de telle manière que l'on puisse distinguer physiquement les
communications avec l'extérieur, celles avec le réseau à
protéger et enfin celles qui sont déviées vers une zone
tampon de parking, souvent appelée zone démilitarisée (DMZ
en anglais), c'est dans cette zone qu'on place le site web, ouvert à
l'Internet, à l'abri d'un pare-feu, mais nettement séparé
du réseau Internet à protéger.
Il convient d'ailleurs de dire ici qu'il n'existe aucun
système de sécurité qui soit infaillible à 100%.
Tout logiciel, qu'il soit de type firewall ou de type chiffrement d'information
peut être «cassé». Mais il suffit que les besoins
financiers à mettre en oeuvre pour ce faire soient supérieurs
à la valeurmarchande estimée des informations en notre possession
pour que le système soit considéré comme fiable.
3.1.1.2. Les types de firewalls
Packetfilter : Le packetfilter, comme son nom
l'indique, filtre les paquets dans les deux sens. Pour ce faire, il utilise des
fonctions de routage Internet classiques. Ce sont des protections efficaces,
mais pas toujours suffisantes. Certaines attaques complexes peuvent
déjouer les règles.
Screening router : Evite le IP spooffing en
vérifiant que les adresses d'origine des paquets qui arrivent sur chaque
interface sont cohérentes et il n'y a pas de mascarade. Exemple: un
paquet qui a une adresse de votre réseau Internet et qui vient de
l'extérieur est un SpoofedPacket. Il faut le jeter et prévenir le
plus vite l'administrateur qu'il y a eu tentative d'attaque.
3.1.2. Les systèmes de détection et de
prévention de l'intrusion
Un système de détection d'intrusion (IDS en
anglais), est un dispositif matériel et/ou logiciel de surveillance qui
permet de détecter en temps réel et de façon continue des
tentatives d'intrusion en temps réel, dans un SI ou dans un ordinateur
seul, de présenter des alertes à l'administrateur, voire pour
certains IDS plus sophistiqué, de neutraliser ces
pénétrations éventuelles et de prendre en compte ces
intrusions afin de sécuriser davantage le système
agressé.
Un IDS réagit en cas d'anomalie, à condition que
le système puisse bien identifier les intrus externes ou internes qui
ont un comportement anormal, en déclenchant un avertissement, une
alerte, en analysant éventuellement cette intrusion pour empêcher
qu'elle ne se reproduise, ou en paralysant même l'intrusion.
Un IDS est un capteur informatique qui écoute de
manière furtive le trafic sur un système, vérifie, filtre
et repère les activités anormales ou suspectes, ce qui
permetultérieurement de décider d'action de prévention.
Sur un réseau, l'IDS est souvent réparti dans tous les
emplacements stratégiques du réseau.
Les techniques sont différentes selon que l'IDS
inspecte un réseau ou que l'IDS contrôle l'activité d'une
machine (hôte, serveur).
· Sur un réseau, il y a en général
plusieurs sondes qui analysent de concert, les attaques en amont d'un pare-feu
ou d'un serveur.
· Sur un système hôte, les IDS sont
incarnés par des démons ou des applications standards furtives
qui analysent des fichiers de journalisation et examinent certains paquets
issus du réseau.
Il existe deux grandes familles distinctes d'IDS :
· Les N-IDS (Network Based Intrusion Detection system),
ils assurent la sécurité au niveau du réseau.
· Les H-IDS (Host Based Intrusion Detection system), ils
assurent la sécurité au niveau des hôtes.
Un N-IDS nécessite un matériel
dédié et constitue un système capable de contrôler
les paquets circulant sur un ou plusieurs liens réseau dans le but de
découvrir si un acte malveillant ou anormal a lieu.
Le H-IDS réside sur un hôte particulier et la
gamme de ces logiciels couvre donc une grande partie des systèmes
d'exploitation tels que Windows, Linux, ect... Le H-IDS se comporte comme un
démon ou un service standard sur un système hôte.
Traditionnellement, le H-IDS analyse des informations particulières dans
les journaux de logs (syslogs, messages, lastlogs...) et aussi capture les
paquets réseaux entrant/sortant de l'hôte pour y déceler
des signaux d'intrusion (Déni de services, Backdoors, chevaux de
troie...).
3.3.
VPN (Virtual PrivateNetrwork)
3.3.1. Introduction
Les entreprises et les organisations possèdent en
général plusieurs sitesgéographiques qui travaillent
conjointement en permanence. Dans chaque site géographique, les
utilisateurs sont connectés ensemble grâce à un
réseau local. Ces réseaux locaux sont souvent connectés
via Internet. En outre, certains utilisateurs peuvent vouloir se connecter aux
réseaux de l'entreprise en étant à l'extérieur chez
un client ou en déplacement. Il existait autrefois des liaisons
physiques spécialisées, qui sont maintenant abandonnées au
profit de liaisons logiques.
Un réseau virtuel privé (Virtual Private
Network, en anglais d'où l'abréviation VPN) consiste en
fabrication d'un tunnel logique qui sera contracté par les
communications de l'entreprise, lesquelles seront véhiculées dans
cette tranchée numérique construite sur un réseau
fréquenté par d'autres usagers. Dans la pratique, il s'agit d'un
artifice, car les données vont utiliser un chemin ordinaire,
emprunté par tout le monde, mais ces données chiffrées et
tagguées seront sécurisées, à l'image du transport
de containers plombés sur une route. Le caractère privé du
réseau est donc complètement virtuel puisqu'il ne s'agit pas de
liaison physique spécialisée. Le caractère privé
est créé par un protocole cryptographique (IPSec ou PPTP). Un VPN
est donc une communication sécurisée entre deux points d'un
réseau public, d'où l'expression de tunnel.
Un VPN fournit un service fonctionnellement équivalent
à un réseau privé, en utilisant les ressources
partagées d'un réseau public. Les réseaux VPN Internet
sont utilisés dans plusieurs types d'application : Intranet
étendus, Extranet, accès distants. Des tunnels empruntent le
réseau Internet et assurent une sécurité robuste des
échanges de données : authentification forte des
équipements VPN source et destination, intégrité et
confidentialité des données échangées.
VPN fournit aux utilisateurs et administrateurs du
système d'information des conditions d'exploitation, d'utilisation et de
sécurité à travers un réseau public identiques
à celles disponibles sur le réseau privé. Parmi les
protocoles VPN les plus utilisés, on peut citer : VPN IPSec et VPN
SSL
Figure 25: Différents applications VPNS (Source
[3])
3.4.
IPSec
IPSec est un protocole destiné à fournir
différents services de sécurité. Son intérêt
principal reste sans contexte son mode de tunneling, c'est-à-dire
d'encapsulation d'IP qui lui permet entre autres choses de créer des
réseaux privés virtuels (ou VPN en anglais).
Citons quelques propriétés
générales des tunnels destinées aux VPNs :
· Les données transitant sont chiffrées
(confidentialité) et protégées
(intégrité)
· Les 2 extrémités sont
authentifiées
· Les adresses sources et destination sont
chiffrées
Il ne faut pas négliger les aspects pratiques tels que
la charge processeur dû au chiffrement, le débit théorique
possible, l'overhead induit et donc le débit effectif... De plus IPSec
n'est pas le seul protocole permettant d'établir des tunnels, il en
existe d'autres comme les « point-à-point » tel que L2TP, L2F
ou encore PPTP qui peut induire un overhead non négligeable.
IPSec est un protocole au niveau de la couche réseau
qui offre :
· Intégrité des paquets : les paquets sont
protégés de sorte que tous les changements pendant leur
transmission aient pu être détectés.
· Confidentialité des paquets : les paquets sont
chiffrés avant d'être transmis sur les réseaux.
· Authentification d'origine des paquets : les paquets
sont protégés pour s'assurer qu'ils sont envoyés par
l'expéditeur souhaité.
3.5.
SSL
SSL (Secure Sockets Layers) est un procédé de
sécurisation des transactions effectuées via Internet. Il repose
sur un procédé de cryptographie par clef publique afin de
garantir la sécurité de la transmission de données sur
Internet. Son principe consiste à établir un canal de
communication sécurisé entre deux machines (un client et un
serveur) après une étape d'authentification.
Le système SSL est indépendant du protocole
utilisé, ce qui signifie qu'il peut aussi bien sécuriser des
transactions faites sur le Web par le protocole HTTP que des connexions via le
protocole FTP, POP ou IMAP. En effet, SSL agit telle une couche
supplémentaire, permettant d'assurer la sécurité des
données, situées entre la couche application et la couche
transport (protocole TCP par exemple).
3.6.
Utilisation de IPsec et SSL
IPsec et SSL sont les protocoles de sécurité les
plus utilisés sur Internet. Néanmoins ces deux protocoles
présentent de grandes différences :
· Niveaux d'opérations : IPsec est un protocole de
niveau réseau tandis que SSL est un protocole de niveau applicatif.
Cette différence est le point de divergence essentiel.
· Périmètre sécurisé :
opérant à deux niveaux différents, SSL offre des services
de sécurité limités à TCP tandis que IPsec supporte
n'importe quel trafic, TCP, UDP ou autre. De même SSL sécurise une
application donnée tandis qu'IPsec sécurise plusieurs
applications simultanément.
· Support d'installation : Un grand avantage de SSL est
l'absence de logiciel supplémentaire côté client, un grand
nombre de navigateurs supportant nativement HTTPS (Http sur SSL). A l'inverse
IPsec requiert à ce jour le déploiement de logiciels
spécifiques.
D'un point de vue sécurité, il n'y pas une
grande différence entre SSL et IPsec qui partagent les mêmes
algorithmes. Établir un VPN SSL ou un VPN IPsec dépend alors
essentiellement des besoins des utilisateurs.
3.7. Conclusion partielle
Dans ce chapitre nous avonsnous avons présenté
les notions de base sur la sécurité de routage IP. Quelques
dispositifs de sécurités ont été
présentés avant de parler des différents protocoles
utilisés dans la sécurité du routage IP.
CHAPITRE 4 : INTERCONNEXION ET SÉCURISATION DES
DEUX SITES DISTANTS : CAS DE L'ISP/MBANZA-NGUNGU ET L'ISP/KISANTU
4.1.
Introduction
Dans ce chapitre nous présentonsla configurationde
l'interconnexion de l'ISP/Mbanza-Ngungu et l'ISP/Kisantu. Étant
donné que nous n'avons pas des matériels à notre
porté, nous utilisons le simulateur « Cisco Packet Tracer » de
Cisco.
4.2.
Présentation de simulateur « Cisco Packet Tracer »
Le « Cisco Packet Tracer » est un programme puissant
de simulation qui permet aux étudiants d'expérimenter le
comportement du réseau. En effet, Packet Tracer fournit la simulation,
la visualisation, la création, l'évaluation et les
capacités de collaboration et facilite l'enseignement et l'apprentissage
des technologies complexes. Toutes les configurations présentées
dans ce travail seront faites grâce à ce simulateur.
4.3. Architecture globale
Cette architecture montre globalement le réseau
informatique de ces deux institutions, qui sont
ISP/Mbanza-Ngungu et ISP/KInsantu.
Figure 26: Architecture
globale
La Figure 26 ci-dessus montre les équipements
utilisés entre autres nous citons : les PC, les Switch, le
pare-feu, les routeurs etc... précisons ici qu'on a configuré
rien que des Vlans de deux cotés. Dans la topologie Simplifiée
cela qu'on a configuré notre protocole BGP et ACL.
4.4. Configuration des
équipements des Vlan
1. Création de VLANs
2. Affectation des ports
3. Résultat après attributions des ports
Vlan22
Vlan 23
4. Configuration mode trunk
5. Test de connectivité
Entre le même Vlan
Entre deux Vlan différents
4.5. Architecture
Simplifiée
Pour faciliter la configuration, nous avons créé
une architecture simplifiée ou de test. En effet, cette architecture est
composée de deux VLAN (10 et 20). Les deux routeurs R0 et R1 constituent
des bordures des réseaux (système autonome). Le protocole eBGP
sera configuré et les ACL viendront renforcer la sécurité
des échanges.
Figure 27: Architecture Physique
Simplifiée
4.6. simulation de l'architecture simplifiée sous
Ciscopaquet tracer
Figure 28: Architecture Physique
Simplifiée
La Figure 28 ci-dessus montre l'architecture simplifiée
ou de test.Tous les équipements ont été
configuré.Le protocole BGP a été configuré entre
les deux systèmes autonomes et aussi la sécurisation via les
ACLs.
4.7. Configuration des hôtes
4.8. Configuration des équipements
On va lancer des séries des configurations sur tous les
équipements du réseau. Dans ce qui suit on va présenter la
configuration étape par étape de tous les équipements
configurés.
4.8.1. Configuration des Router BGP
Pour le routeur R0
L'image ci-dessous nous montre la configuration de protocole
BGP au niveau du Router R0
Résultat
Après configuration du protocole BGP du
côté router R0, voici le résultat de l'activation du
protocole en tapant la commande show ip route.
Router R1
La capture d'écran ci-dessous nous montre la
configuration de protocole BGP au niveau du Router R1.
Résultat
Après configuration du protocole BGP du
côté routeur R0 et R1, voici le résultat de l'activation du
protocole BGP.
1. Identifier le protocole utilisé
2. Afficher la table de routage
La lettre B dans la table identifie le code qui renseigne le
protocole BGP.
3. Identification des voisins et les AS pour le
routeur R0
4. Identification des voisins et les AS pour le
routeur R1
4.8.2. Configuration D'ACL
La configuration d'ACL se passer au niveau du router R1 (ISP
Kisantu) comme nous montre la capture d'ecran ci-dessous, 2 machines d'ISP
Mbanza (192.168.0.3 et 192.168.0.2) qui sont permisesde pouvoir envoyer des
paquets vers l'ISP Kisantu. Et une machine qui ne pas permise grâceau
commande denyde pouvoir envoyer le paquet.
4.9. TEST DE CONNECTIVITÉ
Après avoir configuré le protocole BGP et les
ACLs, maintenant nous passons à la vérification de la
connectivité entre ce deux systèmes autonomes. La première
machine permit (192.168.0.3) ping la machine 172.168.0.3 de
l'autre système autonome comme nous montre la capture d'écran
ci-dessous.
La deuxième machine a été
déclarée `deny' (192.168.0.4) ne peut pas pinger
la machine 172.168.0.3 de l'autre système autonome comme nous montre la
capture d'écran c-dessous :
4.10. Conclusion partielle
Dans ce chapitre nous avons présenté la
différente étape de configuration de base des routeurs Cisco qui
a sollicité une bonne compréhension les procédures
recommandées pour leur sécurisation ainsi prévenir les
techniques d'attaques qui menacent l'intégrité du routeur.
CONCLUSION GENERALE
Au terme de la rédaction de ce présent Travail
de Fin de Cycle de Licence en réseau informatique, intitulé
« Étude et Mise en place d'une interconnexion
sécurisée entre systèmes autonomes : application à
l'interconnexion réseau de deux institutions ». L'objectif
principal de concevoir et implémenter une solution qui devrait permettre
la communication fiable et sécurisée entre sites
différents.
Pour y arriver, nous avons commencé par
présenter les notions théoriques de basepour cerner les notions
qui entourent notre sujet d'étude. En second lieu nous avons
présenté, de manière détaillée, les notions
relatives au protocole de routage BGP. Partant des informations fournies, ce
protocole s'est positionné comme le meilleur à appliquer pour une
interconnexion fiable des systèmes autonomes. Un chapitre était
consacré à la sécurité du routage sur IP.Ici
plusieurs solutions ont été présentées et
discutées. Le dernier chapitre a été consacré
à la mise en place de l'interconnexion de deux AS. Ici, nous avons en
premier lieu proposé une architecture réseau appropriée
présentant les deux institutions interconnectées avant de faire
la configuration proprement-dite.
Les tests réalisés sur l'architecture globale
et l'architecture simplifiées montrent que les routes
implémentées permettent de faire transiter des flux de
données de manière rapide, efficace et sécurisée.
Ce travail affirme donc l'efficacité du protocole BGP pour
l'interconnexion des sites distants et constitue donc un atout majeur pour les
deux institutions interconnectées dans l'échange des flux
d'informations de tout type sans problème.
Toutefois, nous n'avons pas la prétention d'avoir
réalisé un travail parfait puisqu'il n'est qu'une oeuvre humaine
susceptible d'être améliorée. Voilà pourquoi
l'indulgence de nos nombreux lecteurs est sollicitée pour les failles
qu'ils pourront y rencontrer. Nous restons ouverts à toutes les
critiques qui pourront nous aider à l'amélioration.
BIBLIOGRAPHIE
A. Ouvrages
[1] DAVID TILLOY, Introduction au Réseau TCP/IP,
Edition D'AMIEN paris 1999
[2] D.M. Mondonga, Etude sur les protocoles de routage d'un
réseau sans fil en mode Ad Hoc et leurs impacts, TFE, 2017.
[3] PAYOLLE, G. (s.d.). LES RESEAUX. Éd. Eyrolles,
2005.
[4] Pillou.J. Tout sur les réseaux et Internet,
Éd. Dunod, 2007.
[5] PILLOU.J. Généralité sur les
réseaux informatiques, Éd. Eyrolles, 2003.
[6] TOUAZI.D. Cours Notions de base sur les réseaux.
CCNA Exploration, Cours master2, 2012.
[7] LAHDIR.M et MEZARI.R. Réseaux Locaux, Editions
Pages Bleus, 2006.
[8] ICND1. Interconnexion des périphériques
réseau. CISCO Partie 1, Derniers cours, server 2010.
[9] TOUAZI.D. Cours CCNA 2 : Notions de Base sur les routeurs
et le routage. 2012.
[10] CISCO. Sample Configuration for Authentication in OSPF.
2005.
[11] LEWIS Chris, Installer et configurer un routeur Cisco,
édition Eyrolles, 1ère éd., 1999.
[12] SEBA Djillali, Interconnexion de réseaux à
l'aide de routeurs et de commutateurs, édition ENI, 2003.
[13] Claude Servin, Réseaux et télécom,
Ed. Dunod, 4ème Edition, Paris, 2013.
B. Tutoriaux et supports de formations (notes de
cours)
[14] HEUSSE Martin, Le protocole de routage externe BGP, Dpt.
Télécommunications 3A, 22 novembre 2007.
[15] SIMON Franck, Le protocole de routage BGP, Atelier de
formation : « mise en oeuvre des protocoles BGP et IPv6 dans les
réseaux de campus » à Yaoundé du 7 au 11 avril 2008,
GIP RENATER Avril 2008.
[16] Selain KASEREKA, Télématique, Cours
Inédit, G3 Informatique de Gestion, ISP/MbanzaNgungu, 2019.
[17] Selain KASEREKA, Réseaux d'entreprises, Cours
Inédit, L2 Informatique de Gestion, ISP/MbanzaNgungu, 2019.
C. Liens Internet (webographie)
[18]
http://www.rfc-editor.org/(consulté
le 06/07/2020)
[19]
www.comentcamarche.com(consulté
le 23/07/2020)
[20]
www.ordinateur.cc/r%C3%A9seaux(consulté
le 29/08/2020)
TABLE DES MATIÈRES
EPIGRAPHE
1
DEDICACES
3
RESUME
4
REMERCIEMENTS
5
LISTE DES FIGURES
6
LISTE DES ABREVIATIONS
7
INTRODUTION GÉNÉRALE
8
Chapitre 1 : concepts et théories de
base [1] [2] [3] [14]
11
1.1. Introduction
11
1.2. Quelques définitions
11
a. Réseau :
11
b. Réseau informatique :
11
c. Protocole :
11
1.3. Modèle de référence
OSI
11
1.4. Modèle TCP/IP
13
1.5. Composant physique d'un réseau
informatique
14
1.5.1. Équipements de base de réseau
informatique
14
1.5.2. Équipements d'interconnexion
14
1.6. Les Protocoles routés
17
1.6.1. Le protocole IP
18
1.6.2. Fonctionnement
18
1.6.3. Services délivrés par le
protocole IP
18
1.6.4. Avantage du protocole IP
19
1.6.5. Inconvénients du protocole IP
19
1.7. PROTOCOLES DE ROUTAGE
20
1.7.1. Classification
20
1.7.2. RIP : The Routing Information Protocol
21
1.7.3. EGP: Le Exterior Gateway Protocol
22
1.7.4. BGP: Border Gateway Protocol
23
1.8. VPN (virtual private network)
23
1.8.1. Introduction
23
1.8.2. Principe de fonctionnement
23
1.8.3. Fonctionnalités des VPN
24
1.9. Sécurisation des protocoles de
routage
25
Conclusion partielle
26
Chapitre 2 : le protocole de routage BGP [11]
[12] [14] [15] [16] [17]
27
2.1. Introduction
27
2.2. INTERETS ET OBJECTIFS DE BGP
27
2.3. FONCTIONNEMENT DE BGP
28
2.3.1. Les messages types de BGP :
30
2.4. PROCESSUS (TRES) SIMPLIFIE DE DECISION BGP
31
2.5. ACTIVATION DE BGP SUR UN ROUTEUR
32
2.5.1. Activation de BGP sur un routeur
32
2.6. ANNONCER DES RESEAUX AVEC BGP
35
2.6.1. Redistribution
36
2.6.2. Synchronisation
36
2.6.3. Masques CIDR
36
2.7. PROCESSUS DETAILLE DE DECISION BGP
37
2.7.1. Paramètre « AS-path »
37
2.7.2. Paramètre «Origin »
38
2.7.3. Paramètre « next-hop »
38
2.7.4. Paramètre « weight »
39
2.7.5. Paramètre « local-preference
»
40
2.7.6. Paramètre «metric» ou «
MED » (Multi Exit Discriminator)
41
2.7.7. Paramètre « community »
42
2.7.8. Paramètre « distance »
43
2.8. ALGORITHME
44
2.9. FILTRAGE BGP
44
2.9.1. Filtrage basé sur les «
réseaux »
45
2.9.2. Filtrage basé sur les « AS-paths
»
46
2.9.3. Filtrage basé sur les «
communautés »
47
2.10. AVENIR DU PROTOCOLE BGP
47
2.11. Conclusion partielle
48
Chapitre 3 : Sécurité dANS LE
routage IP [2] [4][18]
49
3. 1 Introduction
49
3.2. Lesdispositifsde la sécurité
49
3.1.1. Le pare-feu
49
3.1.2. Les systèmes de détection et de
prévention de l'intrusion
51
3.3. VPN (Virtual Private Netrwork)
52
3.3.1. Introduction
52
3.4. IPSec
53
3.5. SSL
54
3.6. Utilisation de IPsec et SSL
54
3.7. Conclusion partielle
55
Chapitre 4 : Interconnexion et
sécurisation des deux sites distants : cas de L'ISP/MBANZA-NGUNGU
ET l'ISP/KISANTU
56
4.1. Introduction
56
4.2. Présentation de simulateur « Cisco
Packet Tracer »
56
4.3. Architecture globale
56
4.4. Configuration des équipements des
Vlan
57
4.5. Architecture Simplifiée
59
4.6. simulation de l'architecture simplifiée
sous Cisco paquet tracer
60
4.7. Configuration des hôtes
60
4.8. Configuration des équipements
61
4.8.1. Configuration des Router BGP
61
4.8.2. Configuration D'ACL
64
4.9. Test de connectivité
64
4.10. Conclusion partielle
65
CONCLUSION GENERALE
66
BIBLIOGRAPHIE
67
|