Indice generale Routing... 1 Subnetting.... 3 Esempio:...4 Sintesi... 5 Determinazione delle subnet valide per una rete... 6 Determinazioni delle Subnet per reti con meno di 8 bit per la subnet...7 Determinazioni delle Subnet per reti con 8 bit per la subnet...8 Determinazioni delle Subnet per reti con più di 8 bit per la subnet...8 Routing gli indirizzi di rete sono divisi in tre classi A, B, C detti networks. Si definiranno subnet dei sotto insiemi d' indirizzi appartenenti ad una Classe. Di seguito si riportano le tre Classi d' indirizzi con le loro proprietà: Classe primo ottetto Indirizzi consentiti Classe A 1 : 126 1.0.0.0 126.0.0.0 Classe B 128 : 191 128.0.0.0 191.255.0.0 Classe C 192 : 223 192.0.0.0 223.255.255.0 Subnet della classe Numero indirizzi consentititi Byte per la rappresentazione della subnet 2 7-2 2 24-2 1 3 2 14 2 16-2 2 2 2 21 2 8-2 3 1 Byte per la rappresentazi one del host La subnet definisce la parte dell 'indirizzo che individua la network mentre la restante parte è adibita a rappresentare l' host. La sunbet è rappresentata con 32 bit solitamente in forma decimale con 4 cifre separate da un punto. La sunbetmask rappresenta con i bit 1 la parte dell 'indirizzo adibita alla definizione della rete mentre con i bit 0 la parte dell 'indirizzo adibito alla rappresentazione dll' host. Classe subnet masck A 255.0.0.0 B 255.255.0.0 C 255.255.255.0 Network 8 bit Subnet host Network 16 bit Subnet host Network 32 bit Subnet host Classe A Classe B Classe C
Se un indirizzo IP è raggiungibile da altri utenti tramite internet è detto indirizzo pubblico e la rete a cui appartiene questo indirizzo è detta pubblica. Un host può appartenere ad una rete non raggiungibile dagli utenti internet e in tal caso il suo indirizzo è privato e non non può essere uguale ad un indirizzo pubblico presente nella rete internet. Il TCP/IP RFC 1918 definisce il range d' indirizzi che possono essere occupati da un host che appartiene ad una rete pubblica. Indirizzi privati 10.0.0.0-10.0.0.0 A 172.16.0.0 172.31.0.0 B 192.168.0.0 192.168.255.0 C Classe La necessita di avere un indirizzo privato che non coincida con un indirizzo pubblico nasce dall' eventualità che la rete privata venga connessa alla rete pubblica (internet) utilizzando un interfaccia NAT. Un router necessita,per il suo funzionamento, della tabella d routing con la lista delle subnet connesse ad esso. Nella tabella di routing è rappresentata ogni sunbnet indicando il primo indirizzo IP della subnet seguito dall subnet masck: 150.140.3.0,255.255.255.0 Poiché un router deve instradare i pacchetti ricevuti verso la subnet di ricezione occorre che la tabella di rouring abbia la lista delle sunbnet (lista delle destinazioni) l' indirizzo IP dell' host (PC, switch o router) che riceverà il pacchetto destinato ad una determinata subnet rappresenta l' interfaccia locale utilizzata dal router. Subnet e subnetmask Prossimo host Interfaccia 150.130.2.0,255.255.255.0 150.130.2.5 20/0 Esempio: 150.30.1.2 A 150.30.1.3 B Router R1 Router R2 150.30.2.2 C 150.30.2.3 D Frame Relay 150.30.3.2 E 150.30.3.3 F Router R3
Supponiamo che l' utente A voglia inviare un messaggio ad E. A invia il messaggio al router R1, perché rileva che la subnet dell' host di destinazione è differente dalla sua, deve far transitare il messaggio per il gateway di default. Il router R1 utilizzando la propria routing table cerca la destinazione con la subnet adeguata e invierà il messaggio al router R3 utilizzando l' interfaccia opportuna. Subnetting. Un indirizzo IP è un numero di 32 bit che viene rappresentato con 4 numeri decimali separati da un punto. Per ottenere la rappresentazione decimale di un indirizzo IP si divide l' indirizzo in quattro gruppi di 8 bit e si converte in formato decimale i singoli gruppi. Poiché 8 bit possono rappresentare un numero decimale compreso tra 0 e 255 la rappresentazione decimale di un indirizzo IP è costituita da quattro numeri compresi tra 0 e 255 separati da un punto. Occorre ricordarsi che la subnet è rappresentata da una parte dei bit che costituiscono l' indirizzo mentre la conversione in decimale indipendentemente da questo considera sempre l' indirizzo IP costituito da gruppi di 8 bit. Quindi uno dei gruppi di bit a cui corrisponde la rappresentazione decimale può presentare alcuni bit della subnet e alcuni bit dell' host. Per determinare la subnet di appartenenza di un indirizzo IP è sufficiente realizzare l' AND logico tra l' indirizzo, informato binario, e la sua subnetmask, in formato binario. La rappresentazione binaria della subnet è costituita da un certo numero di bit 1 seguita dai restanti bit pari a 0, per esempio la subnet 255.255.255.0 ha la rappresentazione binaria seguente: 11111111.11111111.11111111.00000000 Si utilizza anche per rappresentare le subnetmask la rappresentazione detta prefix notatio o CDIR che è costituita da un numero preceduto dal segno /. Tale numero indica i bit con valore 1 che costituiscono la rappresentazione binaria della subnetmask, ad esempio la subnetmask 11111111.11111111.11111111.00000000 in notazione CDIR è /24. E' utile conoscere per una conversione della modalità di rappresentazione la seguente tabella: Ottetto decimale 0 0 Ottetto binario 128 10000000 192 11000000 224 11100000 240 11110000 248 11111000 252 11111100 254 11111110 255 11111111 Il progetto delle subnetmask determinano il numero di subnet che possono essere definite in una classe e il numero di host che è possibile definire per ogni subnet. I bit utilizzati per la definizione della rete, che indichiamo con bitn, dipendono dalla classe di appartenenza della rete
i bit adibiti alla descrizione dell' host, che indichiamo con bith, sono identificati dalla subnetmask. Il numero di bit con valore 0 che costituiscono la subnetmask è il numero di bit utilizzati per l' identificazione dell' host. I bit utilizzati per la subnet, indicati con bits, sono i 32 bith - bitn bit più a sinistra dell' indirizzo Il numero di subnet definibili in una rete sono pari a 2 bits mentre, ricordando gli indirizzi di host 0 e 255 non sono consentiti, il numero di host definibili in una rete sono 2 bith 2. Le subnet zero subnet ossia la subnet che ha lo stesso indirizzo della rete è una subnet riservata ed è la subnet con l' indirizzo più basso della rete. La subnet broadcast subnet è la subnet con l' indirizzo più alto della rete ed è un indirizzo di subnet riservato per inviare i messaggio broadcast. Se le subnet zero subnet e broadcast subnet non possono essere utilizzate il numero di subnet possibili sono 2 bits -2. E' possibile utilizzare anche le subnet riservate se si inviano i seguenti comandi al router: ip subnet zero noip subnet zero abilito la zero subnet disabilita la zero subnet Procedura per la determinazione di una subnetmask. Di seguito si riporta un flowchart per la determinazione di una subnetmask: Determinazione Della Classe Determinazione dei bit Impiegati per la rappresentazione della rete Determinazione dei bit necessari per la Rappresentazione della subnet Ppresentare la subnet partendo da sinistra con un numero di bit 1 pari al numero di bit della rete più il numero di bit per la subnet Rappresentare i bit adibiti alla rappresentazione dell' host Partendo da detsra Completare la subnetmask inserendo delle x Tra i bit per la subnet e quelli Dell' host Determinare il valore da dare alle X Per massimizzare il numero Di Routing host o di Ing. subnet Antonio Nicolazzo
Esempio: Analisi dell' indirizzo 199.1.5.10/26 questo indirizzo è di classe C perché ha il primo ottetto compreso tra 192 e 223 pertanto i bit dedicati all' indirizzo di rete sono 24. Dato che l' indirizzo riporta la notazione CDIR /26 deduciamo che 2 bit sono dedicati alla sbunet ossia 26 24 e 6 bit ossia 32 26 sono dedicati al' indirizzo dell' host. La rete dell' esempio consente la configurazione di 2 2 subnet e di 2 6 host Determinare la subnet mask per la rete 140.2.0.0 per configurare 210 subnet e 160 host. Dato che la rete è di classe B impiega 16 bit per la rappresentazione della rete. Per rappresentare 210 subnet occorrono un numero di bit pari al numero intero che approssima per eccesso il logaritmo in base due di 200+2 ossia 8. Per rappresentare 200 host occorrono seguendo un ragionamento analogo a quello descritto per la subnet 8 bit. Si deduce che la rete analizzata occorre che abbia la subnetmask costituita da 24 bit a 1 perché necessitano 16 bit a 1 per la rete, 8 bit a 1 per la subnet e 8 bit a zero per l' host. La rete determinata è 140.2.0.0/24 Determinare la subnet mask per la rete 140.2.0.0 per configurare 60 subnet e 200 host. Dato che l'indirizzo è di classe B necessita di 16 bit per la configurazione della rete. Per rappresentare 60 subnet occorrono 6 bit. Per rappresentare 200 host occorrono 8 bit. Concludendo dato che la rete analizzata necessita di 16 bit per la rete 6 per la subnet e 8 per gli host si determinano 2 bit non classificati che indichiamo con x nella subnetmask che riportiamo di seguito. 11111111.11111111.111111XX.00000000 I bit indicati con X possono assumere valore 1 o 0 a seconda se si decide di utilizzarli per la subnet o per gli host. Una subnetmask deve sempre presentare la sequenza di 1 e di 0 in modo continuo pertanto le uniche configurazioni accettabili della subnetmask della rete analizzata sono: 11111111.11111111.11111100.00000000 /22 11111111.11111111.11111110.00000000 /23 11111111.11111111.11111111.00000000 /24 mentre la subnetmask 11111111.11111111.11111101.00000000 non è valida perché la sequenza di bit a 1 non è continua. Se si richiede che la rete massimizzi il numero di host configurabili si pone pari a 0 il bit X non classificati mentre se si richiede di massimizzare le subnet configurabili occorre porre pari a 1 i bit X non classificati. Un router rappresenta gli indirizzi IP consecutivi nella propria routing table riportando la sunbnet di tali indirizzi e una subnetmasck. La subnet di un indirizzo si ottiene rappresentando in binario i numeri decimali che costituiscono l' indirizzo e rappresentando in binario la subnetmask dell' indirizzo poi si determina l' operazione logica di AND tra i bit dei due numeri ottenuti.
IP 130.4.102.1 IP/bin 10000010 00000100 01100110 00000001 Mask 11111111 11111111 11111100 00000000 AND 10000010 00000100 01100100 00000000 subnet 130.4.100.0 Sintesi Sinteticamente si può affermare che: in corrispondenza degli ottetti della subnetmask pari a 255 la subnet presenta lo stesso valore dell' indirizzo IP in corrispondenza degli ottetti della subnetmask pari a 0 la subnet presenta valore 0. in corrispondenza degli ottetti con valore compreso tra 0 e 255 per ottenere il valore corrispondente della subnet occorre ricorrere alle operazioni binarie prima descritte. L' indirizzo di subnet broadcast detto anche directed broadcast address è l' indirizzo utilizzato per inviare un messaggio a tutti gli utenti della subnet. Il broadcast address è molto utile perché rappresenta l' indirizzo massimo che può avere un utente che appartiene ad una subnet. L' indirizzo di una subnet che a i bit adibiti all' host tutti 0 e rappresenta l' indirizzo più piccolo di quella subnet. Per determinare l' indirizzo di subnet broadcast si procede nel modo seguente: si riporta un indirizzo IP della rete sopra e sotto si riporta la subnet mask della rete entrambi in forma binaria si traccia un linea che attraversa i due indirizzi riportati che separa i bit dell 'host da quelli della subnet L' indirizzo di broadcast si ottiene ricopiando i bit dell 'indirizzo IP a sinistra della linea e inserendo un 1 in corrispondenza di ogni bit a destra della linea 195.1.1.40 11000011.00000001.00000001.00101000 255.255.255.240 11111111.11111111.11111111.11110000 Indirizzo di Classe C bit di rete 24 bit di subnet 4 bit di host 4 subnet broadcast 11111111.11111111.11111111.11111111 E' importante ricordare che il primo indirizzo utilizzabile da un utente in una subnet è pari all' indirizzo della subnet più 1 ad Esempio per la subnet 195.1.1.0 il primo indirizzo utile è 195.1.1.1. L' indirizzo più grande che potrà essere utilizzato in una subnet è pari all' indirizzo di broadcast meno uno ad Esempio per la subnet 195.1.1.0 l 'indirizzo di broadcast è 195.1.1.255 e l' indirizzo più grande utilizzabile è 195.1.1.254
Determinazione delle subnet valide per una rete Assegnata una rete e una subnet mask abbiamo visto come s' individuano i bit dedicata alla rete o alla subnet o infine alla configurazione dell' host. E' necessario dato un indirizzo IP e la sua subnetmask individuare le possibili subnet che si possono configurare. Per l' analisi delle subnet configurabili in una rete utilizziamo la tabelle delle subnet che di seguito riporto. subnetmask Numero magico Indirizzo di rete/subnet zero Prossima subnet Prossima subnet Ultima subnet Inidirizzo di broadcast Fuori range Determinazioni delle Subnet per reti con subnet con meno di 8 bit Per le reti in cui abbiamo massimo un ottetto dedicato alla subnet gli indirizzi di subnet possono ottenuti facilmente nel modo seguente. Consideriamo la rete 129.8.0.0/22 ossia 129.8.0.0/255.255.252.0 Determiniamo il numero chiave 256-252 = 4. Gli indirizzi di subnet consentiti si ottengono iniziando dall' indirizzo di zero subnet inserendo al posto del secondo ottetto tutti i multipli del numero chiave determinato fino al numero 252 129.8.0.0 129.8.4.0 129.8.8.0...... 129.8.252.0 indirizzo di subnet broadcast Utilizzando la tabelle otterremmo il risultato seguente: subnetmask 255.255.252.0 Numero magico 4 Indirizzo di rete/subnet zero 129.8.0.0 Prossima subnet 129.8.4.0 Prossima subnet 129.8.8.0 Ultima subnet 129.8.248.0 Indirizzo di broadcast 129.8.252.0 Fuori range 129.8.256.0 Interpretiamo mediante la codifica binaria il processo di determinazione delle subnet considerando la stessa rete dell' indirizzo precedente. Indirizzo di rete 129.8.0.0/255.255.252.0
129.8.0.0/22 La rete è di classe B quindi utilizza due ottetti per la rappresentazione della rete La rete dedica 22 16 = 6 bit per la rappresentazione della subnet e 32 22 = 10 bit per la rappresentazione dell' host Consideriamo la rappresentazione binaria dell' indirizzo di rete colorando in rosso i bit adibiti alla subnet 10000001.00001000.00000000.00000000 Riporto di seguito gli indirizzi di rete corrispondenti alle differenti subnet zero subnet 10000001.00001000.00000000.00000000 129.8.0.0 10000001.00001000.00000100.00000000 129.8.4.0 10000001.00001000.00001000.00000000 129.8.8.0 10000001.00001000.00001100.00000000 129.8.12.0...... broadca 10000001.00001000.11111100.00000000 129.8.252.0 stsubnet Determinazioni delle Subnet per reti con subnet con 8 bit Qunado per la rappresentazione della subnet è dedicato un ottetto la determinazione delle subnet è più semplice dato che le subnet possibili sono individuate partendo dall 'indirizzo di rete (zero subnet) considerando tutti i possibili numeri dell 'ottetto compresi tra zero e 255. La determinazione delle subnet quando è dedicato un ottetto alla subnet può essere ricondotto al caso precedente utilizzando come numero chiave 1 Esempio 129.8.0.0/24 reti di classe B con 2 ottetti dedicati alla rete un ottetto dedicato alla subnet un ottetto dedicato all' host Rappresentazione con la tabella subnetmask 255.255.255.0 Numero magico 1 Indirizzo di rete/subnet zero 129.8.0.0 Prossima subnet 129.8.1.0 Prossima subnet 129.8.2.0 Ultima subnet 129.8.254.0 Indirizzo di broadcast 129.8.255.0 Fuori range 129.8.256.0 Rappresentazione binaria
10000001.00001000.00000000.00000000 Riporto di seguito gli indirizzi di rete corrispondenti alle differenti subnet zero subnet 10000001.00001000.00000000.00000000 129.8.0.0 10000001.00001000.00000001.00000000 129.8.1.0 10000001.00001000.00000010.00000000 129.8.1.0 10000001.00001000.00000011.00000000 129.8.3.0...... broadca 10000001.00001000.11111111.00000000 129.8.255.0 stsubnet Determinazioni delle Subnet per reti con subnet con più di 8 bit Impiegare più di 8 bit per la subnet significa che più di un ottetto è dedicato alla rappresentazione della subnet. Gli indirizzi delle subnet descrivibili da una tale rete si ottengono mediante la determinazione del numero chiave con un procedimento analogo a quello già visto ma applicato all' ultimo ottetto Esempio: 130.8.0.0/255.255.255.192 numero chiave 256 192 = 64 Si utilizzano i multipli di 64 per determinare il valore dell' ultimo ottetto. 64, 128, 192, 256 quando giungiamo al numero 256 si incrementa il terzo ottetto di un unita e la numerazione del quarto ottetto ricomincia da zero. Il procedimento è ripetuto fin tanto il terzo ottetto non raggiunge il valore 255. Esempio: 130.8.250.0/30 Indirizzo di Classe B quindi occorrono 16 bit per la rappresentazione della rete Dato che la subnetmasck è /30 sono adibiti 14 alla subnet subnet zero 130.8.0.0 10000010.00001000.00000000.00000000 subnetmask 11111111.11111111.11111111.11000000 subnet in formato decimale 255.255.255.192 numero chiave 256-192=64 I bit adibiti alla subnet sono quelli riportati in rosso quindi le subnet rappresentabili sono le seguenti 11111111.11111111.00000000.00000000 130.8.0.0 11111111.11111111.00000000.01000000 130.8.0.64 11111111.11111111.00000000.10000000 130.8.0.128 11111111.11111111.00000000.11000000 130.8.0.192 11111111.11111111.00000001.00000000 130.8.1.0 11111111.11111111.00000001.01000000 130.8.1.64 11111111.11111111.00000000.10000000 130.8.0.128
...... 11111111.11111111.11111111.11000000 130.8.255.192 Procedimento con la tabella delle subnet subnetmask 255255255192 Numero magico 256-192=64 Indirizzo di rete/subnet zero 140.8.0.0 Prossima subnet 140.8.0.64 Prossima subnet 140.8.0.128 Prossima subnet 140.8.0.192 Prossima subnet 140.8.1.0 Prossima subnet 140.8.1.64 Prossima subnet 140.8.1.128 Prossima subnet 140.8.1.192 Prossima subnet 140.8.2.0 Prossima subnet... Ultima subnet 140.8.255.192