Pasquale De Michele Indirizzamento IP Classi di indirizzi, indirizzi speciali (broadcast, loopback,...
-
Upload
edmonda-falcone -
Category
Documents
-
view
235 -
download
9
Transcript of Pasquale De Michele Indirizzamento IP Classi di indirizzi, indirizzi speciali (broadcast, loopback,...
Pasquale De Michele
Indirizzamento IPClassi di indirizzi, indirizzi speciali (broadcast, loopback, network). Cenni su IPv6. Address Resolution Protocol (ARP). Cenni su DHCP.
Indirizzamento IP
Pasquale De Michele
Introduciamo il concetto dell’indirizzamento IP mediante un esempio assai comune: la telefonata.
Per effettuare una telefonata è necessario disporre di un telefono, al quale sia associato un numero di telefono.
Un esempio: la telefonata
Indirizzamento IP
32012345678 34987654321
34987654321
Pasquale De Michele
Allo stesso modo, ogni dispositivo di rete (PC, smartphone, tablet, ecc.), affinché possa navigare in internet, necessita di un Indirizzo IP associato.
Indirizzi IP
Indirizzamento IP
192.35.54.24
192.35.54.27
192.35.54.29
Pasquale De Michele
Un indirizzo IP è composto da due parti:Una parte Network, relativa alla rete.Una parte Host, relativa al dispositivo.
Un indirizzo IP molto “cliccato”:
Indirizzi IP: parti Network e Host
Indirizzamento IPIndirizzamento IP
69.171.237.20
Pasquale De Michele
Un indirizzo IP, per semplicità, viene rappresentato mediante la notazione decimale-punteggiata:
4 numeri decimali separati dal carattere “.”In realtà, si tratta di 4 numeri in binario:
Ogni numero decimale è espresso per mezzo di 8 bit (ossia 1 byte).In totale, dunque, un indirizzo IP è espresso da 32 bit (4 byte).
Indirizzi IP: formato
Indirizzamento IP
Pasquale De Michele
“Esistono solo 10 tipi di studenti in quest’aula: quelli che capiscono il codice binario e quelli che non lo capiscono”.
Si chiama “binario” perché utilizza 2 simboli, “0” ed “1”:
In informatica:Un singolo simbolo è detto “bit”.Una sequenza di 8 bit è detta “byte”.
La formula per convertire un numero da binario a decimale (dove con d si indica la cifra di posizione n all'interno del numero, partendo da 0) è:
Esempio:
Richiami: il Sistema numerico binario
Indirizzamento IP
Pasquale De Michele
I seguenti sono tutti indirizzi IP?192.0.2.190122.220.0.5192.0.2.256
Qual è il massimo numero rappresentabile con 8 bit?
Un aiuto: con N bit, il massimo numero rappresentabile è 2N-1:
N=8, allora 28-1 = 256-1 = 255.Il più basso indirizzo IP: 0.0.0.0Il più alto indirizzo IP: 255.255.255.255
Indirizzi IP: formati corretti
Indirizzamento IP
Pasquale De Michele
Indirizzi IP: unicità
Indirizzamento IP
32012345678 32012345678
33322211100
32012345678
32012345678
??
32012345678
L’indirizzo IP associato ad un dispositivo non può essere uguale a quello associato ad un altro dispositivo:
Per rendere più chiaro questo concetto, introduciamo nuovamente l’esempio della telefonata.
Pasquale De Michele
Supponiamo che il PC con indirizzo IP 192.168.1.1 voglia inoltrare dati al PC con indirizzo IP 192.168.1.3.
Sorgente: 192.168.1.1Destinazione: 192.168.1.3
Indirizzi IP: comunicazione tra host
Indirizzamento IP
Pasquale De Michele
Per molti decenni, gli indirizzi IP sono stati divisi nelle cinque categorie (classi) elencate in figura.
Classi di indirizzi IP
Indirizzamento IP
Pasquale De Michele
Pensati per poche reti di dimensioni molto grandi.
Struttura:Il bit più significativo del primo byte è posto a “0”.
I restanti 7 bit del primo byte identificano la parte Network:• 27 = 128, quindi si possono avere 128 reti (network) di classe A.
I 24 bit degli ultimi 3 byte identificano la parte Host:224 = 16777216, quindi ogni rete di classe A ha a disposizione circa 16 milioni di indirizzi per gli host.
– Con 7 bit a disposizione del primo byte (27 = 128), il primo campo dell’indirizzo può essere rappresentato in decimale con un valore compreso tra 0 e 127.
Indirizzi IP di classe A
Indirizzamento IP
Pasquale De Michele
Pensati per numero medio reti di dimensioni medio-grandi.
Struttura:I 2 bit più significativi del primo byte sono posti a “10”.
I restanti 14 bit dei primi 2 byte identificano la parte Network:• 214 = 16384, quindi si possono avere circa 16 mila reti (network) di classe B.
I 16 bit degli ultimi 2 byte identificano la parte Host:216 = 65536, quindi ogni rete di classe A ha a disposizione circa 65 mila indirizzi per gli host.
– Con 6 bit a disposizione del primo byte (26 = 64), il primo campo dell’indirizzo può essere rappresentato in decimale con un valore compreso tra 128 e 191:
• i primi 128 valori per il primo byte (da 0 a 127) sono stati utilizzati dagli indirizzi di classe A, per cui si parte dal primo valore disponibile.
Indirizzi IP di classe B
Indirizzamento IP
Pasquale De Michele
Pensati per molte reti di dimensioni piccole.
Struttura:I 3 bit più significativi del primo byte sono posti a “110”.
I restanti 21 bit dei primi 3 byte identificano la parte Network:• 221 = 2097152, quindi si possono avere circa 2 milioni di reti (network) di classe C.
Gli 8 bit dell’ultimo byte identificano la parte Host:28 = 256, quindi ogni rete di classe A ha a disposizione al più 256 indirizzi per gli host.
– Con 5 bit a disposizione del primo byte (25 = 32), il primo campo dell’indirizzo può essere rappresentato in decimale con un valore compreso tra 192 e 223:
• i primi 192 valori per il primo byte sono stati utilizzati dagli indirizzi di classe A (da 0 a 127) e dagli indirizzi di classe B (da 128 a 191), per cui si parte dal primo valore disponibile.
Indirizzi IP di classe C
Indirizzamento IP
Pasquale De Michele
Usati per applicazioni di multicast, ossia l’invio dei dati verso più host che condividono lo stesso indirizzo comune di multicast.Struttura:
I 4 bit più significativi del primo byte sono posti a “1110”.
Con 4 bit a disposizione del primo byte (24 = 16), il primo campo dell’indirizzo può essere rappresentato in decimale con un valore compreso tra 224 e 239.
Indirizzi IP di classe D e classe E
Indirizzamento IP
Riservati per usi futuri.
Struttura:I 4 bit più significativi del primo byte sono posti a “1111”.
Con 4 bit a disposizione del primo byte (24 = 16), il primo campo dell’indirizzo può essere rappresentato in decimale con un valore compreso tra 240 e 255.
Pasquale De Michele
Esistono indirizzi IP con significato particolare.
Indirizzi IP speciali
Indirizzamento IP
Pasquale De Michele
Questo host: l’indirizzo IP “0.0.0.0” (tutti i 32 bit = “0”) è usato in fase di boot (avvio) per identificare l’host stesso nella rete in cui si trova.Proprietà:
Valido come sorgente.Non valido come destinazione.
Indirizzi IP speciali: Network
Indirizzamento IP
Un host su questa rete: gli indirizzi IP che hanno lo “0” come numero di rete si riferiscono alla rete corrente.Proprietà:
Valido come sorgente.Non valido come destinazione.
Pasquale De Michele
Loopback: tutti gli indirizzi IP nella forma “127.x.y.z” (con x, y e z che possono assumere qualsiasi valore in [0, 255]) sono riservati per le prove di loopback (ciclo all’indietro).
Tutti i dati diretti a quell’indirizzo non sono immessi nel cavo, ma sono elaborati localmente (sul dispositivo che li ha generati) e trattati come pacchetti in arrivo.
Usati, ad esempio, per accedere ad un server installato sul proprio PC, quando si creano siti web in locale.
Proprietà:Valido come sorgente.Valido come destinazione
Indirizzi IP speciali: Loopback
Indirizzamento IP
Pasquale De Michele
Broadcast limitato: l’indirizzo IP “255.255.255.255” (tutti i 32 bit = “1”) permette di inviare dati a tutti gli host della rete locale.Proprietà:
Non valido come sorgente.Valido come destinazione.
Indirizzi IP speciali: Broadcast
Indirizzamento IP
Broadcast diretto: l’indirizzo IP con numero di rete (network) opportuno e tutti “1” nella parte host, permette la trasmissione broadcast su una rete distante.Proprietà:
Non valido come sorgente.Valido come destinazione.
Pasquale De Michele
Supponiamo che un PC voglia inoltrare dati in broadcast a tutti quanti i PC della rete locale A:
Sorgente: 192.168.1.1Destinazione: 255.255.255.255
Broadcast limitato: esempio
Indirizzamento IP
Rete A Rete B
Pasquale De Michele
Supponiamo che un PC voglia inoltrare dati in broadcast a tutti quanti i PC della rete B:
Sorgente: 192.168.1.1Destinazione: 192.168.2.255
Broadcast diretto: esempio (1)
Indirizzamento IP
Rete A Rete B
Pasquale De Michele
Supponiamo che un PC voglia inoltrare dati in broadcast a tutti quanti i PC delle reti A e B:
Sorgente: 192.168.1.1Destinazione: 192.168.255.255
Broadcast diretto: esempio (2)
Indirizzamento IP
Rete A Rete B
Pasquale De Michele
Sulla base di quanto detto, esistono indirizzi IP che non possono essere utilizzati in una rete:
Network address: l’indirizzo IP che finisce con “0” (ad esempio 192.168.1.0) viene riservato al gateway di default (in genere un router) per consentire agli host di poter uscire fuori dalla rete locale.
Broadcast: l’indirizzo IP che finisce con “255” (ad esempio 192.168.1.255) è riservato per il broadcast in quella rete.
Di conseguenza, in una rete di classe C il massimo numero di indirizzi si riduce a 254.
Indirizzi IP riservati
Indirizzamento IP
Pasquale De Michele
Indirizzi IP utilizzabili nel formato a 32 bit (detto IPv4): più di 2 miliardi.
Il sistema di suddivisione basato sulle classi ha comportato lo spreco di milioni di indirizzi.
La classe B è stata la più problematica, infatti per una società che richiedeva indirizzi IP:
Rete di classe A troppo grande: più di 16 milioni di indirizzi.Rete di classe C troppo piccola: 254 indirizzi.Rete di classe B “ideale”: più di 65 mila indirizzi, migliaia dei quali sprecati!!!
Esaurimento di Indirizzi IP
Indirizzamento IP
Pasquale De Michele
CIDR (Classless InterDomain Routing):
Idea: assegnare gli indirizzi IP in blocchi di dimensioni variabili, senza tener conto delle classi.
Vantaggio:• Evita lo spreco di indirizzi IP: ad una società che ha bisogno di
2000 indirizzi ne vengono assegnati 2048 (11 bit per la parte host) anziché 65536 (16 bit per la parte host) come previsto dalla classe B.
Svantaggi:• L’invio dei dati diventa più complicato.• Soluzione temporanea.
Esaurimento di Indirizzi IP: CIDR
Indirizzamento IP
Pasquale De Michele
• NAT (Network Address Translation):– Idea:
• Ad una azienda viene assegnato un singolo indirizzo IP per il traffico esterno (internet).
• Per il traffico interno vengono riservati insieme di indirizzi privati:– Da 10.0.0.0.0 a 10.255.255.255.255 – Da 172.16.0.0 a 172.31.255.255– Da 192.168.0.0 a 192.168.255.255
• Qualora un host, all'interno di una rete locale, si connetta ad internet, il suo indirizzo verrà tradotto da una macchina (router) che fa da uscita verso Internet.
– Vantaggio:• Riduce al minimo lo spreco di indirizzi IP.
– Svantaggi:• Viola diverse regole:
– il modello gerarchico IP, facendo si che un indirizzo IP identifichi più di un nodo.– stratificazione dei protocolli, supponendo che si usino specifici protocolli.
• Soluzione temporanea.
Esaurimento di Indirizzi IP: NAT
Indirizzamento IP
Pasquale De Michele
• CIDR e NAT sono state soluzioni temporanee, mentre la soluzione definitiva ai problemi di IPv4 è rappresentata da IPv6:
– Utilizza indirizzi IP lunghi 16 byte (contro i 4 byte di IPv4).– Conserva le caratteristiche positive di IPv4.– Elimina le caratteristiche negative di IPv4.– I pacchetti sono elaborati più velocemente perché:
• Semplifica l’intestazione del pacchetto IP, usando solo 8 campi (contro i 13 di IPv4):
• Migliora il supporto delle opzioni, usando campi opzionali:– Aumenta la sicurezza:
• Occorre specificare, però, che successivamente molti miglioramenti sulla sicurezza sono stati apportati anche in IPv4.
Esaurimento di Indirizzi IP: IPv6
Indirizzamento IP
Pasquale De Michele
• Lunghezza degli indirizzi IP:– IPv4: 32 bit.– IPv6: 128 bit.
• Non 4 volte il numero di indirizzi IP disponibili, ma 4 volte il numero di bit:
– IPv6 permette di indirizzare circa 3,4*1038 host:• Se non riesci ad immaginare il numero di indirizzi IP
disponibili, prova a scrivere il numero “34” su un foglio, seguito da 37 volte il numero “0”. Formato indirizzo IPv6:
– X:X:X:X:X:X:X:X• dove “X” è un campo di 16 bit in notazione esadecimale.
– Esempio:• 2001:0000:ABCD:A010:0000:0000:00D0:0532
IPv6: indirizzi
Indirizzamento IP
Pasquale De Michele
• Intestazione di un pacchetto IPv4:– Richiede 20 byte, escludendo il campo “IP Options”.
• In giallo sono indicati i campi opzionali.
Intestazione pacchetti: IPv4 vs IPv6 (1)
Indirizzamento IP
Pasquale De Michele
• Intestazione di un pacchetto IPv6:– Richiede 40 byte:
• 8 byte per i primi 6 campi.• 32 byte per campo Sorgente e campo Destinazione.
• In giallo sono indicati i campi ereditati da IPv4, ma rinominati.
Intestazione pacchetti: IPv4 vs IPv6 (2)
Indirizzamento IP
Pasquale De Michele
• Gli indirizzi IP (IPv4 o IPv6) non possono essere utilizzati per inviare dati, perché l’hardware che lavora nel livello sottostante (“Collegamento Dati”) non conosce gli indirizzi internet.
• Di conseguenza, c’è bisogno di associare gli indirizzi IP agli indirizzi Ethernet (MAC) del livello “Collegamento Dati”: tali associazioni verranno mantenute da ciascun host in un’apposita tabella.
• Quando un host sorgente vuole inviare dei dati ad un host destinatario di cui conosce l’indirizzo IP ma non conosce l’indirizzo MAC:
1. Invia un messaggio in broadcast, con il quale chiede a tutti gli host della rete quale sia l’host che possiede quell’indirizzo IP.
2. Solo l’host che possiede quel particolare indirizzo IP, risponde inviando il proprio indirizzo Ethernet.
3. L’host sorgente scopre qual è l’indirizzo MAC associato all’indirizzo IP al quale vuole inviare i dati, ed aggiorna la propria tabella delle associazioni.
• Il protocollo che si occupa di effettuare la domanda e gestire la risposta è ARP (Address Resolution Protocol).
Il protocollo ARP
Indirizzamento IP
Pasquale De Michele
• Supponiamo che il PC con indirizzo IP 192.168.1.1 voglia inoltrare dati al PC con indirizzo IP 192.168.1.3.
– Sorgente: 192.168.1.1– Destinazione: 192.168.1.3
Il protocollo ARP: esempio
Indirizzamento IP
Tabella ARP di 192.168.1.1
Indirizzo IP Indirizzo MAC
192.168.1.3 ???
Tabella ARP di 192.168.1.1
Indirizzo IP Indirizzo MAC
192.168.1.3 00:9f:7a:89:90:7a
Tabella ARP di 192.168.1.3
Indirizzo IP Indirizzo MAC
Tabella ARP di 192.168.1.3
Indirizzo IP Indirizzo MAC
192.168.1.1 09:1f:7b:89:11:7a
• Ottimizzazione: ogni host può trasmettere in broadcast la propria associazione (Indirizzo IP Indirizzo MAC) durante l’accensione.
Pasquale De Michele
• ARP risolve il problema di scoprire, dato un indirizzo IP, quale sia l’indirizzo MAC associato.
• E se si volesse scoprire come fa un host, dato il proprio indirizzo MAC, a conoscere l’indirizzo IP ad esso associato (problema inverso di ARP)?
• Occorre utilizzare un protocollo in grado di catturare una richiesta del tipo:
– “Io sono l’host con indirizzo MAC 09:1f:7b:89:11:7a, qual è il mio indirizzo IP?”
• A questo punto, però, sorge un altro problema:– Chi si occupa di associare i MAC addres di tutti gli host di una rete ad
altrettanti indirizzi IP tutti diversi tra loro?
Associazione MAC - IP
Indirizzamento IP
Pasquale De Michele
• Prima dell’utilizzo del protocollo DHCP (Dynamic Host Configuration Protocol), l’associazione (Indirizzo MAC Indirizzo IP) era a carico dell’amministratore di rete.
• Le associazioni avvenivano manualmente configurando un particolare file che teneva traccia di tutte le associazioni (Indirizzo MAC Indirizzo IP):
– Problemi:• Possibilità di commettere errori nelle associazioni.• Finché l’amministratore non associa l’indirizzo MAC di un nuovo
host ad un indirizzo IP, questo host non può accedere alla rete.– Soluzione:
• Delegare al protocollo anche l’associazione degli indirizzi IP agli indirizzi MAC: protocollo DHCP.
Il protocollo DHCP (1)
Indirizzamento IP
Pasquale De Michele
• Il protocollo DHCP supporta 3 differenti meccanismi per l’assegnazione degli indirizzi IP agli indirizzi MAC:
– Allocazione automatica: l’indirizzo IP è associato all’indirizzo MAC in maniera permanente.
– Allocazione dinamica: l’indirizzo IP è associato all’indirizzo MAC per un periodo di tempo limitato (lease).
• Scaduto il tempo, l’indirizzo IP può essere riutilizzato per assegnarlo ad un nuovo host che ne faccia richiesta.
• Ottimo per NAT.– Allocazione manuale: l’indirizzo IP è associato all’indirizzo MAC
dall’amministratore di rete, ma il DHCP viene usato per trasmettere l’indirizzo IP all’host che ne ha fatto richiesta.
• Per tenere traccia di tutte le associazioni (Indirizzo MAC Indirizzo IP) si utilizza un computer dedicato allo scopo, chiamato DHCP server.
Il protocollo DHCP (2)
Indirizzamento IP
Pasquale De Michele
• Supponiamo che il PC con MAC “09:1f:7b:89:11:7a” voglia ottenere un indirizzo IP.
Il protocollo DHCP: esempio
Indirizzamento IP
Tabella DHCP
Indirizzo IP Indirizzo MAC
192.168.1.1 ---
192.168.1.2 ---
… ---
192.168.1.254 ---
Tabella DHCP
Indirizzo IP Indirizzo MAC
192.168.1.1 09:1f:7b:89:11:7a
192.168.1.2 ---
… ---
192.168.1.254 ---
Pasquale De Michele
• Ipotizzando un indirizzamento con classi, indicare:– se gli indirizzi seguenti sono indirizzi di rete oppure di host;– la loro classe di appartenenza.
Possibili domande
Indirizzamento IP
• Quali classi di indirizzi IP utilizzeresti per una rete locale con 300 host ed una con 250 host?
• Mostrare anche un esempio degli indirizzi IP utilizzati.