Krok po kroku wyznaczanie adresu sieci, adresu rozgłoszeniowego i zakresu hostów dla dowolnej maski – najtrudniejsze zadanie z sieci.
Mając adres IP i maskę, można wyznaczyć trzy rzeczy: adres sieci, adres rozgłoszeniowy i zakres adresów dla urządzeń. To najczęściej punktowane zadanie z całego działu sieci.
Adres sieci powstaje przez ustawienie wszystkich bitów hosta na 0. Adres rozgłoszeniowy – przez ustawienie wszystkich bitów hosta na 1. Wszystko pomiędzy nimi to adresy, które można przypisać komputerom.
Gdy maska kończy się na pełnym bajcie, wystarczy porównać liczby. Trudniej robi się przy maskach takich jak /26 czy /28, gdzie granica wypada w środku bajta – wtedy trzeba zejść na poziom bitów.
Wyznaczmy wszystko dla adresu 192.168.1.100 z maską /26:
/26 to 26 jedynek, czyli 255.255.255.192 – w ostatnim bajcie zostaje 6 bitów hostaStąd wyniki:
192.168.1.64192.168.1.127, czyli 64 plus 64 minus 1192.168.1.65 do 192.168.1.126funkcja adres_sieci(ip, maska): wynik ← [] dla i od 0 do 3: wynik[i] ← ip[i] oraz_bitowo maska[i] zwróć wynik funkcja adres_rozgloszeniowy(ip, maska): wynik ← [] dla i od 0 do 3: wynik[i] ← ip[i] lub_bitowo (255 - maska[i]) zwróć wynik
To zadanie ma zwykle kilka podpunktów i wysoką wagę punktową. Metoda „rozmiaru bloku" jest szybsza od rozpisywania bitów: rozmiar bloku = 256 minus ostatnia liczba maski.
Dla maski /26 ostatnia liczba to 192, więc blok ma 64 adresy. Dla /28 byłoby to 256 minus 240, czyli 16. Znając rozmiar bloku, wystarczy sprawdzić, w którym przedziale leży adres.
Podziel wartość ostatniego bajta przez rozmiar bloku i weź część całkowitą, a potem pomnóż z powrotem. Dla 100 i bloku 64 wychodzi 1, więc blok zaczyna się od 64.
Zasada jest identyczna, tylko granica wypada we wcześniejszym bajcie. Przy /20 rozmiar bloku liczymy w trzecim bajcie, a czwarty przyjmuje pełny zakres.
2 do potęgi liczby pożyczonych bitów. Pożyczenie 2 bitów z części hosta daje 4 podsieci, każda o czterokrotnie mniejszej pojemności.
Zagadnienia z tego samego obszaru matury – warto je powtórzyć razem: