Maska podsieci i CIDR to fundament nowoczesnej adresacji IP, umożliwiający elastyczny podział puli adresów IPv4 oraz sprawne zarządzanie ruchem i zasobami sieciowymi. Poniżej znajdziesz klarowne wyjaśnienia wraz z policzonymi przykładami, które krok po kroku pokazują, jak działa maska, notacja CIDR i subnetting w praktyce.

Fundamentalne pojęcia adresacji IP i maski podsieci

Maska podsieci (maska adresu) określa, które bity adresu IP tworzą część sieciową, a które należą do hosta. Maska ma postać ciągu jedynek (bity sieci), po których następuje ciąg zer (bity hosta). Dla IPv4 to 32 bity, np. 255.255.255.224, a dla IPv6 – 128 bitów.

Adresowanie IP jest hierarchiczne: najpierw identyfikowana jest sieć, a następnie konkretny host w tej sieci. Tam, gdzie w masce jest 1, odpowiadający bit adresu IP należy do sieci; gdzie 0 – do hosta. Maska zawiera wyłącznie jedynki z lewej strony i zera z prawej (bez przeplatania), co znosi ograniczenia historycznych klas A/B/C i pozwala elastycznie dzielić duże sieci na mniejsze.

Aby routery i hosty działały poprawnie, ta sama maska musi być znana wszystkim urządzeniom w danej podsieci. Przykładowo, porównanie maski 255.255.255.0 z adresem 192.180.5.22 wskazuje część sieciową 192.180.5.0 oraz hosta .22.

Najważniejsze zadania maski podsieci to:

  • wyodrębnianie części sieciowej z adresu IP,
  • określanie liczby dostępnych hostów w podsieci,
  • umożliwianie podziału większych sieci na mniejsze (subnetting),
  • wspieranie kontroli i segmentacji ruchu w ramach jednej infrastruktury.

Reprezentacja binarna i operacje bitowe

Każdy oktet IPv4 to 8 bitów (0–255). Dla 255 mamy 11111111 (suma 128+64+32+16+8+4+2+1), dla 192 – 11000000 (128+64).

Operacja AND między adresem IP a maską daje adres sieci. Przykład: IPv4 128.10.2.3 (10000000 00001010 00000010 00000011) AND maska 255.255.255.0 (11111111 11111111 11111111 00000000) = 128.10.2.0, ponieważ 24 najstarsze bity maski to jedynki.

Notacja CIDR i jej znaczenie

CIDR (Classless Inter-Domain Routing) zapisuje adres wraz z długością maski, np. 192.168.0.0/24. Liczba po ukośniku to liczba bitów sieci (jedynki w masce). Dzięki temu można tworzyć sieci dowolnego rozmiaru i efektywniej wykorzystywać pulę adresów.

Przykładowo, 192.168.0.0/22 (1024 adresy) można podzielić na cztery podsieci /24 (po 256 adresów) lub osiem /25 (po 128 adresów). Agregacja tras (supernetting) pozwala łączyć kilka sąsiednich podsieci w jedną nadsieć, np. 192.168.12.0/23 = 192.168.12.0/24 + 192.168.13.0/24.

Kluczowe korzyści CIDR:

  • elastyczne dopasowanie rozmiaru sieci do potrzeb,
  • mniejsze tablice routingu dzięki agregacji tras,
  • lepsze wykorzystanie przestrzeni adresowej i mniejszy waste,
  • łatwiejsze planowanie i skalowanie infrastruktury.

Krok po kroku – obliczanie adresu sieci

Adres sieci otrzymujemy poprzez AND na każdym oktecie adresu IP i maski. Przykład: 192.168.1.133 z maską 255.255.255.128. W binarnym zapisie czwarty oktet AND: 10000101 AND 10000000 = 10000000, czyli 128. Adres sieci: 192.168.1.128.

Inny przykład: 172.16.17.30 AND 255.255.240.0 = 172.16.16.0 (ponieważ trzeci oktet 00010001 AND 11110000 = 00010000).

Obliczanie adresu rozgłoszeniowego

Adres rozgłoszeniowy (broadcast) to ostatni adres w danej podsieci – wszystkie bity hosta mają wartość 1. Można go policzyć dwiema metodami.

Metoda 1 (NOT maski + dodanie do adresu sieci): dla maski 255.255.255.128 negacja to 0.0.0.127. Dodając do sieci 192.168.1.128 otrzymujemy 192.168.1.255.

Metoda 2 (podstawienie jedynek w części hosta): dla maski 255.255.240.0 (12 bitów hosta) wstawiamy 0.0.15.255; 172.16.16.0 + 0.0.15.255 = 172.16.31.255.

Liczba dostępnych hostów w sieci

Mając maskę /x, liczba bitów hosta to m = 32 − x, a liczba dostępnych adresów hostów to N = 2^m − 2 (odejmujemy adres sieci i broadcast). Przykłady: /26 → 62 hosty, /25 → 126 hostów, /30 → 2 hosty.

Podzielenie sieci na podsieci – proces subnettingu

Subnetting dzieli większą sieć na mniejsze, co ułatwia zarządzanie i podnosi bezpieczeństwo. Zaczynamy od wymagań (liczba podsieci/hostów), a następnie dobieramy liczbę pożyczonych bitów.

Krok 1 – określenie wymagań sieciowych

Załóżmy: 192.168.1.0/24 chcemy podzielić na 4 równe podsieci. /24 to 256 adresów (254 użyteczne). Każda podsieć otrzyma 256/4 = 64 adresy.

Krok 2 – obliczenie liczby potrzebnych bitów

2^n ≥ liczba podsieci. Dla 4 podsieci: 2^2 = 4, więc pożyczamy 2 bity z części hosta.

Krok 3 – wyznaczenie nowej maski podsieci

Nowa maska: /24 + 2 = /26 (255.255.255.192). W binarnym zapisie czwarty oktet to 11000000: dwa bity oznaczają numer podsieci, pozostałe sześć – hosty.

Krok 4 – obliczenie przyrostu (inkrementu)

Przyrost (block size) w oktecie wyznaczamy jako 256 − wartość okteu maski. Dla 255.255.255.192 to 64.

Krok 5 – wypisanie kolejnych podsieci

Kolejne sieci co 64: 192.168.1.0/26, 192.168.1.64/26, 192.168.1.128/26, 192.168.1.192/26. Dla każdej podsieci adres broadcast to ostatni adres w bloku (dodaj 63 do adresu sieci).

Podsieć Adres sieci Zakres hostów Adres rozgłoszeniowy
Podsieć 1 192.168.1.0 192.168.1.1 – 192.168.1.62 192.168.1.63
Podsieć 2 192.168.1.64 192.168.1.65 – 192.168.1.126 192.168.1.127
Podsieć 3 192.168.1.128 192.168.1.129 – 192.168.1.190 192.168.1.191
Podsieć 4 192.168.1.192 192.168.1.193 – 192.168.1.254 192.168.1.255

Zaawansowana metoda – podział na równą liczbę użytkowników

Dla minimalnej liczby hostów H stosujemy 2^n − 2 ≥ H. Dla 58 hostów: 2^6 − 2 = 62, więc potrzebujemy 6 bitów dla hostów, czyli pożyczamy 2 bity (z /24 → /26). Przyrost to 64, więc powstaną te same cztery podsieci /26, każda z 62 hostami.

VLSM – maski podsieci o zmiennej długości

VLSM pozwala tworzyć podsieci o różnych rozmiarach w obrębie jednej sieci, co minimalizuje marnotrawstwo adresów. Zaczynamy od największych wymagań i przydzielamy kolejne zakresy tak, by się nie nakładały. Np. dla 100 hostów: 2^7 − 2 = 126 → maska /25.

