34
Omar Cheikhrouhou Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou

Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Omar Cheikhrouhou

Protocoles ARP & RARP

Enseignant: Omar Cheikhrouhou

Page 2: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Références

� RFC 826� RFC 814� Cours Maher Ben jemaa (ENIS)� Cours Bernard Cousin

Page 3: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Introduction

� La transmission des datagrammes IP sur le réseau physique nécessite que ces datagrammes soient encapsulés dans des trames de couche de liaison de données (couche 2 du modèle OSI).

� Les trames de couche liaison de données, telles que les trames Ethernet doivent contenir des adresses matérielles (adresses MAC).

Page 4: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Problème

Comment l'émetteur peut connaître l’adresse MAC de récepteur sachant qu’il ne connaît que son adresse IP ??

Page 5: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Solution

� Solution statique :Table d’association entre adresse IP et

adresse MAC.� Difficulté de mise à jour…� Taille de la table serai trop grand� Solution dynamique:Protocole de résolution d’adresse ARP

(Address Resolution Protocol).

Page 6: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le protocole ARP

Page 7: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Principe

(1)Hôte A veut envoyer un datagramme IP vers l’hôte B

(2) L’hôte A envoie sur le réseau une trame en diffusion, appelé une requête ARP, contenant les adresses IP et MAC de A ainsi l’adresse IP de B en incluant un champ destiné à contenir l’adresse MAC de destination

(3)L’hôte B répond en encodant sa propre adresse matérielle dans une trame de réponse ARP

(4)L’hôte A envoie alors le datagramme IP vers le hôte B

IPIP

ARP ARP

Ethernet Driver Ethernet Driver

(1)

(3)

(2)

(4)

HOST - A HOST- B

Page 8: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Fonctionnement d’ARP

� Réseau Local:� On peut envoyer une requête ARP en diffusion à

tous les nœuds du réseau local pour déterminer l’@MAC du hôte cible.

� Les machines non concernées ne répondent pas.� Gestion du cache pour ne pas effectuer de requête

ARP à chaque émission.� Lorsque la requête ARP est reçu, la couche liaison

de données au niveau du nœud cible qui correspond à l’adresse IP concerné répond avec un message ARP qui contient la paire (adresse MAC,adresse IP) .

Page 9: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Fonctionnement d’ARP

� Réseau distant:� Dans ce cas, l’émetteur doit savoir l’@MAC

du port du routeur auquel le datagramme IP sera transmis.

� Problème:Mais le protocole ARP est encapsulé par le protocole du couche liaison alors ce protocole ne peut pas franchir un routeur car la transmission d’un paquet par un routeur IP nécessite une encapsulation IP.

Page 10: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Fonctionnement d’ ARP

Solution:Le Proxy ARP permet à un routeur de faire croire que les machines des deux réseaux se trouvent sur le même réseau. Pour cela, il répond lui-même aux requêtes ARP concernant des adresses situées de l'autre côté de la source de la requête. Il trompe ainsi la source qui associera l'adresse IP du destinataire à l'adresse physique du routeur. Le Proxy ARP implique que le routeur ait connaissance des différentes stations se trouvant sur chaque réseau.

Page 11: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Format de la trame ARP

Le type dematériel

Le type deprotocole

La taille des adresses matérielles

La taille desadresses

de protocole

Le code del’opération

ARP2 octets 2 octets 1 octets 1 octet 2 octets

Adresse MAC source Adresse IP source6 octets 4 octets

Adresse MAC destination6 octets

Adresse IP destination4 octets

Page 12: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le format de la trame ARP

� Type Matériel: Spécifie le type de l’interface matérielle (Hardware).

Exemple de type matériel

Type Matériel

Réseau Correspondant

1 Ethernet

4 Anneau à Jetons Proteon Pronet

18 Fibre Optique

Page 13: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le format de la trame ARP

�Type de protocole : Spécifie l’adresse de protocole de couche supérieur pour laquelle l’adresse matériel est désirée.Dans le cas des réseaux TCP/IP, l'adresse de protocole est l’adresse IP, la valeur utilisée est 0x 0800.�Hlen : correspond à la longueur en octets de

l’adresse matériel.(@Ethernet=6 octets)�Plen : correspond à la longueur en octets de

