Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
1
CIDR - Classless Inter-Domain Routing
Subnet Mask
La Maschera di SoPorete (Subnet Mask) è un componente chiave del sistema di indirizzamento IP e
CIDR. È un numero di 32 𝑏𝑖𝑡 che indica quali bit dell'indirizzo IP appartengono al Prefisso di Rete (
NetID) e quali appartengono all'Iden2fica2vo dell'Host (HostID).
La Subnet Mask è composta da 𝑏𝑖𝑡 imposta2 su 1 per il Prefisso di Rete e 𝑏𝑖𝑡 imposta2 su 0 per
l'Iden2fica2vo dell'Host.
Iden2ficare il range degli Indirizzi disponibili per gli host è quasi immediato per rete di Classe A, B e
C, dove il Prefisso di Rete è allineato rispe_vamente al primo, secondo e al terzo byte:
Class Subnet Mask CIDR
A 255.000.000.000 11111111.00000000.00000000.00000000 /8
B 255.255.000.000 11111111.11111111.00000000.00000000 /16
C 255.255.255.000 11111111.11111111.11111111.00000000 /24
Ricapitolando dato un indirizzo IP con Prefisso di Rete di 24 𝑏𝑖𝑡, questo significa che avremo un
indirizzo IP di Classe C, la cui Subnet Mask sarà:
32 𝑏𝑖𝑡 24 𝑏𝑖𝑡 8 𝑏𝑖𝑡
1111 1111 1111 1111 1111 1111 0000 0000 BIN
Subnet Mask
255 255 255 0 DEC
Nota:
In generale, l’approccio consigliato è di non fidarsi della classe predefinita di un indirizzo IP e di
indicare sempre esplicitamente la Subnet Mask. Quindi di uClizzare la notazione esplicita al posto
della notazione compressa (notazione CIDR).
Per capire il funzionamento della Subnet Mask usimao un esempio, immaginiamo di avere un
indirizzo IP 192.168.1.5 e una maschera di soPorete 255.255.255.0 in binario, ques2
numeri sono rappresenta2 come:
192.168.001.005 -> 11000000.10101000.00000001.00000101
255.255.255.000 -> 11111111.11111111.11111111.00000000
Quando applichiamo la Subnet Mask all'Indirizzo IP tramite un'operazione di AND, oPeniamo
l'Indirizzo di Rete:
11111111.11111111.11111111.00000000 Subnet Mask
AND
11000000.10101000.00000001.00000101 Indirizzo IP
-----------------------------------------------------------
11000000.10101000.00000001.00000000 Indirizzo di Rete (192.168.1.0)
La maschera di soPorete quindi ci permePe di separare l'indirizzo IP in una parte di Rete e una di
Host, ciò è fondamentale per il Rou2ng in quanto permePe di determinare se un indirizzo IP
appar2ene alla stessa rete o a una rete diversa.
2
CIDR - Classless Inter-Domain Routing
Subnet Mask Non Allineate
Capita spesso di configurare Subnet in notazioni CIDR con Prefisso di Rete ( NetID) non allineato al
byte. Consideriamo l'indirizzo IP
155.185.48.147/26
1. Qual è la Subnet Mask della rete a cui appar:ene?
2. Qual è il Network Address a cui appar:ene questo indirizzo?
3. Qual è l'indirizzo di (Directed) Broadcast della rete?
4. Quali sono il primo e l'ul:mo indirizzo disponibili in questa rete?
Subnet Mask
Dalla notazione CIDR abbiamo che la Subnet Mask in ques2one è lunga 26 𝑏𝑖𝑡, considerando un
Indirizzo IP (IPv4) che ha lunghezza 32 𝑏𝑖𝑡, se_amo ad 1 i primi 26 𝑏𝑖𝑡 dell'indirizzo IP partendo
dal MSB (Most Significant Bit) e riempiendo con gli 0 a destra:
32 𝑏𝑖𝑡 26 𝑏𝑖𝑡 6 𝑏𝑖𝑡
1111 1111 1111 1111 1111 1111 1100 0000 BIN
Subnet Mask
255 255 255 192 DEC
Indirizzo di Rete
Indirizzo IP: 155.185.048.147 -> 10011011.10111001.00110000.10010011
Subnet Mask: 255.255.255.192 -> 11111111.11111111.11111111.11000000
Applichiamo la Subnet Mask all'Indirizzo IP tramite un'operazione di AND per oPenere l'Indirizzo di Rete:
11111111.11111111.11111111.11000000 Subnet Mask
AND
10011011.10111001.00110000.10010011 Indirizzo IP
--------------------------------------------------------------
10011011.10111001.00110000.10000000 Indirizzo di Rete (155.185.48.128)
Indirizzo di Broadcast
Per oPenere l'indirizzo di Broadcast della rete applichiamo il complemento ad 1 della Subnet Mask
all'indirizzo IP tramite un'operazione di OR:
00000000.00000000.00000000.00111111 Subnet Mask
OR
10011011.10111001.00110000.10000000 Indirizzo di Rete
------------------------------------------------------------------
10011011.10111001.00110000.10111111 Indirizzo di Broadcast (155.185.48.191)
3
CIDR - Classless Inter-Domain Routing
Dimensionamento degli Indirizzi
Tal volta per scopi organizza2vi o funzionali di una rete, potrebbe essere richiesto di dimensionare
opportunamente diverse Subnet all'interno di un range di Indirizzi a nostra disposizione.
Numero degli Host
In base alla scelta della Subnet Mask, la Subnet supporta un diverso numero di host,
rappresentando con 𝑛 il prefisso CIDR della Subnet Mask, con la seguente formula è possibile
calcolare il numero massimo di host configurabili all'interno di una Subnet:
( )
𝑀𝑎𝑥𝑖𝑚𝑢𝑚 N° H𝑜𝑠𝑡𝑠 = 2 32−𝑛 − 2
Dove −2 rappresenta l'Indirizzo di Rete e di Broadcast che vanno esclusi dal totale.
Numero di Subnet
Se si ha un range di Indirizzi IP fisso, ad esempio, un intero indirizzo di classe A, B o C, la
dimensione delle Subnet influenzerà il numero di Subnet che si potranno creare. Subnet più grandi
permePono di avere meno subnet totali, perché ciascuna subnet occupa una porzione maggiore
dell'indirizzo IP di rete.
Allo stesso modo, se si conosce il numero di Indirizzi IP a disposizione, il numero di Subnet
necessarie (per esempio, una Subnet per ogni unità opera2va dell'azienda), e i requisi2 in termini
di numero di host per Subnet, si possono u2lizzare queste informazioni per dimensionare le
Subnet e determinare la maschera di rete appropriata.
Ad esempio, se si ha un indirizzo di classe C (che offre 256 Indirizzi IP) e si ha bisogno di quaPro
Subnet, potremmo scegliere una Subnet Mask che ci permePa di creare quaPro Subnet di uguale
dimensione. In questo caso, ciascuna Subnet avrebbe 256/4 = 64 Indirizzi IP.
Si ricorda che per ogni 2 due Indirizzi saranno sempre riserva2, uno per l'indirizzo della rete stessa
e uno per l'indirizzo di broadcast della rete.
Esempio:
$ ipcalc 192.168.1.0 255.255.255.0
Address: 192.168.1.0 11000000.10101000.00000001.00000000
Netmask: 255.255.255.0 = 24 11111111.11111111.11111111.00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000.11111111
=>
Network: 192.168.1.0/24 11000000.10101000.00000001.00000000
HostMin: 192.168.1.1 11000000.10101000.00000001.00000001
HostMax: 192.168.1.254 11000000.10101000.00000001.11111110
Broadcast: 192.168.1.255 11000000.10101000.00000001.11111111
Hosts/Net: 254 Class C, Private Internet
4
CIDR - Classless Inter-Domain Routing
Calcolo Parametri Subnet #1
Calcolare tu_ i parametri della Subnet dell'Indirizzo IP: 192.168.5.157/20
Address: 192.168.5.157 -> 11000000.10101000.00000101.10011101
Netmask: 20 -> 11111111.11111111.11110000.00000000 -> 255.255.240.0
Network:
11111111.11111111.11110000.00000000 Netmask
AND
11000000.10101000.00000101.10011101 Address
-----------------------------------
11000000.10101000.00000000.00000000 -> 192.168.0.0
Broadcast:
00000000.00000000.00001111.11111111 ~Netmask
OR
11000000.10101000.00000000.00000000 Network
-----------------------------------
11000000.10101000.00001111.11111111 -> 192.168.15.255
R E C A P:
Address: 192.168.5.157
Netmask: 255.255.240.0 = 20
Network: 192.168.0.0/20
HostMin: 192.168.0.1
HostMax: 192.168.15.254
Broadcast:192.168.15.255
nHosts: 2('()(*) − 2 = 4094
5
CIDR - Classless Inter-Domain Routing
Calcolo Parametri Subnet #2
Calcolare tu_ i parametri della Subnet dell'Indirizzo IP: 192.168.5.157/28
Address: 192.168.5.157 -> 11000000.10101000.00000101.10011101
Netmask: 28 -> 11111111.11111111.11111111.11110000 -> 255.255.255.240
Network:
11111111.11111111.11111111.11110000 Netmask
AND
11000000.10101000.00000101.10011101 Address
-----------------------------------
11000000.10101000.00000101.10010000 -> 192.168.5.144
Boradcast:
00000000.00000000.00000000.00001111 ~Netmask
OR
11000000.10101000.00000101.10010000 Network
-----------------------------------
11000000.10101000.00000101.10011111 -> 192.168.5.159
R E C A P:
Address: 192.168.5.157
Netmask: 255.255.255.240 = 28
Network: 192.168.5.144/28
HostMin: 192.168.5.145
HostMax: 192.168.5.158
Broadcast:192.168.5.159
nHosts: 2('()(!) − 2 = 14
6
CIDR - Classless Inter-Domain Routing
Calcolo Parametri Subnet #3
Calcolare tu_ i parametri della Subnet dell'Indirizzo IP: 155.185.48.200/26
Address: 155.185.48.200 -> 10011011.10111001.00110000.11001000
Netmask: 26 -> 11111111.11111111.11111111.11000000 -> 255.255.255.192
Network:
11111111.11111111.11111111.11000000 Netmask
AND
10011011.10111001.00110000.11001000 Address
-----------------------------------
10011011.10111001.00110000.11000000 -> 155.185.48.192
Broadcast:
00000000.00000000.00000000.00111111 ~Netmask
OR
10011011.10111001.00110000.11000000 Network
-----------------------------------
10011011.10111001.00110000.11111111 -> 155.185.48.255
R E C A P:
Address: 155.185.48.200
Netmask: 255.255.255.192 = 26
Network: 155.185.48.192/26
HostMin: 155.185.48.193
HostMax: 155.185.48.254
Broadcast:155.185.48.255
nHosts: 2('()(,) − 2 = 62
7
CIDR - Classless Inter-Domain Routing
Calcolo Parametri Subnet #4
Calcolare tu_ i parametri della Subnet dell'Indirizzo IP: 10.51.45.3/14
Address: 10.51.45.3 -> 00001010.00110011.00101101.00000011
Netmask: 14 -> 11111111.11111100.00000000.00000000 -> 255.252.0.0
Network:
11111111.11111100.00000000.00000000 Netmask
AND
00001010.00110011.00101101.00000011 Address
-----------------------------------
00001010.00110000.00000000.00000000 -> 10.48.0.0
Boradcast:
00000000.00000011.11111111.11111111 ~Netmask
OR
00001010.00110000.00000000.00000000 Address
-----------------------------------
00001010.00110011.11111111.11111111 -> 10.51.255.255
R E C A P:
Address: 10.51.45.3
Netmask: 255.252.0.0 = 14
Network: 10.48.0.0/14
HostMin: 10.48.0.1
HostMax: 10.51.255.254
Broadcast:10.51.255.255
nHosts: 2('()-.) − 2 = 262.142
8
CIDR - Classless Inter-Domain Routing
Calcolo Parametri Subnet #5
Da2 NetID = 192.168.40.0 e Netmask = 255.255.252.0, calcolare il CIDR, HostMin,
HostMax e il numero di Host.
Broadcast:
00000000.00000000.00000011.11111111 ~Netmask
OR
11000000.10101000.00101000.00000000 Network
-----------------------------------
11000000.10101000.00101011.11111111 -> 192.168.43.255
R E C A P:
Netmask: 255.252.252.0 = 22
Network: 192.168.40.0/22
HostMin: 192.168.40.1
HostMax: 192.168.43.254
Broadcast:192.168.43.255
nHosts: 2('()(() − 2 = 1022
9
CIDR - Classless Inter-Domain Routing
Creare 4 Subnet
Organizzare in quaPro Subnet la rete 155.185.48.0/24, sapendo che una delle re2 includerà
un massimo 120 ℎ𝑜𝑠𝑡, mentre le altre sono di dimensioni inferiori. Si richiede di sfruPare
completamente il range di Indirizzi, e non sovradimensionare inu2lmente le Subnet.
- - - -
(suggerimento: ! + ! + . + ( = 1)
Soluzione:
Per calcolare il numero di Subnet necessario, è possibile u2lizzare la formula:
2/ >= 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑖 ℎ𝑜𝑠𝑡 + 2
Dove:
§ 𝑛 è il numero di bit disponibili per gli Host
§ +2 2ene conto dell'Indirizzo di Rete e dell'Indirizzo di Broadcast
Inoltre, teniamo conto che l'indirizzo di Broadcast è l'ul2mo indirizzo appartenente ad una Subnet,
quindi nel caso di due Subnet consecu2ve, A e B, il primo indirizzo della Subnet B sarà quello
immediatamente successivo all'indirizzo di Broadcast della Subnet A.
1° Subnet
Per la prima Subnet, abbiamo bisogno di supportare un massimo di 120 Host. Il numero di bit
necessario per gli host è 7 (20 = 128, che è il primo numero maggiore di 120). Quindi, il numero
di bit per la subnet è 32 − 7 = 25. Questa rete avrà:
Netmask: 25 -> 11111111.11111111.11111111.10000000 -> 255.255.255.128
Network: 155.185.48.0 -> 10011011.10111001.00110000.00000000
Broadcast:
00000000.00000000.00000000.01111111 ~Netmask
OR
10011011.10111001.00110000.00000000 Network
-----------------------------------
10011011.10111001.00110000.01111111 -> 155.185.48.127
2° Subnet
Per la seconda Subnet, abbiamo bisogno di supportare un numero inferiore di host. Decidiamo di
usare 6 𝑏𝑖𝑡 per gli host (2, = 64, che è sufficiente per i nostri scopi). Quindi, il numero di bit per la
subnet è 32 − 6 = 26. Questa rete avrà:
Netmask: 26 -> 11111111.11111111.11111111.11000000 -> 255.255.255.192
Network: 155.185.48.128 -> 10011011.10111001.00110000.10000000
Broadcast:
00000000.00000000.00000000.00111111 ~Netmask
OR
10011011.10111001.00110000.10000000 Network
-----------------------------------
10011011.10111001.00110000.10111111 -> 155.185.48.191
Con2nuazione →
10
CIDR - Classless Inter-Domain Routing
Creare 4 Subnet
3° & 4° Subnet
Per le ul2me due Subnet, decidiamo di usare 5 𝑏𝑖𝑡 per gli host (21 = 32, che è ancora sufficiente).
Quindi, il numero di bit per la subnet è 32 − 5 = 27.
Netmask: 27 -> 11111111.11111111.11111111.11100000 -> 255.255.255.224
§ Subnet-3
Network: 155.185.48.192 -> 10011011.10111001.00110000.11000000
Broadcast:
00000000.00000000.00000000.00011111 ~Netmask
OR
10011011.10111001.00110000.11000000 Network
-----------------------------------
10011011.10111001.00110000.11011111 -> 155.185.48.223
§ Subnet-4
Network: 155.185.48.224 -> 10011011.10111001.00110000.11100000
Broadcast:
00000000.00000000.00000000.00011111 ~Netmask
OR
10011011.10111001.00110000.11100000 Network
-----------------------------------
10011011.10111001.00110000.11111111 -> 155.185.48.255
RECAP
§ Subnet-1
Netmask: 255.255.255.128 = 25
Network: 155.185.48.0/25
§ Subnet-2
Netmask: 255.255.255.192 = 26
Network: 155.185.48.128/26
§ Subnet-3
Netmask: 255.255.255.224 = 27
Network: 155.185.48.192/27
§ Subnet-4
Netmask: 255.255.255.224 = 27
Network: 155.185.48.224/27
11