Wat is CIDR
CIDR is een nieuw adres schema voor het internet wat veel efficienter omgaat met de allocatie van IP adressen tov de oudere variant van het Class A,B en C adressen schema.
Waarom hebben we CIDR dan nodig?
Omdat het Internet ong. iedere 30 minuten een nieuw netwerk erbij krijgt lopen we tegen 2 grote problemen aan, namelijk:
- De IP adressen raken op (IPv4)
- De capaciteit voor global routing tabellen zijn te klein
De IP adressen raken op
Er is een maximum aantal netwerken en hosts die geadresseerd kunnen worden met een Internet adres dat 32-bits groot is. Traditioneel gezien, werden er classes uitgereikt met adressen, namelijk A,B en C classes. Dit bestond uit 2 delen; deel 1 om een uniek netwerk aan te geven, en deel 2 om een host binnen dit unieke netwerk aan te geven. Een andere manier om een oud class A,B en C netwerk te identificeren was door te kijken naar de eerste 8-bits van een adres en deze converteren naar zijn decimale equivalent.
| Adres Class | # Netwerk Bits | # Hosts Bits | Decimale Adres Range |
| Class A | 8 bits | 24 bits | 1-126 |
| Class B | 16 bits | 16 bits | 128-191 |
| Class C | 24 bits | 8 bits | 192-223 |
Door gebruik te maken van de oude Class A, B en C adressering krijg je het volgende schema:
- 126 Class A netwerken, dit leverd 16.777.214 hosts elk op
- Plus 65.000 class B netwerken, met elk 65.534 hosts
- Plus 2 miljoen class C netwerken, met elk 254 hosts
Bepaalde adressen zijn gereserveerd voor broadcast berichten etc. Omdat internet adressen voornamelijk in deze 3 grotes werden aangeboden ontstaat er een groot aantal verspilde adressen. Om een voorbeeld te nemen, je heb 100 hosts nodig, dan neem je de kleinst mogelijke class, dit zou zijn, een class C. Dus 254 host, en je heb er 100 nodig dus is er een verspilling van 154 hosts. Het uiteindelijke resultaat was dat het Internet uitgeput raakte met ongebruikte adressen, alleen 3% van echt alle mogelijkheden werdt gebruikt. CIDR is dus ontwikkeld om op een efficientere methode adressen uit te geven.
De capaciteit voor global routing tabellen zijn te klein
Een gerelateerd probleem was de grootte van de global Internet routing tabellen. Het aantal netwerken op het Internet bleef groeien, en zo dus ook het aantal routes. Een paar jaar geleden was het dus ook zo dat de global backbone Internet routers heel snel naar het limiet aan het groeien waren van wat ze aankonden.
Ook de laatste technologie die in de routers wordt toegepast heeft theoretisch een maximale grootte van zo'n 60.000 routing tabel ingevingen. Als er niks aan gedaan zou worden had de maximale capaciteit al halverwege 1994 bereikt geweest en was de groei gestopt.
Hoe zijn deze problemen opgelost
Er zijn 2 oplossingen bedacht en toegepast bij de global Internet community
- Herstructurering IP-adressen en toewijzen ervan
- hierarchie routing aggregation om routing tabel entries te minimaliseren
Herstructurering IP-adressen en toewijzen ervan
CIDR is een vervanging voor het oude proces met de class A,B en C netwerken met een gegeneraliseerde netwerk "prefix". Integenstelling tot de gelimiteerde netwerk identifier van 8,16 en 24 bits kan CIDR ook "prefixes" gebruiken van 13 tot 27 bits. De adresblokken kunnen toegewezen worden aan kleine netwerken met 32 hosts tot netwerken met meer dan 500.000 hosts. Deze manier van adressen toewijzen is veel efficienter en kan het beter toegepast worden op een organisatie zonder dat er te veel verspild wordt.
Een CIDR adres heeft de standaard 32-bit lengte, maar bevat ook informatie hoeveel bits er gebruikt worden voor het netwerk "prefix". Bijvoorbeeld, in een CIDR adres staat 206.14.66.48/25, de /25 geeft aan dat de eerste 25 bits gebruikt worden om een netwerk te identificeren als een uniek netwerk, de overige bits zijn er om dehost te specificeren.
| CIDR Blok Prefix | # Equivalente Class C | # Host Adressen |
| /27 | 1/8 van een Class C | 32 hosts |
| /26 | 1/4 van een Class C | 64 hosts |
| /25 | 1/2 van een Class C | 128 hosts |
| /24 | 1 Class C | 256 hosts |
| /23 | 2 Class C | 512 hosts |
| /22 | 4 Class C | 1,024 hosts |
| /21 | 8 Class C | 2,048 hosts |
| /20 | 16 Class C | 4,096 hosts |
| /19 | 32 Class C | 8,192 hosts |
| /18 | 64 Class C | 16,384 hosts |
| /17 | 128 Class C | 32,768 hosts |
| /16 | 256 Class C | 65,536 hosts(= 1 Class B) |
| /15 | 512 Class C | 131,072 hosts |
| /14 | 1,024 Class C | 262,144 hosts |
| /13 | 2,048 Class C | 524,288 hosts |
Hierarchie routing aggregation om routing tabel entries te minimaliseren.
Het CIDR adresserings schema biedt ook de toepassing "route aggregation" aan. Dit houdt in dat verschillende high-level route ook verschillende low-level routes kan bevatten in de global routing tabellen.
Het schema ziet er hetzelfde uit als een telefoonnetwerk, waar het netwerk in een hierarchie is opgezet. Een high-level backbone netwerk node kijkt alleen naar de gebiedscode informatie en routeert het gesprek dan naar een specifieke backbone node die verantwoordelijk is voor de gebiedscode. De ontvangende node kijkt dan naar het telefoonnummer prefix en routeert het gesprek naar zijn onderliggende netwerknode dat verantwoordelijk is voor dat prefix etc. etc. etc. De backbone netwerk node hoeft alleen te routeren naar de tabel entries van de gebiedscodes en elke vertegenwoordigd een groot blok aan individuele telefoon nummers, niet voor elk uniek telefoon nummer.
Momenteel worden grote blokken adressen alleen toegewezen aan grote Internet Service Providers (ISPs) en deze wijzen adresblokken toe aan hun klanten. Deze klanten kunnen kleinere ISPs zijn en verdelen hun blok in nieuwe blokken om uit te geven. Met deze manier van uitgeven is het aantal routing tabel entries op elk niveau binnen het netwerk verdeeld en is de grote aanzienlijk geslonken. Momenteel bezit de global routing table ong. 35.000 entries.
Meer informatie
- RFC 1517: Applicability Statement for the Implementation of CIDR
- RFC 1518: An Architecture for IP Address Allocation with CIDR
- RFC 1519: CIDR: An Address Assignment and Aggregation Strategy
- RFC 1520: Exchanging Routing Information Across Provider Boundaries in the CIDR Environment
RFC's kun je terugvinden op: de IETF RFC Page.





