CIDR (Classless Inter Domain Routing)

ITpedia

CIDR jest (podobnie jak NAT) protokołem, w którym zdefiniowano mechanizm łagodzący skutki początkowo chaotycznego przydzielania adresów IP. Spełnia on dwie ważne funkcje: optymalizuje przydzielanie nie wykorzystanych do tej pory przestrzeni adresowych i – dzięki własnościom agregowania tras na różnych poziomach struktury sieciowej – minimalizuje wzrost tablic trasowania ruterów spowodowany niehierarchicznym adresowaniem IPv4. Kryzysu adresowego nie zażegna, ale przesunie go w czasie.

Wspomniany mechanizm eliminuje powszechnie znaną koncepcję klas internetowych. Instytucjom czy przedsiębiorstwom przydziela się ciągłe bloki adresów klasy C. Najbardziej znaczące wspólne bity bloków określają podsieć, a pozostałe bity – komputery w tej podsieci. Liczba przyznawanych bloków zależy od liczby adresów, które będą potrzebne dla komputerów w sieci określonej instytucji. Do określania zmiennej części 32-bitowego adresu IP sieci lub komputera CIDR korzysta z bitów maski.

W CIDR każdy adres ma prefiks sieciowy, który określa zarówno agregację bram sieciowych, jak i bramy indywidualnej. Długość prefiksu sieciowego jest również specyfikowana jako wspomniana część adresu IP, zmieniająca się w zależności od liczby bitów, które są rzeczywiście potrzebne, a nie arbitralnie narzucane przez strukturę klas. Przykładowy adres sieciowy CIDR ma postać: 192.30.250.00/18. Z prefiksu /18 wynika natomiast, że pierwsze 18 bitów stanową sieciową część adresu, a pozostałe 14 identyfikują komputer.

Tak więc użycie CIDR oznacza w niewielkim uproszczeniu, że administrator sieciowy może przypisać wykupione adresy zgodnie z liczbą komputerów w sieci, a nie z klasami. Zresztą adresy klas A i B już się wyczerpały, a wykupienie pełnego adresu w klasie C (gdyby to było możliwe) dla stosunkowo niewielkiej sieci byłoby równoważne stracie kilkudziesięciu tysięcy adresów.

Bezklasowe trasowanie w nazwie CIDR wynika z wyznaczania drogi nie na podstawie klasy numeru sieci, ale w ścisłym powiązaniu z ciągami najstarszych bitów adresu IP, nazwanych wspomnianymi prefiksami. Każdy wpis do tablicy trasowania CIDR zawiera 32-bitowy adres i 32-bitową maskę sieci, które razem dają długość i wartość prefiksu IP. Wobec tego może on być reprezentowany jako <adres_IP maska_sieci>.

Dla zaadresowania na przykład bloku 16 adresów klasy C jednym wpisem do tablicy trasowania wystarcza zapis <192.40.144.0 255.255.240.0>. Z punktu widzenia węzłów szkieletu Internetu sieci klasy C z zakresu od 192.40.144.0 do 192.40.159.0 będą stanowiły jedną, jako że mają identyczny prefiks IP, co udowadnia poniższy przykład. W ten sposób jednym wpisem można ukryć setki czy tysiące sieci.

Przestrzeń klasy C została podzielona na 4 strefy geograficzne:

  • Europa,
  • Ameryka Północna,
  • Ameryka Środkowa i Południowa,
  • Azja z obszarami Pacyfiku.

W efekcie wszystkich działań zmniejszyły się tabele trasowania ruterów. Przy adresowaniu niehierarchicznym rutery szkieletowe Internetu byłyby zmuszone do utrzymywania tablic trasowania w zasięgu wszystkich sieci na świecie. Dzięki prefiksowi sieciowemu rutery mogą odpowiednio kierować ruchem. I chociaż taka struktura nie jest skalowalna, to jednak hierarchiczna – rutery mogą funkcjonować z dużo mniejszymi tablicami trasowania. Implementacja CIDR w Internecie opiera się na BGP-4, rzadziej na OSPF. CIDR jest opisany w RFC 1518–1520. Na podobnym mechanizmie, ale skalowalnym i elastycznym, opiera się adresowanie w IPv6.

Przykłady częstej konwersji
Liczba adresów komputerów Liczba bitów Prefiks Maska sieci
256 8 /24 255.255.255.0
512 9 /23 255.255.254.0
1024 10 /22 255.255.252.0
2048 11 /21 255.255.248.0
4096 12 /20 255.255.240.0
8192 13 /19 255.255.224.0
-
-