Na fase inicial de projeto e design do IPv6, foi planejada a utilização hierárquica de roteamento para reduzir o tamanho das tabelas de roteamento ao menor valor possível. As razões por trás desta abordagem foram o grande número de rotas nos grandes roteadores de borda (cerca de 300.000 em janeiro de 2011), reduzindo a necessidade de memória nos routers e a capacidade de se utilizar chips ASIC (Application Specified Integrated Circuit) para manipular esta tabela, aumentando a velocidade (uma tabela menor aumenta a velocidade).
A visão de hoje é que o roteamento será mais hierárquico para redes com somente 1 ISP. Em redes com mais de 1 conexão, isto não é possível, e está sujeita a sistemas multi-homed (informações de multi-homing:drafts-ietf-multi6-*,IPv6 Multihoming Solutions).
Semelhante ao IPv4, a rede roteável entra em cena. Por causa da notação do padrão de máscara de rede (128 bits) não parecer bom, os designers utilizaram o mesmo método utilizado no IPv4, chamado Classless Inter Domain Routing (CIDR,RFC 1519 / Classless Inter-Domain Routing)o qual especifica o número de bits do endereço IP que será usado para o roteamento. E ele também é chamado notação "slash".
Exemplo:
2001:0db8:100:1:2:3:4:5/48 |
Esta notação pode ser expandida:
Rede:
2001:0db8:0100:0000:0000:0000:0000:0000 |
Máscara de rede:
ffff:ffff:ffff:0000:0000:0000:0000:0000 |
Em circunstancias normais, (sem QoS), a procura em uma tabela de roteamento resulta na rota mais adequada com o número mais significante de bits do endereço. Em outras palavras, a rota com o maior prefixo tem a preferencia.
Por exemplo, se uma tabela de rotas mostra as seguintes entradas (a lista é parcial):
2001:0db8:100::/48 :: U 1 0 0 sit1 2000::/3 ::192.88.99.1 UG 1 0 0 tun6to4 |
Os endereços de destino mostrados dos pacotes IPv6 serão roteados através das interfaces mostradas
2001:0db8:100:1:2:3:4:5/48 -> routed through device sit1 2001:0db8:200:1:2:3:4:5/48 -> routed through device tun6to4 |