Le routage sous Linux
0
commentaires
1.1. Principe
Le routage dans Internet est similaire
au mécanisme d'adressage du courrier.
Si vous adressez une lettre à un
destinataire aux USA, à Los Angeles, dans l'état de Californie. Le bureau de
poste de Belfort reconnaîtra que cette adresse n'est pas locale et
transmettra le courrier au bureau français des PTT qui le remettra au service
du mail US. Celui-ci s'en remettra à son bureau de
Avantages du système :
1.
le bureau de poste local n'a pas
à connaître toutes les adresses du monde
2.
le chemin suivi peut être
variable : chaque opérateur sait juste à qui remettre le courrier.
Le routage dans un réseau est
identique :
Internet en entier est composé de
réseaux autonomes qui s'occupent en interne de l'adressage entre leurs hôtes.
Ainsi, tout datagramme arrivant sur un hôte quelconque du réseau destination
sera acheminé à bon port par ce réseau seul.
Quand tous les hôtes participent au
même réseau, chacun d'eux peut adresser des paquets aux autres sans
difficulté. Par contre, si le destinataire est situé sur un autre réseau, le
problème est de savoir où et à qui adresser le paquet puisque l'hôte
expéditeur ne « voit » pas le destinataire.
On appelle passerelle (dans
la terminologie TCP/IP) ou routeur un équipement qui fait le
lien entre différents réseaux ou entre sous-réseaux. Ex de passerelle: un
ordinateur équipé de plusieurs adaptateurs réseau peut être relié
avec chacune d'elle à un réseau physiquement séparé.
Les paquets d'un réseau qui sont
adressés à l'autre réseau doivent passer par la passerelle. D'où la nécessité
pour chaque hôte de connaître, sur son réseau, l'adresse IP d'un ou de
plusieurs routeurs qui servent de passage vers le ou les réseaux qu'ils ne
connaît pas.
Mettre en place le routage consiste à
configurer chaque hôte du réseau de façon à ce qu'il sache vers quelle
adresse de son propre réseau il doit adresser un paquet qui concerne un autre
réseau (ou sous-réseau). Ces destinataires intermédiaires sont des routeurs
qui prennent en charge le paquet.
Les hôtes pouvant être nombreux, bien
souvent chacun ne connaît que l'adresse d'une passerelle (routeur) par défaut
et ce sera cette passerelle qui « connaîtra » les adresses des autres routeurs.
1.2. Acheminement des paquets TCP-IP
Comment faire transiter des
paquets entre 2 machines séparées par plusieurs routeurs?
Simplement chaque routeur doit
connaître l'adresse du routeur suivant que doit emprunter le paquet pour
arriver à destination. Ainsi le paquet arrive en sautant de routeur en
routeur jusqu'à destination.
Mais concrètement comment ça se
passe ?
Voici comment un hôte expéditeur se
comporte pour adresser un paquet à un destinataire :
1.
Il extrait l'adresse de réseau,
voire de sous réseau de l'adresse du destinataire et la compare à sa propre
adresse de réseau ou de sous réseau. S'il s'agit du même réseau, le paquet
est expédié directement au destinataire en mettant en oeuvre ARP.
2.
S'il ne s'agit pas du même
réseau, l'expéditeur cherche dans sa table de routage une correspondance
destinataire final / destinataire intermédiaire (routeur). Il cherche, en
quelque sorte, sur son réseau, un hôte capable de servir de facteur vers un
autre réseau.
3.
L'expéditeur cherche d'abord à
trouver dans sa table de routage locale l'adresse IP complète du
destinataire,
4.
s'il ne la trouve pas il cherche
l'adresse du sous réseau du destinataire,
5.
s'il ne la trouve pas, il
cherche enfin l'adresse du réseau,
6.
s'il ne trouve aucune
correspondance, l'expéditeur cherche dans sa table l'adresse d'une passerelle
à utiliser par défaut, (route 0.0.0.0)
7.
s'il échoue là encore, le
paquet, décidément bien encombrant, est supprimé.
Si l'une de ces recherches aboutit, la
machine émettrice construit le paquet avec l'adresse IP du destinataire
hors réseau. Elle l'encapsule dans une trame ayant comme adresse
MAC de destination l'adresse MAC du routeur. La
couche 2 du routeur lit la trame qui lui est adressée et la transmet à la
couche 3 IP. Celle-ci récupère le paquet et s'aperçoit que le paquet ne lui
est pas adressé, elle consulte sa table de routage, décide
sur quelle nouvelle interface réseau le paquet doit être transmis, encapsule
le paquet dans une nouvelle trame, et ainsi de suite de passerelle en
passerelle jusqu'à destination.
1.3. Les tables de routageLes réseaux IP sont interconnectés par des routeurs IP de niveau 3 (appelés abusivement en terminologie IP des gateways ou passerelles).
Figure 1.1. routeurs
interconnectés
Chaque hôte IP doit connaître le
routeur par lequel il faut sortir pour pouvoir atteindre un réseau extérieur,
c'est-à-dire avoir en mémoire une table des réseaux et des routeurs. Pour
cela il contient une table de routage locale.
Dans une configuration de routage
statique, une table de correspondance entre adresses de destination
et adresses de routeurs intermédiaires est complétée « à la main » par
l'administrateur, on parle de table de routage.
Figure 1.2. schéma
de routage
La table de routage d'un routeur
comporte les adresses des réseaux de destination, le masque, les adresses des
passerelles (routeurs intermédiaires) permettant de les atteindre, l'adresse
de la carte réseau (interface) par laquelle le paquet doit sortir du routeur.
La commande Route
permet d'afficher et de manipuler le contenu de la table de routage.
Considérons le schéma de réseau suivant :
Figure 1.3. schéma
de réseau 1
Figure 1.4. schéma
de réseau 2
1.4. Acheminement Internet1.4.1. Domaine d'acheminement
Les échanges entre passerelles de
chaque domaine de routage font l'objet de protocoles particuliers : EGP
(Exterior Gateway Protocol) et BGP (Border Gateway Protocol) plus récent. Ces
protocoles envoient les paquets vers des destinations en dehors du réseau
local vers des réseaux externes (Internet, Extranet...).
1.4.2. Principe du choix d'une voie d'acheminement
1.
Si l'hôte de destination se
trouve sur le réseau local, les données sont transmises à l'hôte destination
2.
Si l'hôte destination se trouve
sur un réseau à distance, les données sont expédiées vers une passerelle
locale qui route le paquet vers une autre passerelle et ainsi de suite de
passerelle en passerelle jusqu'à destination.
La commande Tracert
permet de suivre à la trace le passage de routeur en routeur pour atteindre
un hôte sur le réseau. La commande Ping permet de vérifier
la fiabilité d'une route donnée.
1.5. Routage dynamique
Les protocoles d'échange
dynamique des tables de routage IP sur un réseau local sont RIP
(Routing Information Protocol) et le protocole OSPF (Open
Shortest Path First). Dans une configuration de routage
dynamique, un protocole (RIP ou OSPF) est mis en oeuvre pour
construire dynamiquement les chemins entre routeurs.
Le protocole RIP permet à un routeur
d'échanger des informations de routage avec les routeurs avoisinants. Dès
qu'un routeur est informé d'une modification quelconque de la configuration sur
les réseaux (telle que l'arrêt d'un routeur), il transmet ces informations
aux routeurs avoisinants. Les routeurs envoient également des paquets de
diffusion générale RIP périodiques contenant toutes les informations de
routage dont ils disposent. Ces diffusions générales assurent la
synchronisation entre tous les routeurs.
Avec un protocole comme RIP, on peut
considérer que les tables de routages des routeurs et passerelles sont
constituées et mises à jour automatiquement.
|