Tecnologia di Internet
 
Sottoreti
Maschere di sottorete
Se la rete ha numerosi computer può essere necessario suddividerla in sottoreti, aumentando il numero di bit riservati al’indirizzo di rete e diminuendo il numero di quelli riservati alla macchina. Ne risulta che l’indirizzo IP di 32 bit viene diviso in tre parti: la prima parte indica la rete, la seconda la sottorete e la terza il computer.

Per indicare il punto di divisione tra indirizzo di sottorete e indirizzo di macchina si usa una seconda struttura di 32 bit (scritta nello stesso modo dell’indirizzo, cioè con i byte separati da un punto) con una serie di bit 1 e tutti i successivi bit 0. Questa struttura è detta maschera di sottorete.

Pannello di controllo TCP/IP in MacOS; si noti l’indirizzo IP del computer e la relativa maschera di sottorete
Livello OSI di riferimento per TCP: trasporto, per IP: rete.
Per esempio, poiché l’indirizzo

    11001000.10000101.10101111.01000111
    200.133.175.71

è di classe C, i primi tre byte (200.133.175) indicano la rete e l’ultimo byte (71) indica il computer; oppure, come è convenzionale scrivere, l’indirizzo di rete è

    11001000.10000101.10101111.00000000
    200.133.175.0

e l’indirizzo di macchina è

    00000000.00000000.00000000.01000111
    0.0.0.71

Lo stesso indirizzo letto con la maschera di sottorete

    11111111.11111111.11111111.11110000
    255.255.255.240

indica che, dopo i primi 24 bit che, coma prima, vanno letti come indirizzo di rete (essendo di classe C), i successivi 4 bit vanno letti come indirizzo di sottorete e gli ultimi 4 bit come indirizzo della macchina. Quindi l’indirizzo di rete è

Un indirizzo di classe C, la maschera di sottorete di default per la classe C e un’altra maschera di sottorete
Finora abbiamo implicitamente utilizzato le maschere di sottorete di default, che sono, rispettivamente per le classi di indirizzi A, B e C, le seguenti

    11111111.00000000.00000000.00000000
    255.0.0.0

    11111111.11111111.00000000.00000000
    255.255.0.0

    11111111.11111111.11111111.00000000
    255.255.255.0

Esempi di maschere di sottorete nelle tre classi:

    11111111.11000000.00000000.00000000
    255.192.0.0

    11111111.11111111.11111.000.00000000
    255.255.248.0

    11111111.11111111.11111111.111111.00
    255.255.255.252

Reti e sottoreti

In una rete di classe C con maschera di sottorete

    11111111.11111111.11111111.11100000
    255.255.255.224

si possono definire fino a 23 = 8 sottoreti (indirizzate dai primi tre bit dell’ultimo byte) ognuna con un massimo di 25 = 32 nodi.

Le otto sottoreti hanno questi indirizzi (in scuro i bit di sottorete)

    11001000.10000101.10101111.00000000
    200.133.175.0

    11001000.10000101.10101111.00100000
    200.133.175.32

    11001000.10000101.10101111.01000000
    200.133.175.64

    11001000.10000101.10101111.01100000
    200.133.175.96

    11001000.10000101.10101111.10000000
    200.133.175.128

    11001000.10000101.10101111.10100000
    200.133.175.160

    11001000.10000101.10101111.11000000
    200.133.175.192

    11001000.10000101.10101111.11100000
    200.133.175.224

Come si è già detto, in realtà il primo e l’ultimo di questi indirizzi (quelli in cui i bit di sottorete sono tutti 0 o tutti 1) non possono essere usati, quindi il numero delle sottoreti è in questo caso 23–2 = 6 (e in generale 2n – 2). In particolare, il primo indirizzo 200.133.175.0 non si può usare perché con esso si indica per convenzione l’intera rete di classe C che contiene i nodi 200.133.175.x, e si indica appunto come indirizzo di rete. Il secondo indirizzo 200.133.175.224 non si può usare per indirizzare una sottorete perché è per convenzione l’indirizzo da usare quando si vuole trasmettere a tutti i nodi della rete, e per questo è indicato come indirizzo di broadcast.

Le sei legittime sottoreti sono elencate qui sotto. Anche per ognuna di loro vale la regola che il primo indirizzo (con tutti 0 nella parte del nodo) e l’ultimo indirizzo (con tutti 1 nella parte del nodo) sono riservati.

