Erweiterte IPv6-Weiterleitung und -Adressierung
IPv6 erhöht die Größe von IP-Adressen von 32 Bit auf 128 Bit, um zusätzliche Ebenen der Adressenhierarchie, eine weitaus höhere Anzahl adressierbarer Knoten und eine vereinfachte automatische Konfiguration von Adressen zu unterstützen.
IPv6 beinhaltet diese drei Adresstypen:
| Element | Beschreibung |
|---|---|
| unicast | Ein an eine Unicastadresse gesendetes Paket wird an die von dieser Adresse identifizierte Schnittstelle zugestellt. Eine Unicastadresse verfügt über einen bestimmten Geltungsbereich: 'link-local', 'site-local' oder 'global'. Außerdem gibt es zwei besondere Unicastadressen:
|
| multicast | Ein an eine Multicastadresse gesendetes Paket wird an alle durch diese Adresse identifizierten Schnittstellen zugestellt. Eine Multicastadresse wird durch das Präfix ff ::/8 identifiziert. Multicastadressen verfügen über einen ähnlichen Geltungsbereich wie Unicastadressen: 'node-local', 'link-local', 'site-local' oder 'organization-local'. |
| Anycast | Eine Anycast-Adresse verfügt über einen einzelnen Absender, mehrere Listener und über einen einzigen Responder (normalerweise der nächstgelegene, entsprechend dem Entfernungsmaß des Routing-Protokolls). Angenommen, eine Anycast-Adresse wird von mehreren Webservern überwacht. Wenn eine Anforderung an die Anycast-Adresse gesendet wird, antwortet nur ein einziger Webserver. Eine Anycast-Adresse unterscheidet sich nicht von einer Unicastadresse. Eine Unicastadresse wird zu einer Anycast-Adresse, wenn mehr als eine Schnittstelle mit dieser Adresse konfiguriert ist. |
Automatische IPv6-Konfiguration
Die primären verfügbaren Verfahren, die das Starten eines Knotens und die Kommunikation mit anderen Knoten über ein IPv4-Netz ermöglichen, sind 'hard-coding', BOOTP und DHCP.
IPv6 führt das Konzept des Geltungsbereichs für IP Adressen ein. Ein möglicher Geltungsbereich ist 'link-local'. Dadurch kann ein Host eine gültige Adresse aus dem vordefinierten Präfix für Link-Local-Präfix und der zugehörigen lokalen Kennung erstellen. Diese lokale Kennung wird in der Regel aus der MAC-Adresse (MAC = Medium Access Control) der zu konfigurierenden Schnittstelle abgeleitet. Unter Verwendung dieser Adresse kann der Knoten mit anderen Hosts im selben Teilnetz kommunizieren und benötigt für ein vollständig isoliertes Teilnetz möglicherweise keine andere Adresskonfiguration.
Aussagefähige IPv6-Adressen
Bei IPv4ist die einzige allgemein erkennbare Bedeutung in Adressen Broadcast (normalerweise alle 1s oder alle 0s) und Klassen (z. B. eine Klasse D ist Multicast). Bei IPv6-Adressen kann das Präfix schnell untersucht werden, um den Geltungsbereich (z. B. 'link-local'), das Verfahren 'Multicast' oder 'Unicast' und einen Zuordnungsmechanismus (basierend auf Provider oder Geografie) zu bestimmen.
Außerdem können Routing-Informationen explizit in die oberen Bits von Adressen geladen werden. Dieses Verfahren wurde jedoch von IETF noch nicht endgültig definiert. (Bei providerbasierten Adressen sind die Routing-Informationen implizit in der Adresse enthalten.)
Erkennung doppelter Adressen bei IPv6
Beim Initialisieren oder Reinitialisieren einer Schnittstelle wird die automatische Konfiguration verwendet, um eine Link-Local-Adresse versuchsweise mit der Schnittstelle zu verknüpfen (d. h. die Adresse ist noch nicht im traditionellen Sinn der Schnittstelle zugewiesen). An diesem Punkt verknüpft die Schnittstelle die Multicastgruppen 'all-nodes' und 'solicited-nodes' eine Nachricht zur Erkennung benachbarter Elemente an diese Gruppen. Anhand der Multicastadresse kann der Knoten ermitteln, ob die betreffende Link-Local-Adresse bereits zuvor zugeordnet wurde, und eine alternative Adresse auswählen.
Dadurch kann verhindert werden, dass dieselbe Adresse irrtümlich zwei verschiedenen Schnittstellen im gleichen Link zugeordnet wird. (Es ist weiterhin möglich, doppelte Adressen mit dem Geltungsbereich 'global' für Knoten zu erstellen, die nicht im selben Link enthalten sind.)
Nachbarerkennung bzw. automatische Konfiguration statusunabhängiger Adressen
Neighbor Discovery Protocol (NDP) für IPv6 wird von Knoten (Hosts und Routern) verwendet, um die Link-Layer-Adressen für Nachbarn zu ermitteln, die bekanntermaßen in verbundenen Links enthalten sind, und zielbezogene Routing-Tabellen für aktive Verbindungen zu verwalten. IPv6 definiert einen Mechanismus zum automatischen Konfigurieren von statusabhängigen und statusunabhängigen Adressen. Für die automatische statusunabhängige Konfiguration ist keine manuelle Konfiguration der Hosts sowie (nur bei Bedarf) eine minimale Konfiguration der Router erforderlich und es werden keine zusätzlichen Server benötigt.
Hosts nutzen NDP auch, um benachbarte Router zu finden, die dazu bereit sind, Pakete in ihrem Namen weiterzuleiten, und geänderte Link-Layer-Adressen zu erkennen. NDP verwendet Version 6 von Internet Control Message Protocol (ICMP) mit eigenen eindeutigen Nachrichtentypen. Allgemein entspricht das IPv6 Neighbor Discovery-Protokoll einer Kombination aus dem IPv4 Address Resolution Protocol ( ARP ), ICMP Router Discovery (RDISC) und ICMP Redirect ( ICMPv4 ), weist jedoch gegenüber diesen IPv4 Protokollen zahlreiche Verbesserungen auf.
Mit dem statusunabhängigen Verfahren kann der Host eigene Adressen durch Kombinieren lokal verfügbarer Informationen mit von Routern bereitgestellten Informationen generieren. Router machen Präfixe zugänglich, die die einem Link zugeordneten Teilnetze identifizieren, während Hosts ein Schnittstellentoken generieren, das eine Schnittstelle in einem Teilnetz eindeutig identifiziert. Durch Kombinieren dieser beiden Elemente wird eine Adresse erstellt. Wenn keine Router vorhanden sind, kann ein Host nur Link-Local-Adressen generieren. Link-lokale Adressen genügen jedoch für die Kommunikation zwischen Knoten, die demselben Link zugeordnet sind.