💻 Tecnologia

Subnetting e CIDR: come funziona la divisione delle reti IP

Guida pratica al subnetting con notazione CIDR: come calcolare subnet, maschere di rete e range di indirizzi IP senza confondersi.

Redazione Velix22 maggio 20267 min di lettura
💻

Capire il subnetting è una competenza fondamentale per chiunque lavori con reti — anche a livello base. La notazione CIDR (Classless Inter-Domain Routing) ha sostituito le vecchie classi A/B/C negli anni '90 ed è oggi lo standard universale per rappresentare indirizzi IP e maschere di rete. Vediamo come funziona in modo pratico.

Cos'è la subnet mask

Ogni indirizzo IP è composto da 32 bit (IPv4). La subnet mask indica quanti di questi bit appartengono alla parte di rete e quanti alla parte host.

Esempio classico:

  • IP: 192.168.1.50
  • Subnet mask: 255.255.255.0

In binario, 255.255.255.0 equivale a 11111111.11111111.11111111.00000000 — i primi 24 bit identificano la rete, gli ultimi 8 bit identificano i singoli host all'interno di quella rete.

Notazione CIDR

La notazione CIDR abbrevia la subnet mask con un numero che indica quanti bit sono "1" (cioè appartengono alla parte rete). Invece di scrivere 192.168.1.0 / 255.255.255.0, si scrive semplicemente 192.168.1.0/24.

Le notazioni più comuni:

CIDRSubnet MaskN° Host utilizzabili
/8255.0.0.016.777.214
/16255.255.0.065.534
/24255.255.255.0254
/25255.255.255.128126
/26255.255.255.19262
/27255.255.255.22430
/28255.255.255.24014
/30255.255.255.2522

Il numero di host utilizzabili è 2^(32-prefix) - 2: si sottraggono l'indirizzo di rete (tutti gli host bit a 0) e il broadcast (tutti gli host bit a 1).

Come calcolare una subnet

Supponiamo di avere la rete 10.10.0.0/22 e voler capire:

  • Quanti host può contenere?
  • Qual è il range di indirizzi?
  • Qual è il broadcast?

Il prefisso è /22, quindi i bit host sono 32 - 22 = 10.

  • Host totali: 2^10 = 1024
  • Host utilizzabili: 1024 - 2 = 1022
  • Indirizzo di rete: 10.10.0.0
  • Broadcast: 10.10.3.255
  • Range host: 10.10.0.110.10.3.254

Come si arriva al broadcast? Si prendono i 10 bit host e si portano tutti a 1:

  • 10.10.0.0 in binario: 00001010.00001010.00000000.00000000
  • Metti a 1 gli ultimi 10 bit: 00001010.00001010.00000011.11111111
  • Risultato: 10.10.3.255

Subnetting pratico: dividere una rete in sottoreti

Scenario tipico: hai ricevuto il blocco 192.168.10.0/24 e devi creare 4 sottoreti di uguale dimensione.

Per 4 sottoreti hai bisogno di 2 bit subnet aggiuntivi (2^2 = 4). Il nuovo prefisso sarà /24 + 2 = /26.

Le 4 subnet sono:

  • 192.168.10.0/26 — host: .1 → .62, broadcast: .63
  • 192.168.10.64/26 — host: .65 → .126, broadcast: .127
  • 192.168.10.128/26 — host: .129 → .190, broadcast: .191
  • 192.168.10.192/26 — host: .193 → .254, broadcast: .255

Ogni subnet ha 62 host utilizzabili. Il pattern è semplice: ogni blocco /26 parte dal multiplo di 64 (256/4 = 64).

VLSM: subnet di dimensioni diverse

VLSM (Variable Length Subnet Masking) permette di assegnare subnet di dimensioni diverse alla stessa rete, ottimizzando l'uso degli indirizzi.

Esempio: hai 172.16.0.0/24 e devi allocare:

  • Ufficio A: 50 host → serve /26 (62 host)
  • Ufficio B: 25 host → serve /27 (30 host)
  • Link punto-punto tra router → serve /30 (2 host)

Allocazione:

  • 172.16.0.0/26 → Ufficio A (host .1→.62)
  • 172.16.0.64/27 → Ufficio B (host .65→.94)
  • 172.16.0.96/30 → Link P2P (host .97→.98)
  • Resto di 172.16.0.100/... rimane libero per future espansioni

Questo approccio evita di sprecare blocchi interi su segmenti che ne usano pochi.

Aggregazione di route (supernetting)

Il processo inverso al subnetting si chiama supernetting o route aggregation: si uniscono più reti contigue in un unico prefisso più grande per ridurre le entry nelle tabelle di routing.

Esempio: se hai le reti 192.168.0.0/24, 192.168.1.0/24, 192.168.2.0/24, 192.168.3.0/24, puoi annunciarle come un singolo blocco 192.168.0.0/22. È esattamente quello che fanno i router BGP negli ISP: aggregano migliaia di prefissi per mantenere le routing table gestibili.

Indirizzi privati e pubblici

Per RFC 1918, questi blocchi sono riservati all'uso privato (non routable su Internet):

  • 10.0.0.0/8 — classe A privata
  • 172.16.0.0/12 — blocchi da 172.16.x.x a 172.31.x.x
  • 192.168.0.0/16 — il più usato in reti domestiche e piccoli uffici

Qualsiasi router connesso a Internet esegue NAT per tradurre questi indirizzi privati verso l'IP pubblico assegnato dall'ISP.

Strumenti utili

Per calcolare subnet senza farlo a mano:

  • ipcalc (Linux): ipcalc 192.168.1.0/26 — output dettagliato su network, broadcast, range host
  • sipcalc: supporta IPv6 e output avanzato
  • Online: subnet-calculator.com, jodies.de/ipcalc per calcoli rapidi da browser

In MikroTik RouterOS, il comando /ip address print mostra tutte le subnet configurate con prefisso CIDR direttamente.

Conclusione

Il subnetting non è complicato una volta capita la logica binaria alla base. Le due operazioni fondamentali da padroneggiare sono: calcolare il range di una subnet dato un prefisso, e trovare il prefisso giusto dato un numero di host richiesto. Tutto il resto — VLSM, aggregazione, route summarization BGP — è un'estensione di questi due concetti.

Vuoi portare Velix a casa tua?

Verifica la copertura FTTH al tuo indirizzo in 30 secondi. Gratis, senza impegno.

Verifica copertura →