730 likes | 968 Views
Reti di Calcolatori II. Prof. Stefano Leonardi http://www.dis.uniroma1.it/ ~leon/didattica/reti2/ Ricevimento: Venerdì, ore 11-13, Via Salaria 113, II piano, stanza 227 Prof. Luca Becchetti http://www.dis.uniroma1.it/ ~becchett Ing. Andrea Vitaletti http://www.dis.uniroma1.it/ ~vitale.
E N D
Reti di Calcolatori II Prof. Stefano Leonardi http://www.dis.uniroma1.it/~leon/didattica/reti2/ Ricevimento: Venerdì, ore 11-13, Via Salaria 113, II piano, stanza 227 Prof. Luca Becchetti http://www.dis.uniroma1.it/~becchett Ing. Andrea Vitaletti http://www.dis.uniroma1.it/~vitale 4: Network Layer
Programma preliminare I 1. Indirizzamento IP: A classi CIDR – Classless Inter Domain Routing 2. Reti Private VPN NAT 3. Instradamento tra Sistemi autonomi BGP Il Grafo di Internet - Relazioni tra Autonomous Systems 4. IP Multicast 4: Network Layer
Programma preliminare II • L’accesso a ISP: BOOTP DHCP 6. Mobile IP 7. Gestione della rete – SNMP 8. Protocollo ICMP 9. IPv6 10. Esercitazioni di Laboratorio con Netkit: Simulazione e gestione di reti ad interconnessione Ing. Andrea Vitaletti 4: Network Layer
Testo di riferimento Douglas Comer Internetworking with TCP/IP Quarta Edizione Volume I Addison Wesley, 2000 Versione Inglese consigliata e Materiale didattico a disposizione sul Sito web del corso 4: Network Layer
L’Indirizzamento IP Indirizzamento a classi Indirizzamento senza classi 4: Network Layer
Indirizzamento IP (v4) • Indirizzo unico di 32 bit per ciascuna interfaccia presente nella rete • Un host puo’ avere interfacce multiple • Alcuni indirizzi possono essere assegnati piu’ volte --> VPN, NAT (piu’ avanti) • Interfaccia --> scheda di rete • Formato degli indirizzi • A classi (classful) --> proposta originale • Senza classi (classless) --> permette di risparmiare indirizzi 4: Network Layer
Interfaccia: punto di connessione tra un host (o un router) e un link fisico I router di solito hanno interfacce multiple Gli host possono avere interfacce multiple Gli indirizzi IP sono associati alle interfacce, non agli host o ai router 223.1.1.2 223.1.2.2 223.1.2.1 223.1.3.2 223.1.3.1 223.1.3.27 Indirizzamento IP 223.1.1.1 223.1.2.9 223.1.1.4 223.1.1.3 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1 4: Network Layer
Indirizzo IP : Parte che identifica la rete (bit più sign.) Parte che identifica l’host (bit meno sign.) Cos’è una rete ? Insieme delle interfacce i cui ind. IP hanno la stessa parte che identifica la rete Possono raggiungersi reciprocamente senza l’ausilio di un router Indirizzamento IP 223.1.1.0/24 223.1.1.1 223.1.2.1 223.1.1.2 223.1.2.9 223.1.1.4 223.1.2.2 223.1.3.27 223.1.1.3 LAN 223.1.3.2 223.1.3.1 Rete che consiste di 3 reti IP (primi 24 bit identificano la rete IP) 4: Network Layer
Come trovare le reti? Staccare ciascuna interfaccia dall’host o router cui appartiene Creare “isole” (ciascuna isola è una rete IP) 223.1.3.27 223.1.3.1 223.1.3.2 Indirizzamento IP 223.1.1.2 223.1.1.1 223.1.1.4 223.1.1.3 223.1.7.0 223.1.9.2 223.1.9.1 223.1.7.1 223.1.8.1 223.1.8.0 223.1.2.6 Sistema interconnesso di 6 reti IP 223.1.2.1 223.1.2.2 4: Network Layer
Riservato Indirizzo multicast 1110 11110 rete host 110 rete 10 host Indirizzi IP - formato classful Classe 1.0.0.0 a 127.255.255.255 A rete 0 host 128.0.0.0 a 191.255.255.255 B 192.0.0.0 a 223.255.255.255 C 224.0.0.0 a 239.255.255.255 D 240.0.0.0 a 247.255.255.255 E 32 bit 4: Network Layer
Convenzioni per il broadcast • Broadcast verso la rete cui l’interfaccia appartiene • Tutti i bit a 1 (prefisso di rete + host) • Broadcast verso gli host di un’altra rete • Prefisso di rete valido • Bit della parte host dell’indirizzo a 1 • Non standard: bit della parte host a 0 • Un broadcast IP si traduce (se possibile) in un broadcast Hw sulla rete di destinazione 4: Network Layer
host 110 Vantaggi dell’indirizzamento a classi • Indirizzo della rete e dell’host (interfaccia) identificati senza ulteriori informazioni • Es.: primi 3 bit 110 --> indirizzo di classe C • Non servono informazioni aggiuntive Rete 4: Network Layer
Problema: potenziale spreco di indirizzi Esempio: Rete con 2000 host Occorre richiedere una rete di classe B -> circa 63000 indirizzi inutilizzati Soluzione (RFC 1519): Classless Interdomain Routing Piu’ avanti Svantaggi dell’indirizzamento a classi 4: Network Layer
Assegnazione di indirizzi IP • Tutti gli host sulla stessa rete hanno lo stesso prefisso di rete • Prefissi assegnati da un’autorita’ centrale • Richiesti dall’ISP o istituzione ecc. • Ogni host (interfaccia) su una rete ha un suffisso distinto • Assegnato localmente • L’amministratore di rete garantisce l’unicita’ 4: Network Layer
Alcune questioni aperte • Multicast • Trasferimento 1 --> molti • Molte proposte ma ancora nessuno standard diffuso • Discusso piu’ avanti • Host multi-homed • Es.: utenti mobili • Piu’ indirizzi possibili • Discusso piu’ avanti 4: Network Layer
Problema principale • Notevole spreco di indirizzi soprattutto in classe B • Assegnazione dello stesso prefisso di rete a più reti fisiche: • Ridefinire le politiche di instradamento • Ridefinire le politiche di assegnazione degli indirizzi agli Host 4: Network Layer
Soluzioni • Router trasparenti • ARP proxy • Indirizzamento di sottorete • Reti anonime punto-punto • Indirizzamento senza classi (CIDR - Classless Inter-Domain Routing) --> Reti odierne 4: Network Layer
Router trasparenti Rete locale H1 • H1, H2 E H3 “credono” di essere connessi direttamente alla WAN • La rete locale non ha un proprio prefisso IP R H2 WAN H3 • R demultipla i datagrammi da e per la rete locale • R suddivide gli indirizzi IP in porzioni che interpreta separatamente • Si impone a volte una struttura particolare dell’indirizzo per favorire la multiplazione 4: Network Layer
Esempio: ARPANET Rete locale • Indirizzo di rete in forma 10.p.u.i • p-->port, i--> PSN, x non interpretato • Nota: 10.2.5.37 e 10.2.10.37 --> stesso host 10.2.1.37 PSN 37 10.2.2.37 ARPANET 10.0.0.0 10.2.3.37 4: Network Layer
Vantaggi/svantaggi • Vantaggi • Necessari meno indirizzi di rete • Possibile bilanciamento del carico collegando la rete fisica attraverso più routers • Svantaggi • Non funziona con reti di classe C • I router trasparenti possono non offrire tutti i servizi standard (ICMP, SNMP….) 4: Network Layer
ARP proxy (promiscuo, hack) • Permette di definire piu’ reti locali • Rete principale nota all’esterno • Reti locali aggiunte successivamente nascoste • Router speciale che: • Funziona da switch tra le diverse reti locali • Funziona da router da/verso l’esterno 4: Network Layer
ARP proxy - cont. principale nascosta • Dgram IP1-->IP4 • R cattura richiesta ARP bcast di H1 e restituisce proprio MAC address • Datagrammi da IP1 a IP4 sono spediti a R che li inoltra a IP4 IP1 IP4 R IP2 IP5 IP3 IP6 4: Network Layer
Vantaggi/svantaggi • Vantaggi • Le tabelle degli altri router non vanno cambiate • Es.: quando si aggiunge la rete contenente IP4 i router diversi da R devono solo sapere che i pacchetti per IP4 vanno inviati a R • Svantaggi • L’instradamento non e’ completamente automatico • Gli amministratori di rete devono aggiornare manualmente le tabelle di routing • Spoofing: una macchina finge di essere un’altra per intercettare i pacchetti • Non puo’ essere usato in assenza di ARP 4: Network Layer
Indirizzamento di sottorete • Tecnica standardizzata • Spesso usata su reti di classe B • Idea • Router (R) responsabile dell’instradamento da/verso l’esterno • R conosce la suddivisione della rete in sottoreti • L’esterno “vede” un’unica rete, accessibile da R 4: Network Layer
Esempio Rete 128.10.1.0 • Le reti 128.10.1.0 e 128.10.2.0 non sono visibili all’esterno • R interpreta gli indirizzi di dest. dei datagrammi provenienti dall’esterno 128.10.1.1 128.10.1.2 R Internet Rete 128.10.2.0 128.10.2.1 128.10.2.2 Traffico verso 128.10.0.0 4: Network Layer
Suddivisione indirizzo (classe B) • La suddivisione puo’ non essere per ottetti • Possibilita’ di indirizzamento gerarchico Prefisso di rete Indirizzo host Suddivisione dell’indirizzo vista dall’esterno Rete locale host Prefisso di rete Suddivisione dell’indirizzo vista dal R 4: Network Layer
Esempio Resto di Internet • R2 deve sapere quanti bit individuano il prefisso della rete 3 • Il resto di Internet ignora l’esistenza di R2 e R3 R1 Rete 1 R2 R3 Rete 3 Rete 2 4: Network Layer
Sottoreti di lunghezza fissata • La stessa maschera è usata per tutte le reti: • Vantaggi: • Uniformità • Facilità di gestione • Svantaggi • Numero di reti fissato per l’intera organizzazione • Massimo numero di hosts per rete fisica fissato. 4: Network Layer
Sottoreti di lunghezza variabile • L’amministratore sceglie la dimensione di ogni rete fisica • Una maschera è assegnata ad ogni rete specifica • Vantaggi: • Flessibilità di unire reti grandi e piccole • Uso completo dello spazio degli indirizzi • Svantaggi • Difficoltà di assegnazione ed amministrazione • Possibile ambiguità nell’indirizzamento • Diversi instradamenti 4: Network Layer
Esempiodi uso dello spazio di indirizzamento • Possibile assegnamento che usa il 92.9% degli indirizzi • 11 reti di 2046 hosts • 24 reti di 254 hosts • 256 reti di 126 hosts 4: Network Layer
Tabelle di routing • Le tabelle di routing devono essere modificate • Generica entry: (M, D, H) • Significato dei campi • D --> indirizzo rete di destinazione • H --> indirizzp prox. router lungo il percorso verso Dest • M --> maschera: campo di 32 bit che consente di delimitare il prefisso di rete 4: Network Layer
Tabelle di routing - cont. ………. 255.255.0.0 151.100.0.0 220.190.16.22 255.255.255.0 220.190.16.0 220.190.15.1 ………… • Esempio: Risolvere indirizzo 220.190.16.3 • Prova entry I: AND bit a bit con 255.255.0.0 da’ 220.190.0.0 ≠ 151.100.0.0 • Prova entry I+1: AND bit a bit con 255.255.255.0 da’ 220.190.16.0 --> prox. salto e’ 220.190.15.1 I I+1 4: Network Layer
Algoritmo di instradamento T:tabella di routing, I: indirizzo da risolvere for (i=0; i<|T|; i++) { if ((I && Mi)==Di) { <Next hop> = Hi; break; } } /* Nessuna corrispondenza in T */ Errore; 4: Network Layer
Maschere di sottorete • Sono consentite maschere arbitrarie • Soluzione solitamente scelta (non e’ una scelta obbligata): • Numero costante di bit della parte locale per individuare la sottorete • Allocazione contigua • Esempio: data la rete 151.100.0.0, gli 8 bit piu’ significativi della parte locale per la sottorete e gli 8 bit meno significativi per l’host • In questo caso la maschera di sottorete sarebbe 255.255.255.0 4: Network Layer
Esempio • Usa i 16 bit inferiori di 128.10.0.0 per definire le sottoreti: • Crea 7 sottoreti: • Subnet 1 254 hosts Subnet mask: 24 bits • Subnet da 2 a 7 62 hosts ognuna Subnet mask di 26 bits 4: Network Layer
Esempio Subnet 1 (254 hosts) mask: 11111111 11111111 11111111 0000000 prefix: 10000000 00001010 00000001 0000000 Subnet 2 (62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000000 10000000 Subnet 3 (62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000000 11000000 4: Network Layer
Esempio Subnet 4 (up to 62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 00000000 Subnet 5 (up to 62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 01000000 Subnet 6 (up to 62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 10000000 4: Network Layer
Esempio Subnet 7 (62 hosts) mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 11000000 4: Network Layer
Ambiguità degli Indirizzi Indirizzo dell’host 63 sulla subnet 1 è mask: 11111111 11111111 11111111 00000000 prefix: 10000000 00001010 00000001 00000000 host: 10000000 00001010 00000001 00111111 broadcast diretto su subnet 4 è mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 00000000 bcast: 10000000 00001010 00000001 00111111 4: Network Layer
Ambiguità degli Indirizzi cont. Broadcast diretto su subnet 1 è mask: 11111111 11111111 11111111 00000000 prefix: 10000000 00001010 00000001 00000000 bcast: 10000000 00001010 00000001 11111111 Broadcast diretto su subnet 7 è mask: 11111111 11111111 11111111 11000000 prefix: 10000000 00001010 00000001 11000000 bcast: 10000000 00001010 00000001 11111111 4: Network Layer
Reti anonime punto-punto • Reti in serie non-numerate • Vi sono solo due endpoints • Non è necessario assegnare un prefisso di rete • Si usa l’IP remoto per indicare il next hop nella tabella di Routing 4: Network Layer
Esempio 4: Network Layer
Classless Inter Domain Routing CIDR 4: Network Layer
Indirizzamento senza classi • Detto anche di super-rete (super-netting) • Motivazioni: • Pochi indirizzi di classe A e B disponibili • Molti indirizzi di classe C disponibili, ma piccola frazione assegnata • Obiettivo: assegnare soprattutto indirizzi di classe C • Soluzione: CIDR (Classless Inter-Domain Routing) 4: Network Layer
crescita di Internet • Il numero delle reti raddoppia ogni nove mesi (crescita esponenziale) • spazio degli indirizi già assegnato [fonte: RFC 1917 feb ‘96]: • classe A: 41% • classe B: 62% • classe C: 28% complessivo: 41% • più della metà delle reti in classe B ha meno di 50 host • La scarsità degli indirizzi ha l’effetto di ingigantire le tabelle di instradamento. • Infatti, poiché l’offerta di indirizzi della classe B diminuisce, la richiesta di indirizzi della classe C aumenta e le reti indipendenti si moltiplicano 4: Network Layer
Indirizzamento senza classi • Problema: una rete di classe C corrisponde a 256 indirizzi IP • Molte organizzazioni hanno bisogno di piu’ indirizzi • Soluzione: assegnare ad una stessa organizzazione blocchi contigui di indirizzi in classe C • Esempio: l’organizzazione X riceve i tre blocchi contigui 220.123.16.x, 220.123.17.x e 220.123.18.x • 768 indirizzi disponibili • Richiederebbe numerosi instradamenti diversi per raggiunger una rete 4: Network Layer
Indirizzamento senza classi • Come rappresentare il blocco di indirizzi assegnati? • Informazioni necessarie: indirizzo + basso del blocco e No. Blocchi • In pratica: • CIDR non prevede che gli indirizzi di rete debbano necessariamente essere di classe C • CIDR usa le seguenti informazioni: • Valore a 32 bit dell’indirizzo piu’ basso del blocco • Maschera a 32 che funziona come una maschera di sottorete standard 4: Network Layer
Differenze rispetto a indizzamento con sottorete • L’indirizzamento CIDR prevede che la maschera usi bit contigui • CIDR richiede che ogni blocco di indirizzi sia una potenza di 2 • Esempio: • 11111111 11111111 00011000 01000000 e’ una maschera di sottorete valida ma non e’ una maschera CIDR consentita 4: Network Layer
Notazione CIDR • Prefisso della rete + No. bit per il prefisso • Esempio: per un blocco di indirizzi da 220.16.128.0 a 220.16.255.255: 220.16.128.0/17 11111111.11111111.10000000.00000000 4: Network Layer
Esempio • Un ISP riceve il blocco di indirizzi 210.20.128.0/17 • L’ISP crea (ad esempio) 128 reti da 256 indirizzi IP ciascuna: • 210.20.128.0/24 • 210.20.129.0/24 • ………… • La maschera di rete che corrisponde al blocco principale e’ 255.255.128.0 • Ciascuno dei sotto-blocchi ha maschera 255.255.255.0 4: Network Layer