l’adresse du protocole.(@IP=4octets)

Page 14: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le format de la trame ARP

� Le code d’opération: Indique si le paquet ARP contient une requête (1) ou une réponse ARP (2)

� Adresse MAC source : Contient l’adresse matérielle (@MAC) de l’émetteur.

� Adresse IP source : Contient l’adresse IP de l’émetteur.

� Adresse MAC cible : Contient l’adresse MAC du nœud cible .

� Adresse IP cible:Contient l’adresse IP du nœud cible.

Page 15: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Type

Matériel

Type

ProtocoleHlen Plen Opération

AM

émetteur

IP

émetteur

AM

cible

IP

cible

2o 2o 1o 1o 1o 6o 4o 6o 4o

Adresse de destination

Adresse de source

Ether Type

0806 hexCRC

Indique des données ARP

6o 6o 2o 4o

Encapsulation ARP dans Ethernet.

Paquet ARP

TrameEthernet

Page 16: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

0C00008A7B2C 192.120.13.1 FFFFFFFFFFF 192.120.13.501.

Requête ARP

02 0C0000328A50 192.120.13.5 0C00008A7B2C 192.120.13.1.

Réponse ARP

Exemple de message ARP

Page 17: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

• Emission de la trame en Broadcast • La machine 192.168.223.207 répond

@ProtocoleCible

@ProtocoleSource

Exemple ARP

Matériel ProtocoleTaille

MatérielTaille

Protocole@Matériel

Source192.168.223.208

@MatérielCible

192.168.223.207

OP

2 2 1 1 2

0001 0800

66 44

6 4 102-60-8CD9-D8-D2

02-60-8CD9-E3-ED

2

• Recopie de l’entête de la trame• Inversion des champs source & destination• Ajout de l’adresse matérielle• Marque la ‘réponse ARP’• Envoi de la trame - réponse

Page 18: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Plan

� Protocole ARP� Format de la trame ARP� Mécanisme de mise à Jour de la Cache� Doublon d’adresses� Protocole RARP

Page 19: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Debut

oui

Je prends en charge ce type de matériel

?

Je comprends ce typede protocole?

Flag Merge mis à 0

<type protocole,adr IP émetteur>est dans la cache

ARP?

Mise à jour de L’AM emetteur dans le cahe ARP Flag Merge mis à 1

Suis-je l’adresse IP cible RejetNon

oui

Non

oui

oui

Non

Non

Rejet

Rejet

Mécanisme de Mise à Jour du CacheOrganigramme de Réception d’un paquet ARP

Page 20: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le champ opération égale 1

Ajout de <type protocole,adresse de protocole émetteur,AM émetteur>dans le cache ARP

1-Echange des champs adresses source et cible dans le paquet ARP2-Champ opération indique comme réponse ARP (2)3-Renvoi du paquet ARP à l’émetteur

Fin

OuiNon

Oui

NonRejet

Oui

Le Flag merge à 0?

Page 21: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

� Remarque sur le diagramme:

� Une table de cache peut être mise à jour par une requête ARP. Seule la table de cache ARP pour les nœuds disposant d ’une entrée pour l ’adresse IP de l ’émetteur est modifiée.

Entrée ModifiéePour la Nouvelle Adr.mat0C00008A7B2C

Diffusion de la requête ARP

Adr. IP Adr..mat199.12.1.1 0C000032BA5

Adr. IP Adr..mat199.12.1.1 0C000032BA5

Table de cache ARP

Table de cache ARP

199.12.1.1

Adr. IP

Adr.mat

0C00008A7B2C

Page 22: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

� Si le nœud cible possède déjà une entrée dans sa table de cache ARP pour la paire <type de protocole,adresse de protocole de l’émetteur>, la nouvelle adresse remplace l’ancienne. Cela peut survenir dans les cas suivants:

� Un nouveau matériel de réseau a été ajouté sur l’émetteur de la requête ARP.

� Les adresse IP ont été réaffecté.� Il y a un problème de doublon d’adresse.

� Les tables de cache ARP sont souvent implémentées avec un mécanisme de temporisation(Timeout) pour la mise à jour des entrée des tables de cache.

Page 23: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Le protocole RARP