Przykład oszczędności: łącze punkt–punkt nie wymaga /24 – wystarczy /30 (2 adresy użyteczne).

CIDR – agregacja adresów i supernetting

Agregacja (supernetting) łączy kilka sąsiednich podsieci w jedną większą, co upraszcza routing. Przykład: 200.1.0.0/24, 200.1.1.0/24, 200.1.2.0/24, 200.1.3.0/24 → 200.1.0.0/22 (wspólnych 22 bity).

Agregować można wyłącznie zakresy sąsiadujące; nie połączysz 192.168.20.0 i 192.168.23.0 bez objęcia także .21 i .22. Routery domowe zazwyczaj wspierają CIDR dla masek i tras statycznych, natomiast agregacja tras w Internecie to domena operatorów i protokołu BGP.

Praktyczne obliczenia – przykład z rzeczywistym scenariuszem

Firma ma 192.168.0.0/20 (4096 adresów) i potrzebuje 4 podsieci o różnych rozmiarach: A – 500, B – 300, C – 100, D – 50 hostów. Dobór masek: A: 2^9 − 2 = 510 → /23, B: /23, C: 2^7 − 2 = 126 → /25, D: 2^6 − 2 = 62 → /26. Przydział bez kolizji: A: 192.168.0.0/23, B: 192.168.2.0/23, C: 192.168.4.0/25, D: 192.168.4.128/26. Taki plan VLSM minimalizuje straty adresów.

Praktyczne zastosowanie w konfiguracji sieciowej

Na urządzeniach (np. Cisco) konfigurujemy interfejsy z właściwymi adresami IP i maskami. Przykładowa konfiguracja interfejsów dla podsieci /26 może wyglądać tak:

configure terminal
interface GigabitEthernet0/1
ip address 192.168.1.1 255.255.255.192
no shutdown
exit
interface GigabitEthernet0/2
ip address 192.168.1.65 255.255.255.192
no shutdown
exit
write memory

Dobrą praktyką jest przypisanie osobnego VLAN-u dla każdej podsieci, prowadzenie aktualnej dokumentacji przydziału adresów i zostawienie bufora na przyszłą rozbudowę.

Zakresy prywatnych adresów IP

Adresy prywatne nie są routowane w Internecie i mogą się powtarzać w różnych sieciach. Kluczowe zakresy to:

  • Klasa A – 10.0.0.0 – 10.255.255.255 (maska 255.0.0.0, CIDR 10.0.0.0/8);
  • Klasa B – 172.16.0.0 – 172.31.255.255 (maska 255.240.0.0, CIDR 172.16.0.0/12);
  • Klasa C – 192.168.0.0 – 192.168.255.255 (maska 255.255.0.0, CIDR 192.168.0.0/16).

W sieciach domowych router zwykle pełni rolę bramy (np. 192.168.0.1), a urządzeniom przydziela prywatne adresy przez DHCP. NAT mapuje adres prywatny urządzenia na publiczny adres IP routera, co umożliwia dostęp do Internetu.

Narzędzia online i kalkulatory IP

Kalkulatory podsieci automatyzują obliczenia i przyspieszają planowanie. Po podaniu IP i maski zwracają m.in.:

  • adres sieci i adres rozgłoszeniowy,
  • liczbę dostępnych hostów,
  • pierwszy i ostatni adres hosta,
  • informację o długości maski (CIDR) i klasie historycznej,
  • podział na równe podsieci oraz planowanie VLSM.

Szybka ściągawka – popularne maski

Poniższa tabela pomaga szybko powiązać CIDR z maską, liczbą hostów i przyrostem:

CIDR Maska dziesiętna Bity hosta Hosty (2^m − 2) Przyrost
/24 255.255.255.0 8 254 1
/25 255.255.255.128 7 126 128
/26 255.255.255.192 6 62 64
/27 255.255.255.224 5 30 32
/30 255.255.255.252 2 2 4