• 30 heures
  • Facile

Mis à jour le 08/03/2016

La passerelle : les bases du routage

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Vous vous êtes remis de vos émotions, ou plutôt, des calculs du chapitre précédent ? Tant mieux ! Ou tant pis pour vous, en cas de réponse négative. Voici un chapitre expliquant le fonctionnement d'une passerelle, avec comme promis, des calculs ! Ne cherchez pas à vous enfuir, cette pièce vient d'être déconnectée du réseau, il n'y a plus de route derrière... Mwahahahaha ! :diable: (Qui a dit qu'on était des détraqués ? :-° )

Une petite révision

Nous avons vu au début de ce cours ce qu'était une passerelle. Cela remonte peut-être à loin, nous allons donc commencer par revoir ce que c'est.
Deux hôtes ne se situant pas dans le même sous-réseau ne peuvent pas communiquer directement. Il faut que quelque chose intervienne entre les deux pour transmettre à l’un, les données au nom de l’autre. Ce « quelque chose » est la passerelle : un service qui connecte plusieurs sous-réseaux. Cette position fait donc que la passerelle se situe à califourchon entre plusieurs sous-réseaux, faisant ainsi office d’intermédiaire.

À ce stade du cours, vous ne devriez plus avoir besoin d'analogie !

Dans un réseau comprenant plusieurs routeurs, la passerelle par défaut (default gateway, en anglais) est l'interface du routeur vers laquelle sont dirigés tous les paquets dont on ne connait pas la route à emprunter pour atteindre le réseau dans lequel se trouve le destinataire. Chaque routeur a une table de routage. Pour faire simple, les paquets représentent des parties de vos données. En fait, lorsque vous envoyez des données sur un réseau, celles-ci sont découpées en plusieurs portions et chaque portion est appelée un paquet. Quant à la table de routage, il s'agit d'une liste des différentes "routes" (chemins) vers d'autres sous-réseaux. Ces définitions sont très simplifiées pour vous permettre de comprendre le principe, nous reviendrons dessus plus tard. ;)

C’est un peu brutal de vous le dire ainsi, car vous ne connaissez pas grand-chose au routage, à ce stade. Néanmoins, il est important de garder cela à l’esprit pour ne pas confondre plus tard.

C’est bien beau tout ça, mais comment fonctionne cette fameuse passerelle ? La réponse vous attend sagement dans la sous-partie suivante. :)

Mode de fonctionnement

Prenons un exemple concret pour illustrer le mode de fonctionnement d’une passerelle. Voici 2 ordinateurs : Azur-PC et Safran-PC (on se demande bien d'où ces noms sont inspirés o_O ). Leurs cartes réseau sont configurées ainsi :

Nom

Adresse IP

Masque de sous-réseau

Azur-PC

192.0.1.5

255.255.255.0

Safran-PC

72.40.2.1

255.0.0.0

Ils n'appartiennent pas au même sous-réseau et ne peuvent donc pas communiquer : il leur faut une passerelle. Voyons comment elle fonctionne.

Le fonctionnement

Azur-PC a recours à un processus nommé ANDing, que nous allons voir juste après, pour déterminer si Safran-PC, avec qui il veut communiquer, est dans le même sous-réseau que lui. Il réalise que ce n'est pas le cas, il va donc transférer son message à la passerelle en lui indiquant l'adresse du destinataire.
Supposons que ce soit un routeur qui offre ce service. Il a 2 interfaces. Pour que la communication puisse avoir lieu, une de ses interfaces doit être dans le même sous-réseau que Azur-PC et l'autre dans le même que Safran-PC. Voici une configuration possible pour ce routeur :

Interface

Adresse IP

Masque de sous-réseau

A

192.0.1.6

255.255.255.0

B

72.40.1.1

255.0.0.0

Avec une telle configuration, Azur-PC et Safran-PC peuvent à présent communiquer. Quand Azur-PC voudra parler à Safran-PC, il vérifiera grâce au ANDing si le destinataire est dans le même sous-réseau. Si oui, il enverra son message directement à son adresse IP, sinon, il l'envoie à la passerelle en lui demandant de transmettre à bon port. La passerelle étant entre les 2, cela ne pose pas de problème.

Voici un schéma récapitulatif :

Image utilisateur

C'est peut-être moche mais faîtes comme si ce n'était pas le cas. :-°

Il est maintenant temps de voir ce qu'est le ANDing dont on a parlé sans expliquer ce que c'était.

ANDing (conjonction logique)

Dans la sous-partie précédente, nous avons évoqué un processus utilisé par Azur-PC pour déterminer dans quel sous-réseau se trouve le destinataire : le ANDing.

Le ANDing, approche théorique

Définition

Le ANDing ou conjonction logique (ET logique) en français, est utilisé pour le calcul des propositions. Nous n'allons pas entrer dans les détails de ce que c'est concrètement. Nous allons simplement voir en quoi cela peut nous servir dans les réseaux en général, mais surtout quelle est son application dans le cas du routage. Quand votre hôte veut communiquer, il fait un calcul logique pour déterminer si votre destinataire se trouve dans un même sous-réseau ou pas. Si le destinataire est dans un sous-réseau différent, les données seront envoyées à la passerelle qui se chargera de les router au destinataire.

Les règles du ANDing

C'est là que l'on voit l'intérêt d'être à l'aise avec la conversion des adresses IP du décimal au binaire. En effet, le ANDing se base sur la notation binaire des adresses IP. Si vous n'êtes pas à l'aise avec les conversions décimal/binaire, nous vous conseillons de relire la sous-partie qui traite ce sujet. Le ANDing est relativement simple à comprendre, il faut juste assimiler les règles suivantes :

  • 0 AND 0 = 0

  • 0 AND 1 = 0

  • 1 AND 0 = 0

  • 1 AND 1 = 1

Facile non ? :D

Oui, mais concrètement, à quoi servent ces règles ?

Déterminer si l'adresse IP du destinataire est dans le même sous-réseau que celle de l'émetteur est assez simple. La carte réseau de l'émetteur connaît son adresse IP, son masque de sous-réseau et l'adresse IP du destinataire. On va alors faire un ET logique (AND) entre l'adresse IP de l'émetteur et son masque de sous-réseau pour trouver son network ID. Ensuite, on va faire un ET logique entre l'adresse IP du destinataire et le masque de sous-réseau de l'émetteur et comparer le résultat avec le network ID obtenu précédemment. Si les deux valeurs sont identiques, alors l'émetteur et le destinataire sont dans le même sous-réseau. Sinon, ils sont dans des sous-réseaux différents.
Pas de panique, un exemple vaut mieux que tout ce pavé. ;)

