Mobile IP ist ein Netzprotokoll-Standard der Internet Engineering Task Force (IETF), der entworfen wurde, um Benutzern von mobilen Geräten wie Notebooks den Wechsel von einem Rechnernetz in ein anderes zu ermöglichen und dabei gleichzeitig eine feste IP-Adresse zu behalten.

Mobile IP stellt einen effizienten und skalierenden Mechanismus für die Mobilität von Rechnern im Internet bereit. Mit Mobile IP ist es möglich, dass mobile Rechner ihren Zugangspunkt zum Internet ändern und trotzdem ihre (statische) IP-Adresse beibehalten. Dies stellt sicher, dass Verbindungen der Transportschicht bestehen bleiben, während ein Netzwechsel stattfindet.

Ausgangssituation IP entstand zu einer Zeit, als mobile Rechner, die jederzeit und an jedem Ort auf das Internet zugreifen würden, kaum denkbar waren. Ein mobiler Rechner kann jedoch ohne Änderung an den ursprünglichen Protokollen keine Daten mehr empfangen, sobald er das Netz verlässt, für das er ursprünglich konfiguriert wurde. In einem Netzwerk auf TCP/IP-Basis hat er wie alle anderen Knoten eine eindeutige IP-Adresse, die die Zugehörigkeit zu einem bestimmten Subnetz erkennen lässt. Verlässt er das bisherige Netz, muss er eine neue topologisch korrekte IP-Adresse erhalten, deren Netzwerkteil zum Adressbereich des neuen Subnetzes gehört. Eine manuelle Änderung der Konfiguration ist für viele Anwender nicht zumutbar, der Protokollstapel sollte selbstständig auf den Wechsel reagieren.

DHCP (Dynamic Host Configuration Protocol) unterstützt die Mobilität, indem es die automatische Konfiguration neu angeschlossener Rechner ermöglicht. Der Ortswechsel resultiert auch dann jedoch in einer Änderung der IP-Adresse. Bietet ein mobiler Rechner selbst Dienste an, wird er dann von seinen Kommunikationspartnern ggf. nicht mehr im Netz gefunden. Zwar ermöglicht DNS (Domain Name System) ein Mapping eines logischen Namens auf eine IP-Adresse, jedoch dauert es eine Weile, bis sich Änderungen im Netz verbreitet haben. Häufige, rasche Änderungen des Mappings wären aufgrund einer Vielzahl nötiger Aktualisierungsnachrichten zu aufwändig.

Zudem verlassen sich Protokolle höherer Schichten auf IP-Adressen, beispielsweise TCP, dessen Verbindungen durch Paare von IP-Adressen und Ports (Sockets), gekennzeichnet sind. Ein Wechsel der IP-Adresse während einer offenen TCP-Verbindung lässt diese zusammenbrechen. Behält ein Knoten aber trotz eines Ortswechsels seine Adresse, so ändert sich der Weg durch das Netz. Das Routing versagt.

Unter Berücksichtigung dieser Probleme sollte IP im Hinblick auf Mobilitätsunterstützung erweitert werden.

Motivation und Anforderungen Durch Mobile IP soll erreicht werden, dass ein mobiler Rechner stets über eine permanente IP-Adresse erreichbar ist, auch wenn er sich von Netz zu Netz bewegt. Dies ermöglicht die Aufrechterhaltung von Verbindungen auf höheren Schichten, zum Beispiel TCP. Folgende Anforderungen müssen erfüllt sein:

Kompatibilität Änderungen an der bestehenden Infrastruktur (Knoten, Anwendungen, Protokolle) sollen nicht notwendig sein. Es sollen die gleichen Adressformate und Routingverfahren genutzt werden können. Transparenz Die Mobilität soll für Schichten oberhalb der Vermittlungsschicht unsichtbar sein, damit sie unverändert arbeiten können. Für TCP bedeutet dies etwa, dass der Rechner, zu dem eine Verbindung besteht, seine IP-Adresse behält. Skalierbarkeit Die Anzahl mobiler Endgeräte kann sich ändern, ohne dass das Verfahren modifiziert werden muss. Effizienz Die übertragene Datenmenge soll möglichst gering sein. Sicherheit Alle Pakete, die dem Einfügen des Mobilrechners in das Netz dienen, müssen authentifiziert werden. Dies umfasst die Integrität der Daten sowie den Beweis ihrer Herkunft.

Überblick und Grundbegriffe Die Funktionsweise von Mobile IP kann mit einem Nachsendeauftrag der Post verglichen werden. Ein Empfänger ändert seinen Aufenthaltsort und bekommt eine neue Adresse. Er beauftragt das Postamt an seinem alten Aufenthaltsort mit einem Nachsendeauftrag. Die Empfängeradresse der an ihn gerichteten Briefe wird dort mit der neuen Zieladresse überklebt, so dass die Sendungen an die neue Adresse weitergeleitet werden können. Die Post am neuen Aufenthaltsort kann die Sendung anschließend dem Empfänger zuleiten, ohne dass der Sender vom Umzug des Empfängers weiß.

Analog dazu ermöglicht es Mobile IP, mobile Rechner auch bei Wechsel des Netzes unter einer festen (der "ursprünglichen") Adresse anzusprechen, ohne dass der Kommunikationspartner von seiner Mobilität Kenntnis erlangt. Die laufende Kommunikation kann so aufrechterhalten werden.

Das Subnetz, für das der Mobilrechner ursprünglich konfiguriert wurde, wird als Heimatnetz (Home Network) bezeichnet. Das Teilnetz, in dem sich der Mobilrechner aktuell aufhält, wird als Fremdnetz (Foreign Network) bezeichnet.

Der Heimatagent (Home Agent) ist ein Knoten im Heimatnetz, an dem sich ein Mobilrechner registriert, sofern er sich in einem Fremdnetz befindet. Er soll an den Mobilrechner adressierte Pakete abfangen und an ihn weiterleiten. Wechselt der Mobilrechner in ein Fremdnetz, muss er sich dort bei einem Fremdagenten (Foreign Agent) anmelden. Dieser speichert Informationen über den Mobilrechner, z. B. dessen topologisch korrekte IP-Adresse (Care-of-Adresse). Der Fremdagent kann gleichzeitig als Standardrouter für den Mobilrechner dienen, falls dieser selbst Daten aus dem Fremdnetz hinaus schicken will.

Die IP-Adresse des Mobilrechners im Heimatnetz wird als Heimatadresse (Home Address) bezeichnet. Sie wird auch beim Wechsel in ein anderes Netz beibehalten. Die Care-of-Adresse (CoA, Care-of-Address) ist die topologisch korrekte IP-Adresse, unter der ein Mobilrechner in einem Fremdnetz erreichbar ist. Sie entspricht normalerweise einer IP-Adresse des Fremdagenten, bei dem sich der Mobilrechner zuvor angemeldet hat.

Die gegenüber IP entwickelten Protokollerweiterungen umfassen im Wesentlichen drei Mechanismen:

Agent Discovery: Ermöglicht es dem Mobilrechner, potenzielle Agenten aufzufinden. Registrierung: Ermöglicht es dem Mobilrechner, seinen Heimatagenten über seine Care-of-Adresse zu informieren. Tunneling: Vereinbarungen über Weiterleitungsregeln von Paketen.

Vorbereitende Maßnahmen Bevor der Datentransport zwischen einem Kommunikationspartner und dem Mobilrechner, der sein Heimatnetz verlassen hat, beginnen kann, sind einige Vorbereitungen notwendig.

Agent Discovery Der Mobilrechner muss jederzeit seinen aktuellen Aufenthaltsort sowie potenzielle Agenten ermitteln können. Dieser Informationsprozess wird als Agent Discovery bezeichnet und besteht aus zwei Arten von Meldungen, dem Agent Advertisement und dem Agent Solicitation. Beide verwenden eine Erweiterung von ICMP (Internet Control Message Protocol), einem Protokoll zum Austausch von Fehlermeldungen und Nachrichten für die Steuerung der Datenübertragung zwischen Netzwerkgeräten.

Unter Agent Advertisement versteht man in regelmäßigen Abständen als Broadcast abgesetzte Nachrichten von Heimat- oder Fremdagenten, die ihren Dienst möglichen Mobilrechnern in ihrem Subnetz anbieten. Durch Abhören dieser Nachrichten kann der Mobilrechner feststellen, ob er sich in seinem Heimatnetz oder einem fremden Teilnetz befindet und welcher sein aktueller Fremdagent ist. Er kann außerdem erfahren, ob sich sein Aufenthaltsort seit dem letzten Advertisement verändert hat. Agent Advertisements können folgende Angaben enthalten:

Ob der Agent als Heim- oder Fremdagent zur Verfügung steht, Ob sich der Mobilrechner beim Fremdagenten registrieren muss, auch bei Verwendung einer Co-Located Care-of-Adresse, Unterstützte Kapselungsverfahren, Die Ankündigung einer verfügbaren Care-of-Adresse (im Falle eines Fremdagenten), Die Gültigkeitsdauer einer Registrierung.

