Les échanges des données dans un réseau sont assurés par des matériels informatiques (switch et Hub dans cet article), nous allons découvrir ces derniers en étudiant les deux cas suivants :
-Connexion entre deux ordinateurs
-Connexion entre plus de 2 ordinateurs
-Connexion entre deux ordinateurs :
Regardez l’image ci-dessous qui montre deux ordinateurs connectés, voyons voir en détaille comment ces échanges d’info se passe réellement :
*Carte réseau :
les ordinateurs envoient les données au réseau via une carte électronique appelé « carte réseau ».
Le rôle de cette carte et de convertir ces informations à un format adéquat pour qu’il puisse être transporté via le câble réseau.
C’est l’interface entre l’ordinateur et le réseau.
*Câble réseau :
Il permet de relier physiquement deux équipements (ici les deux ordinateurs) pour transporter les données (voir image).
Donc pour former un réseau LAN en connectant deux ordinateurs, il nous faut un câble Rj45 et le brancher aux deux ports Rj45 des deux carte réseau des ordinateurs. Simple pas vrais ;).
Le but de ce chapitre est de vous montrer juste le coté physique des réseaux local.
Deux ordinateurs connectés avec un câble ne nous suffisent pas pour qu’ils puissent échanger des données entre eux, il reste encore une configuration système au niveau des ordinateurs qu’on verra dans un autre article.
-Connexion entre plus de 2 ordinateurs :
Quand il s’agit de plus de deux ordinateurs, l’échange des données devient compliqué.
Dans ce cas d’autres équipements interviennent, ce sont des équipements réseau auxquels tous les ordinateurs du réseau local sont connectés via le câble RJ45 (ces équipements possèdent aussi des cartes réseau) et s’en chargent de transmettre les données d’un ordinateur vers l’ordinateur de destination comme illustre l’image ci-dessous :
Quels sont ces équipements réseau et comment fonctionnent-t-il ?
Avant de vous présenter ses équipements vous devez savoir que dans un réseau chaque ordinateur doit avoir deux identifiants qui lui permettent d’être unique dans le réseau.
Mais pourquoi un ordinateur doit avoir ces deux identifiants ?
Tout simplement pour que l’émetteur sache identifier l’ordinateur à qui il doit envoyer les données.
C’est exactement comme une adresse mail, si quelqu’un souhaite vous envoyer un mail, il doit connaitre votre adresse mail (identifiant de destinataire) sinon il ne peut pas vous envoyer quoi que ce soit, et une fois le mail reçu, vous reconnaissez tout de suite l’expéditeur en lisant sa propre adresse mail (identifiant de l’expéditeur).
Donc si un ordinateur veut envoyer des données à un autre, il doit connaitre son identifiant.
Il y en deux :
-identifiant N°1 : Adresse MAC
-identifiant N°2 : Adresse IP
Exemple d’une adresse MAC : 00:11:43:00:00:01
Exemple d’une adresse IP : 192.168.0.1
Maintenant allons voir ces équipements.
HUB (Concentrateur) :
Le HUB est un équipement réseau auquel sont connectés des ordinateurs pour leur permettre de communiquer entre eux.
Regardez l’image ci-dessous qui montre un réseau local avec des ordinateurs connectés à un HUB.
L’ordinateur « A » souhaite envoyer des données à l’ordinateur « B », voyons voir comment ça se passe :
-L’ordinateur A prépare les données qu’il veut envoyer (exemple : un fichier)
-Il envoie les données au HUB :
Que va-t-il faire le HUB ?
Ici le Hub va diffuser les données sur tous ces interfaces auxquels sont connectés les ordinateurs, sauf l’interface par lequel il a reçu l’information pour éviter que l’émetteur reçoive ses données (voir l’image ci-dessous) :
C’est la technique que le HUB emploi pour envoyer les données au destinataire : la diffusion.
Vous devez savoir que les données envoyées par un ordinateur sont accompagnées par d’autres informations pour les aider à arriver à leur destination.
Parmi ses information : l’adresse IP et MAC de destinataire et ceux de l’émetteur :
Bien Gardez cela en tète 😉
Mais alors pourquoi « diffuser », pourquoi ne pas envoyer les données directement à l’ordinateur B, puisqu’elle contient l’adresse IP et l’adresse Mac du destinataire ?
Parce que le HUB n’est qu’un répéteur de signale.
Il n’est pas intelligent, il ne sait pas lire les identifiants, pour lui, les données reçus sont juste des signaux électriques pas plus, donc pour s’assurer que le destinataire reçoit ses données, il les diffuse sur tous ces interfaces à part bien sur celui par lequel il les a reçu.
Que se passe-t-il après ??
-Les ordinateurs C, D et le serveur vont rejeter les données puisque leurs adresses IP et MAC sont différentes de celle des données.
-L’ordinateur B va accepter les données puisque son adresse IP et MAC et celles des données sont identiques.
Voilà maintenant vous savez tout sur le fonctionnement du HUB, en fin presque tout.
Le HUB et les collisions :
Le HUB n’est qu’un répéteur de signale, il reçoit un signal et le diffuse sur ces interfaces.
Mais cela par contre cause une catastrophe sur le réseau!!!!
Ça crée la plus part du temps ce qu’on appelle des collisions sur le réseau.
Mais c’est quoi ces collisions ?
Une collision arrive quand deux signales électriques se rencontre.
Voyons voir comment une collision arrive dans un réseau avec un HUB.
Ci-dessous une image qui présente un réseau avec des ordinateurs connectés à un HUB :
-L’ordinateur A envoi des données à destination de l’ordinateur B
-Le HUB diffuse les données vers tous ses interfaces sauf celui par lequel il les a reçu.
Supposant qu’au moment où le HUB est entrain de diffuser les données, l’ordinateur C envoi lui aussi des données vers le serveur, que se passera-t-il dans ce cas ?
Il y aura une collision ! Comme l’illustre l’image ci-dessous :
Le nombre de collision devient important quand le réseau est plus grand et comporte plusieurs ordinateurs, car la chance que plusieurs ordinateurs envoient des données en même temps augmente.
L’impact des collisions est que le réseau deviendra trop lent, chose que vous n’allez surement pas apprécier dans un réseau.
Avec un HUB les ordinateurs sont dans un réseau Half-duplex ce qui veut dire qu’ils ne peuvent pas utiliser le réseau en même temps, sinon il y aura des collisions.
Pour éviter cela un autre matériel d’interconnexion a été inventé : Switch
Switch ( Commutateur ) :
Switch (commutateur en français) est un matériel d’interconnexion plus intelligent qu’un HUB.
Pourquoi ?
Contrairement à un HUB qui diffuse les données sur tous ses interfaces, le switch analyse les données pour lire l’adresse de destination et les transfère vers le destinataire appropriée.
Donc le switch analyse les adresses IP et MAC de destination pour envoyer les données au destinataire.
Surement c’est ce que vous dites à ce moment. Mais c’est incorrect !!
En fait le switch ne sait pas ce que c’est une adresse IP mais se base seulement sur l’adresse MAC.
Il est temps de voir en détail cet identifiant.
Adresse MAC (Media Access Control):
Une adresse MAC (Media Access Control adress) nommé aussi adresse physique est un identifiant unique stocké dans une carte réseau et affecté par le constructeur ce qui lui permet d’être identifiée de façon unique dans le monde parmi toutes les autres cartes réseau.
Elle est représentée sous la forme :
00:11:43:00:00:01
Cette forme est appelée représentation hexadécimale
Les Switch se basent uniquement sur les adresses MAC pour identifier l’ordinateur auquel sont destinées les données, ils ne savent pas lire une adresse IP.
Le matériel qui se base sur les adresses IP est appelé ‘Routeur’.
Ainsi :
Le commutateur se base sur l’adresse MAC pour pouvoir identifier le destinataire des données.
Voyons voir comment cela marche :
Que diriez-vous d’aller jetez un coup d’oeil sur l’adresse MAC de votre PC :
1-Taper les touches « Windows » + « R » et taper la commande « cmd » :
2-la fenêtre invite de commande s’affiche :
4-Taper la commande ipconfig /all :
La commande vous affiche plusieurs informations, ce qui nous intéresse c’est l’adresse MAC :
Voici l’adresse MAC de ma carte réseau ethernet ( en couleur jaune ) :
Et celle de la ma carte Sans file ( elle est affichée uniquement si vous en possédez une) :
Chaque Switch comporte dans sa mémoire une table nommé Table d’adresse MAC qui contient une correspondance de l’adresse MAC d’un ordinateur et le nom de l’interface auquel est connecté :
Ainsi, quand un Switch reçoit les données, il les analyse, détermine l’adresse MAC du destinataire, cherche dans sa table une correspondance pour voir par quelle interface doit diriger les données vers le l’ordinateur approprié.
Regarder l’exemple suivant :
Pour faire simple considérons que l’adresse MAC de l’ordinateur A est sous forme de AAA, et celle de l’ordinateur B est BBB.
-L’ordinateur A envois des données à l’ordinateur B
-Le commutateur reçoit les données, contrairement au HUB, il ne va pas servir de la diffusion mais va analyser l’adresse MAC de la destination (BBB) et chercher s’il y a une correspondance dans sa table (BBB : inf2).
La table d’adresse MAC du commutateur mentionne que l’ordinateur ayant l’adresse AAA est connecté sur l’interface inf1 et celui qui a l’adresse BBB est connecté sur l’interface inf2.
-vous connaissez la suite, le commutateur envois les données à l’ordinateur B via l’interface inf2.
Comme ça le destinataire reçoit ses données grâce au commutateur sans faire appel à la diffusion et ainsi les collisions sont évitées.
Avec un Switch les ordinateurs sont dans un réseau Full-duplex ce qui veut dire qu’ils peuvent accéder au réseau en même temps sans craindre d’avoir des collisions
Mais si le commutateur reçoit des donnes dont l’adresse MAC du destinataire ne figure pas dans sa table MAC commet va-t-il agir dans ce cas ?
La réponse à cette question est dans la réponse de la question suivante :
Comment le commutateur arrive-t-il déjà à remplir sa table MAC ?
Evidemment la table d’adresse MAC du commutateur est vide dès sa première connexion aux ordinateurs.
Voyons voir comment le commutateur remplie sa table.
-L’ordinateur A envois les données vers l’ordinateur B
-le commutateur reçoit les données, analyse l’adresse MAC de destination et celle de l’expéditeur
-le commutateur sait maintenant que L’ordinateur A est connecté sur Inf 1, donc il ajoute l’info AAA : Inf 1 dans sa table.
-l’adresse MAC de l’ordinateur B est par contre inconnue par le commutateur vu qu’il n’est n’existe pas dans sa table, que fera-t-il le commutateur dans ce cas à votre avis ?
Voilà la réponse de votre question ci-dessus :
Il n’a pas le choix, il va diffuser les données sur tous ses interfaces sauf celui par lequel il les a reçu, oui exactement comme le HUB.
-l’ordinateur B reçoit ses données alors que les autres l’ignorent.
Supposant maintenant que l’ordinateur B souhaite répondre à l’ordinateur A :
-le commutateur reçoit les données, analyse l’adresse MAC de destination (AA) et celle de l’expéditeur (BB).
-il vérifie sa table MAC, remarque que l’ordinateur A ayant l’adresse AAA est connecté à l’interface inf 1, ainsi il lui envoi directement les données sans faire appel à la diffusion.
-il ajoute dans sa table MAC l’adresse de l’expéditeur (BBB) de l’ordinateur B connecté à l’interface inf 2 :
-la prochaine fois que le commutateur reçoit des données à destination de l’ordinateur A ou bien B, il va les leurs envoyer directement, grâce à la table d’adresse MAC, sans faire appel à la diffusion =D.
Différence entre HUB & Switch :
Ci-dessous j’ai fait un petit résumé de la différence entre le commutateur et le concentrateur :
Le Protocole ARP :
Une dernière chose dont je dois vous parler à propos de l’adresse MAC :
Comme vous savez, avant de pouvoir envoyer des données, un ordinateur doit avoir l’adresse IP et l’adresse MAC du destinataire.
En fait, dans un réseau local, l’ordinateur a besoin juste de lui donner l’adresse IP du destinataire et lui se charge de trouver son adresse MAC.
Pour mieux voir comment cela marche, je vais avoir besoin de vous présenter une commande utilisé par les administrateurs et les techniciens réseaux pour tester la connectivité entre les ordinateurs. C’est la commande ping, il suffit de taper :
ping adresse_IP_destinataire sur la console de votre système d’exploitation.
Allons faire un test :
Je vais faire un ping sur un ordinateur faisant partie du même réseau local et ayant l’adresse IP 192.168.1.1 ;
Comme vous pouvez le voir, j’arrive bien à joindre cet ordinateur.
Maintenant je vais faire un ping sur une adresse IP qui n’existe pas dans mon réseau, par exemple 192.168.1.22.
le résultat indique clairement que le destinataire est injoignable, ce qui est normale dans mon cas puisque il n’y a aucun ordinateur dans mon réseau local qui possède cette adresse.
Avec la commande ping on a précisé à l’ordinateur l’adresse IP du destinataire.
Comment alors il a fait pour obtenir l’adresse MAC du destinataire ??
Il a utilisé un protocole appelé ARP.
« Un protocole est un programme ou un ensemble de règles à respecter qui permet d’accomplir une tache »
Le protocole ARP permet à l’ordinateur d’obtenir l’adresse MAC du destinataire correspondant à une adresse IP.
Regarder l’image suivante :
A partir de l’ordinateur A, nous allons faire un ping sur l’ordinateur B :
Ping 192.168.0.5
Pour pouvoir faire un ping, l’ordinateur A doit obtenir d’abord l’adresse MAC de l’ordinateur ayant l’adresse IP 192.168.0.5 (l’ordinateur B).
Le protocole ARP va créer un message qui contient l’adresse IP source, l’adresse MAC source, l’adresse IP de destination et l’adresse MAC de destination suivante :
FF: FF: FF: FF: FF: FF
Cette adresse est nommée adresse MAC de diffusion (Broadcast)
Elle signifie que tous les ordinateurs du réseau sont destinataires du message.
Notre Switch se base sur l’adresse MAC pour envoyer les données, donc une fois l’adresse FF : FF : FF : FF : FF : FF est lu, il va diffuser le message à tous les ordinateurs qu’ils lui y sont connectés :
Seulement l’ordinateur ayant l’adresse IP 192.168.0.5 (l’ordinateur B) va accepter le message ARP et répond à son tour par un autre message ARP et cette fois-ci avec son adresse MAC.
Maintenant que l’ordinateur A connait l’adresse MAC de l’ordinateur B, il peut faire un ping sur l’ordinateur B :
Une fois l’ordinateur reçoit la réponse ( MAC du destinataire ), le message suivant s’affiche sur la console de l’émetteur :
Nous avons vu comment les ordinateurs arrivent à échanger les informations au sein d’un réseau local et les matériels d’interconnexion qui permet ces échanges locaux.
Pour voir comment un ordinateur peut envoyer les donnée vers un ordinateur distant c.-à-d un ordinateur situé dans un autre réseau local, cliquez ici.
nmap : les 12 commandes que vous devez connaître
Le fonctionnement du routeur
Iptables : 12 commandes à connaître
Configure chrony as an NTP client or server in Linux
Fail2Ban : How to protect Linux services