Bit di sottorete Indirizzo rete Indirizzo nodi Indirizzo broadcast
001 200.133.175.32 da .33 a .62 200.133.175.63
010 200.133.175.64 da .65 a .94 200.133.175.95
011 200.133.175.96 da .97 a .126 200.133.175.127
100 200.133.175.128 da .129 a .158 200.133.175.159
101 200.133.175.160 da .161 a .190 200.133.175.191
110 200.133.175.192 da .193 a .222 200.133.175.223

Con la maschera di sottorete indicata all’inizio di questa sezione ci sono un totale di 180 indirizzi IP possibili su questa rete di classe C (6 sottoreti ognuna con 30 hosts). Senza sottoreti gli indirizzi possibili sarebbero stati 254. La tecnica delle sottoreti quindi fa perdere indirizzi IP, ma l’alternativa di non usare sottoreti può causare una perdita ancora maggiore, in efficienza, sicurezza, velocità.

Metodo di calcolo

Dato un indirizzo IP e una maschera di sottorete, si ottengono le informazioni seguenti con le seguenti operazioni bit per bit

  • indirizzo di rete: indirizzo AND maschera
  • numero di host: indirizzo AND NOT maschera
  • indirizzo di broadcast: indirizzo di rete XOR NOT maschera
  • numero di sottorete: indirizzo di rete AND NOT maschera default

definendo:

  • (congiunzione) 0 AND 0 = 0, 0 AND 1 = 0, 1 AND 0 = 0, 1 AND 1 =1
  • (disgiunzione esclusiva) 0 XOR 0 = 0, 0 XOR 1 = 1, 1 XOR 0 = 1, 1 XOR 1 =0
  • (negazione) NOT 0 = 1, NOT 1 = 0

Riferimenti online

Un completo Network calculator

Tutte le maschere di sottorete (contigue)
Non è obbligatorio che la maschera di sottorete abbia tutti gli 1 contigui a partire da sinistra, ma è consigliato che lo siano. Ecco uno schema riassuntivo di tutte le maschere di sottorete con contigue.

Colonna 1: maschera di sottorete in decimale.
Colonna 2: un simbolo abbreviato (corrispondente al numero di bit 1 nella maschera)
Colonna 3: numero di sottoreti effettivamente indirizzabili in classe A
Colonna 4: numero di sottoreti effettivamente indirizzabili in classe B
Colonna 5: numero di sottoreti effettivamente indirizzabili in classe C
Colonna 6: numero di nodi effettivamente indirizzabili per ogni sottorete

maschera CIDR Sottoreti in classe
A B C host
255.192.0.0 /10 4–2=2 4194304–2=4194302
255.224.0.0 /11 8–2=6 2097152–2=2097150
255.240.0.0 /12 16–2=14 1048576–2=1048574
255.248.0.0 /13 32–2=30 524288–2=524286
255.252.0.0 /14 64–2=62 262144–2=262142
255.254.0.0 /15 128–2=126 131072–2=131070
255.255.0.0 /16 256–2=254 65536–2=65534
255.255.128.0 /17 512–2=510 32768–2=32766
255.255.192.0 /18 1024–2=1022 4–2=2 16384–2=16382
255.255.224.0 /19 2048–2=2046 8–2=6 8192–2=8190
255.255.240.0 /20 4096–2=4094 16–2=14 4096–2=4094
255.255.248.0 /21 8192–2=8190 32–2=30 2048–2=2046
255.255.252.0 /22 16384–2=16382 64–2=62 1024–2=1022
255.255.254.0 /23 32768–2=32766 128–2=126 512–2=510
255.255.255.0 /24 65536–2=65534 256–2=254 256–2=254
255.255.255.128 /25 131072–2=131070 512–2=510 128-2=126
255.255.255.192 /26 262144–2=262142 1024–2=1022 4–2=2 64–2=62
255.255.255.224 /27 524288–2=524286 2048–2=2046 8–2=6 32–2=30
255.255.255.240 /28 1048576–2=1048574 4096–2=4094 16–2=14 16–2=14
255.255.255.248 /29 2097152–2=2097150 8192–2=8190 32–2=30 8–2=6
   
Home | Commenti a Mauro Boscarol | Ultimo aggiornamento 22 dicembre 2000