IPv6 / IPv4-Konvertierung in die dritte Form?

7

Ich lese, wie man IPv6 unter Ubuntu konfiguriert . Ich bin zum Abschnitt über das Lesen von IPv6-Adressen gekommen, und obwohl die ersten beiden Beispiele für mich sinnvoll sind, entgeht mir das letzte ein wenig, wie es seit einigen Jahren ist meine letzte Netzwerkklasse:

Wie wandelt man die dritte Form in die Langform um?

Hier ist das Beispiel, mit dem ich Probleme habe:

  • dritte Form:          - 2002 :: 10: 0.0.1
  • Langform:          - 2002: 0000: 0000: 0000: 0000: 0000: 0a00: 0001
  • kanonische Form: - 2002 :: a00: 1

Ich verstehe hex insofern, als dass Sie nicht mit der Zahl zehn enden, wenn Sie über neun hinaus zählen, sondern mit A, B, C, D, E und F enden, bevor Sie die Ziffer in der nächsten Spalte erhöhen.

Können Sie mir bitte zeigen, wie dies mit Mathematik funktioniert, nicht nur mit einem Online-JavaScript-Konverter?

Vielen Dank!

leeand00
quelle

Antworten:

6

In IPv4 wird jedes Byte durch eine Zahl von 0 bis 255 dargestellt. In IPv6 wird stattdessen die Hex-Darstellung 00 bis ff verwendet. Die Konvertierung, die dort durchgeführt wird, besteht darin, die vier Bytes der IPv4-Adresse den letzten 4 Bytes der IPv6-Adresse zuzuordnen:

IPv4:

aaa.bbb.ccc.ddd

IPv6:

XXXX::AABB:CCDD

Also, mit einem Eingang 10.0.0.1, das Bytes 0a, 00, 00, 01; führt zu:

::0a00:0001

(was sich verkürzt ::a00:1)

Nehmen wir als weiteres Beispiel 192.168.50.254:

::c0a8:32fe
Shane Madden
quelle
Okay, in IPv6 haben Sie ein Hexquad und in IPv4 haben Sie ein Oktett ... ein Hexquad repräsentiert 16 Bit ... ein Oktett repräsentiert 4 Bit?
leeand00
2
Richtig, außer 8 Bit pro IPv4-Oktett. IPv4 hat 4 Oktette von 8 für insgesamt 32 Bit, während IPv6 8 durch Doppelpunkte getrennte Gruppen von 16 Bit für insgesamt 128 Bit hat.
Shane Madden
Okay, ich glaube ich verstehe das jetzt, hier ist eine ziemlich ausführliche Erklärung der Konvertierung: leeand00.tiddlyspot.com/…
leeand00