Podział sieci

../_images/buildings.png

Problem:

  • Firma dysponuje jednym adresem IP (adres sieci).
  • Firma posiada kilka budynków – w każdym znajduje się sieć LAN.
  • Jak zaplanować adresację w firmie?

Podział sieci IP na równe podsieci

Mając dany adres IP:

  • część sieciowa ma długość \(s\) bitów (maska wynosi /s)
  • część komputera ma długość \(k\) bitów
../_images/podzial1.svg

Podział sieci na \(p\) podsieci, wyznaczanie adresów podsieci:

  • “pożyczamy” z początku części komputerowej tyle bitów, żeby móc ponumerować \(p\) podsieci: \(\lceil \log_2(p) \rceil\)
  • używamy “pożyczonych” bitów żeby ponumerować podsieci
  • powiększamy maskę o \(\lceil \log_2(p) \rceil\)
../_images/podzial2.svg

Uzyskujemy \(\lceil \log_2(p) \rceil\) podsieci, gdzie każda podsieć ma prawidłowy adres IP:

  • każda podsieć ma własny adres sieci i rozgłoszeniowy
  • w każdej sieci można zaadresować \(2^{k - \lceil \log_2(p) \rceil} - 2\) komputerów
  • maska podsieci jest dłuższa niż maska oryginalnej sieci (\(s + \lceil \log_2(p) \rceil\))

Przykład

Dzielenie sieci 150.10.0.0/16 na cztery podsieci.

../_images/podzial3.svg
  • żeby zaadresować cztery podsieci potrzeba \(\lceil \log_2(4) \rceil = 2\) bity
../_images/podzial5.svg
  • numeracja podsieci:

    • 00 – podsieć pierwsza
    • 01 – podsieć druga
    • 10 – podsieć trzecia
    • 11 – podsieć czwarta

Pierwsza podsieć

  • pierwszych 16 bitów bez zmian
  • w zapożyczonej części numer pierwszej podsieci: 00
  • 14 bitów części komputerowej wyzerowane
  • adres pierwszej podsieci: 150.10.0.0
../_images/podzial4.svg
  • nowa maska musi uwzględniać zapożyczone bity więc ma długość \(16+2 = 18\)
  • maska pierwszej podsieci: 255.255.192.0/18
../_images/podzial6.svg
  • adres pierwszej podsieci: 150.10.0.0/18

  • zakres komputerów w pierwszej podsieci:

    10010110 10010110 00000000 00000000 150.150.0.0 adres sieci
    10010110 10010110 00000000 00000001 150.150.0.1 adres pierwszego komputera w sieci
    10010110 10010110 00000000 00000010 150.150.0.2 adres drugiego komputera w sieci
    ... ...  
    10010110 10010110 00111111 11111110 150.150.63.254 adres ostatniego komputera w sieci
    10010110 10010110 00111111 11111111 150.150.63.255 adres rozgłoszeniowy
    • Zakres adresów: 150.150.0.1150.150.63.254
    • Liczba komputerów w sieci: \(2^{14} - 2\)
  • adres rozłoszeniowy: 150.150.63.255

Pozostałe podsieci

Numer podsieci Adres podsieci Maska podsieci Maska podsieci Zakres adresów komputerów Adres rozgłoszeniowy
00 150.10.0.0 255.255.192.0 /18 150.10.0.1150.10.63.254 150.10.63.255
01 150.10.64.0 255.255.192.0 /18 150.10.64.1150.10.127.254 150.10.127.255
10 150.10.128.0 255.255.192.0 /18 150.10.128.1150.10.191.254 150.10.191.255
11 150.10.192.0 255.255.192.0 /18 150.10.192.1150.10.255.254 150.10.255.255

Plan adresacji

../_images/plan1.png

Podział sieci IP na podsieci różnej wielkości

../_images/buildings2.png

Problem:

  • firma posiada kilka budynków znacznie różniących się liczbą komputerów

Variable Length Subnet Masking (VLSM):

  • podział sieci na podsieci o różnych maskach zakresach

  • zasada postępowania:
    • podział sieci na równe podsieci
    • podział podsieci na jeszcze mniejsze podsieci

Przykład

Dzielenie sieci 150.10.0.0/16 na:

  • 3 sieci po 15 000 komputerów oraz
  • 4 sieci po 4000 komputerów

