Discussione Subnetting: Cos'è e come funziona la creazione di sottoreti

haxo

Helper
8 Maggio 2020
388
31
263
260
Durante lo studio del modello iso osi a scuola, ci siamo soffermati al livello 3 di quest'ultimo, ovvero il livello Rete (network) che si occupa principalmente di tutto ciò che ha a che fare con gli indirizzi.
Assegnazione degli indirizzi ip, l'header di un pacchetto, la struttura dell'indirizzo ip, le classi, il tipo di indirizzi...

Infine abbiamo studiato il subnetting, una pratica che consiste nella creazione di sottoreti per suddividere una LAN in reti più piccole.
Ad esempio pensiamo a un'azienda con 7 dipartimenti; gestire tutti gli indirizzi ip sarebbe complicato, per questo l'azienda decide di creare una sottorete per ogni dipartimento in modo da gestire meglio il tutto.


1    Cos'è un Indirizzo IP

Un indirizzo IP non è altro che una serie di numeri che identificano un dispositivo all'interno di una rete, sia pubblica che privata.
Esistono due versioni di indirizzo IP:

IPV4= Formato da 4 byte (32 bit), esempio : 155.34.33.1
IPV6= Formato da 16 byte, cioè 128 bit, esempio: fe80:0000:0000:0000:02a0:24ff:fe77:4997.

2    Assegnazione di un Indirizzo IP

L'assegnazione di un indirizzo IP può avvenire in due modi:

- modo automatico
- modo manuale

tramite il modo automatico, un server DHCP assegnerà in base alla disponibilità del momento un indirizzo IP
al contrario, in modo manuale, come dice la parola stessa, ci permette di assegnare appunto manualmente i vari indirizzi IP


3    Classi di Indirizzi IP

Il subnetting è stato introdotto per motivi di efficienza. Come abbiamo detto in precedenza, un indirizzo IPv4 è composto da 32 bit e, inizialmente, i primi 8 indicavano la rete (net id) e i restanti 24 indicavano i dispositivi (host id).
Nel tempo ci siamo accorti che il numero di reti distinte erano poche, per questo sono stati inventati le classi di indirizzi ip

Esistono 5 classi, ma quelle maggiormente utilizzate sono 3

A → Il primo ottetto della classe A, indica il net id, il resto, l'host id (indirizzi con subnet mask a 8bit)
B → I primi due ottetti della classe B, indicano il net id, il resto, l'host id (indirizzi con subnet mask a 16bit)
C → I primi tre ottetti della classe C, indicano il net id, l'ultimo, l'host id (indirizzi con subnet mask a 24bit)
D → Multicast
E → Usi futuri


esempio:
150.50.0.0/16
questo è un indirizzo di classe B, in quanto i primi due ottetti in questo caso indicano il NET-ID
nota: 16 indica i bit destinati al net id


4    Indirizzi Privati

È bene sapere che l'ente IANA ha stabilito (RFC 1918) che alcuni blocchi di indirizzi IP , distinti nelle varie classi,
sono utizzabili solo per usi privati, cioè non accedono direttamente nè possono essere raggiunti da
Internet.


5    Subnetting

Ecco arrivati al cuore di questa discussione, il subnetting.
Il subnetting è la pratica di creare delle sottoreti per gestire gli indirizzi IP (manualmente). In sostanza, il subnetting permette di organizzare meglio una rete e di assegnare indirizzi IP in modo più razionale.

5.1    Subnetting FLSM

Il subnetting FSLM prevede una dimensione fissa per ogni singola sottorete.
Cioè se ho bisogno di 8 sottoreti, 2³=8, quindi 3 bit sono sufficienti per rappresentare 8 sottoreti

8 bit (00000000) - 3 bit utilizzati per creare le sottoreti = 5, quindi 2⁵=32 hosts (indirizzi ip) possibili per ogni singola sottorete

In questi 32 hosts disponibili, dobbiamo eliminare 2 indirizzi IP, in quanto il primo indirizzo IP disponibile è dedicato alla rete, l'ultimo è dedicato al broadcast

Esercizio:
Dato l'indirizzo 192.168.1.0 (classe C) suddividi la rete in 4 sottoreti e indica quanti hosts utili è possibile utilizzare.

Più facile di così si muore.


Per avere 4 sottoreti abbiamo bisogno di 2 bit, 2²=4
abbiamo disponibili 6 bit per rappresentare gli hosts, 2⁶=64 hosts
Avendo gli ultimi 6 bit riservati per rappresentare gli host si ricava implicitamente la subnet mask a /26 bit
64-2 = 62 hosts utili (ricorda che un indirizzo è destinato per la rete uno per il broadcast)

Adesso si calcolano le sottoreti:

---
SOTTORETE A:
192.168.1.0 - 192.168.1.63
Gli indirizzi appartenenti a questa sottorete si ricavano facendo un'operazione di bitwise AND tra un indirizzo fornito (per semplificare prendiamo il primo ma potevamo prendere anche per es. 192.168.1.54) e la subnet mask per trovare il primo indirizzo di rete (net id) mentre l'indirizzo broadcast si ricava calcolando l'OR logico tra l'indirizzo IP e il complemento bit-a-bit della subnet mask:
11000000.10101000.00000001.00000000 = indirizzo 192.168.1.0
11111111.11111111.11111111.11000000 = subnet /26 (notare i primi 26bit a 1)
11000000.10101000.00000001.00000000 = net id 192.168.1.0
11000000.10101000.00000001.00111111 = indirizzo broadcast 192.168.1.63
dato che il primo indirizzo è riservato per identificare la rete mentre l'ultimo indirizzo è riservato per il broadcast gli indirizzi disponibili saranno compresi tra:
192.168.1.1 - 192.168.1.62

SOTTORETE B:
192.168.1.64 - 192.168.127
11000000.10101000.00000001.01000000 = indirizzo 192.168.1.64
11111111.11111111.11111111.11000000 = subnet /26
11000000.10101000.00000001.01000000 = net id 192.168.1.64
11000000.10101000.00000001.01111111 = indirizzo broadcast 192.168.1.127
dato che il primo indirizzo è riservato per identificare la rete mentre l'ultimo indirizzo è riservato per il broadcast gli indirizzi disponibili saranno compresi tra:
192.168.1.65 - 192.168.1.126

SOTTORETE C:
192.168.1.128- 192.168.191
11000000.10101000.00000001.10000000 = indirizzo 192.168.1.128
11111111.11111111.11111111.11000000 = subnet /26
11000000.10101000.00000001.10000000 = net id 192.168.1.128
11000000.10101000.00000001.10111111 = indirizzo broadcast 192.168.1.191
dato che il primo indirizzo è riservato per identificare la rete mentre l'ultimo indirizzo è riservato per il broadcast gli indirizzi disponibili saranno compresi tra:
192.168.1.129 - 192.168.1.190

SOTTORETE D:
192.168.1.192 - 192.168.255
11000000.10101000.00000001.11000000 = indirizzo 192.168.1.192
11111111.11111111.11111111.11000000 = subnet /26
11000000.10101000.00000001.11000000 = net id 192.168.1.192
11000000.10101000.00000001.11111111 = indirizzo broadcast 192.168.1.255
dato che il primo indirizzo è riservato per identificare la rete mentre l'ultimo indirizzo è riservato per il broadcast gli indirizzi disponibili saranno compresi tra:
192.168.1.193 - 192.168.1.254

---

Questi sono gli indirizzi disponibili:

---
SOTTORETE A:
192.168.1.1 - 192.168.62

SOTTORETE B:
192.168.1.65 - 192.168.126

SOTTORETE C:
192.168.1.129 - 192.168.190

SOTTORETE D:
192.168.1.193 - 192.168.254
---


5.2    Subnetting VLSM

Il subnetting VSLM prevede una dimensione variabile per ogni singola sottorete.
Se abbiamo sempre 4 sottoreti ma con esigenze di host diverse, non sprecheremo indirizzi
Immagina di avere una grande rete e alcune parti di essa necessitano di più indirizzi IP di altre. Con VLSM, puoi assegnare subnet più grandi alle aree che ne hanno bisogno e subnet più piccole dove è necessario risparmiare indirizzi.


Immaginiamo un'azienda che ha bisogno di 4 sottoreti
La sottorete A deve avere 110 hosts
La sottorete B deve avere 49 hosts
La sottorete C deve avere 9 hosts
La sottorete D deve avere 2 hosts

Banalmente vediamo quanti bit abbiamo bisogno per rappresentare tutti gli host:

A) 7 bit poichè 2⁷= 128 - 2 = 126 hosts utili
B) 6 bit poichè 2⁶ = 64 - 2 = 62 hosts utili
C) 4 bit poichè 2⁴ = 16 - 2 = 14 hosts utili
D) 2 bit poichè 2² = 4 - 2 = 2 hosts utili

Gli indirizzi appartenenti alle varie reti si calcolano in maniera identica all'esempio precedente FLSM cambiano solamente di volta in volta i bit della subnet mask:

Rete A = 192.168.1.0 - 192.168.1.127 (subnet mask /25 = 255.255.255.128 in binario 11111111.11111111.11111111.10000000)
Rete B = 192.168.1.128 - 192.168.1.191 (subnet mask /26 = 255.255.255.192 in binario 11111111.11111111.11111111.11000000)
Rete C = 192.168.1.192 - 192.168.1.207 (subnet mask /28 = 255.255.255.240 in binario 11111111.11111111.11111111.11110000)
Rete D = 192.168.1.208 - 192.168.1.211 (subnet mask /30 = 255.255.255.252 in binario 11111111.11111111.11111111.11111100)

Questi sono gli indirizzi disponibili per gli host di ogni rete, per i quali è necessario riservare il primo indirizzo per indicare la rete (net-id) e l'ultimo per indicare il broadcast.




Made with ❤ for Inforge