Verknüpfung von MAC- und IP-Adressen

In der Welt der Netzwerktechnologie bildet die Verknüpfung zwischen IP-Adressen und MAC-Adressen eine essenzielle Grundlage für die Kommunikation zwischen Geräten. Während IPv4 seit Jahrzehnten den Standard für die Adressierung darstellt, gewinnt IPv6 zunehmend an Bedeutung, um den Anforderungen moderner Netzwerke gerecht zu werden. Beide Protokolle sind darauf angewiesen, physische Adressen (MAC-Adressen) in die logische Struktur der Kommunikation zu integrieren.

Doch wie funktioniert diese Zuordnung, und welche Mechanismen kommen dabei zum Einsatz?

Im Rahmen dieses Beitrags wird die Rolle des Address Resolution Protocol (ARP) bei IPv4 sowie des Neighbor Discovery Protocol (NDP) bei IPv6 beleuchtet.

Address Resolution Protocol (ARP)

Bei der Kommunikation außerhalb des Netzwerksegments wird eine IP-Adresse benötigt. Diese ist meist, entgegen der MAC-Adresse, bereits bekannt. Alternativ wird die IP-Adresse durch ergänzende Netzwerkdienste herausgefunden.

Innerhalb des Netzwerksegments wird jedoch die physikalische Adresse benötigt. Aus diesem Grund bietet das ARP die Funktion eine MAC-Adresse von einer bereits bekannten IP-Adresse herauszufinden. Ebenso kann manuell eine IPv4-Adresse mit einer MAC-Adresse verknüpft werden.

Das ARP agiert im Normalzustand immer im Hintergrund lokal auf den Netzwerkelementen ohne Benutzereingriffe.

Funktionsweise

Initial soll ein Netzelement ein Datenpaket zu einem anderen senden. Es ist dabei lediglich die IP-Adresse des Ziels bekannt.

ARP Funktionsweise1

Ausgangssituation vor der Verwendung von ARP. Quelle: Technik-Kiste.de

Das Address Resolution Protocol arbeitet nach einem einfachen, aber effektiven Prinzip:

Wenn ein Netzwerkelement in einem lokalen Netzwerk die MAC-Adresse eines anderen Geräts benötigt, sendet es einen ARP-Request-Broadcast an alle Geräte im gleichen Netzwerksegment. In dieser Nachricht fragt es: „Wer hat die IP-Adresse X? Bitte teile mir deine MAC-Adresse mit.“

ARP Funktionsweise2

Senden eines ARP-Request. Quelle: Technik-Kiste.de

Das Zielgerät, dessen IP-Adresse mit der angefragten übereinstimmt, antwortet mit einer ARP-Reply-Nachricht, in der es seine MAC-Adresse preisgibt. Diese Antwort wird direkt an das anfragende Gerät gesendet.

ARP Funktionsweise3

Senden einer ARP-Reply. Quelle. Technik-Kiste.de

Sobald die MAC-Adresse bekannt ist, wird sie im ARP-Cache des anfragenden Geräts gespeichert, um künftige Anfragen zu vermeiden und die Kommunikation zu beschleunigen. Wie lange die Adresse gespeichert wird, hängt vom Gerät und der jeweiligen Konfiguration ab. Sie kann dabei zwischen 5 bis 10 Minuten betragen.

ARP Funktionsweise4

Speichern der MAC-Adresse im ARP-Cache. Quelle: Technik-Kiste.de

Die ursprünglich geplante Kommunikation kann nun fortgesetzt werden.

Dieses Verfahren minimiert die Belastung des Netzwerks, da nur bei einer neuen oder geänderten IP-Adresse eine erneute Anfrage nötig ist. Dabei berücksichtigt ARP jedoch keine Sicherheitsebenen, was es anfälliger für Angriffe wie ARP-Spoofing macht, bei denen falsche Zuordnungen von IP- zu MAC-Adressen eingefügt werden können. Dennoch bildet ARP eine unverzichtbare Grundlage für die IPv4-Kommunikation innerhalb lokaler Netzwerke.

ARP-Spoofing

ARP-Spoofing, auch bekannt als ARP-Poisoning, ist ein Angriff auf Computernetzwerke, der die Schwachstellen des Address Resolution Protocol (ARP) ausnutzt. Hierfür manipuliert ein Angreifer den ARP-Cache eines Geräts, um falsche Zuordnungen zwischen IP- und MAC-Adressen einzuschleusen.

Wie funktioniert ARP-Spoofing?

