Le ET logique (le ANDing) et la passerelle (Explication simple)

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



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

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 :









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 :





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 :




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


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.


Ce raccourci ne marche que si on utilise les masques de sous-réseaux par défaut, c'est-à-dire composé uniquement de 255 et de 0 (ce qui est le cas dans notre exemple). Mais, si vous devez faire un ET logique qui implique des masques de sous-réseau personnalisés, souvent représentés par une notation CIDR, cette technique ne marchera pas.


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é :








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é

Mode de fonctionnement 


Prenons un exemple concret pour illustrer le mode de fonctionnement d’une passerelle. Voici 2 ordinateurs : Azur-PC et Safran-PC

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 :













En réalité tout ce passe par le modéle OSI et l'encapsulation 

Bonne chance

mohameddouhaji7@gmail.com