Page 24: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Introduction

� Le Besoin :� L'adresse IP d'une machine est configurable

(elle dépend du réseau sur lequel elle se trouve) et est souvent enregistrée sur la mémoire secondaire où le système d'exploitation l'accède au démarrage.

� Ce fonctionnement usuel n'est plus possible dès lors que la machine est une station sans mémoire secondaire (diskless station).

Page 25: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Introduction

� Problème :� Déterminer un mécanisme permettant à la

station d’obtenir son adresse IP depuis le réseau.

� La Solution :� Protocole de bas niveau appelé Reverse

Adress resolution Protocol.� Permet d’obtenir son adresse IP à partir de

l’adresse physique qui lui est associée.

Page 26: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Principe

� Un serveur RARP sur le réseau a pour rôle de fournir les adresses IP associées aux adresse physiques des stations du réseau.

� Le serveur possède une base de données contenant les couples <@ physique,@ IP>.

� Les stations émettent une requête RARP sur le réseau, consistant à demander l’adresse IP associée à leur adresse physique .

Page 27: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Principe

� Les requêtes sont propagées vers le, ou les, serveurs RARP par diffusion. Les serveurs répondent par un message de type RARP.

Page 28: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Fonctionnement

� Une station voudrant savoir son adresse IP envoie en diffusion une requête RARP.

� Tous les nœuds sur le réseau reçoivent la requête mais seul le(s) nœud(s) tenant(s) lieu de serveur(s) RARP répondent.

� Le serveur RARP consulte sa table de correspondance.

� S’il trouve une entrée dans cette table correspondant à l’@MAC dans la requête, il envoie l’@ IP dans une réponse RARP .

Page 29: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Fonctionnement

� En cas de plusieurs serveurs RARP, chacun d’eux traitent la requête RARP.

� Le client RARP accepte la première réponse reçue et ignore toutes les autres.

Page 30: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Format de la trame RARP

� Les paquets de requête et de réponse RARP utilisent le même format que les paquets ARP avec EtherType=8035 (hexadécimal).

� Exemple :� Requête RARP

� Réponse RARP

. 03 0C00008A7B2C 0.0.0.0 FFFFFFFFFFFF 0.0.0.0

. 04 0C0000328A50 192.120.13.1 0C00008A7B2C 192.120.13.5

Code Opération @MAC source IP source @MAC destination IP destination

Page 31: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Problèmes

Si on dispose d’un seul serveur RARP et qu’il soit indisponible (panne par exemple) ,les clientsRARP ne peuvent pas démarrer et ils envoient continuellement des requêtes RARP en diffusion.

La charge du trafic réseau est alourdie. On dit qu’il y a une tempête RARP.

Page 32: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Serveurs RARP principaux et auxiliaires

� La solution consiste à utiliser plusieurs serveurs RARP. Et mieux on désigne un serveur principal et les autres seront des serveurs secondaires.

� Le serveur primaire reçoit la demande ou la requête RARP, il recherche dans la table de correspondance l’adresse IP de la machine demandeuse et la renvoie à cette dernière. Les serveurs secondaires enregistrent l’heure de la demande RARP.

Page 33: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

Serveurs RARP principaux et auxiliaires

� Dans le cas où le serveur primaire est non disponible, le temporisateur de la machine demandeuse expire. Celle-ci renvoie la copie de sa demande RARP.

� Lorsqu’un serveur secondaire reçoit une deuxième copie d’une demande, peu de temps après avoir la première, il répond après un délai aléatoire pour éviter l’encombrement du trafic par les réponses des autres serveurs secondaires.

Page 34: Protocoles ARP & RARP - coins-lab.orgpeople.coins-lab.org/ocheikhrouhou/enseignement... · 2012-05-05 · Protocoles ARP & RARP Enseignant: Omar Cheikhrouhou. Références RFC 826

La commande ARP

� arp <hostname> : résout l'adresse de la station passée en paramètre

� arp -a : affiche le contenu de la table� arp -s <hostname> < @MAC> : ajoute une

entrée dans la table d'association d'adresse� arp -d <hostname> : supprime une entrée de

la table d'association d'adresse�man arp (sous Linux) & �arp /? (sous Windows)