GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was Sie über IPv6 wissen müssen

Im Jahr 1994 initiierte die Internet Engineering Task Force (IETF) die Entwicklung des Internetprotokolls Version 6 (besser bekannt als IPv6). Im Dezember 1998 wurde der erste Entwurf zu einem Standard für die IETF, der schließlich am 14. Juli 2017 als Internetstandard ratifiziert wurde.

Der Hauptgrund für die Entwicklung von IPv6 war die Überwindung des Problems der Erschöpfung von IPv4-Adressen. Unter Berücksichtigung dieses Problems hat die IETF das Protokoll auch im allgemeinen Sinn optimiert.

Um die Notwendigkeit von IPv6 zu verstehen und warum es der Nachfolger von IPv4 ist, müssen wir uns kurz mit IPv4 befassen.

IPv4

IPv4 wurde erstmals 1983 von Advanced Research Projects Agency Networks (ARPANET) eingesetzt und ist trotz seines Nachfolgers IPv6 immer noch das am häufigsten verwendete Routing-Protokoll.

Hier sind ein paar Fakten zu IPv4:

  • IPv4 verwendet einen 32-Bit (2)-Adressraum, was bedeutet, dass Hosts insgesamt 4.294.967.296 eindeutige IP-Adressen zugewiesen werden können.
  • Es gibt eine Reihe spezieller Blöcke, die für private Netzwerke (Klasse A, B und C) reserviert sind, etwa 18 Millionen Adressen und 270 Millionen sind für Multicast-Adressen reserviert.
  • IPv4 wird in Dezimalschreibweise geschrieben, wobei jedes Oktett durch einen Punkt getrennt wird (z. B. 1.2.3.4).
  • Internet Protocol Security (IPSec) ist in IPv4 optional, und die minimale Größe der fragmentierten Pakete beträgt 576 Byte.
  • Network Address Translation (NAT) wird verwendet, um die Erschöpfung von IP-Adressen weiter einzuschränken.

IPv6

Mit dem schnellen Wachstum von Internetgeräten – auch bekannt als das Internet der Dinge (IoT) – auf der ganzen Welt werden mehr IP-Adressen benötigt, damit diese Geräte Daten austauschen können. Denken Sie an Mobiltelefone, Smartwatches, Kühlschränke, Waschmaschinen, Smart-TVs und andere Gegenstände, die eine IP-Adresse benötigen. Alle diese Geräte sind heutzutage mit dem Internet verbunden und werden durch eine eindeutige IP-Adresse identifiziert. In diesem Abschnitt konzentrieren wir uns auf IPv6, seine Funktionen und warum es der Standard für Internetprotokolle sein wird.

Bevor wir ins Detail gehen, gibt es ein paar Schlüsselfunktionen, die IPv6 beinhaltet:

  • IPv6 verwendet 128-Bit (2)-Adressen und erlaubt 3,4 x 10 eindeutige IP-Adressen. Dies entspricht 340 Billionen Billionen Billionen IP-Adressen.
  • IPv6 wird in hexadezimaler Notation geschrieben, die durch Doppelpunkte in 8 Gruppen von 16 Bit unterteilt ist, also insgesamt (8 x 16 =128) Bit. Eine IPv6-Adressdarstellung sieht folgendermaßen aus:

2001:db8:1234::f350:2256:f3dd/64

  • IPv6 kann manuell mit Stateless Address Auto Configuration (SLAAC) oder DHCPv6 konfiguriert werden.
  • IPv6 hat eine Mindestpaketgröße von 1280 Byte, bestehend aus einem festen 40-Byte-Basisheader und 1240 Byte Nutzlast (Benutzerdaten).
  • IPv6 wird von vielen Betriebssystemen wie Linux, macOS, Solaris, (Free, Open und Net) BSD und Windows unterstützt.

Beachten Sie, dass IPSec einst für IPv6 als obligatorische Anforderung entwickelt wurde. Heute kann es optional mit IPv6 genutzt werden. Siehe RFC 6434. IPSec bietet Authentifizierung und Verschlüsselung mit Authentication Headers (AH) und Encapsulating Security Payload (ESP).

IPv6-Adressen

Eine IPv6-Adresse wird in hexadezimaler Schreibweise geschrieben, getrennt durch das Doppelpunktsymbol (:), wie hier gezeigt:

2001:0db8:1234:0000:0000:f350:2256:f3dd/64

Die obigen Adressen könnten auch geschrieben werden als:

2001:db8:1234::f350:2256:f3dd/64

wobei aufeinanderfolgende Nullen eliminiert und durch einen doppelten Doppelpunkt (::) ersetzt werden. Es ist wichtig zu beachten, dass, wenn eine Adresse aus mehreren Nur-Null-Feldern besteht und diese Nullen in verschiedenen Teilen der IP vorkommen, die Nullen ganz links diejenigen sind, die komprimiert werden.

Lassen Sie uns dies an einem Beispiel veranschaulichen:

IPv6-Adressvariante IPv6-Adressschreibweise
IPv6 vollständig geschrieben 2001:0db8:0000:0000:34f4:0000:0000:f3dd/64
IPv6 vereinfacht 2001:db8::34f4:0000:0000:f3dd/64
IPv6 weiter vereinfacht 2001:db8::34f4:0:0:f3dd/64