Alternativ kann der Mobilrechner ein Agent Solicitation aussenden, eine explizite Aufforderung an mögliche Agenten, ein Agent Advertisement zu schicken. So kann er erzwingen, dass sich potenzielle Agenten sofort zu erkennen geben und damit die Wartezeit verkürzt wird.

Zuteilung einer Care-of-Adresse Um im Fremdnetz ansprechbar zu sein, benötigt der Mobilrechner eine Care-of-Adresse, die zum Adressbereich des aktuellen Subnetzes gehört. Sie definiert, wohin letztlich die an den Mobilrechner gerichteten Pakete geschickt werden. Hat sich der Mobilrechner im Fremdnetz bei einem Fremdagenten registriert, so kann ihm nun eine Foreign Agent Care-of-Adresse zugewiesen werden. Dies ist in der Regel eine IP-Adresse des Fremdagenten. Mehrere Mobilrechner können dieselbe Foreign Agent Care-of-Adresse verwenden.

Letztlich besitzt ein Mobilrechner also zwei IP-Adressen, die permanente Heimatadresse und eine temporäre Care-of-Adresse. Möglichen Kommunikationspartnern ist der Mobilrechner nur unter seiner Heimatadresse bekannt.

Registrierung des Mobilrechners im Heimatnetz Nachdem der Mobilrechner eine Care-of-Adresse erhalten hat, kann der aktive Fremdagent eine Registrierungsanforderung an den Heimatagenten weiterleiten, um diesen über den neuen Aufenthaltsort des Mobilrechners zu informieren. Dies ist notwendig, damit Pakete korrekt an ihn weitergeleitet werden können. Die Registrierungsanforderung enthält unter anderem die Heimatadresse des Mobilrechners, die IP-Adresse des Heimatagenten sowie die Care-of-Adresse als Endpunkt des Tunnels. Außerdem wird das Tunneling-Verfahren angegeben, über das der Datentransport zwischen Heimat- und Fremdagent laufen soll, sowie Parameter für die Authentifizierung.

Der Heimatagent sichert diese Informationen in einer Registrierungstabelle (Binding Table) und kann damit jeden Mobilrechner erreichen, der sich bei ihm registriert hat. Anschließend schickt der Heimatagent eine Antwort an den Fremdagenten zurück, der sie an den Mobilrechner weiterleitet. Kehrt ein Mobilrechner später in sein Heimatnetz zurück, meldet er sich nach einem Agent Discovery direkt beim Heimatagenten ab und empfängt selbst wieder die für ihn bestimmten Pakete. Es ist keine Unterstützung durch Mobile IP mehr nötig.

Datentransfer Nach Abschluss der vorbereitenden Maßnahmen kann der Datentransfer mittels Mobile IP beginnen.

Übertragung vom Sender in das Heimatnetz Der Sender kann sich entweder innerhalb oder außerhalb des Heimatnetzes des Mobilrechners aufhalten. Natürlich kennt er nur die Heimatadresse des Mobilrechners, nicht dessen aktuelle Care-of-Adresse. Möchte er Daten an den Mobilrechner senden, so trägt er dessen Heimatadresse als Zieladresse ein, seine eigene Adresse als Quelladresse. Das Paket gelangt durch die gewöhnlichen IP-Routingverfahren zu dem Router, der für das Heimatnetz zuständig ist und damit schließlich immer zuerst in das Heimatnetz. Dies ist möglich, da die Heimatadresse logisch zu dem Netz gehört, mit dem der Heimatagent verbunden ist.

Übertragung vom Heimatagenten zum Mobilrechner Der Heimatagent fängt an den Mobilrechner gerichtete IP-Pakete stellvertretend ab. Dazu gibt er sich durch Proxy ARP als der Mobilrechner aus. Er gibt in der ARP-Nachricht zwar die IP-Adresse des Mobilrechners an, jedoch seine eigene MAC-Adresse. Anstatt das abgefangene Paket nun zu einem Knoten weiterzuleiten, der sich physisch im Heimatnetz befindet, wird das Paket in Richtung des Fremdagenten „umgeleitet“ (Tunneling). Für die Weiterleitung ist Kapselung notwendig. Hierunter wird allgemein verstanden, dass ein empfangenes Paket zum Nutzdatenteil eines neuen Paketes wird, dem ein neuer, äußerer Header vorangestellt wird. Der umgekehrte Fall wird als Entkapselung bezeichnet. Beide Mechanismen finden normalerweise Anwendung, wenn Datenpakete an darunter- bzw. darüber liegende Schichten des Schichtenmodells übergeben werden. In Mobile IP erfolgt dies jedoch innerhalb der gleichen Protokollschicht.