IPv6 - Aufbau & Basics
Dieser Artikel beschreibt IPv6 nicht vollständig, sondern nur vereinfacht: Das
Wesentliche für eine Implementierung. Es sollte immer Dualstack
eingesetzt werden, also IPv4 und IPV6 gleichzeitig.
Problemstellung: Aus dem BSI Handbuch IPv6 Migrationsleitfaden für die öffentliche Verwaltung |
"Es gibt einen Migrationszwang der auf die jetzt schon (in Asien) nicht mehr verfügbaren IPv4-Adressen zurückführen ist" |
Bestimmte Dienste sind jetzt schon in Asien und in Zukunft global nur über IPv6 erreichbar |
"Ein IPv6-only-Betrieb wird zurzeit für die Verwendung in vorhandenen operativen Netzwerken noch nicht empfohlen" |
Implementation Dualstack ist notwendig und zulässig |
"Proxies (für HTTP, HTTPS, SMTP, etc.) sollten überall dort genutzt werden, wo es aus Gründen der Sicherheit, Performanz (z.B. durch Caching) und/oder Protokollierung des Datenverkehrs notwendig ist" |
Einsatz einer UTM/NGF (keinen Router, NAT gibt es bei IPv6 nicht mehr und ist auch kein Sicherheitsfeature bei IPv4) |
"Für die allermeisten Anwendungsszenarien wird empfohlen, einen Ausbau und eine Konfiguration der vorhandenen Strukturen mit nativer IPv4/IPv6 Dual-Stack-Unterstützung zu realisieren. Wo dies nicht möglich ist, können für den IPv6-WAN-Anschluss ausgewählte Übergangstechniken wie fest konfigurierte Tunnel zum Einsatz kommen" |
Einsatz von festen Tunnelbrokern ist zulässig |
Lösungsansatz: |
Erstellung eines IPv6 Dualstack Konzeptes unter Berücksichtigung BSI Konformität (IPv6 ggf. über einen Tunnelbroker realisieren) |
Aufbau und Praxis
Eine IPv6 Adresse (z.B. 2001:00d0:fbd5:0000:0000:0000:4666:00d6) besteht aus 8 Blöcken a 4 Zeichen, gültig sind 0-9 und a-f, die Blöcke werden durch einen Doppelpunkt ":" getrennt.
Das System ist also hexadezimal, pro Block gibt es 4 Zeichen = 16 hoch 4 = 65.536 Möglichkeiten, insgesamt sind es 16 hoch 32.
Der IPv6 Adressen Aufbau besteht aus 2 Teilen, die ersten 4 Blöcke sind das
Netz (Präfix), die letzten 4 der Host (Identifierer):
2001:00d0:fbd5:0000:0000:0000:4666:00d6
Netzwerk: 2001:00d0:fbd5:0000
Host: :0000:0000:4666:00d6
Bei IPv4 sieht das s0 aus:
192.168.010.025
Netzwerk = 192.168.010
Host = .025
Bei mehreren leeren Blöcken hintereinander (0000) werden maximal 2 Doppelpunkte angegeben, es wird "gekürzt":
2001:00d0:fbd5:0000:0000:0000:4666:00d6 =
2001:00d0:fbd5::4666:00d6
Das Kürzen von aufeinanderfolgenden Blöcken von Nullen ist aber nur 1x pro IPv6 Adresse erlaubt, es darf also nur einen "::" pro Adresse geben
Führende Nullen können auch weglassen werden:
2001:00d0:fbd5::4666:00d6 =
2001:d0:fbd5::4666:d6
2001:00d0:fbd5:0000:0000:0000:4666:00d6 = 2001:d0:fbd5::4666:d6
[ Die kürzeste IPv6 Adresse ist die localhost ::1 (127.0.0.1 bei IP 4). Die localhost IPv6 ist auch das Logo dieser Seite ]
Bei IPv4 sieht das so aus, Nullen werden auch weggekürzt:
192.168.010.025 =
192.168.10.25
Bei IPv4 wäre das Netz in diesem Fall /24, Class c oder auch 255.255.255.0, bei IPv6 /64. Man sieht hier einen Vorteil von IPv6 deutlich, es passen mehr Hosts in ein Netzwerk.
IPv6 Netzwerke werden so angegeben:
2001:00d0:fbd5:0000:: /64 (da die 0000 hier zum Netzwerk gehören, ist ein Kürzen nicht sinnvoll)
Bei IPv4 sieht das so aus
192.168.10.0 /24
Bei IPv6 unterteilt sich das Präfix noch in das "Global Routing Prefix" und die "Subnet ID" (siehe Zeichnung unten). Wenn man also ein /48 IPv6 Netz (was für Firmen mit mehreren IPv4 Netzwerken unbedingt notwendig ist) von seinem Provider oder Tunnelbroker zugewiesen bekommt, kann man selber Subnet IDs in dem 4. Block vergeben, aber auch nur in diesen. Es ergeben sich bei einem /48 Netz 65.536 mögliche /64 Subnetze.
Das weitere Unterteilen eines /64 Netzes ist nicht möglich.
Es können nur /64 Netzwerke als Client Netzwerke genutzt werden, keine /48 oder andere.
-
Der Vergleich hinkt zwar, aber als reine Gedankenstütze:
Beispiel 1
IPv4: 212.089.xxx.010 /16 (Class B Netz)
IPv6: 2001:00d0:fbd5:xxxx:0000:0000:4666:00d6 /64
212.089.0.0 ist das öffentliche Netz, in dem man als Besitzer weitere Class C Netze erstellen kann, bei IPv6 kann man aus dem /48 Netz weitere /64 Netze erstellen.
Beispiel 2
IPv4: 192.168.010.010 /24 (Class c Netz)
IPv6: 2001:00d0:fbd5:xxxx:0000:0000:4666:00d6 /64
192.168. ist das "Prefix privat", .010 das Subnet diesen privaten Netzwerkes, .025 gibt den Host an
Den Bereich bei IPv4 192.168. kann man auch nicht ändern, sonst kollidiert man mit einem öffentlichem IP Kreis. Wenn man bei IPv6 -in diesem Beispiel 2001:00d0:fbd5 - verlässt, ist man in einem anderen öffentlichem Gobal Unicast IPv6 Kreis, bzw. Gobal Routing Prefix.
Bei IPv6 darf man nur die Subnet-ID ändern und selber /64 Netzwerke vergeben, wenn man ein /48 Netz zugeordnet bekommen hat.
Wenn man ein /64 Netz bekommen hat, ist das nicht möglich, dann steht nur das eine /64 Netzwerk zur Verfügung.
Das weitere Unterteilen eines /64 Netzes ist nicht möglich.
Es können nur /64 Netzwerke als Client Netzwerke genutzt werden, keine /48 oder andere.
-
Abgabe des Präfixes in IPv6:
Die Angabe erfolgt hinter der Adresse mit einem Schrägstrich, z.B.:
/48 = Netz für Firmen für weitere Unterteilung in /64 Netze
/56 = Netz für Firmen und Endkunden für weitere Unterteilung in /64 Netze
/64 = Netz für Hosts
/128 = Host
Das Präfix löst sozusagen die Subnetmaske ab, man erkannt am Präfix ob man ein /64 (=Host Netzwerk) oder ein /48 /56 (Zur weiteren Unterteilung in /64 Netzwerke) hat.
Der Identifier errechnet sich immer aus der Mac Adresse des Hostes und ist somit immer gleich und weltweit eindeutig. Ein Host ist auch dann identifizierbar, wenn er das Netzwerk wechselt und kann in mehreren Netzwerken (link-lokal und mehreren öffentlichen (Providernetzwerken) gleichzeitig sein. Für den Internetzugriff nutzen Windows 7/8 eine temporäre IPv6 Adresse. Diese Funktion kann mit "netsh interface ipv6 set global randomizeidentifiers=disabled " abgeschaltet werden.
Nichts destotrotz ist eine IPv6 Nutzung ohne Firewall - UTM - Next-Gen Firewall nicht sicher! Es gibt kein NAT mehr, jede IPv6 Adresse (ausser link-local) ist eine öffentliche. Die Lösung NAT/Masquerading bei IPv4 ist ja nur ein Behelf, weil es nicht genug IPv4 Adressen gibt. Das Internet ist ein Netzwerk von Rechnern und nicht von Routern, es wird mit IPv6 das Ende-zu-Ende Prinzip umgesetzt.
Prefix Advertisment
Router (Gateways) geben über Prefix Advertisment das Netz /64 bekannt, aus welchem sich die Clienten ihre IPv6 Adresse nehmen können. Angaben wie Gateway IP, DNS Server und Domainname werden mit bekannt gegeben. Prefix Advertisment ist kein DHCPv6! Es kann in einem Netzwerk mehrere IPv6 Router geben, der Client kann also X IPv6-Adressen und damit auch X Gateways haben und nutzen.
Wenn man DHCPv6 aktiviert (was jeder Windows Server ab 2008 kann) kann man weitere Angaben an den Clienten übermitteln, allerdings hat der dann eine weitere IPv6 Adresse.
Mögliche IPv6 Adressen eines Netzwerkadapters/Host
:
Global Unicast Address:
Diese entsprechen den öffentlichen IPv4 Adressen und werden im Internet geroutet, diese Adresse stellt den Standard bei IPv6 da und ist für jeden Host vorgesehen. Das Ende-zu-Ende-Prinzip wird bei IPv6 angewandt, kein NAT wie bei IPv4.
Diese Adressen bzw Adressblöcke werden von der IANA an Provider vergeben, die ersten 3 Blöcke stellen das Gobal Routing Prefix des Providers da, der Provider verteilt dann an Kunden /48 und /64 Netzwerke aus seinem Bereich weiter. Da es jetzt genug IPv6 Adressen gibt, kann jeder Host eine öffentlich IPv6 Adresse bekommen. Grundsätzlich sollten alle Host Global Unicast Adressen bekommen, wenn der Internet-Provider keine anbietet, sollte man einen IPv6 Tunnelbroker nutzen.
Ausnahmen bilden die Bereiche 2001:db8::/32 (Doc) und 2001:10::/28 (ORCHID), diese werden nicht geroutet, sollten aber auch nicht als privates Netzwerk genutzt werden.
Ein Host kann gleichzeitig in mehreren Gobal Unicast IPv6 Adresskreisen (/64) sein und mehrere Gateways haben. Jeder Host gibt sich selber aus jedem Prefix Advertisment eine Adresse, die er sich aus der MAC Adresse des Netzwerkadapters berechnet.
Beispiel Netzwerkadapter eines PCs (W7/8), im Netzwerk stehen 2 Router verschiedener Provider:
IPv6 Netzwerk 1
2001:4dd0:fbd5:2540:bcb6:a035:ae1f:15c7 = IPv6 Adresse des Hostes
IPv6 Netzwerk 1
2a00:eef2:53c4:1ef2:bcb6:a035:ae1f:15c7 = IPv6 Adresse des Hostes
Zusätzlich nimmt sich der W7 Host auch noch zu jedem Netzwerk eine temporäre IPv6 Adresse, die private Extension Adresse. Dazu kommt noch die Link-Local und schon hat der PC 5 IPv6 Adressen. Die verschiedenen Global Unicast Adressen können an verschiedene Dienste gebunden werden (IIS, Exchange). Die temporären sind nicht nutzenbar, die werden vom Betriebssystem zum Zugriff auf das Internet genutzt und ändern sich nach Tagen.
Link-Local Address:
Wenn IPv6 bei einem Host aktiviert ist, nimmt er sich selber eine Link Lokale Adresse aus dem Netz fe80::/64. Diese Adresse und das Netz sind nicht routbar und nur lokal in dem Netzwerksegment nutzbar, in dem der Client gerade ist (analog zu IPv4 Link Local 169.254.x.x/16). Die Adresse kann auch nicht an irgendwelche Dienst wie IIS oder an Exchange 2013 Dienste gebunden werden. Kurz gesagt, diese Adresse ist da und man sollte ihr keine Beachtung schenken, Sie nicht verändern oder bewusst nutzten.
Unique Local Address:
fc00::/7, also fc00 bis fdff ist der private IPv6 Bereich, der im Internet nicht geroutet wird, er entspricht damit den privaten IPv4 Adresse Kreisen 10. , 172.16. und 192.168.
Für Site to Site VPN könnte er genutzt werden, im Gegensatz zu den Link-lokalen Adressen. Ein Anwendungsszenario für diese Adressen zu finden fällt schwer. Diese sollten eigentlich nur vergeben werden, wenn kein Zugang zum Internet besteht, also in geschlossen IT Systemen, in denen aber IPv6 gebraucht wird.
Außerdem werden die Bereiche 2001:db8::/32 (Doc) und 2001:10::/28 (ORCHID) auch nicht geroutet, diese sollten aber nicht als privates Netzwerk genutzt werden.
Nutzung von IPv6 Adressen im Browser:
Damit die IPv6 Adresse vom Browser erkannt werden kann, muss diese in [eckige Klammern] gesetzt werden, das sieht dann so aus:
http://[2001:d0:fbd5::4666:d6]/index.html
oder mit Portangabe:
http://[2001:d0:fbd5::4666:d6]:8080/index.html
.
.
Hilfe gefunden? Laden Sie mich auf ein Bier ein! (click on Beck's)
.
.
Adresse | Beschreibung |
::/128 | Unspecified (fehlende IPv6 Adresse) |
::1/128 | Loopback (localhost) |
FF00::/8 | Multicast (ICMPv6 Multicast) |
FE80::/10 | Link-Local Unicast |
2001:0000::/32 | Teredo |
2001:0002::/48 | BMWG |
2001:1000::/28 | ORCHID |
2001:db8::/32 | Dokumentationszwecke |
2002::/16 | 6to4 |
FF02::1 | All Nodes Address |
FF02::2 | All Routers Address |
FF02::1:2 | All DHCP Agents |
FF02::C | Simple Service Discovery Protocol (SSDP) |
FF02::139 | Alle Lancomgeräte |
.
Befehl | Ausgabe |
netsh interface ipv6 show siteprefix | aller prefix advertisments des Netzes |
netsh interface ipv6 show dnsservers | aller IPv6 DNS-Server an |
netsh interface ipv6 show privacy | der Parameter für temporäre Adressen |
netsh Interface ipv6 show neighbors | alle anderen link-local Adressen |
netsh interface ipv6 show destinationcache | Zuordnung link-local Adresse MAC Adresse |
netsh interface ipv6 show joins | aller link-local Multicast Adressen |
netsh interface ipv6 set teredo disable | Terodo Interface deaktvieren (empfohlen) |
Konkrete Umsetzung von IPv6 mit der Sophos UTM Astaro:
Sophos UTM 9 Astaro mit IPv6 Tunnelbroker
WLAN mit Lancom AP und IPv6
Exchange 2013 und IPv6
Geschichte und Theorie IPv6: - Im Aufbau
IPv6 wurde als Standard im Jahr 1998 verabschiedet, aber der erste ernsthafte Ansatz der Nutzung fand am 12. Januar 2011 statt im Form des World IPv6 Day statt. Dieser wurde hauptsächlich von Facebook, Google, Yahoo!, Akamai Technologies und Limelight Networks getragen. Von einer ernsthafter Anwendung kann man auf Grund der nur langsamen fortschreitenden Implantation durch die Hersteller von Hardware/Software erst ab Mitte 2013 sprechen.
Vorteile IPv6:
Der Adressraum ist bei IPv6 deutlich grösser ( acht Blöcke zu jeweils 16 Bit, 4 Hexadezimalstellen), das ergibt theoretisch
340 000 000 000 000 000 000 000 000 000 000 000 000 mögliche Adressen. Allerdings sind die ersten 4 Blöcke für Netze vorgesehen, nur in den letzten 4 Blöcken werden IP Adressen an Clienten vergeben.
Münster AD 2013