Baza wiedzy

IPv4 i podsieci — jak obliczyć maskę, sieć i hosty

Adres IPv4, maska, prefiks CIDR, adres sieci i broadcast z przykładami /24, /26, /31 i /32.

Po tym poradniku samodzielnie sprawdzisz, do jakiej podsieci należy adres i które adresy możesz przypisać urządzeniom. Na przykład z zapisu 192.168.1.70/26 wyznaczysz sieć 192.168.1.64, broadcast 192.168.1.127 i zakres hostów .65–.126. Broadcast to ostatni adres typowej podsieci IPv4, używany do rozgłaszania, a host oznacza tu interfejs urządzenia, któremu można przypisać adres. Podsieć to wspólny, ciągły blok adresów, a prefiks po ukośniku określa jego wielkość. Adres IPv4 ma 32 bity; tutaj pierwszych 26 bitów identyfikuje blok, a pozostałe 6 rozróżnia adresy w środku. Poradnik opiera się na specyfikacji IPv4 RFC 791, bezklasowym adresowaniu RFC 4632 i bieżącym rejestrze IANA.

Adres, maska i prefiks

Cztery oktety mają po 8 bitów i wartości od 0 do 255. 192.168.1.10 to binarnie 11000000.10101000.00000001.00001010. Ciągła maska składa się z jedynek, a potem wyłącznie zer; liczba jedynek jest długością prefiksu.

PrefiksMaskaWszystkie adresyTypowe adresy hostów
/24255.255.255.0256254
/26255.255.255.1926462
/30255.255.255.25242
/31255.255.255.25422 na łączu punkt-punkt
/32255.255.255.25511 pojedynczy adres

Dla typowej podsieci od /0 do /30 liczba wszystkich adresów wynosi 2^(32 − prefiks). Pierwszy jest adresem sieci, ostatni broadcastem, a pozostałe można zwykle przypisać hostom. Prefiks nie wskazuje bramy; pierwszy lub ostatni adres hosta to tylko konwencja administratora.

Przykład /24

Dla 192.168.1.10/24 osiem bitów pozostaje poza prefiksem. Sieć to 192.168.1.0, broadcast 192.168.1.255, a typowy zakres hostów 192.168.1.1–192.168.1.254.

Obliczenie 192.168.1.70/26 krok po kroku

  1. /26 pozostawia 6 bitów, więc blok ma 2^6 = 64 adresy.
  2. Maska to 255.255.255.192; krok w ostatnim oktecie wynosi 256 − 192 = 64.
  3. Granice bloków to 0, 64, 128 i 192. Liczba 70 mieści się w bloku 64–127.
  4. Sieć to 192.168.1.64, broadcast 192.168.1.127, a hosty .65–.126.

To samo daje operacja AND: 70 AND 192 = 64. Możesz sprawdzić wynik w kalkulatorze IPv4.

Wyjątki /31 i /32

RFC 3021 pozwala użyć obu adresów bloku /31 jako końców łącza punkt-punkt; nie wydziela się wtedy osobnego adresu sieci ani skierowanego broadcastu. /32 opisuje jeden adres, np. trasę hosta lub loopback. Nie stosuj do nich bezmyślnie reguły „minus dwa”.

Adresy prywatne i specjalne

RFC 1918 definiuje 10.0.0.0/8, 172.16.0.0/12 i 192.168.0.0/16. Prywatność adresu nie jest mechanizmem bezpieczeństwa. NAT (Network Address Translation) tłumaczy adresy między sieciami, ale nie wynika z maski. IANA wyróżnia też m.in. shared space 100.64.0.0/10, loopback 127.0.0.0/8, link-local 169.254.0.0/16, dokumentacyjne 192.0.2.0/24, 198.51.100.0/24 i 203.0.113.0/24 oraz multicast 224.0.0.0/4. „Nieprywatny” nie zawsze znaczy globalnie osiągalny.

Miejsca, które warto sprawdzić

  • Zapisz prefiks razem z adresem — bez niego nie da się jednoznacznie wyznaczyć podsieci i nie warto zakładać /24.
  • Rozróżnij adres interfejsu od granicy bloku: 192.168.1.70/26 leży wewnątrz sieci 192.168.1.64/26.
  • Użyj podanego prefiksu zamiast historycznych klas A/B/C, które nie wyznaczają współczesnej maski.
  • Sprawdź rolę wildcardu. Dla ciągłej maski /26 jest to 0.0.0.63; wildcard służy do porównywania bitów, nie jest maską ani adresem broadcast.

IPv4 jako BIN, HEX i liczba dziesiętna

Adres 203.0.113.9 to 11001011.00000000.01110001.00001001 w zapisie binarnym i 0xCB007109 w szesnastkowym. Jako jedna liczba bez znaku ma wartość 203 × 256³ + 0 × 256² + 113 × 256 + 9 = 3405803785. Wagi wynikają z ośmiu bitów każdego oktetu. To różne zapisy tych samych 32 bitów; konwersja nie nadaje adresowi nowej maski ani roli w sieci. Sprawdź je w konwerterze IPv4 na DEC, HEX i BIN.

Dalsze ćwiczenia: CIDR i agregacja oraz planowanie VLSM.

Małe laboratorium

Ta sama podsieć mimo innego trzeciego oktetu

Host A ma 172.16.5.190/23, a host B 172.16.4.20/23. Sprawdź granice, a potem porównaj ten plan z wariantem /24 na obu hostach.

Przykładowy wynik172.16.4.0/23 · 172.16.4.1–172.16.5.254Otwórz przykład w kalkulatorze
  1. /23 daje maskę 255.255.254.0 i 512 adresów. Krok 2 dotyczy trzeciego oktetu: 0, 2, 4, 6… Trzeci oktet 5 mieści się w parze 4–5.

  2. Sieć zaczyna się od 172.16.4.0, a broadcast to 172.16.5.255. Oba adresy hostów leżą wewnątrz tego samego bloku, choć trzeci oktet się różni.

  3. Przy /24 host A należy do 172.16.5.0/24, a B do 172.16.4.0/24. Komunikacja wymaga wtedy routingu. Zmień prefiks w kalkulatorze i porównaj oba wyniki.

Teraz Twoja kolej

Czy 172.16.6.1 należy do tego /23? Podaj jego blok przy /23.

Pokaż odpowiedź i wyjaśnienie

Nie. Należy do 172.16.6.0/23, kończącego się na 172.16.7.255. Granica następnego bloku jest w trzecim oktecie, a nie dopiero po .255 w całej sieci /24.

Oficjalne dokumenty

Standardy i źródła

Kontrola źródeł:

Data dotyczy kontroli wskazanych dokumentów i rejestrów, a nie zatwierdzenia materiału przez ich autorów. Założenia i ograniczenia obliczeń podajemy przy wyniku. Jak opracowujemy materiały.