Jakie masz pytanie?

lub

Jaki zakres adresów IPv6 obejmuje prefiks fe80::/10?

zakres adresów IPv6 adresy link local konfiguracja protokołu IPv6
avatar

Gość (83.4.*.*)



Odpowiedź:

Zrozumienie adresacji IPv6 może na początku wydawać się skomplikowane, zwłaszcza gdy w grę wchodzą zapisy binarne i prefiksy. Jednak prefiks fe80::/10 to jeden z najważniejszych elementów tego protokołu, z którym spotykasz się codziennie, nawet o tym nie wiedząc. To właśnie on definiuje tak zwane adresy Link-Local, które pozwalają urządzeniom w tej samej sieci lokalnej „rozmawiać” ze sobą bez potrzeby posiadania routera czy serwera DHCP.

Aby dokładnie określić, jaki zakres adresów obejmuje ten prefiks, musimy zajrzeć „pod maskę” i przeliczyć zapis szesnastkowy na system binarny.

Matematyczne wyznaczenie zakresu krok po kroku

Adresy IPv6 składają się ze 128 bitów, zapisywanych w ośmiu blokach po 16 bitów każdy (oddzielonych dwukropkami). Zapis /10 oznacza, że pierwsze 10 bitów adresu jest sztywno zarezerwowanych i niezmiennych.

Krok 1: Rozpisanie początku adresu na bity
Pierwszy blok adresu to fe80. Przetłumaczmy te znaki szesnastkowe na postać binarną:

  • f = 1111
  • e = 1110
  • 8 = 1000
  • 0 = 0000

Zatem fe80 to binarnie: 1111 1110 1000 0000.

Krok 2: Zastosowanie prefiksu /10
Nasz prefiks mówi, że pierwsze 10 bitów jest stałe. Odliczmy je:
1 1 1 1 1 1 1 0 1 0 | 0 0 0 0 0 0

Stała część to: 1111 1110 10.
Pozostałe 6 bitów w pierwszym bloku (oraz wszystkie bity w kolejnych blokach) mogą przyjmować wartości od 0 do 1.

Krok 3: Wyznaczenie dolnej granicy (same zera)
Jeśli wszystkie zmienne bity ustawimy na 0, otrzymamy:
1111 1110 10 + 00 0000 = 1111 1110 1000 0000, co w systemie szesnastkowym daje nam ponownie fe80.
Dolna granica to: fe80:0000:0000:0000:0000:0000:0000:0000 (w skrócie fe80::).

Krok 4: Wyznaczenie górnej granicy (same jedynki)
Jeśli wszystkie zmienne bity (od 11. bitu wzwyż) ustawimy na 1, otrzymamy dla pierwszego bloku:
1111 1110 10 + 11 1111 = 1111 1110 1011 1111.
Przeliczając to na system szesnastkowy:

  • 1111 = f
  • 1110 = e
  • 1011 = b
  • 1111 = f
    Pierwszy blok to zatem febf. Wszystkie pozostałe bloki wypełnione jedynkami dadzą nam ffff.

Górna granica to: febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff.

Wynik końcowy

Zakres adresów IPv6 dla prefiksu fe80::/10 to:
od fe80:0000:0000:0000:0000:0000:0000:0000 do febf:ffff:ffff:ffff:ffff:ffff:ffff:ffff.

Dlaczego fe80 jest tak ważne?

W praktyce, mimo że standard RFC 4291 definiuje zakres /10, najczęściej spotkasz się z adresami zaczynającymi się od fe80::/64. Dzieje się tak, ponieważ współczesne implementacje sieciowe automatycznie konfigurują adresy Link-Local właśnie w tej węższej puli, zostawiając 64 bity na identyfikator interfejsu (często generowany na podstawie adresu MAC karty sieciowej).

Ciekawostka: Adresy, których nie da się „wyłączyć”

Adresy z zakresu fe80::/10 są unikalne, ponieważ każde urządzenie z obsługą IPv6 generuje taki adres dla każdego swojego interfejsu sieciowego (np. karty Wi-Fi czy Ethernet). Co ciekawe, te adresy nie są routowalne w Internecie. Oznacza to, że pakiety z takim adresem nigdy nie opuszczą Twojej sieci lokalnej. Dzięki temu, nawet jeśli nie masz połączenia z globalną siecią, Twoje komputery, drukarki i smartfony wciąż mogą się ze sobą komunikować, o ile znajdują się w tym samym segmencie sieci (linku).

Jak sprawdzić swój adres Link-Local?

Jeśli korzystasz z systemu Windows, wystarczy wpisać w wierszu poleceń (CMD) komendę ipconfig. W sekcji dotyczącej Twojej karty sieciowej zobaczysz pozycję „Link-local IPv6 Address”. Zauważysz, że prawie na pewno zaczyna się on właśnie od liter fe80. W systemach Linux lub macOS użyjesz do tego komendy ip addr lub ifconfig.

Podziel się z innymi: