Sartomiki.net

  • Aumenta dimensione caratteri
  • Dimensione caratteri predefinita
  • Diminuisci dimensione caratteri
Home Cronologia Tecnologie e servizi di rete Transizione a IPv6 e Tunneling

Transizione a IPv6 e Tunneling

E-mail Stampa PDF
Valutazione attuale: / 5
ScarsoOttimo 

Transizione a IPv6
Analizzando la situazione attuale si nota che gran parte del traffico internet è ancora basato su IPv4, ma a breve la migrazione a IPv6 risulterà necessaria. I motivi di questo ritardo sono da attribuire a diversi fattori:
-aggiornamento dei router (che ormai è avvenuto). Gli apparati interessati non sono solo i router, ma anche quegli switch, che svolgono funzioni speciali (ad es: IGMP snooping). Al momento, per rendere possibile la coesistenza di IPv4 e IPv6 si separano gli stack di rete (dual stack con approccio ships in the night, che prevede la duplicazione delle tabelle di routing, delle regole dei firewall, dei protocolli di routing,…).
-aggiornamento delle macchine utente (tutti gli OS ormai supportano sia IPv4, che IPv6). Anche qui la soluzione si basa su dual stack (ogni host ha il supporto completo per entrambi i protocolli, e quindi necessita sia di indirizzi IPv4 e di IPv6). Si sta  passando ad una soluzione di tipo dual layer, che prevede di utilizzare la maggior parte degli indirizzi IPv4 in formato IPv6, utilizzando i protocolli di livello superiore solo con indirizzi di tipo IPv6.
-aggiornamento delle applicazioni (la situazione è problematica).
Data la situazione attuale sono necessari alcuni meccanismi di comunicazione tra IPv4 e IPv6. Essi si ottengono con la tecnica del tunneling, che prevede l'installazione di un'applicazione specifica sui router, che permette l'impaccamento e lo spaccamento di pacchetti IPv6 in pacchetti IPv4 (protocollo GRE + si cambia l'intestazione del protocol type).

Automatic Tunnel e IPv4 compatibile
Per trasportare indirizzi IPv6 su infrastrutture IPv4 è possibile usare l'automatic tunnel. Questa tecnica prevede che nel momento in cui un pacchetto IPv6 raggiunge una rete IPv4, esso viene impacchettato in un pacchetto IPv4. A questo punto viene aperto un tunnel mettendo nell'indirizzo del destinatario l'indirizzo dell'uscita del tunnel.
Se avviene, invece, che un pacchetto IPv4 raggiunga un'area IPv6 vengono messi a 0 tutti i 96 bit a sinistra dell'indirizzo IPv4, in modo da renderlo compatibile con l'IPv6. Sui vari sistemi operativi ci sono diversi comandi per abilitare l'automatic tunnel (in alcuni è attivo di default). Se il destinatario è all'interno di una rete IPv4, ma il mittente no, il pacchetto parte in IPv6 e poi viene impacchettato in un pacchetto IPv4 solo nel momento in cui esso arriva nella sottorete IPv4. Questa tecnica funziona sia se il destinatario si trova in una rete IPv6 o IPv4.

Altre tecniche
Per trasportare pacchetti IP in reti IP di versioni differenti, esistono anche altre tecniche:
-6over4 serve per trasportare pacchetti IPv6 su infrastrutture IPv4. La tecnica è in disuso, in quanto prevede l'esistenza di reti IPv4 multicast spesso non disponibili. In più il multicast spreca molta banda.
-6to4 si basa su una traduzione degli indirizzi delle interfacce dei router IPv4 in IPv6. Con questo metodo è possibile indirizzare all'interno di reti IPv4 intere reti IPv6. Questo approccio non è compatibile con i NAT ed è normalmente utilizzabile in modalità host->6to4 area. Ogni numero decimale dell'indirizzo IPv4  (quelli divisi da ".") viene convertito in esadecimale e vengono messi:
--prefisso 6to4 (2002)
--indirizzo IP convertito (48bit)
--address space (80bit), utile a numerare gli host nelle sottoreti interne.
-ISATAP è un meccanismo usato per propagare le informazioni di routing interne a reti 6to4, non collegate direttamente. Questa funzione non sarebbe possibile senza ISATAP, che ottiene questo risultato usando i server DNS per questo scopo. Ogni router può scoprire queste informazioni andando a consultare i domini ISATAP, contenuti nei server DNS.
-Teredo, che permette di imbustare i pacchetti IPv6 in IPv4/UDP, in modo da superare i NAT. Questo meccanismo richiede un server esterno, in grado di associare gli indirizzi privati in indirizzi pubblici.
-Tunnel Broker, che cerca di risolvere i problemi causati dai NAT in modo diverso rispetto a Teredo: esso usa script locali che permettono i tunnel IPv6.

Migrazione delle applicazioni
La conversione delle applicazioni da IPv4 a IPv6 è uno dei problemi più difficili da risolvere.
Per ottenere il passaggio a IPv6, è necessario che le interfacce socket (a livello server) vengano modificate, in quanto è necessario specificare in fase di programmazione la famiglia del protocollo da usare. Con le nuove librerie dei socket è possibile utilizzare strutture compatibili sia per IPv6 e IPv4.
Le nuove librerie creano problemi di timeout lato client, in quanto nel caso in cui una macchina non risponda all'indirizzo IPv6, bisogna ripetere la richiesta in formato IPv4. Questa duplicazione delle richieste crea un tempo di attesa maggiore, causando lo scatto dei timeout nell'applicazione.
Le nuove librerie lato server devono essere in grado di ricevere richieste di connessione sia IPv4, che IPv6. Per ottenere questo risultato è necessario duplicare il codice, in modo da creare dei socket doppi.
Il codice da modificare nelle applicazioni, in realtà, non è molto, ma difficilmente individuabile, e causa la ricompilazione del codice.
E' necessario modificare sia lato client, che lato server anche le parti di codice relative agli URL, in quanto in IPv4 il separatore degli indrizzi IPv6 (":") indica il numero di porta e questo crea non pochi problemi (per specificare un numero di porta in IPv6 bisogna racchiudere l'indirizzo numerico tra "[]").
Esistono anche protocolli di livello applicazione, che hanno al loro interno indirizzi IP, che in questo caso devono essere aggiornati. Un esempio è dato dalle applicazioni peer to peer.
Al momento non è conveniente creare applicazioni solo IPv6, in quanto le reti esistenti sono per lo più IPv4.


blog comments powered by Disqus
 

http://sartomiki.net/modules/mod_fuofb/assets/it/find-us-on-facebook-1.png

Follow me

Amici

Chi è online

 9 visitatori online

Siti amici

Banner

Notizie flash

Ora potete linkare gli articoli e gli appunti su Facebook, mediante l'apposito tasto presente in alto a destra! Condividete!

PUBBLICITA'