Seguici su Telegram, ne vale la pena ❤️ ➡ @trovalost
Vai al contenuto

Cos’è IPv6, come funziona (e perchè mai farne uso)

Saper maneggiare gli indirizzi IP nel caso del subnet masking è fondamentale, come abbiamo visto, per gestire al meglio la nostra rete e saperla dimensionare. Al tempo stesso, pero’, sarebbe fondamentale familiarizzare con l’innovazione introdotta da IPv6, un nuovo standard per gli indirizzi IP non più con 4 ottetti (123.456.123.456, ad esempio) bensଠcon ben 8 esadecimali (AA:BB:CC:DD:EE:FF:00:11 ad esempio), di cui parleremo in questa sede per questo nuovo articolo diTrovalost.it.

Perchè usare IPv6

Come forse già  saprete, il protocollo Internet versione 6 (detto comunemente IPv6) è stato progettato per consentire alla rete internet di crescere costantemente, sia in termini di numero di host collegati che di quantità  totale di traffico dati trasmesso.

Basti pensare che, per intenderci, se usando IPv4 avevo a disposizione 32 bit da poter utilizzare, ovvero oltre quattro milioni di indirizzi IP diversi configurabili (precisamente 232 = 4.294.967.296), usando IPv6 i bit a disposizione arrivano a 128 bit, il che fa letteralmente “esplodere” il numero di configurazioni di IP utilizzabili (2128 = 340.282.366.920.938.463.463.374.607.431.768.211.456 di IP disponibili). Cambia ovviamente il formato, che dalla classica forma a 4 decimali da 0 a 255:

c.c.c.c (ad es. 123.347.111.362)

diventa a 8 esadecimali (rappresentati ognuno dal simbolo n)

n:n:n:n:n:n:n:n (per cui avremo, ad es., 2001:db8:3333:4444:CCCC:DDDD:EEEE:FFFF)

Caratteristiche di IPv6

Le principale feature che depongono a favore di IPv6 in una configurazione di rete sono le seguenti:

  • IPv6 non è pensato in funzione della retrocompatibilità  con IPv4, che può essere comunque ottenuta mediante vari accorgimenti di mapping;
  • IPv6 è riprogettato da zero come standard;
  • IPv6 è stato progettato tenendo presente l’uso su dispositivi mobile: tale funzione (mobility) consente agli host (tipo i telefoni cellulari e i tablet) di spostarsi in aree geografiche diverse e di rimanere connessi con lo stesso indirizzo IP.
  • IPv6 fa uso di molti più bit per la creazione di indirizzi IP, pari a quel numero impronunciabile che abbiamo citato e che corrisponde approssimativamente a 3.4à—1038 indirizzi IP diversi (un numero con 37 zeri al seguito, in questo caso).
  • La grandissima quantità  di IP disponibili in versione IPv6 serve a connettere, almeno virtualmente, qualsiasi dispositivo sul globo terracqueo; secondo una stima approssimativa, esso permetterà  di allocare circa 1500 dispositivi per metro quadrato su tutta la superficie terrestre.
  • IPv6 supporta la modalità  di configurazione automatica sia stateful che stateless per ognuno dei suoi dispositivi host.
  • L’header di IPv6 è stato semplificato notevolmente rispetto a quello di IPv4 corrispondente, spostando tutte le informazioni e le opzioni non indispensabili alla fine dell’intestazione IPv6. L’header dei pacchetti IPv6 è due volte più grande di IPv4, mentre l’indirizzo IPv6 è quattro volte più lungo dell’altro. L’intestazione semplificata mette tutte le informazioni non necessarie alla fine dell’intestazione. Le informazioni contenute nella prima parte dell’intestazione sono adeguate per consentire a un router di prendere “decisioni” sulle politiche di instradamento, prendendole rapidamente: basta verificare lo status dell’intestazione obbligatoria.
  • Di fatto meccanismi come il NAT degli indirizzi IP non serviranno più: IPv6 permetterà  infatti ad ogni host di raggiungere qualsiasi altro, a patto che non ci siano policy di rete o firewall specifici.
  • Il supporto a IPsec è opzionale
  • Sebbene le classiche Ethernet/Token Ring siano considerate comunque configurazioni di rete trasmissive, IPv6 non ha più alcun supporto per la trasmissione, dato che utilizza il multicast per comunicare con più host. IPv6 ha introdotto la modalità  Anycast per il routing dei pacchetti. In tale modalità , in altri termini, a più interfacce su Internet viene assegnato lo stesso indirizzo IP Anycast. I router, durante l’instradamento, inviano il pacchetto alla destinazione più vicina.
  • Lo schema di indirizzi IP di grandi dimensioni nello standard IPv6, infine, consente di allocare dispositivi con indirizzi IP univoci a livello globale. Questo meccanismo preserva i vari indirizzi IP, in modo che il NAT non sia più necessario. Pertanto i dispositivi possono inviare/ricevere dati tra loro, ad esempio, VoIP e/o qualsiasi media anche in streaming, in modo da poter essere utilizzati in modo efficiente.

