Lorsque nous recherchons une adresse MAC avec ARP, le système vérifie d'abord le cache ARP stocké localement. Vous pouvez visualiser ce cache :
pete@icebox:~$ arp
Address HWtype HWaddress Flags Mask Iface
192.168.22.1 ether 00:12:24:fc:12:cc C eth0
192.168.22.254 ether 00:12:45:f2:84:64 C eth0
Le cache ARP est vide au démarrage d'une machine ; il se remplit au fur et à mesure que des paquets sont envoyés à d'autres hôtes. Si nous envoyons un paquet à une destination qui ne se trouve pas dans le cache ARP, voici ce qui se passe :
- L'hôte source crée la trame Ethernet avec un paquet de requête ARP.
- L'hôte source diffuse cette trame à l'ensemble du réseau.
- Si l'un des hôtes du réseau connaît l'adresse MAC correcte, il enverra un paquet de réponse et une trame contenant l'adresse MAC.
- L'hôte source ajoute le mappage IP vers l'adresse MAC au cache ARP, puis procède à l'envoi du paquet.
Vous pouvez également visualiser votre cache ARP via la commande ip :
ip neighbour show