Podział sieci 150.10.0.0/16 na 4 podsieci /18

Numer podsieci Adres podsieci Maska podsieci Maska podsieci Zakres adresów komputerów Adres rozgłoszeniowy
00 150.10.0.0 255.255.192.0 /18 150.10.0.1150.10.63.254 150.10.63.255
01 150.10.64.0 255.255.192.0 /18 150.10.64.1150.10.127.254 150.10.127.255
10 150.10.128.0 255.255.192.0 /18 150.10.128.1150.10.191.254 150.10.191.255
11 150.10.192.0 255.255.192.0 /18 150.10.192.1150.10.255.254 150.10.255.255

Podział sieci 150.10.64.0/18 na 4 podsieci /20

Numer podsieci Adres podsieci Maska podsieci Maska podsieci Zakres adresów komputerów Adres rozgłoszeniowy
00 150.10.64.0 255.255.240.0 /20 150.10.64.1150.10.79.254 150.10.79.255
01 150.10.80.0 255.255.240.0 /20 150.10.80.1150.10.95.254 150.10.95.255
10 150.10.96.0 255.255.240.0 /20 150.10.96.1150.10.111.254 150.10.111.255
11 150.10.112.0 255.255.240.0 /20 150.10.112.1150.10.127.254 150.10.127.255

Podsieci

Wszystkie podsieci:
  • 150.10.0.0/18
  • 150.10.128.0/18
  • 150.10.192.0/18
  • 150.10.64.0/20
  • 150.10.80.0/20
  • 150.10.96.0/20
  • 150.10.112.0/20
  • Rutery znajdujące się poza siecią 150.10.0.0/16 mogą utrzymywać tylko jeden wiersz w swoich tablicach tras, zawierający wyłącznie sieć 150.10.0.0/16
  • Trasy do podsieci muszą być zapamiętane w ruterach wewnątrz sieci 150.10.0.0/16

Warunek stosowalności

Dana jest sieć 100.0.0.0/8 w której znajdują się rutery R1 i R2 ustalające trasy protokołem dynamocznego wyboru tras (np. RIP)

../_images/vlsm.png
Problem:
  • ruter R2 wysyła do R1 informację o sieci 100.192.0.0; jaką maskę R1 ma przyjąć dla tej sieci?
  • rozwiązanie (warunek stosowalności) – w komunikatach protokołu należy obok informacji o sieci przesyłać również maskę

Wsparcie dla VLSM

Protokoły nie wspierające VLSM:
  • RIP v1 (IETF)
  • IGRP (Cisco)
Protokoły wspierające VLSM:
  • RIP v2 (IETF)
  • OSPF (IETF)
  • EIGRP (Cisco)

Classless Inter-Domain Routing

Classless Inter-Domain Routing:

  • porzucenie podejścia klasowego (maska może być krótsza niż najkrótsza w podejściu klasowym)
  • pozwala zmniejszyć rozmiary tablic tras w ruterach – agregacja adresów sieci
  • narzuca przydział adresów odpowiadający potrzebom – pojęcie “sieci danej klasy” zastąpione pojęciem “blok adresów CIDR,” w którym istotna jest tylko długość maski
  • technologia stosowana razem z VLSM
  • technologia, zgodnie z którą dostawcy usług internetowych (Internet Service Provider, w skrócie ISP) przydzielają dziś adresy IP

Przydzielanie adresów w podejściu klasowym i CIDR

  • w technologii CIDR przydział jest bliższy rzeczywistym potrzebom
  • liczba adresów w bloku CIDR jest dowolną (w ustalonym zakresie) potęgą liczby 2

Podejście klasowe

Klasa sieci Maska Liczba adresów
A 255.0.0.0 (/8) 16 777 216
B 255.255.0.0 (/16) 65 536
C 255.255.255.0 (/24) 256

Podejście CIDR

Prefiks CIDR Maska Liczba adresów
/32 255.255.255.255
/31 255.255.255.254 2
/30 255.255.255.252 4
... ... ...
/13 255.255.248.0 524 288
... ... ...
/1 128.0.0.0 2 147 483 648

Agregacja adresów sieci

../_images/cidr.png

Tablica tras rutera R2:

