Wróć do: Teoria
zaawansowany siecimaska podsieciadres rozgłoszeniowymatura rozszerzona z informatyki

Obliczanie adresu sieci i rozgłoszeniowego

Krok po kroku wyznaczanie adresu sieci, adresu rozgłoszeniowego i zakresu hostów dla dowolnej maski – najtrudniejsze zadanie z sieci.

01

Opis

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.

02

Jak to działa

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 hosta
  • rozmiar bloku to 2 do potęgi 6, czyli 64 adresy
  • bloki zaczynają się co 64: 0, 64, 128, 192
  • adres 100 mieści się w bloku zaczynającym się od 64

Stąd wyniki:

  • adres sieci: 192.168.1.64
  • adres rozgłoszeniowy: 192.168.1.127, czyli 64 plus 64 minus 1
  • zakres hostów: od 192.168.1.65 do 192.168.1.126
  • liczba hostów: 64 minus 2, czyli 62
03

Pseudokod

funkcja 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

Na maturze

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.

05

Zapamiętaj

  • Adres sieci = bity hosta wyzerowane; rozgłoszeniowy = bity hosta same jedynki.
  • Rozmiar bloku = 256 minus ostatnia niepełna liczba maski.
  • Liczba hostów = rozmiar bloku minus 2.
  • Adres rozgłoszeniowy to zawsze adres sieci plus rozmiar bloku minus 1.
06

Najczęściej zadawane pytania

Skąd wiadomo, w którym bloku 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.

Co, gdy maska ma mniej niż 24 bity?

Zasada jest identyczna, tylko granica wypada we wcześniejszym bajcie. Przy /20 rozmiar bloku liczymy w trzecim bajcie, a czwarty przyjmuje pełny zakres.

Ile podsieci powstanie po pożyczeniu bitów?

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.

Powiązane zagadnienia