Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenFreitag, 24. Oktober 2014 

Address Resolution Protocol


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.

ARP Protokollstapel
Netzwerk ARP
Netzzugang Ethernet ...

ARP ( Address Resolution Protocol ) ist ein Netzwerkprotokoll das die Zuordnung von Hardwareadressen zu ermöglicht. Obwohl es nicht auf Ethernet - und IP -Protokolle beschränkt ist wird es fast ausschließlich Zusammenhang mit IP-Adressierung auf Ethernet- Netzwerken verwendet. ARP gehört zur Netzwerkschicht der TCP/IP-Protokollfamilie .

Inhaltsverzeichnis

Verwendung

Die 48 Bit langen MAC-Adressen werden vom Hersteller einer Ethernet- Netzwerkkarte oder eines Ethernet-fähigen Gerätes vergeben. Die jedes Interfaces ist weltweit eindeutig. Bei einigen wie z. B. Novell und DECnet werden die Netzwerkadressen eindeutig die Ethernetadressen abgebildet etwa indem die MAC-Adresse weitere Informationen ergänzt wird. Ein Sender kann die MAC-Adresse des Empfängers einfach aus der ermitteln.

IP-Adressbereiche werden von der IANA ( Internet Assigned Numbers Authority ) zugeteilt. IPv4 -Adressen bestehen nur aus 32 Bits und sind daher nicht in der MAC-Adressen zu speichern. Es gibt daher keine Beziehung zwischen MAC-Adressen und IP-Adressen. Will ein in einem Ethernetnetzwerk an einen Rechner in Netzwerk ein IP- Paket senden muss er die Information in Ethernetframe verpacken. Jeder Frame enthält eine Ethernetquelladresse und -zieladresse. Zunächst ein Rechner nur die eigene Adresse die in das Feld für die Quelladresse einfügt. Hilfe des ARP-Protokolls kann jeder Rechner die der anderen Rechner ermitteln.

ARP wird also verwendet wenn einem die MAC-Adresse eines anderen Computers nicht bekannt und sie somit nicht adressiert werden können.

Funktionsweise

Beispiel für Ethernet-Netzwerke:

Es wird eine ARP-Anforderung ( ARP Request - Broadcast ) mit der IP-Adresse des anderen Computers gesendet. Bei Broadcasts das Erzeugen eines Ethernetframes kein Problem da MAC-Zieladresse die Broadcast-Adresse ff-ff-ff-ff-ff-ff 16 verwendet wird. Ein Host der die IP-Adresse kennt antwortet mit Zurücksenden der passenden MAC-Adresse (ARP-Antwort oder ARP-Reply ). Als MAC-Ziel wird die Quelladresse der verwendet. Der antwortende Host muss nicht unbedingt gesuchte Host sein da jeder teilnehmende Host einen Cache von MAC- und IP-Adressen verfügt.

Empfängt ein Host eine ARP-Anforderung oder aktualisiert er seinen so genannten ARP-Cache. Dazu er die Quell-IP-Adresse und Quell-MAC-Adresse bzw. die Zieladressen in die ARP-Tabelle ein. Jeder Eintrag normalerweise nach 20 Minuten aus. Sobald ein in der Tabelle genutzt wird wird dessen verlängert.

Unter Unix und Windows kann der ARP-Cache mit arp (oder arp -a ) angezeigt und manipuliert werden. Mit dem arping können manuell ARP-Anforderungen versendet werden.

ARP und Routing

Das ARP-Protokoll kann nur die MAC-Adressen Geräte im gleichen Subnetz auflösen da Ethernet-Broadcasts Subnetze beschränkt sind. Aus der Ziel-IP-Adresse wird Hilfe der Routingtabelle eine Host-IP-Adresse ermittelt. Diese entspricht der falls sich der Host im gleichen Subnetz Ansonsten stellt die Host-IP-Adresse die IP-Adresse des Routers dar dessen MAC-Adresse dann über ARP wird. Der Ethernet-Frame wird dann an den gesendet. Jeder Router verwendet denselben Algorithmus um jeweils nächsten Host bzw. Router zu ermitteln.