Notazione esadecimale (HEX) per IPv6

La nuova notazione IPv6 deve essere senza dubbio un po’ familiarizzata, almeno all’inizio, fino a quando tale standard non diventerà  uniforme (cosa che dovrebbe avvenire attorno all’anno 2025, secondo varie stime). Non solo c’è la complicazione di fare uso di esadecimali (ovvero numeri in base 16 anzichè decimali, diversi da quelli in bit che sarebbero stati poco maneggevoli in questa fase, eventualmente in forma di IP duali cioè misti IPv4/IPv6), ma anche la possibilità  che gli IP in versione IPv6 appaiano sugli schermi in forma compressa, ovvero tralasciando gli zeri:

2001:db8::1234:5678

è come dire

2001:db8:0000:0000:0000:0000:1234:5678

oppure

2001:db8::

che invece significa che gli ultimi segmenti sono tutti a zero:

2001:db8:0000:0000:0000:0000

In questo caso parliamo di 8 segmenti (come si dice in gergo) ovviamente diversi dai 4 ottetti che conosciamo un po’ tutti.

Per “convertire” gli indirizzi IPv4 in IPv6 può sembrare un po’ complicato ma, almeno in teoria, il passaggio è semplice: basta considerare l’IPv4 suddivisa in 4 ottetti, ovvero nel caso di 192.168.1.1 gli ottetti sono 192, 168, 1 e 1, per cui li convertiamo in hex uno per volta e poi riscriviamo l’IP con la nuova notazione. La conversione è facile da calcolare mediante una qualsiasi calcolatrice scientifica, oppure sfruttando uno dei tanti tool o app disponibili in rete allo scopo.

Ottetti o segmenti, a volte anche una combinazione di entrambi, costituiscono gli indirizzi IP versione 4 (IPv4) e Internet Protocol versione 6 (IPv6). Un indirizzo IPv4 aveva il formato x.x.x.x, dove x è detto ottetto e deve essere un valore decimale compreso tra 0 e 255, mentre i punti sono dei separatori. I seguenti esempi sono indirizzi IPv4 considerati validi:

  • 1.2.3.4
  • 01.102.103.104

mentre questi non lo sono:

  • 1.2.3.999 (999 non è ammesso essendo maggiore di 255)
  • 01.102.103 (è un indirizzo IP incompleto)

Un indirizzo IPv6 può invece avere uno dei due formati seguenti, ovvero in forma normale (IPv6 “puro”) e in forma duale (IPv6 + IPv4 assieme). Un indirizzo IPv6 (in forma normale) ha il formato

y:y:y:y:y:y:y:y

dove y è chiamato segmento e può essere qualsiasi valore esadecimale compreso tra 0 e FFFF. I segmenti sono separati dai due punti (:), non da punti singoli. Un indirizzo IPv6 in forma normale deve avere otto segmenti; sono possibili eccezioni per alcuni dispositivi e in alcune circostanze. Di seguito sono riportati esempi di indirizzi IPv6 (in forma normale) considerati tutti validi:

  • 2001:db8:3333:4444:5555:7777:6666:8888
  • 2001:db8:3333:4444:CCCC:EEEE:DDDD:FFFF
  • :: (significa che si tratta dell’indirizzo con tutti zeri)
  • 2001:db8:: (ultimi segmenti mancanti, 6 in tutto, sono a zero)
  • ::1234:5678 (primi segmenti mancanti, 6 in tutto anche in questo caso, sono a zero)
  • 2001:db8::1234:5678 (segmenti intermedi mancanti, 4 questa volta, sono a zero)
  • 2001:0db8:0001:0000:0000:0b7h:C0A8:0102 si può scrivere meglio come 2001:db8:1::ab9:C0A8:102 (maiuscole e minuscole per le lettere sono indifferenti).

Indirizzi IP “misti” IPv4+IPv6

Un indirizzo IPv6 (duale) al contrario combina un indirizzo IPv6 e un indirizzo IPv4, e possiede il seguente formato “misto”:

y:y:y:y:y:y:x.x.x.x

