IPv6-Adressen

I.) der Adressbereich

Adressbereich von IPv4: 32 Bit => 2³² Adressen (abzügl. Broadcast, Netzwerkadresse etc.), entspricht ca. 4 Milliarden Adressen

Adressbereich von IPv6: 128 Bit => 2¹²⁸ Adressen
in der Theorie: „viermal so lang wie IPv4“ => 340 mit 36 Nullen: genug, „um jedem Sandkorn der Erde mehrere IPv6-Adressen zuzweisen; jeder Quadratmeter der Erde könnte 655 Trilliarden IPv6-Adressen erhalten
in der Praxis: das Präfix bei IPv6 beträgt grundsätzlich /64, der linke Teil (das Präfix) ist der Netzanteil und nur der rechte Teil, die zweiten 64 Bits, gehören den Hosts

II.) die Adresstypen

Adresstypen bei IPv4:
Unicast (zielgerichtet, Quelle und Ziel eindeutig)
Multicast (Ziel ist eine bestimmte Gruppe von Hosts)
Broadcast (Paket geht an alle Adressen im jeweiligen Subnetz)

Adresstypen bei IPv6:
Unicast (wie IPv4)
Multicast (übernimmt auch die Rolle von Broadcast)
Anycast (Paket geht an das nächstliegende System)

III.) IPv6-Regeln

1.) Jedes Interface muss mindestens eine Unicast-Adresse haben
2.) Ein einzelnes Interface kann auch mehrere IPv6-Adressen besitzen
3.) Wie bei IPv4 können auch bei IPv6 eine Adresse auf mehrere Interfaces verteilt werden (Loadsharing) oder mehrere physische Interfaces als Gruppe unter einer logischen Netzwerkkarte zusammen gefasst werden (Teaming, bietet Redundanz)

III.) Schreibweise von IPv6-Adressen

1.) Die 128 Bits der IPv6-Adresse werden in acht hexadezimale, 16 Bit lange Blöcke unterteilt, die durch Doppelpunkte getrennt werden, z.B. 2003:0235:0000:0000:0228:f8ff:fe77:84f4
2.) Führende Nullen können dabei ausgelassen werden, z.B.: 2003:235:0:0:228:f8ff:fe77:84f4
3.) Aufeinanderfolgende Null-Blöcke können einmal pro Adresse durch zwei Doppelpunkte ersetzt werden, z.B.: 2003:235::228:f8ff:fe77:84f4
4.) IPv4-Adressen können in IPv6-Adressen eingebettet, d.h. zum Schluß angehängt werden, z.B. 2003:0235:0000:0000:0228:f8ff:192.168.0.1 oder 0:0:0:0:0:0:192.168.0.1 oder ::192.168.0.1 oder ::C0A8:1

IV.) Präfixe in IPv6

– Grundsätzlich geben Präfixe den Netzanteil einer Adresse wieder (wie bei IPv4)
– Die ersten 64 Bits einer Adresse können frei aufgeteilt werden, die letzten 64 Bits stellen die Interface-ID (Hostanteil) dar
– Routing-Präfixe gemäß RFC 4291:
RFC 4291 Routing-Präfixe IPv6Global Unicast-Adressen 2000::/3 die IPv6-Adressen, die im Internet geroutet werden
Link-Local Unicast-Adressen FE80::/10 sind immer an jedem IPv6-aktivierten Interface vorhanden
Unique Local IPv6-Adressen (theoretisch) FC00::/7 (in der Praxis nur FD00::/8)
Multicast-Adressen FF00::/8

V.) Die Link-Local Adresse

– jedes Interface erhält eine Link-Local Adresse
– Unicast Kommunikation bedeutet One-to-One
– Link-Local Präfix: FE80::/10, die ersten 10 Bits sind festgelegt: 1111:1110:10
– Link-Local Adressen werden automatisch generiert, können aber auch manuell definiert werden
– nach 10 Bits folgen 54 Bits mit 0 (ebenfalls festgelegt für die Link-Local Adresse)
– es folgt der Hostanteil mit 64 Bits (wird Interface-ID genannt)
– Link-Local Adressen sind vergleichbar mit APIPA (Automatic Private IP Adressing), aber keine Notlösung
– Link-Local Adressen können nicht geroutet, d.h. nur im lokalen Netzwerk verwendet werden
– im lokalen Subnetz wird – wenn möglich – mit der Link-Local Adresse kommuniziert
– wird das Standard-Gateway per Autoconfiguration ermittelt, wird die Link-Local Adresse des Routers eingetragen (keine Global Unicast Adresse, die im Internet routingfähig wäre)