Das folgende Diagramm stellt den Zusammenhang IP-Routing mit ARP dar:

Schematische Darstellung von ARP und Routing

Der optionale (blaue) Teil wird normalerweise implementiert. ARP befindet sich in den unteren in denen Pakete verlorengehen dürfen. Für die und damit die Zuverlässigkeit sind die oberen zuständig. TCP erreicht beispielsweise Zuverlässigkeit durch Wiederholung von

Wird kein gültiger Eintrag in der gefunden wird das IP-Paket einfach verworfen und eine ARP-Anforderung gesendet. Die oberen Protokollschichten sind für die Wiederholung des IP-Pakets verantwortlich.

Paketformat

Das ARP-Paket schließt sich an den an. Das Typfeld im Ethernetframe wird auf (2054) gesetzt. Diese Nummer ist für das reserviert. Dadurch lassen sich ARP-Pakete von Paketen Protokolle wie beispielsweise IP unterscheiden.

Da das Paket sehr kurz ist in der Regel im Ethernetframe zwischen ARP-Paket CRC zusätzliche Bytes eingefügt werden (Padding) um minimale Framelänge von 64 Bytes zu erreichen.

Obwohl ARP ursprünglich für IPv4 und entwickelt wurde sind im Paket Adresstypen und vorgesehen. Dadurch ist ARP für andere auch Protokolle geeignet. Bei IPv6 wird die Protokolladressgröße statt auf 4 16 Bytes gesetzt die Adressfelder werden auf Bits (=16 Bytes) verlängert.

Ethernet MAC-Adressen und IPv4 Adressen

0 8 16 24 31
Hardwareadresstyp (1) Protokolladresstyp (0x800)
Hardwareadressgröße (6) Protokolladressgröße (4) Operation
Quell-MAC-Adresse
Quell-MAC-Adresse Quell-IP-Adresse
Quell-IP-Adresse Ziel-MAC-Adresse
Ziel-MAC-Adresse
Ziel-IP-Adresse

Ethernet MAC-Adressen und IPv6 Adressen

0 8 16 24 31
Hardwareadresstyp (1) Protokolladresstyp (0x86DD)
Hardwareadressgröße (6) Protokolladressgröße (16) Operation
Quell-MAC-Adresse
Quell-MAC-Adresse Quell-IP-Adresse
Quell-IP-Adresse
Quell-IP-Adresse
Quell-IP-Adresse
Quell-IP-Adresse Ziel-MAC-Adresse
Ziel-MAC-Adresse
Ziel-IP-Adresse
Ziel-IP-Adresse
Ziel-IP-Adresse
Ziel-IP-Adresse

Hardwareadresstyp (2 Byte) enthält den Typ der im Paket (für Ethernet: 1 ). Protokolladresstyp (2 Byte) enthält den Protokolltyp der die MAC-Adresse angefordert wird (für IPv4-Adressen: 0x800 (2048) ). Hardwareadressgröße (1 Byte) enthält die Größe der (für Ethernet: 6 ). Protokolladressgröße (1 Byte) enthält die Größe des (für IPv4: 4 für IPv6: 16 ).

Operation (2 Byte) enthält den Wert der welche Operation ausgeführt werden soll ( 1 für ARP-Anforderung 2 für ARP-Antwort).

Quell-MAC-Adresse (6 Byte) enthält in einer ARP-Anforderung MAC-Adresse des Senders. In einer ARP-Antwort enthält die MAC-Adresse des antwortenden Hosts. Quell-IP-Adresse (4 Bytes bei IPv4 16 Bytes IPv5) enthält bei einer ARP-Anforderung die IP-Adresse anfragenden Hosts. In einer ARP-Antwort enthält es IP-Adresse des anwortenden Hosts. Ziel-MAC-Adresse (6 Byte) ist in einer ARP-Anforderung In einer ARP-Antwort enthält es die MAC-Adresse anfragenden Hosts. Ziel-IP-Adresse (4 Bytes bei IPv4 16 Bytes IPv5) ist bei einer ARP-Anforderung die IP-Adresse gesuchten Hosts. In einer ARP-Antwort enthält es IP-Adresse des anfragenden Hosts.