Le ANDing par l'exemple

Paul veut communiquer avec Éric. L'ordinateur de Paul (Paul-PC) a pour adresse IP 142.20.1.15 et pour masque de sous-réseau 255.255.0.0. Celui d'Éric (Éric-PC) a pour adresse IP 92.40.1.14.

Étape 1 : déterminons le network ID de l'émetteur

Convertissons l'adresse IP de Paul-PC en binaire, ce que vous savez normalement faire. ;)
Voici ce que vous devez obtenir :

10001110.00010100.00000001.00001111

Convertissons à présent le masque de sous-réseau de l'adresse IP de Paul-PC en binaire :

11111111.11111111.00000000.00000000

Nous allons à présent faire un AND entre ces deux groupes de nombres binaires en appliquant les règles précédentes :

Opération AND 1

Le network ID de Paul-PC est donc 10001110.00010100.00000000.00000000.

Étape 2 : AND entre l'adresse IP du destinataire et le masque de sous-réseau de l'émetteur

Convertissons l'adresse IP d'Éric-PC en binaire :

01011100.00101000.00000001.00001110

Le masque de sous-réseau de Paul-PC ayant déjà été converti en binaire, il ne nous reste plus qu'à faire un ET logique :

Opération AND 2

On obtient donc 01011100.00101000.00000000.00000000.

Étape finale : comparaison des résultats

Au cours des deux étapes précédentes, nous avons obtenu :

Émetteur :      10001110.00010100.00000000.00000000
Destinataire :  01011100.00101000.00000000.00000000

Nous n'obtenons pas les mêmes valeurs. Par conséquent, ces deux adresses IP (142.20.1.15 et 92.40.1.14) ne sont pas dans le même sous-réseau.

Toujours à titre d'exemple, nous allons cette fois-ci choisir l'adresse IP du destinataire dans le même sous-réseau que celle de l'émetteur pour prouver que cette technique fonctionne bel et bien.

Si l'adresse IP d'Éric-PC est 142.20.20.10, sa notation en binaire sera 10001110.00010100.00010100.00001010.

Nous avons déjà converti le masque de sous-réseau de l'émetteur en binaire donc nous pouvons passer directement au ET logique :

Opération AND 3

Faisons une comparaison entre ce résultat et celui obtenu à l'étape 1 :

Émetteur :      10001110.00010100.00000000.00000000
Destinataire:   10001110.00010100.00000000.00000000

Comme vous pouvez le constater, le résultat est bien le même, donc ces deux adresses IP (142.20.1.15 et 142.20.20.10) sont dans le même sous-réseau. ;)

Voilà, vous comprenez maintenant comment ça se passe. Chaque fois que vous communiquez, ce calcul logique est effectué. Si le destinataire est dans le même sous-réseau, l'hôte lui transmet directement les paquets, sinon, il les envoie au routeur (la passerelle) qui se charge de les router au destinataire.

Un raccourci

La conversion du masque et de l’adresse IP en binaire n’est pas obligatoire, nous vous l'avons fait faire exprès pour vous faire pratiquer. ;) En fait, il est tout à fait possible de faire un ET logique directement en décimal. L’astuce c’est de se servir d'une analogie : une adresse IP représente de l’eau qui coule en direction du masque de sous-réseau. Chaque 255 du masque représente une membrane perméable qui laisse couler l'eau et chaque 0 représente un barrage qui bloque l’eau. Ainsi seuls les octets d’une adresse IP au-dessus d’un 255 se retrouveront dans le résultat du ANDing.

Un schéma étant plus parlant qu'un discours, voici une illustration d'un ET logique entre l'adresse 192.168.30.4 et le masque 255.255.255.0 en utilisant le raccourci évoqué :

Image utilisateur

Remarquez que chaque octet de l'adresse IP au-dessus d'un 255 "coule", c'est-à-dire se retrouve dans le résultat de la conjonction logique. Par contre, l'octet qui se trouve au-dessus d'un zéro est bloqué. ;)

Dans ce chapitre, nous avons fait un zoom sur la passerelle par défaut : nous avons étudié comment elle fonctionne, vu a quoi ça sert, et nous avons même étudié les opérations logiques qui s'effectuent au niveau de vote carte réseau. Tout ceci va vous servir de base pour l'étude de la fonction principale de la passerelle par défaut : le routage, que nous étudierons lorsque nous arriverons à la couche 3 du modèle OSI. Mais pour l'instant, nous sommes toujours coincés devant la couche 4 ! Courage, il ne nous reste plus que l'adressage par classes et l'adressage CIDR à voir... :)

Exemple de certificat de réussite
Exemple de certificat de réussite