La parte IPv6 dell’indirizzo (indicata con y, separatore :, in corsivo) è sempre all’inizio, seguita dalla parte IPv4 (indicata invece con x, separatore .). Nella parte IPv6 dell’indirizzo, y viene detto segmento e può essere qualsiasi valore esadecimale compreso tra 0 e FFFF, anche in questo caso. La parte IPv6 dell’indirizzo deve sempre avere sei segmenti, ma attenzione ad eventuali forme abbreviate.

Nella porzione IPv4 dell’indirizzo (in grassetto) x è chiamato ottetto, anche qui, e deve essere un valore decimale compreso tra 0 e 255. Gli ottetti sono separati da punti. La parte IPv4 dell’indirizzo deve avere in tuttto tre punti e quattro ottetti.

Di seguito sono riportati esempi di indirizzi IPv6 (duale) validi:

2001:db8:3333:4444:5555:6666:1.2.3.4
::11.22.33.44 (implica che tutti e sei i segmenti IPv6 sono zero)
2001:db8::123.123.123.123 (implica che gli ultimi quattro segmenti IPv6 sono zero)
::1234:5678:91.123.4.56 (implica che i primi quattro segmenti IPv6 sono zero)
::1234:5678:1.2.3.4 (implica che i primi quattro segmenti IPv6 sono zero)
2001:db8::1234:5678:5.6.7.8 (implica che i due segmenti IPv6 centrali sono zero)

Subnet mask: le maschere di sottorete (IPv4) o prefissi (IPv6)

Le subnet mask (IPv4) e le lunghezze dei prefissi (IPv6) identificano un intervallo di indirizzi IP che si trovano sulla stessa rete. Come ricordato nella guida, in genere tutti gli indirizzi IP di una qualsiasi rete sono divisi in porzioni. Una porzione identifica la rete di appartenenenza mentre l’altra parte identifica la macchina o l’host specifico all’interno della rete (il numero di host allocabili, peraltro). Le maschere di sottorete (IPv4) e i prefissi (IPv6) identificano l’intervallo di indirizzi IP che costituiscono una sottorete o un gruppo di indirizzi IP sulla stessa rete.

La suddivisione della rete di un’organizzazione in sottoreti consente di connetterla a Internet con un unico indirizzo di rete condiviso, anche nel caso di IPv6, sfruttando l’algoritmo di routing detto Classless-InterDomain Routing (CIDR). Nell’indirizzo IPv6 è facile (speriamo) intuire che

2001:db8:abcd:0012:0000:0000:0000:0000

l’indirizzo di rete è 2001:db8:abcd e l’indirizzo di sottorete è 12.

Quanti indirizzi IP sono assegnabili in un IPv6?

Nel contesto di IPv6, quando si parla di “classe”, ci si riferisce generalmente alla lunghezza del prefisso di rete utilizzato nella notazione CIDR (Classless Inter-Domain Routing) per assegnare blocchi di indirizzi IPv6. In IPv6 non esiste la suddivisione in classi come avveniva in IPv4 (classe A, classe B, classe C, …). In IPv6, al contrario, si utilizza il prefisso di rete per indicare quante cifre binarie dell’indirizzo IP rappresentano la parte di rete e quante rappresentano la parte di host.

Questo metodo permette una maggiore flessibilità nella suddivisione degli indirizzi IP e nell’allocazione degli stessi. Quindi, quando si menziona una “classe /56” in IPv6, ci si riferisce al fatto che i primi 56 bit dell’indirizzo IPv6 sono riservati per la parte di rete, mentre i restanti bit sono riservati per la parte di host. Questo determina la dimensione della sottorete e il numero di host che possono essere collegati a quella sottorete.

Per calcolare il numero di indirizzi IPv6 contenuti in una classe /56, ad esempio, possiamo utilizzare la seguente procedura:

  1. In IPv6, un indirizzo IP è lungo 128 bit.
  2. Una classe /56 assegna 56 bit per la parte di rete e 128 – 56 = 72 bit per la parte di host.

Ora, per calcolare il numero di indirizzi IPv6 possibili nella parte di host:

2^72

Quindi, il numero totale di indirizzi IP in una classe /56 sarebbe:

2^72 x 2^56= 2^56 (2^16+1)

Quindi, una classe /56 in IPv6 contiene quel numero di indirizzi IP, che sono circa mille miliardi di miliardi di indirizzi.

👇 Da non perdere 👇



Questo sito web esiste da 4469 giorni (12 anni), e contiene ad oggi 7447 articoli (circa 5.957.600 parole in tutto) e 13 servizi online gratuiti. – Leggi un altro articolo a caso
5/5 (1)

Ti sembra utile o interessante? Vota e fammelo sapere.

Questo sito contribuisce alla audience di sè stesso.
Il nostro network informativo: Lipercubo.it - Pagare.online - Trovalost.it.