Beim ARP-Spoofing sendet ein Angreifer gefälschte ARP-Reply-Nachrichten in ein Netzwerk. Diese Nachrichten täuschen vor, dass die MAC-Adresse des Angreifers zu einer bestimmten IP-Adresse gehört, beispielsweise der eines legitimen Geräts wie einem Router oder Server. Sobald andere Geräte im Netzwerk diese falschen Zuordnungen in ihren ARP-Cache übernehmen, wird der Datenverkehr, der eigentlich für das legitime Gerät bestimmt ist, an den Angreifer umgeleitet.

Ziele von ARP-Spoofing

ARP-Spoofing wird oft aus verschiedenen Gründen durchgeführt, darunter:

  • Man-in-the-Middle-Angriffe (MITM): Der Angreifer positioniert sich zwischen zwei Geräten und kann so den gesamten Datenverkehr abhören, verändern oder weiterleiten.
  • Denial-of-Service (DoS): Durch Manipulation des Netzwerkverkehrs kann der Angreifer den Zugriff auf bestimmte Geräte oder Dienste blockieren.
  • Datendiebstahl: Der Angreifer kann sensible Informationen wie Passwörter, Kreditkartendaten oder andere vertrauliche Daten abfangen.

Erkennung und Schutz vor ARP-Spoofing

Da ARP-Spoofing auf einer grundlegenden Schwachstelle des Protokolls basiert, ist es schwierig, es vollständig zu verhindern. Es gibt jedoch mehrere Maßnahmen, um Netzwerke zu schützen:

  • ARP-Inspektion: Einige Netzwerkgeräte wie Switches bieten Funktionen wie Dynamic ARP Inspection (DAI), die ARP-Nachrichten auf ihre Authentizität prüfen.
  • Statische ARP-Einträge: Kritische Geräte können so konfiguriert werden, dass ihre ARP-Einträge manuell festgelegt und nicht überschrieben werden können.
  • Verschlüsselung: Die Verwendung von sicheren Protokollen wie HTTPS, SSH oder VPNs schützt die übertragenen Daten, selbst wenn ein Angreifer den Netzwerkverkehr abfängt.
  • Monitoring: Tools zur Netzwerküberwachung können ungewöhnliche ARP-Aktivitäten erkennen und Administrator*innen alarmieren.

Gratuitous ARP

Gratuitous ARP (freiwilliges ARP) ist ein spezieller Typ einer ARP-Anfrage oder -Antwort im Netzwerk, der nicht durch eine direkte Anfrage ausgelöst wird. Stattdessen sendet ein Gerät diese Nachricht freiwillig aus, um Informationen über seine eigene IP-Adresse und MAC-Adresse im Netzwerk zu verbreiten. Dies erfolgt meist beim Start eines Systems. Es dient mehreren Zwecken:

  • Aktualisierung von ARP-Tabellen: Netzwerkgeräte, die die Nachricht empfangen, können ihre ARP-Tabellen mit der korrekten Zuordnung von IP- und MAC-Adresse aktualisieren.
  • Erkennung von IP-Konflikten: Wenn im Netzwerk ein anderes Gerät bereits die gleiche IP-Adresse verwendet, wird dies durch die Antwort auf die ARP-Nachricht sichtbar.
  • Failover-Mechanismen: In Hochverfügbarkeitsumgebungen wird Gratuitous ARP verwendet, um schnell die IP-Adresse von einer ausgefallenen auf eine aktive Komponente zu übertragen.

Neighbor Discovery Protocol (NDP)

Das Neighbor Discovery Protocol (NDP) ist ein essenzieller Bestandteil von IPv6-Netzwerken und übernimmt Funktionen, die in IPv4 unter anderem durch ARP und weitere Protokolle realisiert wurden. Es ermöglicht die Kommunikation zwischen Geräten innerhalb desselben Netzwerksegments, indem es unter anderem die Ermittlung von MAC-Adressen, die automatische Adresskonfiguration sowie die Erkennung von Nachbarn, Routern und Netzwerkproblemen realisiert. Die grundlegenden Funktionen des NDP sind in verschiedenen RFCs spezifiziert – insbesondere in RFC 4861 (Neighbor Discovery for IP version 6), dem Kernprotokoll, aber auch in RFC 3122, 5942, 6980, 7047, 7527 und 7559, die unterschiedliche Aspekte und Erweiterungen behandeln.

In diesem Beitrag liegt der Fokus auf der Verknüpfung von MAC- und IPv6-Adressen, also darauf, wie NDP den Übergang vom Link-Layer (MAC) zur Netzwerkadresse (IPv6) ermöglicht – vergleichbar mit der ARP-Funktionalität in IPv4.

