Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Internet Protocol versione 6 (IPv6) è una suite di protocolli standard per il livello di rete di Internet. IPv6 è progettato per risolvere molti dei problemi della versione corrente della suite di protocolli Internet (nota come IPv4) sull'esaurimento degli indirizzi, la sicurezza, la configurazione automatica, l'estendibilità e così via. IPv6 espande le funzionalità di Internet per abilitare nuovi tipi di applicazioni, tra cui applicazioni peer-to-peer e per dispositivi mobili. Di seguito sono riportati i principali problemi del protocollo IPv4 corrente:
Esaurimento rapido dello spazio indirizzi.
Ciò ha portato all'uso di Network Address Translator (NAT) che eseguono il mapping di più indirizzi privati a un singolo indirizzo IP pubblico. I problemi principali creati da questo meccanismo sono l'overhead di elaborazione e la mancanza di connettività end-to-end.
Mancanza di supporto per la gerarchia.
A causa dell'organizzazione di classi predefinita intrinseca, IPv4 non dispone di un vero supporto gerarchico. È impossibile strutturare gli indirizzi IP in modo che esegua effettivamente il mapping della topologia di rete. Questo difetto di progettazione cruciale crea la necessità di tabelle di routing di grandi dimensioni per distribuire pacchetti IPv4 in qualsiasi posizione su Internet.
Configurazione di rete complessa.
Con IPv4, gli indirizzi devono essere assegnati in modo statico o usando un protocollo di configurazione, ad esempio DHCP. In una situazione ideale, gli host non devono basarsi sull'amministrazione di un'infrastruttura DHCP. Al contrario, sarebbero in grado di configurarsi in base al segmento di rete in cui si trovano.
Mancanza di autenticazione e riservatezza predefinite.
IPv4 non richiede il supporto per qualsiasi meccanismo che fornisce l'autenticazione o la crittografia dei dati scambiati. Questo cambia con IPv6. La sicurezza ipSec (Internet Protocol Security) è un requisito di supporto IPv6.
Una nuova suite di protocolli deve soddisfare i requisiti di base seguenti:
- Routing e indirizzamento su larga scala con un sovraccarico ridotto.
- Configurazione automatica per varie situazioni di connessione.
- Autenticazione e riservatezza predefinite.
Indirizzamento IPv6
Con IPv6, gli indirizzi sono lunghi a 128 bit. Una ragione per uno spazio di indirizzi così ampio è suddividere gli indirizzi disponibili in una gerarchia di domini di routing che riflettano la topologia di Internet. Un altro motivo è mappare gli indirizzi delle schede di rete (o interfacce) che connettono i dispositivi alla rete. IPv6 offre una funzionalità intrinseca per risolvere gli indirizzi al livello più basso, ovvero a livello di interfaccia di rete, e dispone anche di funzionalità di configurazione automatica.
Rappresentazione di testo
Di seguito sono riportate le tre forme convenzionali usate per rappresentare gli indirizzi IPv6 come stringhe di testo:
Formato colon-esadecimale:
Si tratta del formato
n:n:n:n:n:n:n:n
preferito. Ognunon
rappresenta il valore esadecimale di uno degli otto elementi a 16 bit dell'indirizzo. Ad esempio:3FFE:FFFF:7654:FEDA:1245:BA98:3210:4562
.Formato compresso:
A causa della lunghezza dell'indirizzo, è comune avere indirizzi contenenti una lunga stringa di zeri. Per semplificare la scrittura di questi indirizzi, usare il formato compresso, in cui una singola sequenza contigua di 0 blocchi è rappresentata da un simbolo a due punti (
::
). Questo simbolo può essere visualizzato una sola volta in un indirizzo. Ad esempio, l'indirizzoFFED:0:0:0:0:BA98:3210:4562
multicast in formato compresso èFFED::BA98:3210:4562
. L'indirizzo3FFE:FFFF:0:0:8:800:20C4:0
unicast in formato compresso è3FFE:FFFF::8:800:20C4:0
. L'indirizzo0:0:0:0:0:0:0:1
di loopback in formato compresso è::1
. L'indirizzo0:0:0:0:0:0:0:0
non specificato in formato compresso è::
.Modulo misto:
Questo modulo combina indirizzi IPv4 e IPv6. In questo caso, il formato dell'indirizzo è
n:n:n:n:n:n:d.d.d.d
, dove ogni n rappresenta i valori esadecimali dei sei elementi di indirizzo a 16 bit di ordine superiore in IPv6, e ciascun d rappresenta il valore decimale di un indirizzo IPv4.
Tipi di indirizzi
I bit iniziali nell'indirizzo definiscono il tipo di indirizzo IPv6 specifico. Il campo a lunghezza variabile contenente questi bit iniziali è denominato prefisso formato (FP).
Un indirizzo unicast IPv6 è suddiviso in due parti. La prima parte contiene il prefisso dell'indirizzo e la seconda parte contiene l'identificatore dell'interfaccia. Un modo conciso per esprimere una combinazione di indirizzo/prefisso IPv6 è il seguente: ipv6-address/prefix-length.
Di seguito è riportato un esempio di indirizzo con un prefisso a 64 bit.
3FFE:FFFF:0:CD30:0:0:0:0/64
.
Il prefisso in questo esempio è 3FFE:FFFF:0:CD30
. L'indirizzo può essere scritto anche in un formato compresso, come 3FFE:FFFF:0:CD30::/64
.
IPv6 definisce i tipi di indirizzo seguenti:
Indirizzo Unicast:
Identificatore per una singola interfaccia. Un pacchetto inviato a questo indirizzo viene recapitato all'interfaccia identificata. Gli indirizzi unicast sono distinti dagli indirizzi multicast in base al valore dell'ottetto di ordine elevato. L'ottetto di ordine elevato degli indirizzi multicast ha il valore esadecimale FF. Qualsiasi altro valore per questo ottetto identifica un indirizzo unicast. Di seguito sono riportati diversi tipi di indirizzi unicast:
Indirizzi locali del collegamento:
Questi indirizzi vengono usati in un singolo collegamento e hanno il formato seguente:
FE80::*InterfaceID*
. Gli indirizzi link-local vengono utilizzati tra i nodi su un collegamento per la configurazione automatica degli indirizzi, la scoperta dei vicini o quando non sono presenti router. Un indirizzo locale di collegamento viene usato principalmente all'avvio e quando il sistema non ha ancora acquisito indirizzi di ambito più ampio.Indirizzi locali del sito:
Questi indirizzi vengono usati in un singolo sito e hanno il formato seguente:
FEC0::*SubnetID*:*InterfaceID*
. Gli indirizzi locali del sito vengono usati per l'indirizzamento all'interno di un sito senza la necessità di un prefisso globale.- Indirizzi unicast IPv6 globali:
Questi indirizzi possono essere usati in Internet e hanno il formato seguente:
*GlobalRoutingPrefix*::*SubnetID*:*InterfaceID*
.Indirizzo multicast:
Identificatore di un set di interfacce (in genere appartenente a nodi diversi). Un pacchetto inviato a questo indirizzo viene recapitato a tutte le interfacce identificate dall'indirizzo. I tipi di indirizzi multicast sostituiscono gli indirizzi di trasmissione IPv4.
Indirizzo Anycast:
Identificatore di un set di interfacce (in genere appartenente a nodi diversi). Un pacchetto inviato a questo indirizzo viene recapitato a una sola interfaccia identificata dall'indirizzo. Si tratta dell'interfaccia più vicina identificata dalle metriche di routing. Gli indirizzi Anycast provengono dallo spazio indirizzi unicast e non sono sintatticamente distinguibili. L'interfaccia indirizzata esegue la distinzione tra indirizzi unicast e anycast come funzione della relativa configurazione.
In generale, un nodo ha sempre un indirizzo locale di collegamento. Potrebbe avere un indirizzo locale del sito e uno o più indirizzi globali.
Routing IPv6
Un meccanismo di routing flessibile è un vantaggio di IPv6. A causa della modalità di allocazione degli ID di rete IPv4, le tabelle di routing di grandi dimensioni devono essere gestite dai router presenti nei backbone Internet. Questi router devono conoscere tutte le route per inoltrare pacchetti potenzialmente indirizzati a qualsiasi nodo su Internet. Con la possibilità di aggregare gli indirizzi, IPv6 consente l'indirizzamento flessibile e riduce drasticamente le dimensioni delle tabelle di routing. In questa nuova architettura di indirizzamento, i router intermedi devono tenere traccia solo della parte locale della rete per inoltrare i messaggi in modo appropriato.
Scoperta dei vicini
Alcune delle funzionalità fornite dall'individuazione dei vicini sono:
- Individuazione router: Ciò consente agli host di identificare i router locali.
- Risoluzione degli indirizzi: In questo modo, i nodi possono risolvere un indirizzo del livello di collegamento per un indirizzo hop successivo corrispondente (una sostituzione del protocollo di risoluzione degli indirizzi [ARP]).
- Configurazione automatica degli indirizzi: In questo modo gli host possono configurare automaticamente gli indirizzi locali e globali del sito.
La scoperta dei vicini usa il Protocollo di Messaggi di Controllo Internet per i messaggi IPv6 (ICMPv6) che includono:
- Annuncio router: Inviato da un router su base pseudo-periodica o in risposta a una richiesta di router. I router IPv6 usano annunci router per pubblicizzare la disponibilità, i prefissi degli indirizzi e altri parametri.
- Richiesta di router: Inviato da un host per richiedere che i router sul collegamento inviino immediatamente un annuncio router.
- Richiesta di prossimità: Inviato dai nodi per la risoluzione degli indirizzi, il rilevamento degli indirizzi duplicati o per verificare che un oggetto adiacente sia ancora raggiungibile.
- Annuncio adiacente: Inviato dai nodi per rispondere a una richiesta adiacente o per notificare ai vicini una modifica nell'indirizzo del livello di collegamento.
- Reindirizzare: Inviato dai router per indicare un indirizzo hop successivo migliore a una destinazione specifica per un nodo di invio.
Configurazione automatica IPv6
Un obiettivo importante per IPv6 è supportare Plug and Play del nodo. Ciò significa che dovrebbe essere possibile collegare un nodo in una rete IPv6 e configurarlo automaticamente senza alcun intervento umano.
Tipi di configurazione automatica
IPv6 supporta i tipi di configurazione automatica seguenti:
Configurazione automatica con stato:
Questo tipo di configurazione richiede un determinato livello di intervento umano perché richiede un server IPv6 (Dynamic Host Configuration Protocol) per l'installazione e l'amministrazione dei nodi. Il server DHCPv6 mantiene un elenco di nodi a cui fornisce informazioni di configurazione. Gestisce anche le informazioni sullo stato in modo che il server sappia per quanto tempo è in uso ogni indirizzo e quando potrebbe essere disponibile per la riassegnazione.
Configurazione automatica senza stato:
Questo tipo di configurazione è adatto per organizzazioni e utenti di piccole dimensioni. In questo caso, ogni host determina i relativi indirizzi dal contenuto degli annunci router ricevuti. Utilizzando lo standard IEEE EUI-64 per definire la parte dell'ID di rete dell'indirizzo, è ragionevole supporre l'unicità dell'indirizzo host sul collegamento.
Indipendentemente dalla modalità di determinazione dell'indirizzo, il nodo deve verificare che il relativo indirizzo potenziale sia univoco per il collegamento locale. Questa operazione viene eseguita inviando un messaggio di richiesta del vicino all'indirizzo potenziale. Se il nodo riceve una risposta, sa che l'indirizzo è già in uso e deve determinare un altro indirizzo.
Mobilità IPv6
La proliferazione dei dispositivi mobili ha introdotto un nuovo requisito: un dispositivo deve essere in grado di modificare in modo arbitrario le posizioni su Internet IPv6 e mantenere comunque le connessioni esistenti. Per fornire questa funzionalità, a un nodo mobile viene assegnato un indirizzo home in corrispondenza del quale può sempre essere raggiunto. Quando il nodo mobile si trova a casa, si connette al collegamento di casa e usa il relativo indirizzo di casa. Quando il nodo mobile è lontano da casa, un agente domestico, che in genere è un router, inoltra i messaggi tra il nodo mobile e i nodi con cui comunica.
Disabilitare o abilitare IPv6
Per usare il protocollo IPv6, assicurarsi di eseguire una versione del sistema operativo che supporta IPv6 e assicurarsi che il sistema operativo e le classi di rete siano configurate correttamente.
Passaggi di configurazione
Nella tabella seguente sono elencate varie configurazioni
Sistema operativo IPv6 abilitato? | Codice IPv6 abilitato? | Descrizione |
---|---|---|
❌ No | ❌ No | Può analizzare gli indirizzi IPv6. |
❌ No | ✔️ Sì | Può analizzare gli indirizzi IPv6. |
✔️ Sì | ❌ No | È possibile analizzare gli indirizzi IPv6 e risolvere gli indirizzi IPv6 usando metodi di risoluzione dei nomi non contrassegnati come obsoleti. |
✔️ Sì | ✔️ Sì | Può analizzare e risolvere gli indirizzi IPv6 usando tutti i metodi, inclusi quelli contrassegnati come obsoleti. |
IPv6 è abilitato per impostazione predefinita. Per configurare questa opzione in una variabile di ambiente, usare la DOTNET_SYSTEM_NET_DISABLEIPV6
variabile di ambiente. Per altre informazioni, vedere Variabili di ambiente .NET: DOTNET_SYSTEM_NET_DISABLEIPV6.