Gość (83.4.*.*)
Zrozumienie struktury adresów IPv6 może na początku przyprawić o zawrót głowy, zwłaszcza gdy jesteśmy przyzwyczajeni do prostych, czterooktetowych adresów IPv4. Zakres 2000::/3 to fundament współczesnego internetu opartego na nowym protokole, ponieważ to właśnie w nim mieszczą się publiczne adresy routowalne w globalnej sieci (tzw. Global Unicast Addresses). Szukanie bezpośredniego "odpowiednika" w IPv4 jest fascynującym ćwiczeniem, które pokazuje gigantyczną skalę przeskoku technologicznego, jakiego dokonaliśmy.
W świecie IPv6 adresy są 128-bitowe. Zapis 2000::/3 oznacza, że pierwsze trzy bity adresu są stałe i z góry określone. Aby zrozumieć, jakie to adresy, musimy spojrzeć na zapis binarny pierwszej cyfry.
Szesnastkowa cyfra 2 to binarnie 0010. Ponieważ prefiks wynosi /3, interesują nas tylko trzy pierwsze bity: 001. To oznacza, że każdy adres IPv6, który zaczyna się od sekwencji bitów 001, wpada do tego worka.
Krok po kroku – wyznaczanie zakresu:
0010 (czyli 2 w systemie szesnastkowym). Stąd bierze się 2000::.0011 (ponieważ czwarty bit może być już dowolny – 0 lub 1). Binarnie 0011 to w systemie szesnastkowym 3.2000:0000:0000:0000:0000:0000:0000:0000 do 3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff.W praktyce oznacza to, że wszystkie adresy zaczynające się cyfrą 2 lub 3 są tymi, które spotykasz, przeglądając publiczny internet przez IPv6.
Aby uświadomić sobie skalę, wykonajmy proste działanie matematyczne.
2000::/3 stanowi dokładnie ~$1/8~#$ całej przestrzeni IPv6 (ponieważ ~$2^3 = 8~#$).Dla porównania, cała pula IPv4 (wliczając adresy prywatne, testowe i rozgłoszeniowe) to zaledwie ~$2^{32}~#$ adresów, czyli około 4,3 miliarda.
Porównanie krok po kroku:
2000::/3: ~$2^{125}~#$Wynik ~$2^{93}~#$ to liczba niewyobrażalnie wielka. Oznacza to, że sam tylko publiczny zakres IPv6 jest ~$396 \ 140 \ 812 \ 571 \ 321 \ 687 \ 967 \ 719 \ 751 \ 680~#$ razy większy niż cały internet IPv4.
Jeśli szukasz bezpośredniego odpowiednika funkcjonalnego, to w IPv4 jest nim po prostu zakres adresów publicznych. W IPv4 nie ma jednak jednego, eleganckiego prefiksu, który definiowałby wszystkie adresy publiczne.
W IPv4 adresy publiczne to "wszystko, co nie jest zarezerwowane". Do głównych zakresów, które nie są odpowiednikami (bo są prywatne lub specjalne), należą:
10.0.0.0/8 (prywatne)172.16.0.0/12 (prywatne)192.168.0.0/16 (prywatne)127.0.0.0/8 (loopback)224.0.0.0/4 (multicast)Zatem odpowiednikiem 2000::/3 w IPv4 byłaby suma wszystkich pozostałych bloków, takich jak np. dawne klasy A, B i C, które są routowalne w internecie.
Nie istnieje bezpośrednie mapowanie matematyczne między 2000::/3 a konkretnymi adresami IPv4, chyba że korzystamy z mechanizmów przejściowych, takich jak 6to4. W mechanizmie 6to4 (który jest już wypierany) używano specjalnego prefiksu 2002::/16. W tym konkretnym przypadku adres IPv4 był "zaszyty" w adresie IPv6. Na przykład publiczny adres IPv4 192.0.2.1 w formacie 6to4 przybierał postać 2002:c000:0201::.
Możesz się zastanawiać, dlaczego na publiczne adresy przeznaczono "tylko" 1/8 dostępnej przestrzeni IPv6, skoro to i tak astronomiczna liczba. IANA (Internet Assigned Numbers Authority) oraz IETF (Internet Engineering Task Force) zdecydowały się na taki krok, aby zachować ogromną rezerwę na przyszłość. Pozostałe 7/8 przestrzeni (adresy zaczynające się od innych bitów niż 001) czekają na nowe technologie, inne typy adresacji lub po prostu na czasy, gdy te ~$2^{125}~#$ adresów (co jest mało prawdopodobne w dającej się przewidzieć przyszłości) okaże się niewystarczające.
Podsumowując, teoretycznym odpowiednikiem 2000::/3 w IPv4 jest cała pula adresów publicznych (Global Unicast), przy czym skala IPv6 sprawia, że w jednym małym wycinku tego zakresu moglibyśmy zmieścić miliardy dzisiejszych "całych internetów" IPv4.