Address Resolution Protocol (ARP) is een netwerkprotocol dat wordt gebruikt om IP adressen naar fysieke MAC-adressen (Media Access Control) binnen een lokaal netwerksegment.

Wat is ARP?
Address Resolution Protocol (ARP) werkt binnen de verbindingslaag van het OSI-model en speelt een cruciale rol in IPv4-netwerken door logische IP-adressen om te zetten in fysieke MAC-adressen. Wanneer een apparaat gegevens wil verzenden naar een ander apparaat op dezelfde lokaal netwerk (LAN), controleert het eerst zijn ARP-cache om te zien of er al een record is van het MAC-adres van het doelapparaat dat overeenkomt met zijn IP-adres.
Als de toewijzing niet wordt gevonden, zendt het apparaat een ARP-aanvraagpakket uit naar alle apparaten in het netwerk, met de vraag welk apparaat het opgegeven IP-adres heeft. Het apparaat met het overeenkomende IP-adres reageert met een ARP-antwoord met de bijbehorende gegevens. MAC-adresDeze informatie wordt vervolgens opgeslagen in de ARP cache voor toekomstige communicatie, waardoor de noodzaak voor herhaalde uitzendingen afneemt.
ARP is essentieel voor het functioneren van Ethernet-netwerken, omdat hogere protocollen zoals IP met logische adressen werken, terwijl de werkelijke dataoverdracht over Ethernet is afhankelijk van MAC-adressen. ARP functioneert alleen binnen de grenzen van een enkel broadcastdomein en werkt niet via routers of andere subnetten, waarbij andere mechanismen, zoals proxy ARP of routing, zijn nodig om adressen op te lossen.
Soorten ARP
Er bestaan โโverschillende varianten van ARP, elk ontworpen voor verschillende situaties in IP-netwerken. Deze typen bouwen voort op het basis-ARP-mechanisme, maar vervullen specifieke rollen, afhankelijk van de netwerkarchitectuur en -vereisten:
- Standaard ARP (of kortweg ARP) is de originele vorm die wordt gebruikt om een โโprobleem op te lossen IPv4 Een host zendt een ARP-verzoek uit en het apparaat met het bijbehorende IP-adres reageert met zijn MAC-adres.
- Proxy-ARP Hiermee kan een router reageren op ARP-verzoeken namens een apparaat dat zich op een ander subnet bevindt. De router doet zich voor als de bestemmingshost door te antwoorden met zijn eigen MAC-adres, waardoor apparaten op verschillende subnetten kunnen communiceren zonder expliciete routeringsconfiguratie. Dit kan echter leiden tot problemen. schaalbaarheid en veiligheidskwesties.
- Omgekeerde ARP (RARP) is ontworpen om een โโapparaat dat zijn MAC-adres kent, zijn IP-adres te laten opvragen bij een centrale serverDit werd vooral gebruikt door schijfloze werkstations tijdens laarsje maar is nu verouderd, vervangen door DHCP.
- Gratis ARP Treedt op wanneer een apparaat een ARP-verzoek voor zijn eigen IP-adres verzendt of een ongevraagd ARP-antwoord verzendt. Dit wordt gebruikt om ARP-tabellen in andere apparaten bij te werken, IP-conflicten te detecteren of IP-adreswijzigingen aan te kondigen.
- Omgekeerde ARP (InARP) wordt voornamelijk gebruikt in frame relay- en ATM-netwerken. In plaats van een IP om te zetten naar een hardware adres, het zet een bekende virtuele circuit-ID (zoals een DLCI) om in een netwerklaagadres.
- Dynamische ARP Verwijst naar ARP-items die automatisch worden geleerd en tijdelijk in de ARP-cache worden bewaard. Deze items vervallen na een bepaalde periode, tenzij ze worden vernieuwd.
- Statische ARP Verwijst naar handmatig geconfigureerde ARP-items die permanent in de cache blijven staan โโen niet verlopen. Dit kan worden gebruikt om beveiligings- of prestatieredenen, maar vereist handmatig onderhoud.
Hoe werkt ARP?
Wanneer een apparaat op een lokaal netwerk gegevens naar een ander apparaat moet verzenden, controleert het eerst of het het MAC-adres kent dat bij het bestemmings-IP-adres hoort. Hiervoor kijkt het in de ARP-cache.
Als de koppeling bestaat, gebruikt het apparaat het opgeslagen MAC-adres om de gegevens rechtstreeks te verzenden. Als de koppeling niet wordt gevonden, stuurt het apparaat een ARP-verzoek naar alle apparaten in het lokale netwerk, met de vraag: "Wie heeft dit IP-adres?". Alle apparaten in het netwerk ontvangen het verzoek, maar alleen het apparaat met het overeenkomende IP-adres reageert met een ARP-antwoord met het bijbehorende MAC-adres.
Na ontvangst van het antwoord slaat de verzender de nieuwe IP-naar-MAC-koppeling op in zijn ARP-cache voor toekomstig gebruik en verzendt de gegevens vervolgens naar de bestemming met behulp van het opgeloste MAC-adres. Dit hele proces zorgt ervoor dat apparaten op hetzelfde lokale subnet kunnen communiceren via hun fysieke netwerkinterfaces, terwijl IP-protocollen op een hoger niveau de adressering en routering over bredere netwerken afhandelen.
Wat is een voorbeeld van ARP?
Stel bijvoorbeeld dat een computer met IP-adres 192.168.1.10 gegevens wil verzenden naar een andere computer in hetzelfde lokale netwerk met IP-adres 192.168.1.20. De verzendende computer controleert eerst zijn ARP-cache om te zien of het MAC-adres van 192.168.1.20 al bekend is. Zo niet, dan stuurt hij een ARP-aanvraag naar alle apparaten in het netwerk met de vraag: "Wie heeft IP-adres 192.168.1.20?" De computer met IP-adres 192.168.1.20 ontvangt de aanvraag en antwoordt met zijn MAC-adres, bijvoorbeeld 00-14-22-01-23-45. De verzendende computer ontvangt dit antwoord, werkt zijn ARP-cache bij met de nieuwe IP-naar-MAC-koppeling en gebruikt dat MAC-adres om de gegevens rechtstreeks via het lokale netwerk te verzenden.
ARP-hulpmiddelen
Hier is een lijst met veelgebruikte ARP-tools.
arp (opdrachtregeltool)
Beschikbaar op de meeste besturingssystemen (Ramen, Linux, macOS), dit command-line Met deze tool kunnen gebruikers items in de ARP-cache bekijken, toevoegen en verwijderen. Het helpt bij het oplossen van problemen met de lokale netwerkcommunicatie door de huidige IP-naar-MAC-adreskoppelingen weer te geven of specifieke koppelingen af โโte dwingen.
Arping
Wordt voornamelijk gebruikt op UNIX-achtige systemen stuurt arping ARP-verzoeken naar een specifiek IP-adres en meldt of er een antwoord is ontvangen. Het werkt op dezelfde manier als een ping maar werkt op de verbindingslaag, waardoor het handig is om te verifiรซren of een host bereikbaar is op het lokale netwerksegment en om dubbele IP-adressen te detecteren.
netstat -arp (of netstat -an op sommige systemen)
In sommige systemen kan netstat de ARP-cache weergeven samen met andere netwerkstatistieken. Dit helpt bij het diagnosticeren van netwerkproblemen door actieve ARP-vermeldingen en hun status weer te geven.
ip-buur (Linux)
Dit maakt deel uit van de ip-commandosuite in moderne Linux-systemen. Het toont en bewerkt de buurtabel, die op een vergelijkbare manier functioneert als de ARP-cache voor IPv4 (en ND voor IPv6), waardoor beheerders MAC-adrestoewijzingen kunnen controleren en bijwerken.
Wireshark
Een netwerkprotocolanalysator die netwerkverkeer, inclusief ARP-verzoeken en -antwoorden, vastlegt en weergeeft. Wireshark maakt gedetailleerde inspectie van ARP-pakketten mogelijk, wat het waardevol maakt voor het diagnosticeren van ARP-gerelateerde problemen, zoals spoofing of onjuiste adresomzetting.
Nmap (met ARP-scan)
Nmap kan ARP-scans uitvoeren om snel actieve hosts op een lokaal subnet te identificeren. Omdat ARP-verzoeken niet afhankelijk zijn van reacties op IP-laag, is ARP-scanning vaak betrouwbaarder voor het detecteren van apparaten binnen dezelfde broadcast. domein.
Arp horloge
Een netwerkmonitoringtool die ARP-verkeer op een netwerk bijhoudt en IP-naar-MAC-adreskoppelingen registreert. Het kan waarschuwen beheerders op wijzigingen in toewijzingen, wat kan wijzen op mogelijke netwerkproblemen of ARP-spoofingaanvallen.
Hoe werkt ARP-cache?
De ARP-cache is een tabel die in het geheugen van een apparaat wordt opgeslagen en waarin recentelijk omgezette IP-naar-MAC-adreskoppelingen worden bijgehouden, zodat er minder vaak ARP-aanvragen hoeven te worden herhaald.
Wanneer een apparaat gegevens moet verzenden, controleert het eerst de ARP-cache om te zien of het bestemmings-IP-adres al een bijbehorend MAC-adres heeft. Als de toewijzing bestaat, gebruikt het apparaat deze om het frame rechtstreeks te verzenden, waardoor onnodige ARP-broadcasts worden vermeden. Als de gegevens ontbreken, wordt een ARP-verzoek verzonden om het adres te achterhalen en wordt de respons in de cache opgeslagen.
Elk item in de ARP-cache heeft een time-to-live (TTL) waarde, waarna deze vervalt om ervoor te zorgen dat verouderde toewijzingen worden verwijderd, vooral als apparaten van IP-adres veranderen of het netwerk verlaten. Sommige ARP-vermeldingen kunnen ook handmatig als statisch worden geconfigureerd. In dat geval blijven ze voor onbepaalde tijd in de cache staan โโtotdat ze handmatig worden verwijderd of gewijzigd.
De ARP-cache helpt de netwerkefficiรซntie en -prestaties te verbeteren door het netwerkverkeer te minimaliseren en latency in adresresolutie.
Waarvoor wordt ARP gebruikt?
ARP wordt gebruikt om communicatie tussen apparaten op hetzelfde lokale netwerk mogelijk te maken door IP-adressen om te zetten in fysieke MAC-adressen. Omdat apparaten IP-adressen gebruiken voor logische adressering op de netwerklaag, maar MAC-adressen nodig hebben om frames fysiek af te leveren op de datalinklaag, biedt ARP het mechanisme om deze adresomzetting uit te voeren.
Zonder ARP zouden apparaten niet kunnen bepalen waar pakketten binnen het lokale subnet naartoe moeten worden verzonden. Het is essentieel voor basisnetwerkfuncties zoals het initiรซren van verbindingen, het overdragen van gegevens en het onderhouden van een goede netwerkcommunicatie. Daarnaast speelt ARP een rol bij netwerkdiagnostiek, apparaatdetectie en bepaalde soorten netwerkaanvallen of -verdedigingen, zoals ARP-spoofingdetectie.
De voor- en nadelen van ARP
Hieronder vindt u een tabel met een samenvatting van de voor- en nadelen van ARP:
Voordelen | Nadelen |
Eenvoudig en efficiรซnt mechanisme voor het omzetten van IP-adressen naar MAC-adressen binnen een lokaal netwerk. | Beperkt tot lokaal subnet; werkt niet over routers of verschillende broadcastdomeinen. |
Werkt automatisch zonder dat handmatige configuratie nodig is voor de meeste omgevingen. | Kwetsbaar voor ARP-spoofing en man-in-the-middle-aanvallen, omdat ARP geen authenticatie. |
Snelle oplossing met behulp van cache om netwerkoverhead en latentie na de eerste oplossing te verminderen. | ARP-cachegegevens kunnen verouderd raken, wat kan leiden tot verbindingsproblemen als apparaten het IP- of MAC-adres wijzigen. |
Ondersteunt dynamische netwerkomgevingen waarin apparaten regelmatig verbinding maken met het netwerk en het netwerk verlaten. | Kan onnodig broadcastverkeer genereren, vooral in grote of drukke netwerken. |
Breed ondersteund op alle IPv4-gebaseerde netwerksystemen. | Ondersteunt geen IPv6; vervangen door Neighbor Discovery Protocol (NDP) in IPv6-omgevingen. |
ARP versus MAC versus IP versus DNS
Hieronder vindt u een vergelijkingstabel die onderscheid maakt tussen ARP, MAC, IP en DNS:
Aspect | ARP (adresresolutieprotocol) | MAC (Media Access Control-adres) | IP (internetprotocoladres) | DNS (domeinnaamsysteem) |
Functie | Zet IP-adressen om in MAC-adressen op lokale netwerken. | Identificeert een fysieke netwerkinterface op een lokaal netwerk. | Biedt logische adressering voor apparaten in netwerken. | Zet domeinnamen om in IP-adressen. |
Verschillende Lagen | Linklaag (interactie tussen laag 2 en 3) | Datalinklaag (laag 2) | Netwerklaag (laag 3) | Applicatielaag |
strekking | Werkt binnen lokale subnetten. | Uniek per netwerkinterface; lokale netwerkomvang. | Wereldwijd bereik; routeerbaar over netwerken. | Wereldwijd bereik van het internet. |
Adrestype | Protocol voor het toewijzen van adressen. | Vast hardware- of softwarematig toegewezen 48-bitsadres. | 32-bits (IPv4) of 128-bits (IPv6) logisch adres. | Domeinnamen die door mensen gelezen kunnen worden. |
Volharding | ARP-cache slaat tijdelijke toewijzingen op. | Meestal statisch (hardware); kan opnieuw worden toegewezen. | Dynamische of statische toewijzing via DHCP of configuratie. | Statisch of dynamisch; beheerd via DNS servers. |
Belangrijkste gebruiksscenario | Maakt lokale bezorging van pakketten mogelijk op basis van IP. | Identificeert de netwerkadapter die frames ontvangt. | Identificeert de locatie van het apparaat in wereldwijde of particuliere netwerken. | Vertaalt gebruiksvriendelijke namen naar IP's voor netwerktoegang. |
Beveiligingsrisico's | Kwetsbaar voor spoofing-aanvallen. | Over het algemeen veilig, maar kan worden gekloond. | Gevoelig voor IP-spoofing en -kaping. | Kwetsbaar voor DNS-spoofing en cachevergiftiging. |
Wat is de toekomst van ARP?
Met de brede acceptatie van IPv6 wordt ARP vervangen door het veiligere en efficiรซntere Neighbour Discovery Protocol (NDP). Hoewel ARP essentieel blijft in IPv4-gebaseerde netwerken, maakt het gebrek aan beveiligingsfuncties het kwetsbaar voor spoofing en man-in-the-middle-aanvallen, wat de ontwikkeling van veiligere alternatieven en beschermende maatregelen, zoals dynamische ARP-inspectie (DAI) in moderne netwerken, stimuleert.
Naarmate de acceptatie van IPv6 groeit en de eisen voor netwerkbeveiliging toenemen, zal de rol van ARP geleidelijk afnemen en voornamelijk in de toekomst bestaan. legacy-systemen en IPv4-omgevingen die naast nieuwere technologieรซn blijven bestaan.