Nachrichtentypen

Als Grundlage von NDP kommt das speziell für IPv6 entwickelte ICMPv6 (Internet Control Message Protocol for IPv6) zum Einsatz. Innerhalb von ICMPv6 werden Nachrichten verschiedener Typen definiert, die den verschiedenen Funktionen des NDP zugeordnet sind:

Typ  

Name

133

Router Solicitation

134

Router Advertisement

135

Neighbor Solicitation

136

Neighbor Advertisement

137

Redirect Message

Die einzelnen Nachrichtentypen erfüllen dabei folgende Aufgaben:

  • Router Solicitation: Ein Netzwerkteilnehmer fordert aktiv Informationen über einen Router im Netzwerksegment an.
  • Router Advertisement: Diese Nachricht wird entweder als direkte Antwort auf eine Router Solicitation (Typ 133) oder periodisch vom Router versendet, um wesentliche Netzwerkparameter und weitere Informationen mitzuteilen.
  • Neighbor Solicitation: Dient der Anfrage, mit der die MAC-Adresse eines anderen Kommunikationsteilnehmers ermittelt wird. Gleichzeitig wird damit die Erreichbarkeit des Zielgeräts überprüft.
  • Neighbor Advertisement: Als Antwort auf einen Neighbor Solicitation (Typ 135) sendet der angesprochene Teilnehmer seine MAC-Adresse zurück.
  • Redirect Message: Informiert Netzwerkteilnehmer darüber, dass sie für die weitere Kommunikation einen alternativen Router verwenden sollten.
  • Duplicate IP Address Detection (DAD): Dieser Mechanismus prüft, ob eine IP-Adresse bereits in Verwendung ist, um Adresskonflikte zu vermeiden.
  • Neighbor Unreachability Detection: Stellt fest, ob ein Netzwerkteilnehmer nicht erreichbar ist und hilft, fehlerhafte Verbindungen zu erkennen.

Speichern von Informationen

Das NDP speichert, ähnlich wie ARP, Informationen über Netzwerkteilnehmer – allerdings unterscheiden sich Umfang und Speicherort der Datensätze von denen des ARP.

  • Destination Cache: Enthält Einträge zu erfolgreich aufgelösten Zielen, also Informationen über verwendete Adressen sowie den jeweils zuständigen nächsten Hop für die Zustellung.
  • Default Router List: Enthält für jede Netzwerkschnittstelle die erreichbaren Router sowie deren Konfigurationsparameter, insbesondere die Verfallszeiten (Lifetime).
  • Prefix List: Enthält alle über Router Advertisements im Netzwerksegment bekannten Präfixe, mit Ausnahme jener Präfixe, die der eigene Knoten bereitstellt.
  • Neighbor Cache: Speichert für Netzwerkteilnehmer, mit denen innerhalb definierter Zeitspannen erfolgreich kommuniziert wurde, relevante Informationen wie den aktuellen Zustand, den Alterungswert, sowie die zugehörigen MAC- und IP-Adressen.

Der Zustand eines Eintrags im Neighbor Cache kann folgende Werte besitzen:

  • Delay: Nach Ablauf der voreingestellten Reachable Time wird eine weitere Neighbor Solicitation gesendet, und der Eintrag wird in den Zustand „Probe“ versetzt.
  • Probe: Der Eintrag wartet auf ein positives Neighbor Advertisement, wobei mehrere Versuche unternommen werden, bis die konfigurierte maximale Anzahl erreicht wurde.
  • Stale: Die voreingestellte Reachable Time ist bereits überschritten, sodass nicht mehr eindeutig festgestellt werden kann, ob der Netzwerkteilnehmer aktuell erreichbar ist.
  • Incomplete: Es wurde bereits eine Neighbor Solicitation gesendet, jedoch steht das zugehörige Neighbor Advertisement noch aus.
  • Reachable: Der Netzwerkteilnehmer ist aktuell erreichbar.

Sicherheit

Darüber hinaus weist NDP, ähnlich wie ARP in IPv4, Sicherheitsanfälligkeiten – etwa im Hinblick auf Spoofing – auf. Zur Erhöhung der Sicherheit wurde deshalb Secure Neighbor Discovery (SEND) entwickelt, ein Protokoll, das kryptographische Verfahren integriert, um die Integrität und Authentizität der NDP-Nachrichten zu gewährleisten. Ebenso gibt es spezielle Erweiterungen für bestimmte Anwendungsbereiche, etwa in drahtlosen Sensornetzen (z. B. RFC 6775 für 6LoWPAN).

Wir benutzen Cookies

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.