Cela étant dit, comment le trafic circulerait-il si le périphérique A envoie le trafic au périphérique C?
Alors disons par exemple que le périphérique A pince le périphérique C.
Donc, sur l’hôte A ou le périphérique A, la commande ping 10. 1. 1. 2 est utilisé.
Comment circulerait le trafic, il est maintenant important de se
rappeler que l’IP est une technologie de couche 3.
Les adresses Mac étant utilisées
à la couche 2, le PC A doit disposer d'un mappage entre l'adresse IP
de couche 3 et l'adresse
MAC de couche 2, car Ethernet est utilisé dans cet
environnement et le paquet doit être encapsulé à la couche 2 et envoyé au réseau. .
Donc, dans Ethernet, une adresse MAC doit être ajoutée à la couche 2.
Donc, ce point PC A ne connaît pas les adresses MAC associées à
l’adresse IP 10. 1. 1. 2
Encore une fois, Ethernet est une technologie de couche 2
et nécessite l'utilisation d'adresses MAC lorsque le trafic est envoyé au segment Ethernet. Ainsi, avant de
pouvoir envoyer le trafic sur le segment de réseau, il doit connaître l'adresse MAC associée à
l'adresse IP 10. 1. 1. 2 Je
me souviens que dans le modèle OSI, chaque couche est indépendante des autres couches et
que les couches inférieures encapsulent les couches supérieures.
Alors, comment le PC A va-t-il apprendre l'adresse MAC du PC C?
Pour ce faire, il utilise un protocole appelé Address Resolution Protocol ou ARP. La première chose à faire par
PC A est de vérifier son cache ARP local pour voir
s’il existe déjà une adresse IP de mappage d’entrée existante
10. 1. 1. 2 à une adresse MAC.
S'il n'y a aucune entrée existante dans le cache des machines locales,
il enverra une diffusion pour essayer de savoir qui
a l'adresse IP 10. 1. 1. 2 et ce message est appelé message de requête ARP.
Dans cet exemple, le PC A et le PC C sont dans le même
sous-réseau, de sorte que le PC A envoie une diffusion au sous-réseau local en
demandant l'adresse MAC du PC C à l'aide d'une requête ARP.
Une demande ARP se présente comme
suit: Dans cet exemple, l'adresse MAC source est A
car la trame
a été envoyée par A l'adresse MAC de destination est une diffusion.
C’est parce que A ne sait pas qui a l’adresse IP 10. 1. 1. 2 Une
demande ARP est donc essentiellement un message demandant qui a cette adresse IP?
l'adresse IP référencée dans le paquet est donc 10. 1. 1. 2 l'adresse IP source
est 10. 1. 1. 1 l'adresse MAC source
est A et l'adresse MAC de destination est une diffusion au niveau de la couche 2.
Pour rappel, il s’agit de la partie couche 2
du message et de la partie couche 3 du message, conformément au modèle OSI.
Avant de continuer avec notre exemple, je
voudrais vous montrer un exemple concret du protocole ARP ou du protocole de résolution d'adresse.
donc sur mon PC, je peux taper la commande arp-a et je vais voir mon cache ARP local mon adresse
IP est 10. 0. 0. 3 et comme vous pouvez le voir ici,
j’ai appris une adresse IP de 10. 0. 0. 254 dynamiquement.
il y a aussi quelques entrées statiques dans le
cache ARP, par exemple, l'adresse de diffusion de
la couche 3 est 255. 255. 255. 255 et l’adresse de couche 2 est de 8F donc pour une
diffusion de couche 3 de 255. 255. 255. 255 L'adresse
équivalente de couche 2 est 8Fs. Dans cet exemple,
nous n'avons qu'une seule adresse MAC dynamique dans le
cache ARP local de
mon ordinateur. La commande ip config me montre donc mes adresses IP.
Dans cet exemple, nous pouvons voir mon adresse IPv6 qui est 2001: 20 :: 2 et mon adresse IPv4
de 10. 0. 0. 3 pour
le moment, nous nous concentrons uniquement sur les adresses IPv4.
Ainsi, vous pouvez également voir ma passerelle par défaut, qui sera définie sur 10. 0. 0. 254 mon cache
ARP montre donc le mappage de l'adresse IP de ma passerelle
par défaut sur l'adresse MAC appropriée.
La commande arp -d me permettra donc de supprimer les entrées ARP de mon cache ARP local.
arp - a montre cette entrée dynamique unique, je vais donc supprimer le cache ARP à nouveau.
Et maintenant, vous pouvez voir qu’il n’ya aucune entrée dans le cache ARP.
Je le ferai encore et remarquerai que l’entrée est à
nouveau apparue et c’est parce que j’envoie du trafic de mon PC local vers ma passerelle par défaut.
Je le ferai encore, alors arp-a montre l’adresse de diffusion dirigée pour ce sous-réseau qui est
10. 0. 0. 255 Je vais maintenant faire
un ping sur une autre adresse IP de 10. 0. 0. 123, il
n'y avait donc pas d'entrée ARP pour cette adresse IP.
Mais remarquez que lorsque je lance un ping, le ping réussit et si je regarde
à nouveau le cache ARP, vous remarquerez qu’une entrée ARP
a été ajoutée pour l’IP ajoutée 10. 0. 0. 123 Maintenant, il
s'agit d'une autre adresse IP configurée sur mon routeur local.
Ainsi, l'adresse MAC résolue est la même adresse MAC que pour l'adresse
IP 10. 0. 0. Si je
supprime à nouveau le cache ARP, arp - d remarque qu'aucune
entrée n'est trouvée dans le cache ARP, toujours aucune entrée.
Parlons ping 10. 0. 0. Le ping réussit et si nous regardons
à nouveau le cache ARP, nous remarquons qu’il ya une entrée et que le cache ARP
est maintenant pour l’adresse IP 10. 0. 0. 123 si je cingle maintenant ma passerelle
par défaut de 10. 0. 0. 254 qui
auparavant n’avaient pas d’entrée dans le cache ARP, je peux maintenant voir
en utilisant la commande arp - a qu’une entrée
IP à adresse MAC a été créée.
Alors, quelle est la morale de l'histoire?
Avant que le trafic puisse être envoyé à une adresse IP du segment local,
ARP est nécessaire pour créer un mappage entre l’adresse IP de
couche 3 et l’adresse MAC de couche 2.
Wireshark est un outil de détection qui vous permet de capturer le trafic
du fil local pour voir ce qui se passe.
C'est un outil précieux pour l'ingénieur réseau. Utilisons Wireshark pour voir ce
qui se passe dans cet exemple. Donc, ce que je vais faire en premier est de
commencer à capturer dans Wireshark Donc, sur mon interface Ethernet, je vais
commencer à capturer des trames. Alors maintenant, aucune entrée ne se trouve
dans le cache ARP, je vais
faire un ping 10. 0. 0. 254 et regardons à
nouveau le cache ARP après avoir examiné le cache
ARP, nous pouvons voir qu'une entrée
a été ajoutée pour cette adresse et je vais maintenant faire un ping
sur 10. 0. 0. 123
donc maintenant arp - a montre ces 2 entrées dans le cache ARP Arrêtons la
capture et cherchons les entrées ARP Donc comme vous pouvez le
voir ici est une émission qui a été envoyée depuis mon périphérique local le protocole utilisé est ARP
demander qui a l'adresse IP 10. 0. 0. 254 dire
10. 0. 0. 3 mon
PC local Ainsi, au niveau 2, vous pouvez voir que l’adresse de destination est
une diffusion, l’adresse source est ma machine locale, c’est une requête ARP.
Il s'agit du type Ether pour ARP 0x0806 et du
protocole de résolution d'adresse pour les informations ARP.
Notez que nous recherchons une adresse IP 10. 0. 0. 254 l'adresse
MAC de l'expéditeur est ma machine locale; l'adresse
MAC cible est inconnue et nous recherchons l'adresse
IP 10. 0. 0. 254 Une
fois que le périphérique a répondu en utilisant un message de réponse ARP,
je pourrai lui envoyer une requête ping.
Ainsi, dans la capture de Wireshark, vous pouvez voir que j'envoie un écho afin
que vous puissiez voir la requête d'écho ICMP. Voici
la réponse ou la réponse.
En descendant plus bas, je pourrai voir la requête ARP pour l’adresse IP
10. 0. 0. 123
La destination de la couche 2 est une diffusion, la source est une adresse
MAC locale et nous demandons l’adresse MAC cible, autrement dit, qui
a l’adresse IP 10. 0. 0. La réponse
est unicast car la requête arp est envoyée au périphérique
pour savoir de qui provient la requête arp.
La destination de la couche 2 est donc ma machine locale.
La source est mon expéditeur du routeur local, l'adresse
IP de l'expéditeur de l'adresse Mac, l'adresse MAC cible, l'adresse IP cible.
Dans ce cas, je communique directement avec mon routeur local au
lieu d’envoyer du trafic via le routeur. L’adresse
MAC et l’adresse IP utilisées dans cet exemple sont donc
mon ordinateur local et mon routeur local.
Vous pouvez voir dans la sortie ici que l'adresse MAC de l'expéditeur est un routeur Cisco.
L'adresse IP est 10. 0. 0. L'adresse MAC
cible 123 est mon ordinateur portable local avec l'adresse
IP cible de 10. 0. 0. 3