O espaço de endereçamento, que era de 32 bits na versão 4 do IP passa a ser de 128 bits. Assim, enquanto IPv4 suportava 4 bilhões de nodos, IPv6 pode endereçar 3.4 x 10^38 nodos [MOR 96].
IPv6 abandona a idéia de classes de endereços, mas baseia-se em prefixos como IPv4, mudando a função desses prefixos. Eles não mais identificam as diferentes classes de endereços, mas diferentes usos de endereços. A tabela abaixo identifica esses prefixos:
0000 0000 | reservado (incluindo IPv4) |
0000 0001 | não usado |
0000 001 | reservado para OSI NSAP |
0000 010 | reservado para Novell NetWare IPX |
0000 011 | não usado |
0000 1 | não usado |
0001 | não usado |
001 | não usado |
010 | Provider-Based unicast |
011 | não usado |
100 | Geographic-Based unicast |
101 | não usado |
110 | não usado |
1110 | não usado |
1111 0 | não usado |
1111 10 | não usado |
1111 110 | não usado |
1111 1110 | não usado |
1111 1110 0 | não usado |
1111 1110 10 | Link Local Use |
1111 1110 11 | Site Local Use |
1111 1111 | Multicast |
Endereços que começam com 80 zeros são reservados para endereçamento IPv4. Duas variantes são suportadas, identificadas nos 16 bits seguintes, que suportarão que IPv6 trafegue numa estrutura ainda baseada em IPv4 [TAN 96].
Duas porções de endereços são reservadas para encapsulamento de protocolos que não sejam o IP, como OSI NSAP e Novell IPX.
O prefixo Provider-Based identifica provedores de acesso. Esse prefixo permite que empresas que provêem acesso à internet ganhem uma grande parcela do espaço de endereçamento, e a dividam hierarquicamente, como CIDR [HIN 95], como mostra a figura:
3 bits | n bits | m bits | x bits | y bits | x-y bits |
010 | REGISTRY ID | PROVIDER ID | SUBSCRIBER ID | SBNET ID | INTERFACE ID |
Os primeiros 3 bits do endereço identificam o prefixo. O próximo campo identifica o registro na internet do provedor, identificado no campo seguinte. O provedor pode, então, alocar porções para assinantes. Através do campo SUBSCRIBER ID, os assinates são identificados naquele provedor. SUBNET ID identifica uma subrede, uma ligação física específica. Pode haver mais de uma subrede na mesma ligação física, mas não pode haver mais de uma ligação física na mesma subrede. o último campo identifica a interface ligada na rede (host). Espera-se que para o campo de registro use-se 5 bits, e para o campo de provedores use-se 3 bytes.
O prefixo Geographic-Based é muito similar ao modelo atual, no qual os provedores não alocam grandes espaços. O prefixo indicaria a posição geográfica da rede, e não a partir daonde ela conectada.
Os endereços de uso local (link e site) são, como o próprio nome diz, para uso local, para que máquinas possam se autoconfigurar ao serem conectadas.
O prefixo de link local tem o seguinte formato, sendo o mais indicado para autoconfiguração:
10 bits | n bits | 118-n bits |
1111111010 | 0 | INTERFACE ID |
E o prefixo de site local tem o seguinte formato:
10 bits | n bits | m bits | 118-n-m bits |
1111111011 | 0 | SUBNET ID | INTERFACE ID |
Para ambos os tipos INTERFACE ID deve ser único por interface, não podendo se repetir. O campo SUBNET identifica uma subrede dentro desse domínio. O uso desse tipo de endereçamento é útil para a construção de intranets, onde se pode construir uma rede baseada na arquitetura TCP/IP sem se ter endereços alocados. A vantagem desse tipo de endereçamento é que enquanto uma rede intranet usando a versão 4 do IP, ao se ligar na internet, deve trocar todos os endereços IP das máquinas conectadas a ela, com esse esquema ela pode usar seu endereço de rede e interface em conjunto com um prefixo global alocado a ela, por exemplo, com o prefixo Provider-Based.