Spezielle ARP-Nachrichten

Proxy ARP

Proxy ARP erlaubt einem Router ARP-Anforderungen für Hosts zu beantworten.

Die Hosts befinden sich dabei in Netzwerken. Bei der Kommunikation ist für sie Router transparent das heißt er muss nicht speziell werden sondern die Hosts können wie gewöhnlich über verschiedene Netze hinweg versenden.

Schickt Computer A eine ARP-Anforderung an B erwidert der dazwischenliegende Router mit einer und seiner Hardwareadresse als Inhalt. Der anfragende A wird jetzt seine Daten an den schicken. Der Router wird diese Daten direkt Computer B weiterleiten.

Gratuitous ARP

Gratuitous ARP (engl. "gratis ARP") bezeichnet eine spezielle von ARP. Dabei wird von einem Host ARP-Anforderungs-Broadcast gesendet bei der er seine eigene als Quell- und Ziel-IP-Adresse einträgt. Das kann Zwecken dienen:

  1. Normalerweise darf keine Antwort kommen denn IP-Adresse muss in einem Netzwerk eindeutig sein. er trotzdem eine Antwort ist das für Administrator ein Hinweis darauf dass ein Host richtig konfiguriert ist.
  2. Jeder Host aktualisiert seinen ARP-Cache. Das beispielsweise dann nützlich wenn die Netzwerkkarte eines Rechners ausgetauscht wurde und die Hosts über die neue MAC-Adresse informiert werden Gratuitous ARP geschieht deshalb normalerweise beim Booten eines Computers.

RARP - Reverse ARP

RARP funktioniert umgekehrt zu ARP. Es kann Internetadressen zu Hardwareadressen auflösen. Dies ist für Ermittlung der eigenen IP-Adresse bei plattenlosen Geräten Beide Protokolle besitzen das gleiche Paketformat. Die von RARP und ARP unterscheiden sich jedoch voneinander.

Probleme

ARP ist für den Benutzer unsichtbar dass das Vorhandensein dieses Protokolls meist nur wird wenn seltene Fehler auftreten.

Die Länge der Gültigkeit eines ARP-Eintrags 20 Minuten) kann ein Problem darstellen wenn Einträge vorhanden sind. Solange ein fehlerhafter Eintrag kann mit dem betreffenden Host nicht kommuniziert Die Fehlfunktion wird häufig nicht dem ARP-Protokoll sondern dem Netzwerk oder einem Fehler in Netzwerkimplementierung. Darüber hinaus ermöglicht nicht jedes Betriebssystem Erzeugen eines korrigierten Eintrags oder einer Anforderung.

Gravierender ist das Eintragen von Daten den ARP-Cache aus Paketen für die keine erzeugt wurde (blinder Glaube). Ein überlasteter Host eine alte IP-Adresse führt antwortet mit großer als letzter auf eine ARP-Anforderung mit einer die die falsche Adresse enthält. Dieses letzte überschreibt die ARP-Tabelle aller Geräte auf dem ein fehlerhafter Eintrag bleibt übrig.

Mit ARP-Spoofing ist es auch möglich absichtlich eine Hardwareadresse in einem Netzwerk zu verteilen teilweise von außen über einen Remote-Broadcast. Dadurch kann Datenverkehr für einen Rechner auf einen anderen und eventuell von diesem sogar gefiltert werden. stellt ein Sicherheitsproblem dar.

Moderne Implementierungen ändern die ARP-Tabelle nur für ARP-Antworten die vorher von dem betreffenden Host eine generiert wurde.

Weblinks



Bücher zum Thema Address Resolution Protocol

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/ARP.html">Address Resolution Protocol </a>