VI.) Die Global Unicast Adresse

– Global Unicast Adressen sind im Internet global routbare Adressen und haben das Präfix 2000::/3, d.h. der Wertebereich im ersten Block der Adresse ist 2000 bis 3FFF
– Definition des Aufbaus in RFC 3587:
Global Unicast IPv6 Adressaufbau– das globale Routing-Präfix identifiziert den einer Site vom Provider oder RIR zugewiesenen Adressbereich. Dieser kann auch wieder zurück gefordert werden
– die Subnetz-ID identifiziert den Bereich innerhalb einer Site (wie bei IPv4)
– die Interface-ID ist die Host-Adresse und identifiziert ein Interface in einem Subnetz

Typen der Global Unicast Adressen:

stabile Adressen: werden durch manuelle Festlegung bzw. Autoconfiguration mittels EUI-64-Format gebildet, hierbei wird bei der Autoconfiguration die MAC-Adresse des jeweiligen Interfaces einbezogen und bildet ggf. ein Sicherheitsrisiko
befristete, vorübergehende Adressen (temporary, transient): werden mittels Privacy Extensions gemäß RFC 4941 über eine Pseudo-Zufallszahl generiert

VII.) Unique Local Adressen

ULAs (Unique Local-Adresse) sind das Äquivalent zu privaten IP-Adressen bei IPv4 und werden nicht im Internet geroutet
– Unique Local-Präfix: FC00::/7
– Unique Local-Adressen können entweder lokal oder zentral vergeben werden (8. Bit: entweder 1 – lokal oder 0 – zentral)
RFC 4193 definiert lokale Unique Local-Adressen (8.Bit=1) und daher das Präfix FD00::/8
Unique Local IPv6 Adressen– Bisher existiert keine zentrale Vergabestelle für Unique Local-Adressen
– Das Globale Präfix (Global ID) wird mittels Zufallsalgorithmus (definiert in RFC 4193) ermittelt
– das Ziel dahinter: Partnerunternehmen benötigen kein NAT und keine Adressänderungen, da das Präfix mit hoher Wahrscheinlichkeit nicht doppelt vorkommt
– Vorsicht, Verwaltungs- bzw. Management-Overhead: lohnt es sich, zusätzlich zur Link Local Adresse eine Unique Link Local Adresse zu definieren?

VIII.) Multicast Adressen

– Multicast wurde bei IPv6 gegenüber IPv4 überarbeitet und erweitert
– Pakete an eine Multicast-Adresse werden an alle Mitglieder einer Multicast-Gruppe gesendet (One-to-Many)
– Multicast-Adressen beginnen mit FF bzw. 1111 1111
Multicast IPv6 AdressaufbauFlags definieren die Art der Multicast-Adresse, es werden nur die 3 Low-Order-Bits verwendet:
– T-Flag (Transient): 0=Well-Known-Multicast-Adresse (IANA), 1=transient, also nicht permanent
– P-Flag (Prefix): Multicast-Adresse basiert auf einem Unicast-Präfix, siehe RFC 3306
– R-Flag (Rendezvous Point Address): Multicast-Adresse enthält einen Rendezvous-Point (RFC 3956)

Gültigkeitsbereich von IPv6 Multicast Adressen:

– das 4-Bit-Scope-Feld legt den Gültigkeitsbereich von Multicast-Adressen fest
– Multicast-fähige Router stellen anhand des Scopes fest, ob ein Multicast-Paket geroutet wird
RFC 4291 definiert die folgenden Werte:
Scope-Werte RFC 4291Beispiel für die Verwendung der Scopes:
NTP-Server sind über die Group-ID 0x101 zu erreichen:
FF01::101 – alle NTP-Server auf demselben Interface wie der Sender (Loopback)
FF02::101 – alle NTP-Server auf demselben Link wie der Sender
FF05::101 – alle NTP-Server in derselben Site wie der Sender

Well-Known Multicast Adressen:

– Diverse so genannte Well-Known-Multicast-Adressen sind fest definiert
– Die Multicast-Adressen werden vor allem durch ihren Gültigkeitsbereich (Scope) unterschieden:
Well-Known-IPv6-Multicast-AdressenInterface-local: am eigenen Interface – FF01::1 = Loopback
Link-local: im selben Subnetz – FF02::1 = Broadcast
Site-local: den lokalen Standort betreffend
Solicited-Node Multicast Adresse:
– wird verwendet, um die IP-Adresse in eine MAC-Adresse aufzulösen
– Zu jeder Unicast-Adresse existiert eine Solicited-Node Multicast-Adresse
– Jeder Host muss sich für jede Solicited-Node-Adresse, die er nutzt, registrieren
– das Präfix ist theoretisch FF02:0:0:0:0:1:FF00:0/104, in der Praxis: FF02::1:FF….
– Die letzten 24 Bit der zugehörigen Unicast-Adresse werden angehängt:
Solicited-Node Multicast IPv6-Adressaufbau

Multicast MAC Adressen:
– IPv6-Multicast-Adressen (Layer 3) werden direkt auf MAC-Adressen (Layer 2) abgebildet
– Multicast-MAC-Adressen beginnen mit HEX 0x33-33
– Anschließend folgen die letzten 32 Bits der IPv6-Multicast-Adresse (acht Hexadezimal-Ziffern)
– Beispiele:

IX.) Anycast Adressen

– Anycast-Adressen werden mehreren Interfaces (in der Regel auf mehreren Hosts) zugeordnet
– Prinzip: One-to-Nearest, es wird der nächste erreichbare Host angesprochen
– Anwendung bei Systemen, die denselben Dienst anbieten, z.B. DNS
– Anycast-Adressen haben ein beliebiges Präfix und sind formal nicht von Unicast-Adressen zu unterscheiden
– Systeme, denen Anycast-Adressen zugewiesen werden, werden über deren Eigenschaft als Anycast-Adresse in Kenntnis gesetzt
– Anycast-Systeme werden über Hostrouten lokalisiert, so dass das Routing-Protokoll über das nächstliegende Anycast-System entscheiden kann
– Die einzige festgelegte Anycast-Adresse ist die Subnet-Router Anycast-Adresse – jeder Router muss sie unterstützen:
Subnet-Router-Anycast-Adressaufbau

X.) Besondere IPv6-Adressen

– Die unspezifizierte Adresse 0:0:0:0:0:0:0:0, auch „All-Zero“ genannt, zeigt das Fehlen einer Adresse an (analog zu IPv4: 0.0.0.0) und wird oft auch als :: dargestellt
– Die Loopback-Adresse 0:0:0:0:0:0:0:1 oder kurz: ::1 entspricht bei IPv4 127.0.0.1; es gibt kein Loopback-Netz bei IPv6 mehr
IPv4-compatible IPv6-Adresse: hat das Präfix ::/96 und enthält in den letzten 32 Bits die IPv4-Adresse des Interfaces (z.B. ::192.168.5.1), wurde für Rückwärtskompatibilität genutzt (abgeschafft mit RFC 4291)
IPv4-mapped-IPv6-Adresse: enthält ebenfalls in den letzten 32 Bits die IPv4-Adresse, davor FFFF, wird genutzt, um IPv4-only Knoten als IPv6-Adresse zu repräsentieren, z.B. ::FFFF:192.168.0.1

Besondere IPv6-Adressen im Rahmen von Tunnel-Technologien:

6to4-Adressen:
– Tunnelmechanismus nach RFC 3056
– Präfix: 2002::/16 (Ausnahme im Bereich von Global Unicast)
– enthält die IPv4-Adresse des 6to4-Routers
ISATAP-Adressen:
– Tunnelmechanismus nach RFC 5214
– Einsatz hauptsächlich von MS
– Präfix: beliebiges Global Unicast-Präfix mit Identifier 00 00 5E FE bzw. 02 00 5E FE in den ersten 32 Bits des Interface-Identifiers, gefolgt von der IPv4-Adresse
Teredo-Adressen:
– Tunnelmechanismus nach RFC 4380
– Präfix: 2001::/32, die Adressen beginnen mit 2001:0:
– selten, eher mißglücktes
Dokumentationsadressen:
– Präfix: 2001:db8::/32