5. Routage TCP/IP

Contenu de cette section

Une courte préface est nécessaire. Elle décrit le principe de l'arbre de routage. Elle ne traite pas le routage source des trames IP. Le routage source réalisé par Token Ring n'est pas du routage IP source mais il s'agit d'une couche MAC qui réalise cette opération. L'utilisation du routage source IP est déconseillé. Le routage source MAC de Token Ring est nécessaire pour réaliser ce style de communication.

Pour comprendre un peu mieux ARP proxy, vous devez comprendre comment les trames IP sont routées à travers le réseau. Je ne vais pas trop détailler ce partie. Si vous voulez des informations supplémentaires, bon nombre de livres disponibles donnent des informations plus poussées. (Si vous ne voulez pas regarder les livres, vous pouvez alors lire les documents RFC.)

Les trames IP sont routées à chacune des étapes de leur passage à travers le réseau. Chaque machine, routeur ou passerelle décide de lui-même et avec sa propre copie de la table de routage ou la trame IP doit être envoyée.

Le routage est réalisé en utilisant un réseau IP (terme que j'utiliserai). A chaque interface réseau, on assigne un réseau IP unique. Chacun possède une adresse IP. Chacun possède un masque de réseau. Le réseau IP est simplement une opération binaire de l'adresse IP avec le masque réseau. Par exemple, l'adresse IP 10.124.35.40 et le masque de réseau 255.255.0.0 vont avoir un réseau IP de 10.124.0.0. J'utilise des masques réseau en octets mais la même logique peut s'appliquer à la limite à des masques réseaux qui ne le sont pas.

Linux associe le masque du réseau à l'entrée d'un chemin. Lorsque vous ajoutez un chemin dans le système, vous spécifiez une adresse IP et le périphérique de destination. Si vous ne spécifiez pas de masque réseau, celui-ci est choisi comme étant le masque de réseau par défaut du périphérique de destination. Il est positionné lorsque le périphérique est configuré par ifconfig.

Pour mieux comprendre le routage, regardez la configuration suivante :

Destination     Masque Reseau    Passerelle    Option   Peripherique

10.124.0.0      255.255.0.0      0.0.0.0       U        eth0
10.125.0.0      255.255.0.0      0.0.0.0       U        eth1
10.126.0.0      255.255.0.0      10.125.31.1   UG       eth1
10.124.12.5     255.255.255.255  0.0.0.0       UH       ppp0
0.0.0.0         0.0.0.0          10.124.25.1   U        eth0

Il s'agit d'un système possédant trois interfaces réseau. Il a deux contrôleurs Ethernet et un périphérique PPP. Les trames IP peuvent pénétrer dans ce système par n'importe laquelle des trois sources. En plus, des trames sont renvoyées à travers ce système à n'importe quel des trois périphériques de destination.

Le chemin par défaut est le périphérique de la passerelle 10.124.25.1 comme le montre la dernière entrée. Pour joindre la passerelle, la trame est envoyée à-travers le périphérique eth0.

Un a périphérique PPP connecté. Son adresse IP est 10.124.12.5.

Le périphérique eth0 est sur le réseau d'adresse IP 10.124.0.0 alors que le périphérique eth1 est sur celui d'adresse IP 10.125.0.0.

En plus, un chemin vers le réseau IP 10.126.0.0 est disponible par la passerelle associée 10.125.31.1.

Pour comprendre comment le routage est réalisé, considérons une trame IP qui doit être envoyée à l'adresse 10.125.45.1.

Linux va consulter la table de routage et pour chacune des entrées, prendre le masque de réseau, puis effectuer une opération logique (et) sur le masque réseau. Enfin il va le comparer à l'entrée de l'adresse IP de destination. Si le résultat correspond, la trame est envoyée au périphérique indiqué.

Le résultat est que la dite trame pour l'adresse IP 10.125.45.1 sera envoyée au périphérique eth1.

De plus, une trame émise de l'adresse IP 10.124.12.5 sera envoyée au périphérique ppp0 alors qu'une trame provenant de l'adresse IP 10.124.12.6 sera envoyée au périphérique eth0 car le périphérique accepte pour seule et unique adresse, l'adresse IP 10.124.12.5.

Les trames pour l'adresse 10.126.31.4 sont différentes. Elles ont une passerelle associée. Le problème est résolu de la même manière. Toutefois, au lieu d'envoyer les trames simplemement au périphérique eth1, elles sont envoyées au système unique associé à l'adresse IP 10.125.31.1. Il s'agit de l'adresse IP qui est transformée en une adresse MAC, plutôt qu'en une adresse de destination 10.126.31.4.

Lorsqu'elle arrive sur le système d'adresse 10.126.31.1, celui-ci va renvoyer la trame sur la destination finale 10.126.31.4 en utilisant sa propre table de routage qui peut lui indiquer de rediriger la trame sur l'interface eth3.

De nombreuse conditions d'erreurs qui sont détectées par ce système de routage. Je ne veux pas toutes les détailler, toutefois, si par exemple 10.126.31.1 ne connaît pas le chemin pour atteindre l'adresse .4, alors il devrait renvoyer une trame ICMP (Protocole de Messages de Contrôles d'Internet) à l'envoyeur initial comme quoi il n'a pas de chemin pour la machine spécifiée.


Chapitre suivant, Chapitre Précédent

Table des matières de ce chapitre, Table des matières générale

Début du document, Début de ce chapitre