ARP
Comprends le fonctionnement du protocole ARP (Address Resolution Protocol), son rôle critique dans la communication réseau, et les attaques qui l'exploitent.
- Expliquer le rôle d'ARP dans la résolution d'adresses IP vers MAC
- Décrire le processus ARP Request / ARP Reply
- Analyser et interpréter la table ARP d'un système
- Comprendre le rôle d'ARP dans les communications locales et inter-réseaux
- Identifier les attaques ARP Spoofing et les défenses associées
📡 7.1 — Qu'est-ce qu'ARP ?
ARP (Address Resolution Protocol) est un protocole de la couche 2/3 qui permet de résoudre (traduire) une adresse IP (couche 3) en une adresse MAC (couche 2). Sans ARP, les appareils sur un réseau local ne pourraient pas communiquer entre eux.
Imagine un annuaire téléphonique. Tu connais le nom de quelqu'un (son adresse IP), mais pour l'appeler, tu as besoin de son numéro de téléphone (son adresse MAC). ARP est l'annuaire qui fait la correspondance : tu donnes le nom, il te retourne le numéro.
Pourquoi ARP est-il nécessaire ?
Les réseaux utilisent deux systèmes d'adressage distincts qui travaillent ensemble :
| Caractéristique | Adresse IP (Layer 3) | Adresse MAC (Layer 2) |
|---|---|---|
| Taille | 32 bits (IPv4) | 48 bits |
| Exemple | 192.168.1.10 | AA:BB:CC:11:22:33 |
| Attribuée par | Administrateur / DHCP | Fabricant (gravée dans la NIC) |
| Portée | Bout en bout (end-to-end) | Lien local (hop-by-hop) |
| Changée en transit ? | Non (sauf NAT) | Oui, à chaque routeur |
Position d'ARP dans le modèle OSI
L'application veut envoyer un paquet IP vers 192.168.1.20.
La couche réseau connaît l'IP de destination mais pas l'adresse MAC correspondante.
ARP traduit l'adresse IP en adresse MAC.
EtherType : 0x0806
Il consulte d'abord sa table ARP (cache). Si l'entrée n'existe pas, il lance une requête ARP.
Maintenant que l'adresse MAC est connue, la trame Ethernet peut être construite et envoyée au switch.
🔄 7.2 — Fonctionnement d'ARP
Le processus ARP se déroule en deux étapes : une ARP Request envoyée en broadcast et une ARP Reply renvoyée en unicast.
Étape 1 : ARP Request (Broadcast)
ARP Request — "Qui a cette IP ?"
Broadcast sur tout le réseau local
Quand un hôte veut communiquer avec une adresse IP dont il ne connaît pas la MAC, il envoie une ARP Request en broadcast (FF:FF:FF:FF:FF:FF).
| MAC Source | Adresse MAC de l'expéditeur |
| MAC Destination | FF:FF:FF:FF:FF:FF (broadcast) |
| EtherType | 0x0806 (ARP) |
| Opcode | 1 (Request) |
| Message | "Qui possède l'adresse IP 192.168.1.20 ? Répondez à 192.168.1.10" |
Étape 2 : ARP Reply (Unicast)
ARP Reply — "C'est moi !"
Réponse unicast directe
L'hôte qui possède l'adresse IP demandée répond en unicast directement à l'expéditeur de la requête.
| MAC Source | Adresse MAC du répondeur |
| MAC Destination | Adresse MAC de l'expéditeur original |
| Opcode | 2 (Reply) |
| Message | "192.168.1.20, c'est moi ! Mon adresse MAC est DD:EE:FF:44:55:66" |
Schéma du processus ARP
PC-A (192.168.1.10) veut envoyer un paquet à PC-B (192.168.1.20).
Il consulte sa table ARP locale. Aucune entrée trouvée pour 192.168.1.20.
PC-A envoie un ARP Request en broadcast sur tout le LAN :
MAC src: AA:BB:CC:11:22:33 | MAC dst: FF:FF:FF:FF:FF:FF
"Qui possède 192.168.1.20 ? Répondez à 192.168.1.10 (AA:BB:CC:11:22:33)"
Tous les hôtes du LAN recoivent cette trame. Seul le propriétaire de l'IP 192.168.1.20 répond.
PC-B (192.168.1.20) reconnaît son adresse IP et répond en unicast :
MAC src: DD:EE:FF:44:55:66 | MAC dst: AA:BB:CC:11:22:33
"192.168.1.20, c'est moi ! Mon MAC est DD:EE:FF:44:55:66"
PC-A enregistre l'association IP/MAC dans son cache ARP.
PC-B enregistre aussi l'association de PC-A dans son propre cache.
La communication peut maintenant se faire directement en unicast.
Structure du paquet ARP
Le message ARP fait 28 octets au total (pour Ethernet/IPv4). Il est encapsule dans une trame Ethernet avec l'EtherType 0x0806. Comme 28 octets est inferieur au minimum de 46 octets pour le payload Ethernet, du padding (18 octets de zeros) est ajoute.
Type de reseau physique. 0x0001 = Ethernet.
Autres valeurs possibles : 0x0006 = IEEE 802, 0x000F = Frame Relay.
Protocole de couche 3 dont on cherche a resoudre l'adresse. 0x0800 = IPv4.
Utilise les memes valeurs que le champ EtherType d'Ethernet.
Taille en octets de l'adresse materielle. 6 pour Ethernet (adresse MAC = 6 octets).
Taille en octets de l'adresse de protocole. 4 pour IPv4 (adresse IP = 4 octets).
1 | ARP Request |
2 | ARP Reply |
3 | RARP Request (Reverse ARP — obsolete) |
4 | RARP Reply (Reverse ARP — obsolete) |
RARP permettait a une machine de decouvrir sa propre adresse IP a partir de sa MAC. Remplace par BOOTP puis DHCP.
Adresse MAC de l'expediteur du message ARP.
Adresse IPv4 de l'expediteur du message ARP.
Adresse MAC de la cible. Dans un ARP Request, ce champ est 00:00:00:00:00:00 (inconnu). Dans un ARP Reply, il contient l'adresse MAC du demandeur original.
Adresse IPv4 de la cible dont on cherche l'adresse MAC.
Recapitulatif : taille du paquet ARP
2 + 2 + 1 + 1 + 2 + 6 + 4 + 6 + 4 = 28 octets
| Champ | Taille | Valeur typique (Ethernet/IPv4) |
|---|---|---|
| Hardware Type (HTYPE) | 2 octets | 0x0001 (Ethernet) |
| Protocol Type (PTYPE) | 2 octets | 0x0800 (IPv4) |
| Hardware Address Length (HLEN) | 1 octet | 6 |
| Protocol Address Length (PLEN) | 1 octet | 4 |
| Opcode | 2 octets | 1 (Request) ou 2 (Reply) |
| Sender MAC (SHA) | 6 octets | MAC de l'expediteur |
| Sender IP (SPA) | 4 octets | IP de l'expediteur |
| Target MAC (THA) | 6 octets | 00:00:00:00:00:00 (Request) ou MAC cible (Reply) |
| Target IP (TPA) | 4 octets | IP dont on cherche la MAC |
📋 7.3 — Table ARP (ARP Cache)
Chaque appareil maintient une table ARP (ou cache ARP) qui stocke les associations IP/MAC récemment apprises. Cela évite d'envoyer un broadcast ARP Request à chaque communication.
Types d'entrées
| Type | Description | Durée de vie |
|---|---|---|
| Dynamique | Apprise automatiquement via ARP Request/Reply | Quelques minutes (typiquement 2-20 min selon l'OS) |
| Statique | Configurée manuellement par l'administrateur | Permanente (jusqu'au redémarrage ou suppression manuelle) |
Le cache ARP, c'est comme la liste de contacts de ton téléphone. Quand tu appelles quelqu'un pour la première fois, tu cherches son numéro (ARP Request). Ensuite, tu l'enregistres dans tes contacts (cache ARP) pour ne pas avoir à le chercher à nouveau. Mais si le numéro change (nouvel appareil sur le réseau), ton ancien contact devient obsolète.
Consulter la table ARP
Commandes ARP essentielles
| Commande | OS | Description |
|---|---|---|
arp -a | Windows / macOS | Affiche la table ARP complète |
arp -d * | Windows | Supprime toutes les entrées dynamiques |
arp -d 192.168.1.20 | Windows | Supprime une entrée spécifique |
arp -s IP MAC | Windows | Ajoute une entrée statique |
ip neigh show | Linux | Affiche la table ARP (commande moderne) |
ip neigh flush all | Linux | Vide le cache ARP |
ARP Timeout : duree de vie detaillee
Les entrees ARP dynamiques ont deux etats avec des durees differentes :
| OS | Etat incomplete (pas de reponse) | Etat complete (reponse recue) | Notes |
|---|---|---|---|
| Windows | ~3 secondes | 15 a 45 secondes (reachable), puis jusqu'a ~10 minutes si reutilise | Windows revalide l'entree si elle est utilisee avant expiration. Le registre ArpCacheLife peut modifier ce comportement. |
| Linux | ~3 secondes | ~30 secondes (reachable) puis passe en stale pendant ~60 secondes | Configurable via /proc/sys/net/ipv4/neigh/default/. Les etats Linux sont : INCOMPLETE, REACHABLE, STALE, DELAY, PROBE, FAILED. |
| macOS | ~3 secondes | ~20 minutes | Configurable via sysctl net.link.ether.inet.max_age |
| Cisco IOS | ~1 minute | 4 heures (14400 secondes) | Configurable avec arp timeout <secondes> sur l'interface |
🌐 7.4 — ARP dans un réseau
Le comportement d'ARP diffère selon que la communication est locale (même sous-réseau) ou distante (vers un autre réseau via un routeur).
Communication locale (même sous-réseau)
Destination sur le même réseau
PC-A (192.168.1.10) vers PC-B (192.168.1.20)
- PC-A compare l'IP de destination avec son propre sous-réseau (AND logique avec le masque)
- Les deux sont sur 192.168.1.0/24 : la destination est locale
- PC-A cherche l'adresse MAC de 192.168.1.20 dans son cache ARP
- Si absente : ARP Request broadcast pour 192.168.1.20
- PC-B répond avec son adresse MAC
- PC-A envoie la trame directement à PC-B
Communication distante (vers un autre réseau)
Destination sur un réseau distant
PC-A (192.168.1.10) vers Serveur (10.0.0.50)
- PC-A compare l'IP de destination avec son propre sous-réseau
- 10.0.0.50 n'est pas sur 192.168.1.0/24 : la destination est distante
- PC-A doit envoyer le paquet au gateway par défaut (routeur, ex: 192.168.1.1)
- PC-A cherche l'adresse MAC du gateway (192.168.1.1) dans son cache ARP
- Si absente : ARP Request broadcast pour 192.168.1.1 (pas pour 10.0.0.50 !)
- Le routeur répond avec son adresse MAC
- PC-A envoie la trame au routeur (MAC dst = MAC du routeur, IP dst = 10.0.0.50)
PC-A : 192.168.1.10 / MAC: AA:BB:CC:11:22:33
PC-B : 192.168.1.20 / MAC: DD:EE:FF:44:55:66
Gateway : 192.168.1.1 / MAC: 00:1A:2B:3C:4D:5E
Communication locale PC-A vers PC-B : ARP pour l'IP de PC-B
Communication distante PC-A vers 10.0.0.50 : ARP pour l'IP du Gateway
Interface LAN : 192.168.1.1 / MAC: 00:1A:2B:3C:4D:5E
Interface WAN : 10.0.0.1 / MAC: 00:1A:2B:3C:4D:FF
Le routeur reçoit la trame, décapsule, puis la ré-encapsule avec de nouvelles adresses MAC pour le prochain saut.
Serveur : 10.0.0.50 / MAC: 77:88:99:AA:BB:CC
Le routeur fait un ARP pour 10.0.0.50 sur ce réseau.
📨 7.5 — Gratuitous ARP et Proxy ARP
Gratuitous ARP
Un Gratuitous ARP est un paquet ARP envoye par un hote pour annoncer ou mettre a jour son propre mappage IP/MAC, sans qu'une requete ait ete faite. L'hote envoie un ARP Request ou Reply ou l'adresse IP source et destination sont sa propre adresse IP.
Usages legitimes du Gratuitous ARP
Quand c'est normal et attendu
| Usage | Description |
|---|---|
| Detection de conflit IP | A la configuration d'une interface, l'hote envoie un Gratuitous ARP pour verifier qu'aucun autre appareil n'utilise deja la meme IP. Si une reponse arrive, il y a un conflit d'adresse. |
| Mise a jour des caches ARP | Apres un changement de carte reseau ou de MAC (virtualisation), l'hote annonce sa nouvelle MAC pour que les autres mettent a jour leur cache. |
| Failover / Haute disponibilite | Lors d'un basculement HSRP, VRRP ou GLBP, le nouveau routeur actif envoie un Gratuitous ARP pour prendre en charge l'adresse IP virtuelle avec sa propre MAC. |
| Demarrage d'une interface | Quand une interface reseau s'active, l'hote annonce sa presence sur le LAN via un Gratuitous ARP. |
Proxy ARP
Le Proxy ARP (RFC 1027) est un mecanisme par lequel un routeur repond aux requetes ARP a la place d'un autre hote situe sur un autre sous-reseau.
Fonctionnement du Proxy ARP
Le routeur "fait semblant" d'etre la destination
- Un hote A (192.168.1.10/16) veut communiquer avec un hote B (192.168.2.20/16)
- Comme ils partagent le meme prefixe /16, l'hote A pense que B est sur le meme LAN
- L'hote A envoie un ARP Request pour 192.168.2.20
- Le routeur, qui connait une route vers 192.168.2.0/24, repond avec sa propre adresse MAC
- L'hote A envoie ses trames au routeur (croyant parler directement a B)
- Le routeur route ensuite les paquets vers le bon sous-reseau
Inconvenients : augmente le trafic ARP, augmente la taille de la table ARP, peut masquer des problemes de configuration reseau, et cree une surface d'attaque supplementaire.
Cisco IOS : Proxy ARP est active par defaut sur les interfaces. Pour le desactiver :
no ip proxy-arp sur l'interface.
☠️ 7.6 — ARP Spoofing / ARP Poisoning
ARP n'a aucun mécanisme d'authentification. N'importe quel appareil sur le réseau peut envoyer des ARP Reply non sollicitées (gratuitous ARP) pour associer une adresse IP à une fausse adresse MAC. C'est le principe de l'ARP Spoofing (ou ARP Poisoning).
Imagine la Poste sans vérification d'identité. Quelqu'un peut aller au bureau de poste et dire : "Je suis Monsieur Dupont, donnez-moi son courrier." Sans vérification, le facteur lui remet les lettres. L'ARP Spoofing, c'est exactement cela : un attaquant se fait passer pour un autre en fournissant sa propre adresse MAC pour une adresse IP qui ne lui appartient pas.
Comment fonctionne une attaque ARP Spoofing ?
Victime (192.168.1.10) communique avec le Gateway (192.168.1.1).
Cache ARP de la victime : 192.168.1.1 → 00:1A:2B:3C:4D:5E (MAC correcte du routeur)
Le trafic va directement au routeur. Tout est normal.
Attaquant (192.168.1.50 / MAC: EV:IL:EV:IL:EV:IL) envoie des ARP Reply non sollicitées :
A la victime : "192.168.1.1 est à l'adresse MAC EV:IL:EV:IL:EV:IL"
Au routeur : "192.168.1.10 est à l'adresse MAC EV:IL:EV:IL:EV:IL"
Les deux cibles mettent à jour leur cache ARP avec les fausses informations.
Cache de la victime (empoisonné) :
192.168.1.1 → EV:IL:EV:IL:EV:IL (MAC de l'attaquant !)
Cache du routeur (empoisonné) :
192.168.1.10 → EV:IL:EV:IL:EV:IL (MAC de l'attaquant !)
Tout le trafic entre la victime et le routeur passe maintenant par l'attaquant.
L'attaquant peut : lire le trafic (mots de passe, emails), modifier les données en transit, injecter du contenu malveillant.
L'attaquant active IP forwarding pour que le trafic continue de circuler (la victime ne remarque rien).
Conséquences d'un ARP Spoofing
| Attaque | Description | Pilier CIA menacé |
|---|---|---|
| Man-in-the-Middle | Interception et lecture de tout le trafic réseau | Confidentiality |
| Session Hijacking | Vol de cookies de session pour usurper une identité | Confidentiality + Integrity |
| Data Modification | Modification des données en transit (ex: changer un RIB dans un email) | Integrity |
| Denial of Service | Rediriger le trafic vers une adresse MAC inexistante | Availability |
🛡️ 7.7 — Defenses contre ARP Spoofing
Plusieurs techniques permettent de se protéger contre les attaques ARP Spoofing, de la plus simple à la plus robuste.
DAI est la principale defense contre ARP Spoofing. Disponible sur les switches manages (Cisco, HP, Juniper, etc.).
Fonctionnement detaille :
- Le switch intercepte tous les paquets ARP sur les ports untrusted (non approuves)
- Il extrait les champs Sender MAC et Sender IP du paquet ARP
- Il compare ces valeurs avec la DHCP Snooping Binding Table (base de donnees des associations IP/MAC/Port apprises via DHCP)
- Si l'association correspond : le paquet ARP est autorise
- Si l'association ne correspond pas : le paquet ARP est rejete et un log est genere
- Si trop de paquets ARP invalides arrivent sur un port, le port est place en err-disabled
DHCP Snooping Binding Table
C'est la source de verite pour DAI. Elle est construite automatiquement en ecoutant les echanges DHCP :
Switch# show ip dhcp snooping binding MacAddress IpAddress Lease(sec) Type VLAN Interface ------------------ --------------- ---------- -------------- ---- ---------- AA:BB:CC:11:22:33 192.168.1.10 86400 dhcp-snooping 10 Fa0/1 DD:EE:FF:44:55:66 192.168.1.20 86400 dhcp-snooping 10 Fa0/3
Ports Trusted vs Untrusted
| Type de port | Description | Exemples |
|---|---|---|
| Trusted | Les paquets ARP ne sont pas verifies. Tous les paquets ARP sont autorises. | Ports uplink vers d'autres switches, ports vers les routeurs, ports vers les serveurs DHCP |
| Untrusted (defaut) | Les paquets ARP sont inspectes et verifies contre la binding table. | Ports vers les postes utilisateurs, les imprimantes, tout acces utilisateur |
Rate Limiting DAI
DAI peut limiter le nombre de paquets ARP par seconde sur un port untrusted pour eviter les attaques par inondation :
Configuration Cisco IOS complete :
! Etape 1 : Activer DHCP Snooping (prerequis obligatoire) ip dhcp snooping ip dhcp snooping vlan 10,20 ! Etape 2 : Configurer les ports trusted pour DHCP interface GigabitEthernet0/1 description Uplink vers routeur ip dhcp snooping trust ! Etape 3 : Activer DAI sur les VLANs ip arp inspection vlan 10,20 ! Etape 4 : Configurer les ports trusted pour DAI interface GigabitEthernet0/1 ip arp inspection trust ! Etape 5 : Rate limiting sur les ports untrusted (optionnel) interface range FastEthernet0/1 - 24 ip arp inspection limit rate 15 ! Etape 6 : Validations supplementaires (optionnel) ip arp inspection validate src-mac dst-mac ip ! Verification show ip arp inspection vlan 10 show ip arp inspection statistics vlan 10 show ip dhcp snooping binding
dst-mac : verifie que la MAC destination correspond au Target MAC dans les ARP Reply.
ip : verifie que le Sender IP n'est pas 0.0.0.0, 255.255.255.255, ni une adresse multicast.
arp access-list STATIC_HOSTS permit ip host 192.168.1.100 mac host AA.BB.CC.11.22.33ip arp inspection filter STATIC_HOSTS vlan 10
Configurer manuellement les associations IP/MAC critiques pour qu'elles ne puissent pas être modifiées par des ARP Reply frauduleux.
Port Security limite le nombre d'adresses MAC autorisées sur un port du switch. Cela empêche un attaquant de se faire passer pour plusieurs appareils.
- Limite le nombre de MAC par port (ex: maximum 1 ou 2)
- Mode violation : shutdown (désactive le port), restrict (bloque et alerte), protect (bloque silencieusement)
- Empêche aussi les attaques MAC flooding (saturation de la table CAM)
interface FastEthernet0/1 switchport mode access switchport port-security switchport port-security maximum 2 switchport port-security violation shutdown switchport port-security mac-address sticky
Les VLANs limitent le domaine de broadcast. Comme ARP utilise des broadcasts, segmenter le réseau en VLANs réduit la portée d'une attaque ARP Spoofing.
- L'attaquant ne peut empoisonner que les hôtes du même VLAN
- Les serveurs critiques et les postes utilisateurs doivent être dans des VLANs distincts
- Combiner avec Private VLANs pour isoler davantage les hôtes entre eux
Les VLANs, c'est comme les étages d'un immeuble. Un voleur au 3e étage ne peut pas écouter les conversations au 5e. Chaque VLAN est un étage isolé.
Symptomes reseau d'un ARP Spoofing en cours
- Latence inhabituelle : le trafic fait un detour par la machine de l'attaquant
- Perte de paquets intermittente : si l'attaquant ne fait pas correctement le forwarding
- Deconnexions frequentes : l'empoisonnement peut interrompre les sessions TCP
- Meme adresse MAC pour plusieurs IP dans la table ARP (
arp -a) - Certificats TLS invalides : si l'attaquant tente du SSL stripping
Detection avec Wireshark
Wireshark integre des filtres specialises pour detecter les anomalies ARP :
# Detecter les adresses MAC dupliquees (ARP Spoofing) arp.duplicate-address-detected # Afficher uniquement les paquets ARP arp # Filtrer les ARP Reply uniquement arp.opcode == 2 # Filtrer les Gratuitous ARP (source et target IP identiques) arp.src.proto_ipv4 == arp.dst.proto_ipv4 # ARP provenant d'une IP specifique suspecte arp.src.proto_ipv4 == 192.168.1.50 # ARP avec une MAC source specifique arp.src.hw_mac == ev:il:ev:il:ev:il
Outils de monitoring ARP
| Outil | Type | Description |
|---|---|---|
| ARPwatch | Linux (daemon) | Surveille le reseau et envoie des alertes email quand une association IP/MAC change. Maintient une base de donnees historique. |
| XArp | Windows/Linux (GUI) | Detection en temps reel d'ARP Spoofing avec interface graphique et alertes visuelles. |
| arpwatch + syslog | Linux + SIEM | Integration avec un SIEM pour centraliser les alertes ARP dans la plateforme de securite. |
| Mesure | Description |
|---|---|
| HTTPS / TLS | Chiffre le trafic : meme intercepte, les donnees restent illisibles |
| VPN | Tunnel chiffre qui protege contre l'interception sur le LAN |
| 802.1X (NAC) | Authentification des appareils avant l'acces au reseau |
| HSTS | Force le navigateur a utiliser HTTPS, empechant le SSL stripping meme en cas de MitM |
| Segmentation reseau | Les micro-segments et les firewalls internes limitent les mouvements lateraux |
🔬 7.8 — Exercice : Identifier une attaque ARP
Analyse le tableau de trafic réseau ci-dessous capturé avec Wireshark. Identifie l'anomalie qui indique une attaque ARP Spoofing, puis fais glisser les conclusions dans les bonnes catégories.
Capture réseau
| # | Temps | Source | Destination | Protocol | Info |
|---|---|---|---|---|---|
| 1 | 0.000 | 192.168.1.10 | Broadcast | ARP | Who has 192.168.1.1? Tell 192.168.1.10 |
| 2 | 0.002 | 192.168.1.1 | 192.168.1.10 | ARP | 192.168.1.1 is at 00:1A:2B:3C:4D:5E |
| 3 | 5.100 | 192.168.1.10 | 192.168.1.1 | TCP | HTTPS - Navigation normale |
| 4 | 12.500 | 192.168.1.50 | 192.168.1.10 | ARP | 192.168.1.1 is at EV:IL:EV:IL:EV:IL |
| 5 | 12.501 | 192.168.1.50 | 192.168.1.1 | ARP | 192.168.1.10 is at EV:IL:EV:IL:EV:IL |
| 6 | 14.000 | 192.168.1.10 | 192.168.1.50 | TCP | HTTPS - Trafic maintenant redirigé vers l'attaquant |
| 7 | 14.600 | 192.168.1.50 | 192.168.1.10 | ARP | 192.168.1.1 is at EV:IL:EV:IL:EV:IL |
| 8 | 14.601 | 192.168.1.50 | 192.168.1.1 | ARP | 192.168.1.10 is at EV:IL:EV:IL:EV:IL |
Classe chaque observation dans la bonne catégorie :
✅ Trafic normal
🚨 Indicateur d'attaque
📝 7.9 — Quiz de revision
Points clés du Module 7
- ARP (Address Resolution Protocol) résout les adresses IP en adresses MAC sur un réseau local
- L'ARP Request est envoyée en broadcast (
FF:FF:FF:FF:FF:FF), l'ARP Reply est retournée en unicast - La table ARP (cache) stocke les associations IP/MAC ; les entrées dynamiques expirent, les statiques persistent
- En communication locale, ARP résout l'IP de la destination directement ; en communication distante, ARP résout l'IP du gateway
- L'ARP Spoofing exploite l'absence d'authentification dans ARP pour empoisonner les caches et réaliser des attaques Man-in-the-Middle
- Dynamic ARP Inspection (DAI) est la défense principale : elle vérifie les paquets ARP contre la base DHCP Snooping
- La défense en profondeur combine DAI, Port Security, VLAN segmentation et chiffrement (HTTPS/VPN)
- La commande
arp -apermet d'afficher le cache ARP ; des entrées suspectes (même MAC pour plusieurs IP) indiquent un spoofing potentiel