TPSIT – CIDR – Classless Inter-Domain Routing

Jim Warren

Il CIDR (Classless Inter-Domain Routing) è un nuovo schema di indirizzamento introdotto nel 1993 per sostituire lo schema classful secondo il quale tutti gli indirizzi IP appartengono ad una specifica classe (classe A, B e C).

La notazione usata per esprimere indirizzi CIDR è la seguente: a.b.c.d/x, dove x è il numero di bit (contati partendo dal più significativo a sinistra) che compongono la parte di indirizzo della rete. I rimanenti y = ( 32 − x ) bit consentono di calcolare il numero di host della sottorete pari a 2^{y}-2  ( − 2 ) è dovuto al fatto che il primo e l’ultimo indirizzo di ogni rete non sono assegnabili ad alcun host, in quanto riservati rispettivamente come indirizzo della rete in generale (usato ad esempio nelle tabelle dei router) e come indirizzo di broadcast (ovvero un indirizzo che comprende indistintamente ogni altro indirizzo all’interno di quella rete: viene usato ad esempio in alcuni protocolli di routing).

Utilizzando il CIDR, possiamo scegliere che struttura dare all’indirizzamento specificando semplicemente che parte assegnare alla rete e quale assegnare all’host.

Prendiamo due reti e assumiamo che gli host appartengano allo stesso dominio di collisione (uno switch o un hub):

  • 192.168.0.0/24 – netmask: 11111111.11111111.11111111.00000000 (255.255.255.0)
  • 192.168.1.0/24 – netmask: 11111111.11111111.11111111.00000000 (255.255.255.0)

Alle due reti sono assegnati 256 IP (28 bit) ciascuna, tra cui 254 usabili per gli host (difatti il .0 è riservato per la rete ed il .255 per il broadcast). Tuttavia, gli host di una rete non saranno in grado di raggiungere gli host dell’altra rete, pur essendo connessi allo stesso dominio di collisione. Ciò è dovuto al fatto che, avendo scelto come prefisso di routing i primi tre ottetti, le due reti risultano totalmente indipendenti e disconnesse l’un l’altra. Dunque, affinché gli host delle due reti possano vedersi, è necessario collegarle ad un router in grado di instradare i pacchetti.

Una seconda soluzione consiste nel diminuire di un bit il prefisso di routing, assegnando così a tale porzione 23 bit anziché 24, al fine di formare due sotto-reti:

  • 192.168.0.0/23 – netmask: 11111111.11111111.11111110.00000000 (255.255.254.0)
  • 192.168.1.0/23 – netmask: 11111111.11111111.11111110.00000000 (255.255.254.0)

In questo caso abbiamo i primi 23 bit assegnati al prefisso di routing, mentre i successivi 9 bit per gli host (512 IP). Poiché per ogni ottetto è possibile utilizzare fino a 256 bit, avremo due sotto-reti (192.168.0.0 e 192.168.1.0) in grado di comunicare senza necessità di instradare pacchetti tramite un router.

Voglio inserire i l link al seguente sito che calcola automaticamente la netmask ed il numero di host che possono essere presenti nella rete:

https://ipaddressguide.com/cidr

se adesso mettessimo come notazione della nostra rete:

172.16.0.1/12 avremo nella sottorete 255.240.0.0 e quindi

2^{20}-2=1.048.574 host a disposizione.

NOTA

Nella vecchia struttura a classi la notazione delle reti non permetteva un’efficiente suddivisione degli indirizzi in quanto le sottomaschere erano rigide:

classe A/8

classe B/16

classe C/24

in questo nuovo tipo invece si ha un’ottimizzazione degli indirizzi e dell’hardware.

Questa voce è stata pubblicata in Senza categoria. Contrassegna il permalink.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *