Mithilfe des Address Resolution Protocols (ARP) wird zur
IP-Adresse die zugehörige Hardware- bzw. MAC-Adresse des
Netzwerkinterfaces (NIC) eines Hosts ermittelt.
Dazu sendet der Host einen ARP-Request mit der MAC-Adresse
„FF-FF-FF-FF-FF-FF“ auf der Schicht 2, der Sicherungsschicht des
OSI-Schichtenmodells, per Broadcast an die zu ermittelnde
Adresse und bekommt via ARP-Reply die ermittelte MAC-Adresse
an den Sender zurück gesendet. Die ermittelte MAC-Adresse wird
dann im lokalen ARP-Cache des Senders für eine gewisse Zeit
gespeichert. Dieser ARP-Cache dient zur schnelleren ARP-
Adressauflösung.
So funktioniert es:
Rechner A will mit IP 192.168.1.20 kommunizieren, kennt aber nur dessen IP, nicht die MAC-Adresse.
Rechner A sendet einen ARP-Request als Broadcast ins Netz: „Wer hat die IP 192.168.1.20? Bitte MAC-Adresse melden!"
Der Rechner mit dieser IP antwortet mit einem ARP-Reply direkt an Rechner A und teilt seine MAC-Adresse mit.
Rechner A speichert das Ergebnis im ARP-Cache (temporäre Tabelle), damit nicht bei jedem Paket erneut gefragt werden muss.
ARP steht für Address Resolution Protocol. Seine Aufgabe: Es ermittelt zur bekannten IP-Adresse eines Geräts im lokalen Netz die zugehörige MAC-Adresse (Hardware-Adresse der Netzwerkkarte).
Warum wird das gebraucht?
Auf Schicht 3 (IP) wird mit IP-Adressen adressiert, aber der eigentliche Datenversand im lokalen Netzwerk (Ethernet, Schicht 2) läuft über MAC-Adressen. Bevor ein Rechner ein Paket verschicken kann, muss er wissen, welche MAC-Adresse zur Ziel-IP gehört.
Das Kommando arp in der Befehlszeile (z. B. arp -a) dient dazu, diesen ARP-Cache anzuzeigen oder zu verwalten – man sieht damit, welche IP-MAC-Zuordnungen der Rechner aktuell gespeichert hat.