Arp: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 31: Zeile 31:
 
* Nutzung eines Eintrags verlängert dessen Ablaufzeit.
 
* Nutzung eines Eintrags verlängert dessen Ablaufzeit.
 
=== Verwaltung und Befehle ===
 
=== Verwaltung und Befehle ===
* Der ARP-Cache wird heute unter Linux primär mit dem `iproute2`-Werkzeug verwaltet.
+
* Der ARP-Cache wird heute unter Linux primär mit dem iproute2-Werkzeug verwaltet.
* '''ip neighbor show''' (oder kurz '''ip neigh'''): Zeigt die aktuelle ARP-Tabelle an (Nachfolger von `arp -n`).
+
* ip neighbor show (oder kurz ip neigh): Zeigt die aktuelle ARP-Tabelle an (Nachfolger von arp -n).
* '''ip neighbor flush dev eth0''': Löscht alle Einträge für ein bestimmtes Interface.
+
* ip neighbor flush dev eth0: Löscht alle Einträge für ein bestimmtes Interface.
* '''arping''': Bleibt als eigenständiges Werkzeug relevant, um ARP-Anforderungen manuell zu versenden (nützlich zur IP-Konfliktprüfung).
+
* arping: Bleibt als eigenständiges Werkzeug relevant, um ARP-Anforderungen manuell zu versenden (nützlich zur IP-Konfliktprüfung).
  
 
==== Vergleich der Befehlswelt ====
 
==== Vergleich der Befehlswelt ====
Zeile 40: Zeile 40:
 
! Funktion !! Veraltet (net-tools) !! Aktuell (iproute2)
 
! Funktion !! Veraltet (net-tools) !! Aktuell (iproute2)
 
|-
 
|-
| Tabelle anzeigen || arp -n || '''ip neigh'''
+
| Tabelle anzeigen || arp -n || ip neigh
 
|-
 
|-
| Eintrag löschen || arp -d <IP> || '''ip neigh del <IP> dev <Schnittstelle>'''
+
| Eintrag löschen || arp -d IP || ip neigh del IP dev Schnittstelle
 
|-
 
|-
| Eintrag hinzufügen || arp -s <IP> <MAC> || '''ip neigh add <IP> lladdr <MAC> dev <Schnittstelle> nud reachable'''
+
| Eintrag hinzufügen || arp -s IP MAC || ip neigh add IP lladdr MAC dev Schnittstelle nud reachable
 
|}
 
|}
  

Version vom 29. März 2026, 10:27 Uhr

Address Resolution Protocol (ARP)

Definition

  • Ermittelt die physikalische Adresse (MAC) zu einer bekannten logischen Adresse (IP).
  • Stellt die Verbindung zwischen Internetschicht (Layer 3) und Netzzugangsschicht (Layer 2) her.
  • Speichert Zuordnungen im ARP-Cache (Tabelle) der beteiligten Rechner.

Verwendung und Notwendigkeit

  • MAC-Adressen (48 Bit) sind hardwaregebunden und weltweit theoretisch eindeutig.
  • IP-Adressen (32 Bit bei IPv4) werden logisch vergeben (IANA).
  • Da keine feste mathematische Beziehung zwischen IP und MAC existiert, ist ARP für die Kapselung von IP-Paketen in Ethernet-Frames zwingend erforderlich.
  • Ohne Ziel-MAC kann ein Ethernet-Frame nicht im lokalen Netz zugestellt werden.

Funktionsweise (Beispiel Ethernet)

ARP Request (Anfrage)

  • Sender schickt einen Broadcast an alle Rechner im lokalen Netz (Ziel-MAC: FF-FF-FF-FF-FF-FF).
  • Inhalt: „Wer hat die IP-Adresse X? Bitte antworte an meine IP/MAC-Adresse.“
  • Das Feld für die gesuchte Ziel-MAC wird im ARP-Header mit 00-00-00-00-00-00 gefüllt.

ARP Reply (Antwort)

  • Nur der Rechner mit der gesuchten IP-Adresse reagiert.
  • Er sendet seine MAC-Adresse direkt an den Anfragenden zurück (meist als Unicast).
  • Der Anfragende trägt die Kombination in seinen ARP-Cache ein.


ARP-Cache (Tabelle)

  • Enthält Zuordnungen von IP- zu MAC-Adressen.
  • Einträge sind zeitlich begrenzt (Gültigkeitsdauer oft ca. 5 Minuten bei Linux).
  • Nutzung eines Eintrags verlängert dessen Ablaufzeit.

Verwaltung und Befehle

  • Der ARP-Cache wird heute unter Linux primär mit dem iproute2-Werkzeug verwaltet.
  • ip neighbor show (oder kurz ip neigh): Zeigt die aktuelle ARP-Tabelle an (Nachfolger von arp -n).
  • ip neighbor flush dev eth0: Löscht alle Einträge für ein bestimmtes Interface.
  • arping: Bleibt als eigenständiges Werkzeug relevant, um ARP-Anforderungen manuell zu versenden (nützlich zur IP-Konfliktprüfung).

Vergleich der Befehlswelt

Funktion Veraltet (net-tools) Aktuell (iproute2)
Tabelle anzeigen arp -n ip neigh
Eintrag löschen arp -d IP ip neigh del IP dev Schnittstelle
Eintrag hinzufügen arp -s IP MAC ip neigh add IP lladdr MAC dev Schnittstelle nud reachable

ARP Header

ARP-Nachrichtenformat (Ethernet & IPv4)
Hardwareadresstyp (z.B. Ethernet = 1) 2 Byte
Protokolladresstyp (z.B. IPv4 = 0x0800) 2 Byte
Hardwareadressgröße (z.B. MAC = 6) 1 Byte
Protokolladressgröße (z.B. IP = 4) 1 Byte
Operation (1 = Request / 2 = Reply) 2 Byte
Quell-MAC-Adresse 6 Byte
Quell-IP-Adresse 4 Byte
Ziel-MAC-Adresse 6 Byte
Ziel-IP-Adresse 4 Byte

Prinzip und Vorgang

Grafische Darstellung

  • Prinzip: Arp-prinzipv2.png
  • Schritt 1 (Request): Arp-1.png
  • Schritt 2 (Reply): Arp-2.png

Befehlsbeispiel (arp -n)

  • Arp-3.png

ARP in der analogen Welt

  • Szenario: Paket-Lieferdienst.
  • Ebene 3 (IP): Absender A möchte Paket an Empfänger B schicken (Name/Logik).
  • Ebene 2 (MAC): Der Transporteur braucht die physische Hausadresse.
  • Vorgang: Der Fahrer (Router/Host) ruft in die Straße (Broadcast): „Wer hier heißt B? Ich brauche die Hausnummer zum Abliefern!“

Quellen