Wenn Sie die IP-Adresse jedoch als 2001:db8::34f4::f3dd/64 schreiben, wird sie ungültig, da Doppelpunkte nur einmal in der Adresse verwendet werden können (ganz links nur Nullen).

Die IPv6-Adresse besteht hauptsächlich aus zwei 64-Bit-Segmenten, wobei der höhere Teil der Bits als Netzwerkteil und die niedrigeren 64 Bits als Client-ID klassifiziert werden. Der Netzwerkteil ist unterteilt in Global Unicast Address (GUA) und Subnet ID. Diese Informationen können durch das folgende Bild vereinfacht werden: 

Es ist erwähnenswert, dass IPv6 keine Vorstellung von Subnetzmasken hat wie IPv4. Stattdessen wird eine Classless Inter-Domain Routing (CIDR) Notation verwendet. Beispiele sind:

2001:581:f3d1:241f::/64
2001:db8:1234::/48
2a01:1b0::/32
2000::/3

Aus Sicht des Endbenutzers/Endstandorts wird der Netzwerkteil (oder die Netzwerk-ID) von Ihrem Internetdienstanbieter (ISP) bereitgestellt und ist statisch. Wenn Ihr ISP Ihnen ein /48-Präfix aggregiert, könnten 16-Bit-Adressen verwendet werden, um 216 (65535) Subnetze zu erstellen, wobei jedes Subnetz 26418.446.744.073.709.551.616 oder 1,844674407×10¹⁹ IP-Adressen unterstützen kann.

Jetzt kennen wir die Grundlagen von IPv6, sehen wir uns an, welche Adresstypen es gibt.

IPv6-Adresstypen

Die folgenden Adresstypen existieren im IPv6-Ökosystem:

  • Unicast
  • Multicast
  • Anycast

Unicast

Der Unicast-Adresstyp ist wahrscheinlich der wichtigste. Es unterscheidet sich durch diese Untertypadressen:

  • Globale eindeutige Adressen: Global erreichbar. Beispiele:

2001:581:f3d1:241f::/64

2a01:388:3d11:f124::/64

  • Link-lokale Adressen: Erforderlich auf jeder IPv6-fähigen Schnittstelle, aber Pakete können die Schnittstelle weder verlassen noch betreten. Diese Adresse wird hauptsächlich von Softwareanwendungen verwendet und beginnt mit:

fe80::/10

  • Site-lokale Adressen: Veraltet, siehe RFC 3879.
  • Loopback-Adresse: Dies ist die Adresse, die wir in IPv4 als 127.0.0.1/8 kennen, und sie wird in IPv6 wie folgt geschrieben:

::1/128

  • Eindeutige lokale Adressen: Routing nur im Rahmen der Organisation möglich. Diese Adressen sind nicht global routbar. IPv4-äquivalente private Bereiche sind 10.0.0.0/8, 192.168.1.0/24 und so weiter. Eindeutige lokale Adressen in IPv6 beginnen mit:

fc00::/7

Multicast

Multicast ist die Technik, die verwendet wird, um ein Paket von einer Quelle (oder mehreren Quellen) an mehrere Ziele (Empfänger) zu senden. In seiner einfachsten Form sieht ein Multicast-Fluss wie folgt aus. Zunächst sendet ein Host ein ICMPv6-Paket (Host Solicitation) an die Multicast-Gruppe des/der Router(s). Dann antwortet ein Router auf diese Anfrage und sendet ein Router Advertisement (RA)-Paket zusammen mit den Konfigurationsparametern zurück an den Client:

Der Multicast-Adressbereich ist ff00::/8. Die ersten 8 Bits sind immer ff (binär 1111 1111).

Anycast

Die Anycast-Adresse verhält sich bis auf Folgendes ähnlich wie die Multicast-Adresse. Ein von einem Client gesendetes Paket geht an ein einzelnes ausgewähltes Ziel und nicht an die gesamte Gruppe, die durch dieselbe Zieladresse identifiziert wird. Der empfangende Endpunkt wird basierend auf der kostengünstigsten Routing-Metrik ausgewählt. Der Router verwendet dazu den Equal-Cost-Multipath:

Schlussfolgerung

Irgendwann werden wir alle IPv6 verwenden. Je früher Sie verstehen, wie dieser Adressraum funktioniert und wie Sie IPv6 in Ihren eigenen Netzwerken implementieren, desto besser.


Linux
  1. Was Sie wahrscheinlich noch nicht über sudo wussten

  2. Alles, was Sie über MySQL wissen müssen

  3. Alles, was Sie über MySQL wissen müssen

  4. Was ist VPS-Hosting? Alles, was Sie über Virtual Private Server wissen müssen

  5. Was Systemadministratoren über die Verwendung von Bash wissen müssen

Alles, was Sie über Linux Ubuntu Server wissen müssen

Alles, was Sie über Linux OpenSSH Server wissen müssen

Alles, was Sie über Linux Zorin OS wissen müssen

Alles, was Sie über Peppermint Linux OS wissen müssen

Alles, was Sie über die Linux Mint-Distribution wissen müssen

Alles, was Sie über Inodes in Linux wissen müssen