Protocole ARP

Download Report

Transcript Protocole ARP

Programme Cisco Networking Academy
Protocole ARP
ARP
Le protocole de résolution
dynamique d'adresses
• De quelle unité avons-nous besoin
de résoudre l'adresse?
ou
• Pour quelle unité devons-nous
résoudre une adresse?
Programme Cisco Networking Academy
Protocole ARP
Remarque au lecteur
• L'information présentée dans cette section est une
simplification et une extrapolation du processus réel
de détermination du protocole ARP.
• Bien que cette information soit correcte au plan
conceptuel, le processus réel est légèrement
différent et plus complexe.
• Cependant, aux fins de ce cours, les explications
de cette section assurent une bonne compréhension
de base.
Programme Cisco Networking Academy
Faisons tout d'abord une courte révision...
Protocole ARP
La suite de protocoles TCP/IP
Application
Transport
Internet/Réseau
Interface réseau
(couche liaison)
Transfert de fichiers : FTP, TFTP, NFS, HTTP
Courrier électronique : SMTP
Accès à distance : Telnet, rlogin
Gestion de réseaux : SNMP, BootP
Gestion des noms : DNS, DHCP
TCP, UDP
IP, ICMP, IGMP, ARP, RARP
Non spécifié : Ethernet, 802.3, anneau à jeton,
802.5, FDDI et ATM
ARP est un protocole de couche 3 qui fait partie de la suite
de protocoles TCP/IP.
Programme Cisco Networking Academy
Pourquoi les unités doivent-elles mapper une adresse MAC
à une adresse IP?
Protocole ARP
Adresse MAC de destination?
Adresse IP
172.16.10.3
172.16.10.19
172.16.10.33
Table ARP
Adresse MAC
00-0C-04-32-14-A1
00-0C-14-02-00-19
00-0C-A6-19-46-C1
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Hôte Cerf
172.16.10.25
255.255.255.0
MAC 00-0C-04-38-44-AA
Source
Destination
172.16.10.0/24
Routeur A
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Protocole ARP
Programme Cisco Networking Academy
•
Les unités (hôtes, routeurs, serveurs, etc.) utilisent
les adresses IP pour joindre d'autres unités dans
leur propre réseau/sous-réseau ou dans d'autres
réseaux/sous-réseaux.
•
Les adresses de couche 3 comme les adresses IP
comprennent l'adresse source de l'unité émettrice
et l'adresse de destination de l'unité cible.
•
Autrement dit, les adresses IP sont constituées de
l'adresse d'origine et de l'adresse de destination
finale.
Protocole ARP
Programme Cisco Networking Academy
•
Les adresses de liaison de données, comme
les adresses MAC Ethernet servent à passer
le paquet IP d'un saut au suivant.
•
Une révision de la section sur l'encapsulage
et les routeurs peut aider à clarifier ces
notions.
Programme Cisco Networking Academy
Protocole ARP
Pourquoi les unités doivent-elles mapper une
adresse MAC à une adresse IP?
•
Simplement pour livrer le paquet IP à l'intérieur
d'une trame Ethernet au prochain saut sur la
route. Ce saut pourrait bien être la destination
finale.
•
Pour clarifier ceci, examinons quelques
exemples.
Programme Cisco Networking Academy
Protocole ARP
Exemple 1 : Deux unités (hôtes) d'un même sous-réseau
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Hôte Cerf
172.16.10.25
255.255.255.0
MAC 00-0C-04-38-44-AA
Source
Destination
172.16.10.0/24
Routeur A
Voici un exemple d'un hôte Steve à
l'adresse IP 172.16.10.10, qui veut
envoyer un paquet IP à l'hôte Cerf à
l'adresse IP 172.16.10.25.
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Programme Cisco Networking Academy
Protocole ARP
L'hôte Steve doit envoyer ce paquet :
a) directement à sa destination finale, l'hôte Cerf,
ou
b) à la passerelle par défaut, le routeur, afin que
celui-ci envoie le paquet vers sa destination.
• Comment l'hôte Steve sait-il où envoyer ce
paquet?
Protocole ARP
Programme Cisco Networking Academy
• Selon la réponse, l'hôte Steve recherchera
l'adresse IP de l'hôte Cerf, 172.16.10.25, dans sa
table ARP ou celle de la passerelle par défaut,
soit l'adresse IP du routeur A, 172.16.10.1.
• Là est toute la question!
Programme Cisco Networking Academy
Protocole ARP
La GRANDE question
Quelle adresse IP l'hôte émetteur (Steve)
recherche-t-il dans sa table ARP? Et si cette
adresse IP ne s'y trouve pas, pour quelle adresse
IP envoie-t-il une requête ARP?
Est-ce :
• L'adresse IP de l'hôte de destination?
• L'adresse IP de la passerelle par défaut
(le routeur)?
Programme Cisco Networking Academy
Protocole ARP
Réponse
• Cela dépend si l'adresse de la destination finale
est dans le même sous-réseau ou dans un
réseau ou un sous-réseau différent.
• L'hôte émetteur doit déterminer si l'adresse IP
de la destination se trouve dans le même
sous-réseau que lui.
Programme Cisco Networking Academy
Protocole ARP
Même sous-réseau
• Si la destination finale est dans le même sousréseau que l'émetteur, il sait qu'il peut envoyer
le paquet directement à destination.
• Il cherchera l'adresse IP de la destination finale
dans sa table ARP pour l'adresse MAC.
• Si l'adresse IP figure dans la table ARP, il
encapsule le paquet IP dans une trame Ethernet.
• L'émetteur utilise l'adresse MAC qu'il a trouvée
dans la table ARP comme adresse MAC de
destination dans la trame Ethernet.
Programme Cisco Networking Academy
Protocole ARP
• Si l'adresse IP ne figure pas dans la table ARP,
l'émetteur doit envoyer une requête ARP afin
d'obtenir l'adresse MAC.
Programme Cisco Networking Academy
Protocole ARP
Exemple 1 : Deux hôtes dans un même
sous-réseau
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Hôte Cerf
172.16.10.25
255.255.255.0
MAC 00-0C-04-38-44-AA
Source
Destination
172.16.10.0/24
Routeur A
L'hôte Steve à l'adresse IP
172.16.10.10 veut envoyer
un paquet IP à l'hôte Cerf à
l'adresse IP 172.16.10.25.
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Protocole ARP
Programme Cisco Networking Academy
• L'émetteur, l'hôte Steve, compare son adresse IP
à celle de l'hôte de destination en se servant de
son masque de sous-réseau (hôte Steve) pour
extraire la portion réseau des deux adresses IP.
• En effectuant les opérations ET logique sur les
deux adresses IP, l'hôte Steve détermine si les
deux hôtes font partie du même réseau ou
sous-réseau.
Programme Cisco Networking Academy
Adresse IP de l'hôte Steve
Masque de sous-réseau de l'hôte Steve
Protocole ARP
------------------------Réseau de l'hôte Steve
Adresse IP de l'hôte Cerf
Masque de sous-réseau de l'hôte Steve
------------------------Réseau de l'hôte Cerf
172.16.10.10
255.255.255.0
-------------172.16.10.0
172.16.10.25
255.255.255.0
-------------172.16.10.0
Protocole ARP
Programme Cisco Networking Academy
• Remarquez que l'hôte Steve utilise son propre
masque de sous-réseau, qui définit à quel
sous- réseau il est directement connecté.
• Ainsi, lors de l'opération ET logique, il utilise son
propre masque de sous-réseau pour les deux
opérations ET logique.
Protocole ARP
Programme Cisco Networking Academy
• L'hôte Steve détermine qu'il fait partie du
sous-réseau 172.16.10.0 et que l'hôte Cerf
en fait aussi partie.
• Même sous-réseau!
• Cela signifie que l'hôte Steve peut envoyer le
paquet directement à l'hôte Cerf.
• Maintenant que l'hôte Steve sait que l'hôte Cerf
se trouve dans le même sous-réseau, tout ce
qui lui reste à faire consiste à rechercher
l'adresse IP de l'hôte Cerf dans sa table ARP
afin d'obtenir l'adresse MAC de l'hôte Cerf et
d'encapsuler le paquet IP dans la trame
Ethernet pour l'envoyer directement à l'hôte
Cerf.
Programme Cisco Networking Academy
L'hôte Steve vérifie dans sa table ARP l'adresse
MAC de l'hôte Cerf...
Protocole ARP
Adresse MAC de destination?
Table ARP
Adresse IP
Adresse MAC
172.16.10.3
00-0C-04-32-14-A1
172.16.10.19
00-0C-14-02-00-19
172.16.10.33
00-0C-A6-19-46-C1
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Hôte Cerf
172.16.10.25
255.255.255.0
MAC 00-0C-04-38-44-AA
Destination
Source
172.16.10.0/24
Routeur A
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Protocole ARP
Programme Cisco Networking Academy
• Dans l'exemple ci-dessus, l'adresse IP de l'hôte
Cerf ne figure pas dans la table ARP de
l'hôte Steve.
• L'hôte Steve doit envoyer une requête ARP
concernant l'adresse IP 172.16.10.25, soit celle
de l'hôte Cerf finale.
• Cette fois encore, l'hôte Steve sait qu'il peut
envoyer une requête ARP au sujet de l'hôte Cerf
directement, car il a déterminé qu'ils font tous
deux partie du même sous-réseau.
Programme Cisco Networking Academy
Voyons la requête ARP.
Protocole ARP
À quoi ressemble un paquet ARP?
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP cible
Adresse
Ethernet (MAC)
cible
Adresse
IP cible
Remarque : Vous pouvez sauter cette partie si
vous n'avez pas besoin de cette révision.
Programme Cisco Networking Academy
Protocole ARP
Requête ARP de l'hôte Steve à 172.16.10.10
"À tous! J'ai cette adresse IP et j'ai besoin de
savoir à quel hôte elle correspond afin qu'il
m'envoie son adresse MAC."
Requête ARP de 172.16.10.10
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
FF-FFFF-FFFF-FF
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP émetteur
00-0C04-1791-CC
0x806
op = 1
00-0C04-1791-CC
172.16.10.10
Champ op – Requête ARP = 1
Réponse ARP = 2
Requête RARP = 3
Réponse RARP = 4
Adresse
Ethernet
(MAC) cible
Adresse
IP cible
172.16.10.25
Programme Cisco Networking Academy
Réponse ARP de l'hôte Cerf à 172.16.10.25
Protocole ARP
"Hé, l'émetteur de la requête ARP! Voici mon
adresse MAC qui correspond à cette adresse IP."
Réponse ARP de 172.16.10.25
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP émetteur
Adresse
Ethernet
(MAC) cible
Adresse
IP cible
00-0C04-1791-CC
00-0C04-3844-AA
0x806
op = 2
00-0C04-3844-AA
172.16.10.25
00-0C04-1791-CC
172.16.10.10
La voici!
Protocole ARP
Programme Cisco Networking Academy
• L'hôte Steve reçoit la réponse ARP et entre
l'adresse IP et l'adresse MAC de l'hôte Cerf dans sa
table ARP.
• L'hôte Steve dispose maintenant de tout ce dont il a
besoin pour encapsuler le paquet IP dans la trame
Ethernet et l'envoyer directement à l'hôte Cerf.
Trame Ethernet
En-tête Ethernet
Adresse
MAC
destination
00-0C04-3844-AA
Adresse
MAC
source
00-0C04-1791-CC
Datagramme IP vu de dessus
Autre
info
en-tête
Info
en-tête
IP
Adresse IP
source
initiale
Adresse IP
de destination
finale
172.17.10.10
172.16.10.25
Données
Fin de
trame
Ethernet
FCS
Programme Cisco Networking Academy
Protocole ARP
Exemple 2 : Deux hôtes dans des sous-réseaux
différents
Hôte Perle
172.16.20.12
255.255.255.0
MAC 00-0C-22-A3-14-01
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Destination
Source
172.16.10.0/24
172.16.20.0/24
Routeur A
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Voici un exemple d'un hôte Steve à l'adresse IP
172.16.10.10 qui désire envoyer un paquet IP à
l'hôte Perle à l'adresse IP 172.16.20.12
Protocole ARP
Programme Cisco Networking Academy
L'hôte Steve doit envoyer ce paquet :
a) directement à sa destination finale, l'hôte Perle,
ou
b) à la passerelle par défaut, le routeur, afin que
celui-ci envoie le paquet vers sa destination.
• Comment l'hôte Steve sait-il où envoyer ce
paquet?
Programme Cisco Networking Academy
Protocole ARP
• Selon la réponse, l'hôte Steve recherchera
l'adresse IP de l'hôte Perle, 172.16.20.12, dans
sa table ARP ou celle de la passerelle par défaut,
soit l'adresse IP du routeur A, 172.16.10.1.
• Là est toute la question!
Programme Cisco Networking Academy
Protocole ARP
La GRANDE question
Quelle adresse IP l'hôte émetteur (Steve)
recherche-t-il dans sa table ARP? Et si cette
adresse IP ne s'y trouve pas, pour quelle
adresse IP envoie-t-il une requête ARP?
Est-ce :
• L'adresse IP de l'hôte de destination?
• L'adresse IP de la passerelle par défaut
(le routeur)?
Programme Cisco Networking Academy
Protocole ARP
Réponse
• La réponse dépend si l'adresse de la destination
finale est dans le même sous-réseau, ou encore,
dans un réseau ou un sous-réseau différent.
• L'hôte émetteur doit déterminer si l'adresse IP
de la destination finale se trouve dans le même
sous-réseau que lui.
Programme Cisco Networking Academy
Protocole ARP
Sous-réseaux différents
• Si la destination finale est dans un sous-réseau
différent, l'émetteur sait qu'il ne peut pas lui
envoyer le paquet directement.
• Il doit plutôt rechercher l'adresse IP de la
passerelle par défaut.
• C'est pourquoi les hôtes ont habituellement, en
plus de leur adresse IP et masque de sousréseau, l'adresse IP d'une passerelle par défaut.
Protocole ARP
Programme Cisco Networking Academy
• La passerelle par défaut est généralement un
routeur, auquel les hôtes envoient des paquets
lorsque l'adresse IP de destination se trouve
dans un sous-réseau ou un réseau différent.
• L'émetteur recherche l'adresse IP de la passerelle
par défaut dans sa table ARP pour obtenir
l'adresse MAC de cette dernière.
• Si l'adresse IP figure dans la table ARP de
l'émetteur, celui-ci encapsule le paquet IP dans
une trame Ethernet et envoie le paquet à la
passerelle par défaut, c'est-à-dire au routeur.
Protocole ARP
Programme Cisco Networking Academy
• Si l'adresse IP ne figure pas dans la table ARP,
l'émetteur envoie une requête ARP pour connaître
l'adresse MAC de la passerelle par défaut, c'està-dire le routeur.
Programme Cisco Networking Academy
Protocole ARP
Voyons comment cela se passe dans notre
exemple.
Hôte Perle
172.16.20.12
255.255.255.0
MAC 00-0C-22-A3-14-01
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Source
Destination
172.16.10.0/24
172.16.20.0/24
Routeur A
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Voici un exemple d'un hôte Steve à l'adresse IP
172.16.10.10 qui veut envoyer un paquet IP à l'hôte
Perle à l'adresse IP 172.16.20.12.
Protocole ARP
Programme Cisco Networking Academy
1. L'émetteur, l'hôte Steve, compare son adresse IP
à celle de l'hôte de destination en se servant de
son masque de sous-réseau (hôte Steve) pour
extraire la portion réseau des deux adresses IP.
2. En effectuant les opérations ET logique sur
les deux adresses IP, l'hôte Steve détermine si
les deux hôtes font partie du même réseau ou
sous-réseau.
Programme Cisco Networking Academy
Adresse IP de l'hôte Steve
Masque de sous-réseau de l'hôte Steve
Protocole ARP
------------------------Réseau de l'hôte Steve
Adresse IP de l'hôte Perle
Masque de sous-réseau de l'hôte Steve
------------------------Réseau de l'hôte Perle
172.16.10.10
255.255.255.0
-------------172.16.10.0
172.16.20.12
255.255.255.0
-------------172.16.20.0
Protocole ARP
Programme Cisco Networking Academy
• Remarquez que l'hôte Steve utilise son propre
masque de sous-réseau, qui définit à quel
sous- réseau il est directement connecté.
• Ainsi, lors de l'opération ET logique, il utilise son
propre masque de sous-réseau pour les deux
opérations ET logique.
Protocole ARP
Programme Cisco Networking Academy
• L'hôte Steve détermine qu'il fait partie du sousréseau 172.16.10.0 et que l'hôte Perle se trouve
dans le sous-réseau 172.16.20.0.
• Des sous-réseaux différents!
• Cela signifie que l'hôte Steve ne peut pas
envoyer le paquet directement à l'hôte Perle.
• Maintenant que l'hôte Steve sait que l'hôte Cerf
se trouve dans un sous-réseau différent, il sait
qu'il doit envoyer le paquet à la passerelle par
défaut, le routeur.
• L'hôte Steve recherche l'adresse IP de la
passerelle par défaut (entrée par l'utilisateur ou
reçue d'un serveur DHCP) dans sa table ARP.
Programme Cisco Networking Academy
L'hôte Steve vérifie dans sa table ARP l'adresse
MAC du routeur...
Protocole ARP
Adresse de la passerelle par
défaut (le routeur)?
Adresse IP
172.16.10.3
172.16.10.19
172.16.10.33
Table ARP
Adresse MAC
00-0C-04-32-14-A1
00-0C-14-02-00-19
00-0C-A6-19-46-C1
Hôte Perle
172.16.20.12
255.255.255.0
MAC 00-0C-22-A3-14-01
Hôte Steve
172.16.10.10
255.255.255.0
MAC 00-0C-04-17-91-CC
Destination
Source
172.16.10.0/24
172.16.20.0/24
Routeur A
Ethernet 0
172.16.10.1
255.255.255.0
MAC 03-0D-17-8A-F1-32
Protocole ARP
Programme Cisco Networking Academy
• Dans l'exemple ci-dessus, l'adresse IP de l'hôte
Perle ne figure pas dans la table ARP de l'hôte
Steve.
• L'hôte Steve doit envoyer une requête ARP
concernant l'adresse IP 172.16.10.1, soit
l'adresse IP du Routeur A .
• L'hôte Steve ne peut pas émettre une requête
ARP directement au sujet de l'hôte Perle, car il
a déterminé qu'il se trouve dans un sous-réseau
différent.
Programme Cisco Networking Academy
Voyons la requête ARP.
Protocole ARP
À quoi ressemble un paquet ARP?
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP cible
Adresse
Ethernet (MAC)
cible
Remarque : Vous pouvez sauter cette partie si vous
n'avez pas besoin de cette révision.
Adresse
IP cible
Programme Cisco Networking Academy
Protocole ARP
Requête ARP de l'hôte Steve à 172.16.10.10
"À tous! J'ai cette adresse IP, 172.16.10.1, et j'ai
besoin de savoir à quelle unité elle correspond et
que celle-ci m'envoie son adresse MAC."
Requête ARP de 172.16.10.10
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
FF-FFFF-FFFF-FF
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP émetteur
00-0C04-1791-CC
0x806
op = 1
00-0C04-1791-CC
172.16.10.10
Champ op –Requête ARP = 1
Réponse ARP = 2
Requête RARP = 3
Réponse RARP = 4
Adresse
Ethernet
(MAC) cible
Adresse
IP cible
172.16.10.1
Programme Cisco Networking Academy
Réponse ARP du Routeur A à 172.16.10.1
Protocole ARP
"Hé, l'émetteur de la requête ARP! Voici mon
adresse MAC qui correspond à cette adresse IP."
Réponse ARP de 172.16.10.1
Données Ethernet – requête/réponse ARP 28 octets
En-tête Ethernet
Adresse
de
destination
Ethernet
(MAC)
00-0C04-1791-CC
Adresse
source
Ethernet
(MAC)
Type
de
trame
En-têtes
ARP
(champ
opér.)
Adresse
Ethernet
(MAC)
émetteur
Adresse
IP émetteur
Adresse
Ethernet
(MAC) cible
Adresse
IP cible
03-0D17-8AF1-32
0x806
op = 2
03-0D17-8AF1-32
172.16.10.1
00-0C04-1791-CC
172.16.10.10
La voici!
Protocole ARP
Programme Cisco Networking Academy
• L'hôte Steve reçoit la réponse ARP et entre
l'adresse IP et l'adresse MAC du Routeur A dans
sa table ARP.
• L'hôte Steve dispose maintenant de tout ce dont
il a besoin pour encapsuler le paquet IP dans la
trame Ethernet et l'envoyer au Routeur A.
Trame Ethernet
En-tête Ethernet
Adresse
MAC
destination
03-0D17-8AF1-32
Adresse
MAC
source
Datagramme IP vu de dessus
Autre
info
en-tête
Info
en-tête
IP
Adresse IP
source
initiale
Adresse IP
de
destination
finale
172.17.10.10
00-0C04-1791-CC
172.16.10.1
Données
Fin de
trame
Ethernet
FCS
Programme Cisco Networking Academy
Protocole ARP
• C'est maintenant au Routeur A d'envoyer le
paquet vers sa destination.
Protocole ARP
Programme Cisco Networking Academy