cel maska brama
200.1.0.0 /24 R1
200.1.1.0 /24 R1
200.1.2.0 /24 R1
... ... ...
200.1.15.0 /24 R1
200.1.16.0 /24 R3
200.1.17.0 /24 R3
200.1.18.0 /24 R3
... ... ...
200.1.31.0 /24 R3

Zasada agregacji

Mając dany zakres adresów IP:
  • znaleźć najdłuższy wspólny prefiks ich części sieciowych
  • skracamy część sieciową (maskę) i tworzymy uogólniony adres IP sieci (tzw. adres nadsieci lub CIDR – supernet address lub CIDR address)
  • uwaga: nadsieć nie może zawierać adresów spoza danego zakresu adresów IP

Przykład

Przykład – obliczenie adresu CIDR dla rutera R2:

200.1.0.0/24 11001000.00000001.0000-0000.00000000
200.1.1.0/24 11001000.00000001.0000-0001.00000000
200.1.2.0/24 11001000.00000001.0000-0010.00000000
200.1.3.0/24 11001000.00000001.0000-0011.00000000
200.1.15.0/24 11001000.00000001.0000-1111.00000000
200.1.0.0/24 11001000.00000001.0001-0000.00000000
200.1.1.0/24 11001000.00000001.0001-0001.00000000
200.1.2.0/24 11001000.00000001.0001-0010.00000000
200.1.3.0/24 11001000.00000001.0001-0011.00000000
200.1.15.0/24 11001000.00000001.0001-1111.00000000
Adresy nadsieci:
  • 11001000.00000001.00000000.00000000 czyli 200.1.0.0/20.
  • 11001000.00000001.00010000.00000000 czyli 200.1.0.0/20.

Agregacja

Nowa tablica tras rutera R2:

cel maska brama
200.1.0.0 /20 R1
200.1.16.0 /20 R3

Korzyść: zmniejszenie rozmiaru tablicy tras (szybsze przeszukiwanie)

Niemożliwa agregacja

Często nie można dokonać agregacji do jednego adresu nadrzędnego.

Przykład: obliczanie adresu CIDR dla poniższych adresów sieci:

  • 200.1.48.0/24
  • 200.1.49.0/24
  • ...
  • 200.1.79.0/24
200.1.48.0/24 11001000.00000001.0-0110000.00000000
200.1.49.0/24 11001000.00000001.0-0110001.00000000
... ...
200.1.63.0/24 11001000.00000001.0-0111111.00000000
200.1.64.0/24 11001000.00000001.0-1000000.00000000
200.1.65.0/24 11001000.00000001.0-1000001.00000000
... ...
200.1.79.0/24 11001000.00000001.0-1001111.00000000

Agregacja do jednego adresu 200.1.0.0/17 ujęłaby nieistniejące adresy sieci, np: 200.0.127.0/24. Wykonujemy dwie osobne agregacje:

200.1.48.0/24 11001000.00000001.0011-0000.00000000
200.1.49.0/24 11001000.00000001.0011-0001.00000000
... ...
200.1.63.0/24 11001000.00000001.0011-1111.00000000

Nadsieć: 200.1.48.0/20

200.1.64.0/24 11001000.00000001.0100-0000.00000000
200.1.65.0/24 11001000.00000001.0100-0001.00000000
... ...
200.1.79.0/24 11001000.00000001.0100-1111.00000000

Nadsieć: 200.1.64.0/20

Zadania

  1. Dokonaj podziału sieci o adresie 200.10.20.0/24 na 8 podsieci.

  2. Podziel jedną z podsieci z przykładu powyżej na cztery podsieci.

  3. Dokonaj agregacji adresów sieci z zakresu

    1. 202.1.0.0/24, 202.1.1.0/24, ..., 202.1.63.0/24
    2. 202.1.24.0/24, 202.1.25.0/24, ..., 202.1.39.0/24
  4. Dla poniższego rysunku załóżmy następującą sytuację:

    Dostawca usług R1 (jego nazwa bierze się od nazwy rutera R1) dysponuje adresem CIDR 200.200.50.0/23. Część tej przestrzeni przeznacza dla własnych sieci IP, a resztę oddaje swoim poddostawcom R2 i R4. Ci ostatni postępują według podobnego schematu.

    Zakładając rozmiary sieci takie, jak przedstawiono, zaproponuj schemat adresacji IP dla wszystkich sieci.

../_images/adrIPz4.png

Materiały