11.01.2008 | Autor / Redakteur: Thomas Schmidt und Matthias Wählisch / Ulrike Ostler
Mobile Anwendungen und mobile Kommunikation haben sich zu Schlüsseltechnologien der kommenden Dekade entwickelt, obwohl die traditionelle IPv4-Netzwerkschicht nicht auf die mobilen Massennutzung vorbereitet ist. Mobile IPv6 soll den Mobilitätsanforderungen gerecht werden. Der Internet-Standard für mobile Kommunikation bietet Entwicklungspfade für eine übergangslose und sichere Kommunikation in einer mehrheitlich mobilen Welt.
Das MIPv6-Protokoll ermöglicht in seinem Kern das Umlenken von Verkehrsdaten (Traffic Redirects) und birgt folglich Sicherheitsrisiken, wie wir sie von Theft-Of-Service- und Denial-Of-Service-Attacken kennen. Aus diesem Grund muss das Protokoll für die Sicherheit seiner Binding Updates und die Gültigkeit der Binding Caches zuverlässig sorgen.
Solch ein Schutz muss einerseits zwischen Mobile Node und Home Agent, andererseits zwischen Mobile Node und MIPv6-fähigem Correspondent Node sichergestellt werden. Da die Rollen der Teilnehmer durchaus verschieden sind, benötigen beide Konstellationen eine unterschiedliche Behandlung.
Der Home Agent (HA) kann als eine Infrastrukturkomponente betrachtet werden. Er ist dem Mobile Node (MN) wohlbekannt und in der Regel bereits konfiguriert. Eine festgelegte Security Association kann daher angenommen werden. Dem MIPv6-Protokoll beigefügte Standards sehen eine solch enge Sicherheitskopplung in Form von IPSec ESP Authentifizierung und Integritätskontrolle vor. Diese stellen eine vertrauenswürdige Beziehung für die (Binding Updates) BUs mit dem HA sicher.
Im Gegensatz dazu kann jeder Knoten im Internet die Rolle des Correspondent Node (CN) übernehmen, ohne jemals zuvor den MN kontaktiert zu haben. Eine Vorkonfiguration kann nicht angenommen werden, da der MN nicht alle potentiellen Kommunikationspartner kennt.
Darüber hinaus legt der Entwurf von MIPv6 nahe, nur leichtgewichtige und zustandslose Sicherheitsmechanismen zwischen den Kommunikationspartnern zu verwenden. Die Protokolldesigner mussten deshalb eine neue Sicherheitssignalisierung entwickeln, um die BUs mit den CNs zu schützen. Sie wird als Return Routability Procedure bezeichnet.
Die Hauptaufgabe der Return Routability Procedure ist die Sicherstellung der Erreichbarkeit des MN über beide seiner Adressen, das heißt: direkt über seine Care–of-Adresse (CoA) und indirekt über den HA durch seine Home-of-Adresse (HoA). Dieses Verfahren schützt dabei vor globalen Man-In-The-Middle-Angriffen, wie sie bei einer ungeschützten Signalisierung zwischen MN und CN möglich wären.
Im Detail arbeitet die Return Routability Procedure wie folgt: Vor dem BU sendet der MN eine so genannte Home-Test-Init- (HoTi) und eine Care-Of-Test-Init-Nachricht (CoTi) direkt und über den HA zum CN. Beide sind mit einer Zufallszahl (Cookie) versehen. Der CN bestätigt den Empfang mittels einer Home-Test- (HoT) und einer Care-Of-Test-Nachricht (CoT). In der HoT- und CoT-Nachricht vermerkt der CN jeweils unterschiedliche Identifikationsmerkmale (Tokens).
Kommen die an die CoA und HoA adressierten Token fehlerfrei beim MN an, setzt dieser hieraus einen gemeinsamen Token zusammen und versieht damit sein BU. Mit dem Erhalt des zusammengesetzten Tokens über das BU kann der CN sicherstellen, dass ein und derselbe mobile Knoten die einzelnen Tokens auf verschiedenen Wegen erhalten hat und damit Besitzer der HoA und CoA ist.
Während des langen Standardisierungsprozesses von MIPv6 entstanden verschiedene experimentelle Protokollimplementierungen; die gegenwärtigen sind in Tabelle 1 zusammengefasst. Obwohl die Standardisierung vor drei Jahren abgeschlossen wurde, besitzen die Protokoll-Stacks einiger Betriebssysteme noch immer nur einen begrenzten Funktionsumfang oder die Entwicklungsstrategien der zugehörigen Projekte bleiben missverständlich.
Microsoft Research hat einen dem RFC 3775 entsprechenden MIPv6-Stack entwickelt, die MIPv6 Technology Preview. Der Stack ist für verschiedene Windows-Versionen verfügbar, wurde aber bisher nicht freigegeben. Das offizielle Windows MIPv6-Release unterstützt lediglich Funktionalitäten eines Correspondent Node. Es kann in Windows XP und Windows 2003 Server durch den netsh-Befehl aktiviert werden.
Der in Windows Vista und Windows Server 2008 integrierte IPv6-Stack unterstützt momentan kein Mobile IPv6. Das Unternehmen Treck bietet eine freie Embedded-IPv4/6 Implementierung zu Testzwecken für ihren kommerziellen compiler-, prozessor- und betriebssystemunabhängigen Dual-Stack als Demo für Windows an. Die Demo wird zusammen mit unterschiedlichen Anwendungen, wie einem FTP- oder HTTP-Server bereitgestellt und läuft parallel und damit unabhängig zum Windows-eigenen TCP/IP-Stack.
Historisch ist die MIPv6-Unterstützung für BSD innerhalb der Projekte KAME und InternetCAR entwickelt worden. Inzwischen wurden diese Projekte vereinigt und haben eine umfassende Implementierung namens SHISA hervorgebracht.
Gegenwärtig steht die neue SHISA-Version nicht als Public Release zur Verfügung. Ein voll funktionsfähiger MIPv6-Stack kann jedoch bereits von der KAME-Internetseite heruntergeladen werden.
Eine MIPv6-Unterstützung ist für Linux mit dem Kernel 2.4 unter dem Namen MIPL-1.1-Stack erhältlich. Für die Kernel-Version 2.6.16 existiert eine Gemeinschaftsentwicklung des USAGI- und MIPL-1.1-Stack-Teams, das so genannte MIPL2-Projekt.
Das Ziel der Entwickler ist die Integration der Erweiterungen in den Hauptzweig des Linux-Kernels. Die Version 2.0 ist eine vollständige Überarbeitung der gesamten Software, in der die meisten Funktionalitäten nun aus dem Kernel in einen User Space Daemon verlagert wurden.
Um die Wartbarkeit des Codes zu vereinfachen, wurde die MIPL-Distribution in zwei Pakete aufgeteilt. Ein Paket enthält die Bestandteile für den User Space Daemon inklusive Konfigurations- und Analysewerkzeugen. Das zweite Paket beinhaltet alle nötigen Erweiterungen für den Kernel. Um MIPL2 mit den Linux-Entwicklungen aktuell zu halten, wartet und verbreitet USAGI die Patch-Ansammlung UMIP.
Als unmittelbar benutzbare Arbeitsumgebung stellt die Nautilus6-Arbeitsgruppe (www.nautilus.org) ähnlich der Knoppix-Distribution eine freie Live-CD zur Verfügung: Das Live-CD Image enthält ein bootfähiges Betriebssystem mit vollständigem MIPv6 Support, Netzwerktestwerkzeugen und einer Multimedia-Softwaresammlung, zum Beispiel einem VoIP-Telefon.
Um die Verbreitung von MIPv6 voranzutreiben, bietet das Projektteam einen freien Home-Agent-Dienst, den „HAiku“, an. Die Live-CD und HAiku sind nach einer Registrierung unter http://op-ha.nautilus6.org unaufwändig zugänglich und benutzbar.
Thomas C. Schmidt arbeitet für die Hochschule für Angewandte Wissenschaften Hamburg (HAW) im Department Informatik.
Matthias Wählisch ist für das Berliner Spin-off Link-Lab tätig, das sich auf Next Generation Mobile Internet spezialisiert hat.
Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 2009967)