Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Numerazione IP
Come abbiamo visto nelle sezioni dedicate all'IP, questo numero è specificato da 32 bit (4 Byte) es:
192.168.150.2:
Network Host
Network Host
0 78 31
0 Network Host
0 1 15 16 31
1 0 Network Host
0 1 2 23 24 31
1 1 0 Network Host
b) Divisione degli Ip con maschere di sottorete non convenzionali:
Nel caso di maschere di sottorete non convenzionali, il campo Host viene ulteriormente suddiviso in due
parti. Subnet e host.
Questo caso si verifica quando è necessario dividere la rete in due segmenti separati, in modo che gli host
appartengano a due reti diverse, separate da un router.
La divisione in sottoreti
La segmentazione di una rete IP in più sottoreti, può rendersi necessaria per una varietà di motivi, compreso
l'organizzazione, l'uso di diversi accessi ai media fisici ( Ethernet, il FDDI, WAN, ecc.) e, soprattutto, per la
razionalizzazione dell'indirizzamento IP. Non ultimo motivo, la sicurezza.
Il motivo più comune è quello di gestione del traffico della rete. In una rete di tipo Ethernet, tutti gli host del
segmento fisico vedono, e analizzano, tutti i pacchetti trasmessi da tutti gli altri host di quel segmento. Le
prestazioni della rete possono subire pesanti carichi e, quindi, rallentamenti e collassamenti, dovuti alle
collisioni e alle ritrasmissioni. L'uso dei router è indicato per segmentare le reti (e segmentare, quindi, i domini
di broadcast) per consentire un miglior rendimento generale. Le reti IP segmentate minimizzano la quantità
di traffico che ogni segmento deve gestire.
0 1
0 0 0
1 0 1
Lo stack TCP/IP di un host esegue, durante l'inizializzazione, un processo di AND fra il numero di IP e la sua
maschera di sottorete. Quando un pacchetto viene inviato in rete, il suo destinatario IP viene sottoposto,
anch'esso, ad un AND logico con la subnetmask. Se le risultanti dei due processi sono uguali significva che
il destinatario appartiene alla rete locale. Diversamente verrà inviato ad un router che provvederà a smistarlo
in una rete remota.
Come si vede dalla tabella, la risultante dell'AND LOGICO ci restituirà l'indirizzo di rete.
Possiamo dire che in una maschera di sottorete convenzionale tutti i bit dell'Net ID saranno
settati a 1 e tutti i bit dell'host ID saranno settati a 0.
Laddove intendiamo segmentare una rete locale in più sottoreti, abbiamo la necessità di utilizzare
maschere personalizzate dette "non convenzionali". Per fare questo utilizziamo una modalità diversa che
consiste nell'appropriarsi di bit dell'host ID (prendere in prestito dei bit dall'host) per definire la
mascheratura "non convenzionale".
Dobbiamo, quindi, prendere in prestito dei bit dalla porzione host e trasferirli in una porzione intermedia del
numero IP per determinare una mascheratura non convenzionale:
In questo caso avremo tre campi distinti: Net ID, SubnetMask ID e Host ID.
Attenzione:
Il numero minimo di bit che dobbiamo rubare dalla porzione host è 2.
Il numero massimo di bit che possiamo rubare dalla porzione host è 6.
Tabella descrittiva del numero massimo di bit che si possono "rubare" all'host:
Classe Dimensione del campo host Numero massimo di bit per le subnet
A 24 22
B 16 14
C 8 6
Con questa modalità la rete di appartenenza dei vari host sarà diversa a seconda delle
maschere di sottorete che gli attribuiremo. Di fatto subnettare significa segmentare la
rete..
Alcune limitazioni sono però da specificare subito per non cadere in errore:
Gli indirizzi host con tutti i bit a 0 o con tutti i bit a 1 sono riservati. Lo zero
(00000000.00000000.00000000.00000000) è un indirizzo fittizio che viene usato per
richiedere un indirizzo reale ad un server. Di solito è il campo con tutti 0 che deve essere
riempito da un DHCP o un BOOTP. Analogamente l'indirizzo con tutti 1
(11111111.11111111.11111111.11111111) chiamato indirizzo di broadcast, rappresenta
tutta la rete
Per calcolare il numero di sottoreti disponibili, useremo la formula (2^n - 2) dove n = numero dei bit di ogni
campo. Moltiplicando il numero delle sottoreti per il numero di host disponibili per ogni sottorete otterremo
il numero totale degli host disponibili per tutta la classe definita dalla maschera di sottorete.
Le maschere di sottorete con bit non contigui non sono consigliate.
Esempio:
In questo esempio sono stati "rubati" 3 bit alla porzione host. Operando con la formula (2^n
- 2) dove n è il numero di bit "rubati", avremo (2 alla terza - 2) e cioè 6 sottoreti 2 al numero
dei bit "rubati", e cioè 2 x 2 = 4 x 2 = 8 - 2 = 6. Non dimentichiamo che gli indirizzi con
tutti 0 e tutti 1 non sono ammessi.
Per conoscere gli ID delle sottoreti disponibili abbiamo due metodologie. La prima prevede
la comparazione di tutte le combinazioni possibili: In questa tabella compariamo tutte le
combinazioni possibili con il numero 224 cioè 11100000 per l'esempio che abbiamo appena
utilizzato:
E' chiaro che se al posto di tre bit ne avessimo 5 le combinazioni sarebbero maggiori e
questo tipo di calcolo sarebbe molto difficile da effettuare. Un altro metodo, più semplice, è
quello di usare il valore decimale del bit più basso della subnet mask come operatore e
sommarlo per il numero di subnet necessarie (2^n - 2) cioè 6.. Nel nostro caso il terzo bit
di 11100000 ha un valore decimale 32. Questo numerò sarà dunque il valore di incremento.
La semplice regola da applicare, è quella di sommare il valore di incremento (decimale
dell'ultimo bit) per il numero di subnet (6).
0 non valida
0 + 32 = 32 da 200.179.220.33 a 200.179.220.62
32 + 32 = 64 da 200.179.220.65 a 200.179.220.94
64 + 32 = 96 da 200.179.220.97 a 200.179.220.126
96 + 32 = 128 da 200.179.220.129 a 200.179.220.158
128 + 32 = 160 da 200.179.220.161 a 200.179.220.190
160 + 32 = 192 da 200.179.220.193 a 200.179.220.222
192 + 32 = 224 non valida
Se, come nel nostro caso, sono stati rubati 3 bit all'host, ne rimarranno disponibili 5:
00011111. Convertendo in decimale questo numero, otterremo il numero di host per
sottorete: 31 - 1 = 30 host per ogni subnet.
Lavorando con le potenze: Nel nostro esempio sono stati "rubati" 3 bit alla porzione host,
per cui ne rimangono 5. Operando con la formula (2^n - 2) dove n è il numero di bit "rimasti
all'host", avremo (2 alla quinta - 2) e cioè 30 host 2 al numero dei bit "rimasti all'host", e
cioè 2 x 2 = 4 x 2 = 8 x 2 = 16 x 2 = 32 - 2 = 30. Non dimentichiamo che gli indirizzi con
tutti 0 e tutti 1 non sono ammessi.
Procedura di lavoro
3) Prendere in prestito i bit necessari (3) dalla porzione host e convertire il numero di bit
richiesti in numero decimale ordinandoli da sinistra a destra.
(es. 11100000 = 224)
Per segmentare 6 reti basterà quindi definire un maschera di sottorete con valore 224.