Il Classless Inter-Domain Routing (CIDR) è un metodo per allocare gli indirizzi IP introdotto nel 1993 al fine di sostituire lo schema classful dove gli indirizzi dovevano appartenere ad una specifica classe (A, B e C). Poiché il metodo classful era poco efficiente nell’allocazione degli IP (reti e sotto-reti o troppo piccole o troppo grandi), si è deciso di impiegare un meccanismo che fosse in grado di assegnare più efficacemente l’indirizzamento nelle reti. Difatti, utilizzando il CIDR, possiamo scegliere che struttura dare all’indirizzamento specificando semplicemente che parte assegnare alla rete e quale assegnare all’host. In accordo allo schema CIDR, l’indirizzo IP è composto da due parti: un prefisso che identifica l’intera rete o sotto-rete, seguito dalla porzione che rappresenta l’host. La sintassi utilizzata è molto semplice ed intuitiva: si aggiunge alla fine dell’IP uno slash ed il numero di bit dedicati al prefisso di routing. Ad esempio 192.168.1.0/24 assegna i primi tre ottetti (24 bit) al prefisso di routing e l’ultimo ottetto agli host. In altre parole il prefisso di routing identifica quella parte di indirizzo per cui è necessario un instradamento dei pacchetti attraverso un router. Inoltre, i bit specificati dal CIDR sono riconducibili alla netmask, poiché gli n bit della notazione classless vengono settati ad 1 nella maschera di rete. Per comprendere meglio il concetto facciamo un ulteriore esempio. Prendiamo due reti e assumiamo che gli host appartengano allo stesso dominio di collisione (uno switch o un hub):
subnet calculator online
calcolatrice scientifica online
- 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)
- 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)
- 192.168.2.0/23 – netmask: 11111111.11111111.11111110.00000000 (255.255.254.0)
- 192.168.0.0/22 – netmask: 11111111.11111111.11111100.00000000 (255.255.252.0)
- 192.168.1.0/22 – netmask: 11111111.11111111.11111100.00000000 (255.255.252.0)
- 192.168.2.0/22 – netmask: 11111111.11111111.11111100.00000000 (255.255.252.0)