IPv6 IP (v4) e’ stato un grande successo Perche’ cambiare Spazio di indirizzamento limitato Spazio di indirizzamento assegnato in modo non uniforme Funzioni non presenti nel progetto originario • Real time • Sicurezza Perche’ IPv6 Frutto di confusione IPv6 1 IPv6 IPv6 2 IPv6 - funzioni Indirizzi estesi 128 bit Indirizzamento gerarchico Intestazione di formato variabile In realta’ anche in IPv4 (teoricamente) Protocollo estendibile Supporto per l’autoconfigurazione Supporto per l’assegnazione delle risorse Astrazione di flusso Servizi differenziati IPv6 3 Formato generale IPv6 Intestazione di base obbligatoria Meccanismi usati da tutti i datagram 0 o piu’ intestazioni opzionali Servizi opzionali Intestazione base Intestazione estens. n Intestazione estens. 1 Dati Opzionali IPv6 4 Intestazioni Intestazione base Contiene informazioni generali sul pacchetto • Indirizzi sorgente • Indirizzo destinazione • …… Intestazioni di estensione Servono a implementare servizi specifici Opzioni Servono a implementare servizi aggiuntivi o nuove funzionalita’ IPv6 5 Intestazione di base Lunghezza costante Info su frammentazione spostata 4 0 Vers 12 Class 16 24 31 Flow label Payload length Next header Hop limit SOURCE ADDRESS DESTINATION ADDRESS IPv6 6 Intestazione di base/cont. Version: 4 bit. 6 IPv6. Traffic Class: 8 bit. Valore per identificare la priorita' del pacchetto nel traffico Internet (simile al TOS IPv4) Possibili Applicazioni: • Differenziazione del traffico immesso nella rete di un ISP da un suo cliente • L’ISP può modificare questo campo per tuttii pacchetti in uscita verso altre reti, al fine di assegnare una classe diservizio concordata con altri ISP IPv6 7 Intestazione di base/cont. Flow Label: 20 bit Uso ancora non chiaro. Usato un flusso Pacchetti appartenenti allo stesso flusso avranno: • Stesso indirizzo IPv6 sorgente • Stesso indirizzo IPv6 destinazione • Stesso valore del campo flow-label Payload Length: 16 bit Specifica la lunghezza dei dati nel pacchetto Al max pacchetti da 64 KB. Per pacchetti didimensioni maggiori si utilizza l’opzione Jumbo Payload IPv6 8 Intestazione di base/cont. Next Header: 8 bit Specifica l’header successivo Se è un protocollo di livello più alto, i valori sono compatibili con quelli IPv4 Hop Limit: 8 bit Sostituisce TTL IPv4 IPv6 9 Intestazioni di estensione Ciascuna serve a implementare un meccanismo diverso Esempi: Autenticazione Frammentazione/deframmentazione Instradamento …… Ogni datagramma contiene soltanto le intestazioni necessarie IPv6 10 Esempio Route serve per l’instradamento Auth serve per servizi di autenticazione TCP indica che la porzione che segue contiene un segmento TCP (i dati del datagram IPv6) Router esaminano solo alcune intestazioni di estensione Intestazione Base Next = Route Intestazione Route Next = Auth Intestazione Auth Next = TCP Segmento TCP (Dati) IPv6 11 Alcuni header Routing (43) Simile all'opzione IPv4 Loose Source Route Indica una lista di router da attraversare Fragment (44) Frammentazione (v. avanti) Authentication Header (51) Serve a implementare meccanismi di autenticazione Encapsulating Security Payload (50) Garantisce che solo il destinatario autorizzato sara' in grado di leggere il pacchetto IPv6 12 Opzioni IPv6 IPv6 permette di definire intestazioni per ulteriori opzioni Permettono estensioni future del protocollo Estensioni salto-salto Devono essere elaborate da ogni router intermedio Estensioni punto-punto Elaborate soltanto a destinazione IPv6 13 Opzioni IPv6/cont. IPv6 permette di definire intestazioni per ulteriori opzioni Permettono estensioni future del protocollo Estensioni salto-salto Devono essere elaborate da ogni router intermedio Estensioni punto-punto Elaborate soltanto a destinazione IPv6 14 Formato generale Next Header Tipo prox header di intestazione Header length Lunghezza complessiva header (nell’es. 11 byte) 8 0 Next Header Length Opzione 2 16 24 31 Header length Type Opzione 1 Length Opzione 1 Valore Opz. 1 Type Opzione 2 Valore Opz. 2 IPv6 15 Formato delle opzioni Type Specifica il tipo di opzione Length Lunghezza dell’opzione (nell’es. Opzione 2 ha lunghezza 2 byte) 8 0 Next Header Length Opzione 2 16 24 31 Header length Type Opzione 1 Length Opzione 1 Valore Opz. 1 Type Opzione 2 Valore Opz. 2 IPv6 16 Campo Type I router possono non comprendere alcune opzioni I 2 bit piu’ alti del campo Type specificano cosa fare in tal caso 00: saltare l’opzione 01: scartare Dgram; non inviare mess. ICMP di notifica 10: scartare Dgram; inviare mess. ICMP di notifica alla sorgente 11: scartare Dgram; inviare mess. ICMP multicast di notifica IPv6 17 Frammentazione IPv6 Similitudini con IPv4 Sorgente responsabile della frammentazione Destinazione responsabile del riassemblaggio Differenze rispetto a IPv4 Router intermedi non frammentano MTU (Maximum Transfer Unit) MTU minima garantita 1280 byte In alternativa: rilevazione MTU minima lungo il percorso sorgente - destinazione IPv6 18 Frammentazione IPv6/cont. In caso di frammentazione Sorgente inserisce intestazione di estensione in ciascun frammento Ogni frammento multiplo di 8 byte • Semplifica elaborazione M identifica l’ultimo frammento RS attualmente non usato e posto a 00 8 0 Next Header 29 16 Riservato Offset di frammento 31 RS M Identificatore di frammento IPv6 19 Frammentazione IPv6/Esempio Datagram iniziale (MTU = 1280 byte) Intestazione Base Next = TCP Segmento TCP (2000 byte) Intestazione Base Next = Fragm. Intestazione Frammentaz. Next = framm. Frammento 1 (1232 byte) Intestazione Base Next = Fragm. Intestazione Frammentaz. Next = framm. Frammento 2 (768 byte) IPv6 20 Frammentazione IPv6/Esempio Intestazioni di frammentazione 8 0 Next Header 29 16 Riservato 0 31 00 1 720 8 0 Next Header 29 16 Riservato 1232 31 00 0 720 IPv6 21 Vantaggi/svantaggi I router non frammentano Migliora la banda passante Aggiornamento percorsi piu’ difficile Se cambia un percorso potrebbe mutare la MTU Nuovo messaggio di errore ICMP • Se un router scopre che la frammentazione e’ necessaria informa la sorgente IPv6 22 Instradamento IPv6 E’ possibile specificare un elenco di router che il Dgram deve attraversare 8 0 Next header 16 HDR EXT LEN 24 Routing Type 31 Seg. left Indirizzo 1 4 Indirizzo 2 Indirizzo 2 IPv6 23 Instradamento IPv6/cont. Next header Indica il significato della prox. Intestazione HDR EXT LEN Dimensione intestazione di instradamento Necessario perche’ numero variabile di indirizzi Routing type --> 0 Seg. left No. Indirizzi rimasti • Es.: Seg. left=x --> router 1,…, n-x attraversati IPv6 24 AVVISO Domani non c’e’ lezione IPv6 25 Indirizzamento IPv6 2128 indirizzi possibili Milioni di anni per esaurirli Notazione esadecimale a due punti Bastano 8 campi Hex invece di 16 usando la notazione decimale puntata Compressione degli 0 • 0000 -> 0 • FF05:0001:0010 -> FF05:1:10 • FF05:0:0:0:0:0:0:B3 --> FF05::B3 Estensione della notazione CIDR • 12AB::CD30:0:0:0:0/60 --> 12AB:0:0:CD3 IPv6 26 Formato degli indirizzi formato generale: X:X:X:X:X:X:X:X Ogni campo rappresenta 16 bit Rappresentazione esadecimale Es.: 2001:0000:1234:0000:0000:00D0:ABCD:0532 Campi di 0 successivi -> :: Solo una volta FF02:0:0:0:0:0:0:1 -> FF02::1 IPv6 27 Formato degli indirizzi/cont. Nelle URL gli indirizzi tra parentesi quadre http://[2001:1:4F3A::206:AE14]:80/home.html ‘:’ usato anche per separare No. porta da URL Necessario modificare Sw che usa URL Browser ecc. IPv6 28 Caratteristiche generali Come in IPv4, indirizzi associati a interfacce di rete A ogni rete fisica e’ assegnato un prefisso Possibile assegnare piu’ prefissi alla stessa rete Possibile assegnare piu’ indirizzi alla stessa interfaccia IPv6 29 Tipi di indirizzo Unicast: l’indirizzo specifica 1 interfaccia Instradamento: percorso minimo Multicast: l’indirizzo specifica un gruppo di nodi Anycast: come il multicast ma Pacchetto consegnato al nodo più vicino (in base alle metriche presenti sui router) al nodo mittente Broadcast eliminato Pericoloso per attacchi DoS IPv6 30 Assegnazione degli indirizzi 0000 0000 - compatibilita’ IPv4 0000 0001 - non assegnato 0000 001 - indirizzi NSAP 0000 010 - Indirizzi IPX 0000 011 - non assegnato 0000 1 - non assegnato 0001 - non assegnato 001 - unicast globale di aggregazione 010 - non assegnato 011 - non assegnato 100 - non assegnato 101 - non assegnato 110 - non assegnato 1110 - non assegnato 1111 0 - non assegnato 1111 10 - non assegnato 1111 110 - non assegnato 1111 1110 0 - non assegnato 1111 1110 10 - indirizzi unicast locali di collegamento 1111 1110 11 - indirizzi unicast locali del sito 1111 1111 - indirizzi multicast IPv6 31 Indirizzi unicast Unspecified Loopback IPv4 Compatible IPv4 Mapped Indirizzi Scoped Unicast locale di collegamento Unicast locale di sito Unicast globale di aggregazione IPv6 32 Unspecified 0:0:0:0:0:0:0:0 Non puo’ essere assegnato a un’interfaccia Puo’ essere usato durante l’inizializzazione • Es.: DHCP ::/0 indica l’instradamento di default Come in IPv4 IPv6 33 Loopback 0:0:0:0:0:0:0:1 o semplicemente ::1 Identifica l’interfaccia stessa Analogo a 127.0.01 IPv4 (localhost) ping6 ::1 -> verifica il funzionamento dello stack IPv6 IPv6 34 Indirizzi incorporati IPv4 Usano una parte dello spazio riservato Prefisso 0000 0000 Primi 80 bit a 0 16 bit seguenti a 0:0:0:0 o F:F:F:F 0:0:0:0 -> IPv4 compatible F:F:F:F -> IPv4 mapped Restanti 32 bit contengono indirizzo IPv4 Usati nella transizione IPv4 -> IPv6 80 16 00………………………………………………00 xx……xx 32 Indirizzo IPv4 IPv6 35 Indirizzi unicast scoped/formato Indirizzi unicast consistono di due parti L’indirizzo di interfaccia puo’ essere assegnato Manualmente Usando direttamente l’indirizzo MAC • Potenziali vantaggi in efficienza • Interoperabilita’ con i protocolli MAC esistenti 64 Prefisso di rete 64 Indirizzo dell’interfaccia IPv6 36 Indirizzo di interfaccia Dipende dal formato dell’indirizzo fisico dell’interfaccia Codifica EUI64 Codifica IEEE che estende a 64 bit la codifica EUI48 (standard Ethernet) Se la codifica dell’indirizzo fisico e’ EUI64 l’indirizzo di interfaccia si ottiene in modo diretto Altrimenti servono soluzioni ad hoc IPv6 37 Indirizzo MAC -> ID interfaccia Si inserisce la sequenza FFFE dopo i primi 24 bit Esempio Indirizzo Ethernet: 00-AA-00-3F-2A-1C Indirizzo EUI64: 00-AA-00-FF-FE-3F-2A-1C Indirizzo IPv6: 02:AA:00:FF:FE:3F:2A:1C • Il settimo bit viene posto ad 1 (nell’indirizzo EUI64 e’ sempre 0) xxxxxx0x……………xxxx yyyyyyyy……………….yyyy xxxxxx1x……………..xxx 1111111111111110 yyyyy……………….yy IPv6 38 Privacy Indirizzo fisico associato a un dispositivo Piu’ facilmente associabile a una persona Il prefisso di rete puo’ cambiare L’indirizzo IPv6 dell’interfaccia rimane lo stesso se viene ricavato da quello fisico RFC 3041: generare l’identificatore di interfaccia in modo casuale IPv6 39 Link e sito Corrispondono ai concetti di rete e sistema autonomo Link: Rete locale Collegamento punto-punto Rete geografica in tecnologia omogenea Sito: Gruppo di link gestiti da un’unica autorita’ IPv6 40 Esempio local ISP Internet Link Link company network IPv6 41 Indirizzi locali di collegamento Prefisso: 1111 1110 10 Indirizzi locali a un link -> es. rete locale I datagram con tali indirizzi non sono inoltrati al di fuori del link Instradamento semplificato R Es.: nessun datagram con indirizzo locale di collegamento trasmesso da H1 raggiunge R Scope -> il link Link H1 IPv6 42 Formato Un indirizzo locale di collegamento ha il seguente formato FE80:0:0:0:<identificatore di interfaccia> L’identificatore di interfaccia e’ ottenuto automaticamente dall’ indirizzo MAC Non e’ necessaria l’assegnazione degli indirizzi locali di collegamento Instradamento semplificato IPv6 43 Indirizzi locali di sito Indirizzi locali a un sito Un pacchetto con indirizzo locale di sito generato da H1 puo’ raggiungere H2 ma non R Internet R • Piu’ semplice assegnare gli indirizzi H2 company network H1 IPv6 44 Formato Prefisso: 1111 1111 11 Il formato di un indirizzo locale a un sito e’ FEC0:0:0:<subnet id>:<interface id> 16 bit identificano la sottorete cui appartiene l’interfaccia Gli indirizzi locali al sito sono configurati dall’amministratore IPv6 45 Indirizzi unicast globali di aggregazione Corrispondono agli indirizzi IPv4 pubblici Blocchi di indirizzi assegnati dalla IANA Assegnazione gerarchica di sottoblocchi di indirizzi Gestita dal proprietario del blocco 3 13 8 P TLA ID RES 24 16 NLA ID SLA ID P: 001 TLA ID: identificatore assegnato all’ ISP 64 Indirizzo dell’interfaccia RES: 0000 0000 (usi futuri) NLA ID: Next Level Aggregation SLA ID: Site Level Aggregation IPv6 46 ISP regionale Esempio ISP locale TLA ID = X NLA ID = Y SLA ID = Z X Y Prefisso: 001 <X> Z Prefisso: 001 <X> <RES> <Y> Prefisso: 001 <X> <RES> <Y> <Z> Rete aziendale IPv6 47 Assegnazione degli indirizzi IANA /23 /23 /23 ARIN RIPE NCC APNIC /32 Esempio Roma Tre e CASPUR Politica di assegnazione al momento provvisoria GARR /48 /48 CASPUR /64 Roma Tre /64 IPv6 48 Indirizzi multicast In IPv6 non esiste il broadcast Multicast usato al suo posto Prefisso: 1111 1111 Formato: FF<flags><scope>::<Group ID> Flags: 4 bit -> pensato per servizi multicast Scope: 4 bit -> specifica l’ambito nel quale va inviato il messaggio multicast Group ID: identifica un gruppo multicast all’interno di un certo scope IPv6 49 Scope Node -> 1 Es.: le interfacce R2, R3 ed R4 Link -> 2 Es.: le interfacce R1 ed R2 Internet Site -> 5 Es.: R1…R5 R1 R2 Global -> E Internet Organization - >8 R3 R5 R4 company network IPv6 50 Group ID Lo scope definisce soltanto l’ambito di rete Il Group ID specifica quali nodi partecipano all’interno dello scope I nodi con stesso Group ID Alcuni Group ID riservati Group ID 1 -> tutti i nodi all’interno dello scope Indirizzo FF01::1 -> tutte le interfacce sullo stesso nodo Indirizzo FF02::1 -> tutte le interfacce sullo stesso link Indirizzo FF05::1 -> tutte le interfacce sullo stesso sito Indirizzo FF0E::1 -> tutte le interfacce su Internet IPv6 51 Indirizzi anycast Non sono distinguibili dagli indirizzi unicast Non e’ previsto alcun prefisso specifico Lo stesso indirizzo e’ assegnato a interfacce diverse Normalmente su nodi diversi Indicano l’interfaccia piu’ vicina al mittente Nodi esplicitamente informati quando ricevono un indirizzo anycast Utile, ad esempio, per Mobile IPv6 IPv6 52 Anycast - esempio H1 invia un datagram alle interfacce di indirizzo anycast FEC0::2 Il datagram raggiungera’ l’interfaccia R1 H1 FEC0::2 R1 FEC0::2 IPv6 53 Indirizzi di nodo Indirizzo locale di collegamento per ogni interfaccia Generato automaticamente Indirizzi unicast/anycast Indirizzo di loopaback Indirizzi multicast Gruppo all nodes Altri gruppi di cui il nodo fa parte IPv6 54 Selezione degli indirizzi Quali indirizzi sorgente/destinazione scegliere? Tante possibilita’ Regole generali Usare il giusto scope in base alla destinazione Implicazioni sul DNS Regole generale di selezione degli indirizzi ancora in fase di studio IETF Internet draft IPv6 55 Esempio: H1 e’ destinazione H2 usa indirizzo globale unicast H3 usa indirizzo locale di sito H4 usa indirizzo locale di collegamento H2 Internet H3 R1 R2 R3 R5 H4 R4 company network H1 -> 27A1:34BC:1:34 IPv6 56 Indirizzo di H1 Indirizzo globale di aggregazione (sorg. H2) 2001:06:: Parte alta 100F 27A1:34BC:1:34 Ind. sottorete Indirizzo locale di sito (sorg. H3) FEC0:0:0 Parte alta 100F 27A1:34BC:1:34 Ind. sottorete Indirizzo locale di collegamento (sorg. H4) FE80:0:0 0 27A1:34BC:1:34 Parte alta Ind. sottorete IPv6 57 Transizione da IPv4 a IPv6 IPv6 58 Scenario IPv4 e IPv6 incompatibili Stesso strato OSI Svolgono le stesse funzioni Requisiti per IPv6 Garantire la compatibilita’ con i dispositivi esistenti Offrire meccanismi semplici per la transizione IPv4 -> IPv6 IPv6 59 Soluzione IPv6 Evoluzione graduale Non vi sara’ una transizione brusca I due protocolli conviveranno per alcuni anni I meccanismi di transizione sono stati al centro dell’attenzione nella progettazione di IPv6 IPv6 60 Evoluzione in tre fasi Prima fase Si usa principalmente l’infrastruttura IPv4 esistente Seconda fase I protocolli coesistono Terza fase I nodi IPv4 restanti usano l’infrastruttura IPv6 Essi devono poter usare i servizi IPv6 IPv6 61 Meccanismi di transizione Implementati sugli host Es. hosto dual stack Implementati a livello di rete Es. tunnel Basati su traduttori di protocollo Es. SIIT, NAT-PT IPv6 62 Host dual stack Nodo dual stack Implementa entrambi i protocolli Assegna indirizzi IPv4 e IPv6 alla stessa interfaccia Applicazione TCP/UDP IPv4 IPv6 Le applicazioni che usano IPv4 usano i servizi dello strato corrispondente Ethernet IPv6 63 Vantaggi/svantaggi Schema semplice Svantaggi Richiede la gestione di una doppia infrastruttura di rete Non fa nulla per integrare IPv4 e IPv6 Soluzione attualmente piu’ usata IPv6 64 Tunnel IPv6-IPv4 Tunnel: usati normalmente per trasportare pacchetti di un protocollo in una rete basata su un protocollo diverso IPv6-in-IPv4 Permettono a pacchetti IPv6 di attraversare una rete IPv4 Pacchetto IPv6 incapsulato in un pacchetto IPv4 IPv6 65 Tunnel IPv6-IPv4 - esempio 2001:06::106A:27A1:2:12:AE 219.18.21.24 2001:06::100F:27A1:34BC:1:34 Dual stack Router IPv6 R1 Dual stack R2 Router IPv6 R3 R4 219.18.20.2 2001:06::100F:27A1:2B4:1:80 159.20.234.34 159.20.234.38 2001:06::106A:27A1:34BC:1:34 R2 Incapsula pacchetto proveniente da R1 Spedisce pacchetto IPv4 risultante a R3 • Indirizzo destinazione 219.18.20.2 R3 Estrae pacchetto IPv6 da pacchetto IPv4 ricevuto da R2 Invia pacchetto IPv6 a R4 IPv6 66 Tunnel IPv6-IPv4/3 I punti di ingresso e uscita dai segmenti IPv4 devono essere nodi dual stack Logicamente, il tunnel e’ un singolo salto IPv6 MTU (Maximum Transfer Unit) Piu’ piccola di 20 byte • A causa della presenza dell’ header IPv4 IPv6 67 Configurazione dei tunnel Tunnel manuali Sono configurati manualmente agli estremi (R2 ed R3 nell’esempio) Usati per creare tunnel permanenti tra due estremi Ampiamente usati Tunnel broker Applicazione Web raggiungibile via IPv4 Crea dinamicamente un tunnel su richiesta Adatto per utenti occasionali IPv6 68 Altri tipi di tunnel Tunnel automatici Indirizzi IPv4 degli estremi del tunnel ottenuti automaticamente Usano gli indirizzi IPv4 compatible Tunnel 6-to-4 Permettono di connettere tra loro siti IPv6 usando un indirizzo IPv4 pubblico per ogni sito IPv6 69 Indirizzi incorporati IPv4 Usano una parte dello spazio riservato Prefisso 0000 0000 Primi 80 bit a 0 16 bit seguenti a 0:0:0:0 o F:F:F:F 0:0:0:0 -> IPv4 compatible F:F:F:F -> IPv4 mapped Restanti 32 bit contengono indirizzo IPv4 Usati nella transizione IPv4 -> IPv6 80 16 00………………………………………………00 xx……xx 32 Indirizzo IPv4 IPv6 70 Tunnel automatici Pacchetto IPv6 diretto da R1 a H Indirizzo H IPv4-compatibile Indirizzo IPv4 di H si ottiene automaticamente da quello IPv6 Estremo (H) deve coincidere con il destinatario del messaggio Router IPv6 R1 Router Dual stack R2 Router IPv4 H R3 ::193.204.161.49 IPv6 71 Tunnel 6to4 Sito IPv6 Router Dual Router IPv4 stack Sito IPv6 Router Dual stack R2 Router IPv4 La rete IPv6 deve avere il prefisso 2002::/16 (assegnato dalla IANA) IPv6 72 Tunnel 6to4/formato indirizzo Ogni sito IPv6 che usa il tunnel riceve un indirizzo IPv4 unico Corrisponde al router dual stack di bordo Formato di un pacchetto che usa un tunnel 6to4 2002:<indirizzo IPv4 sito dest.><indirizzo di sottorete><indirizzo di interfaccia> IPv6 73 Tunnel 6to4/esempio 2002:C1CC:54A::/48 Sito 1 R1 2002:5013:71FB::/48 Rete IPv4 R2 Sito 2 193.204.5.74 80.19.113.251 Indirizzo IPv4 assegnato al sito 1 93.204.161.2 Prefisso di rete IPv6 del sito 2 Sito 3 2002:C1CC:A102::/48 IPv6 74 Esempio/cont. Pacchetto dal sito 1 al sito 2 Pacchetto IPv6 raggiunge router di bordo dual stack R1 R1 deduce l’indirizzo IPv4 di R2 da indirizzo IPv6 della destinazione R1 incapsula pacchetto IPv6 in pacchetto IPv4 con destinazione 80.19.113.251 R2 riceve pacchetto Estrae pacchetto IPv6 Consegna pacchetto IPv6 alla destinazione nel sito 2 IPv6 75 Vantaggi/svantaggi Semplice da implementare Non sfrutta eventuali segmenti IPv6 attraversati IPv6 76 Esempio Sito 1 R1 Rete IPv4 R2 Sito 2 Pacchetto dal sito 1 al sito 2 che usa tunnel 6to4 semplice non puo’ usare il link IPv6 diretto tra R2 e R3 Motivo: pacchetto IPv6 incapsulato in un pacchetto IPv4 diretto a R2 Link IPv6 R3 Sito 3 IPv6 77 Relay router Relay router: router disposto a offrire accesso alla rete IPv6 a pacchetti tunnel 6to4 Impiega la banda di chi lo mette a disposizione Indirizzo anycast per i relay router: 2002:C058:6301:: Indirizzo IPv4 corrispondente: 192.88.99.1 Esistono relay router pubblici IPv6 78 Relay router/esempio Sito 1 R1 Rete IPv4 R2 Sito 2 Router dual stack Link IPv6 Pacchetto dal sito 1 al sito 2 R3 ha percorsi alternativi Tunnel 6to4 usando R1reteIPv4-R2 Tunnel 6to4 + rete IPv4 + link IPv6 usando R3 Sito 3 Relay router IPv6 79 6to4/vantaggi e svantaggi Vantaggi Semplice da configurare Permette di usare IPv6 senza disporre di indirizzi e senza avere un provider IPv6 nativo Svantaggi Indirizzi IPv6 di un sito legati all’indirizzo IPv4 del router di bordo • Se cambia indirizzo IPv4 di sito il sito va rinumerato I relay router possono essere lontani • Sia dalla sorgente che dalla destinazione IPv6 80 Sommario Tunnel configurati Necessario configurare manualmente gli estremi Comuni Tunnel automatici Basati sugli indirizzi IPv4-compatibili Deprecati Tunnel 6to4 Instradamento manuale Selezione automatica dell’estremo IPv6 81 Rete dual stack Tunnel Difficile gestire una rete di tunnel Prestazioni inferiori a quelle di una rete nativa Rete IPv6 dipendente dalla rete IPv4 Soluzione migliore: rete dual stack Minori difficolta’ e costi di gestione IPv6 82 Traduttori di protocollo Unico modo per far comunicare nodi IPv4- only e IPv6-only Alternativa alla soluzione dual stack Possibili implementazioni A livello IP A livello di trasporto Modifica della pila protocollare Di solito indirizzi IPv4 rappresentati come indirizzi IPv6 particolari IPv6 83 NAT-PT Traduttore che mappa indirizzi IPv4 in indirizzi IPv6 e viceversa Segue la stessa logica dei sistemi NAT Il nodo NAT-PT separa una rete IPv6 da una IPv4 Il nodo NAT-PT ha associato un pool di indirizzi IPv4 che associa dinamicamente ai nodi della rete IPv6 Ogni indirizzo IPv4 e’ mappato deterministicamente in un indirizzo IPv6 Comunicazione logica Rete IPv6 Rete IPv4 NAT-PT DNS Comunicazione reale IPv6 84 NAT-PT/esempio Il NAT-PT ha prefisso ::F00F:0:0/96 Tutto il traffico della rete IPv6 avente tale preifsso nell’indirizzo di destinazione e’ inviato al NAT-PT Il pool di indirizzi IPv4 del NAT-PT e’ 151.100.17.0/8 Tutto il traffico della rete IPv4 avente tale prefisso e’ inviato al NAT-PT www.dis.uniroma1.it Rete IPv6 Rete IPv4 NAT-PT 2001:760:4:f005::2 DNS 159.100.16.120 Comunicazione reale IPv6 85 NAT-PT/esempio A vuole connettersi a B A richiede l’indirizzo fisico di www.dis.uniroma1.it al NAT-PT Il NAT-PT interroga il DNS Ottiene l’indirizzo fisico 151.100.16.120 Restituisce ad A l’indirizzo IPv6 corrispondente ::F00F:9F64:1078 • 151.100.16.120 -> 9F64:1078 Hex www.dis.uniroma1.it Rete IPv6 Rete IPv4 NAT-PT A 2001:760:4:f005::2 DNS B 151.100.16.120 IPv6 86 NAT-PT/esempio A si connette a ::F00F:9F64:1078 (indirizzo IPv6 associato a 159.100.16.120) Fisicamente si tratta del NAT-PT Il NAT-PT associa dinamicamente un indirizzo IPv4 ad A (ad esempio 151.100.17.10) tra quelli disponibili Il NAT-PT funziona da application server Ogni pacchetto IPv6 diretto verso ::F00F:9F64:1078 intercettato dal NAT-PT Pacchetto IPv4 verso 159.100.16.120 spedito nella rete IPv4 al suo posto Viceversa per i pacchetti provevienti da B e diretti ad A www.dis.uniroma1.it Rete IPv6 Rete IPv4 NAT-PT 2001:760:4:f005::2 DNS 159.100.16.120 Comunicazione reale IPv6 87 NAT-PT/vantaggi e svantaggi Vantaggi Trasparenza rispetto ai nodi che lo usano Simili a quelli del NAT IPv4 Non molto diffuso IPv6 88 Altri traduttori di protocollo SIIT (Statelesss IP/ICMP Translation Protocol) Indirizzi IPv4 mappati su indirizzi IPv6 Traduzione stateless Traduttori a livello di trasporto Permettono a nodi IPv6 di comunicare con nodi IPv4 senza richiedere uno stack IPv4 Nodi relay che agiscono come proxy trasparenti IPv6 89