ARP (Address Resolution Protocol) converteert een Internet Protocol (IP) -adres naar het bijbehorende fysieke netwerkadres. IP-netwerken, inclusief netwerken die werken op Ethernet en Wi-Fi, vereisen ARP om te kunnen functioneren.
Geschiedenis en doel van ARP
ARP is begin jaren tachtig ontwikkeld als een protocol voor de vertaling van algemene adressen voor IP-netwerken. Naast Ethernet en Wi-Fi is ARP ook geïmplementeerd voor ATM, Token Ring en andere fysieke netwerktypen.
Met ARP kan een netwerk verbindingen beheren onafhankelijk van het specifieke fysieke apparaat dat aan elk netwerk is gekoppeld. Hierdoor kon het internetprotocol efficiënter werken dan wanneer het adressen van alle verschillende soorten hardwareapparaten en fysieke netwerken zelf moest beheren.
Hoe ARP werkt
ARP werkt op laag 2 in het OSI-model. Protocolondersteuning is geïmplementeerd in de apparaatstuurprogramma's van netwerkbesturingssystemen. Internet RFC 826 documenteert technische details van het protocol, inclusief het pakketformaat en de werking van verzoek- en antwoordberichten
ARP werkt als volgt op moderne Ethernet- en Wi-Fi-netwerken:
- Netwerkadapters worden geproduceerd met een fysiek adres dat is ingesloten in de hardware, het Media Access Control (MAC) -adres. Fabrikanten zorgen ervoor dat deze 6-byte (48-bits) adressen uniek zijn, omdat IP afhankelijk is van deze unieke ID's voor het bezorgen van berichten.
- Wanneer een apparaat gegevens naar een ander doelapparaat wil verzenden, moet het eerst het MAC-adres van dat doel bepalen, gegeven het IP-adres. Deze IP-naar-MAC-adrestoewijzingen zijn afgeleid van een ARP-cache onderhouden op elk apparaat.
- Als het opgegeven IP-adres niet in de cache van een apparaat wordt weergegeven, kan dat apparaat geen berichten naar dat doel sturen voordat het een nieuwe toewijzing heeft verkregen. Om dit te doen, verzendt het initiërende apparaat eerst een ARP-aanvraag broadcast-bericht op het lokale subnet. De host met het opgegeven IP-adres verzendt een ARP-antwoord in reactie op de uitzending, waardoor het initiërende apparaat zijn cache kan bijwerken en berichten rechtstreeks aan het doel kan bezorgen.
Inverse ARP en Reverse ARP
Een netwerkprotocol genaamd RARP (Reverse ARP) werd ook ontwikkeld in de jaren tachtig om ARP aan te vullen. Zoals de naam al aangeeft, heeft RARP de omgekeerde functie van ARP uitgevoerd, waarbij de fysieke netwerkadressen zijn omgezet naar de IP-adressen die aan die apparaten zijn toegewezen. RARP is overbodig gemaakt door DHCP en wordt niet meer gebruikt.
Een afzonderlijk protocol met de naam Inverse ARP ondersteunt ook de omgekeerde adresmappingfunctie. Inverse ARP wordt ook niet gebruikt op Ethernet- of Wi-Fi-netwerken, hoewel het soms op andere typen kan worden gevonden.
Gratuitous ARP
Om de efficiëntie van ARP te verbeteren, gebruiken sommige netwerken en netwerkapparaten een communicatiemethode met de naam gratuitous ARP, waarbij een apparaat een ARP-verzoekbericht verzendt naar het volledige lokale netwerk om de andere apparaten op de hoogte te stellen van het bestaan ervan.