I 128 bit di un indirizzo IPv6 sono suddivisi in 8 blocchi di 16 bit. Tramite una scrittura esadecimale si può annotare un blocco di 16 bit con 4 cifre e lettere. I due punti sono utilizzati come elemento di separazione:
- 2001:0620:0000:0000:0211:24FF:FE80:C12C
Per strutturare l’indirizzo IPv6 in un modo più agevole, si è affermata una forma di scrittura più breve, in cui possono essere tralasciati gli 0 introduttivi all’interno dei blocchi esadecimali. Se un blocco esadecimale è composto esclusivamente da zeri, l’ultimo è quello che deve rimanere:
- 2001:0620:0000:0000:0211:24FF:FE80:C12C
- 2001:620:0:0:211:24FF:FE80:C12C
Inoltre, per ogni indirizzo IPv6 è possibile cancellare una volta i blocchi di zeri consecutivi in qualsiasi punto si trovino:
- 2001:620:0:0:211:24FF:FE80:C12C
- 2001:620::211:24FF:FE80:C12C
Questa omissione si indica con due punti consecutivi (nell’esempio sopra presenti dopo il secondo blocco).
Praticamente gli utenti hanno a disposizione meno indirizzi di quanto il formato a 128 bit lasci supporre. Uno dei motivi è il criterio utilizzato per la struttura dell’IPv6: diversamente dai suoi predecessori, il nuovo standard dovrebbe consentire una vera connessione end-to-end e rendere superflua la conversione di indirizzi IP privati in pubblici, ricorrendo alla NAT (Network Address Translation). Teoricamente si può realizzare una connessione end-to-end anche con un indirizzo IPv4, ma poiché lo spazio di indirizzamento dell’IPv4 è troppo piccolo per assegnare ad ogni dispositivo un indirizzo unico, è stato sviluppato un sistema con spazi di indirizzamento separati e componenti NAT comunicanti. Con il nuovo standard ogni dispositivo, collegato ad una LAN, può essere indirizzato logicamente tramite un proprio IP. Gli indirizzi IPv6 comprendono perciò, oltre alla parte relativa all’indirizzamento di rete (chiamata anche indirizzo di rete o prefisso di routing), un Interface Identifier univoco, che risulta dall’indirizzo MAC della scheda di rete del dispositivo o viene generato manualmente. Sia il prefisso di routing che l’Interface Identifier comprendono ciascuno 64 bit di un indirizzo IPv6.