Livro IPv6 Básico RNP
Livro IPv6 Básico RNP
básico
Antônio Marcos Moreiras
Alexandre Yukio Harano
Eduardo Barasal Morales
Edwin Santos Cordeiro
Heitor de Souza Ganzeli
Rodrigo Matos Carnier
Rodrigo Regis dos Santos
A RNP – Rede Nacional de Ensino
e Pesquisa – é qualificada como
uma Organização Social (OS),
sendo ligada ao Ministério da
Ciência, Tecnologia e Inovação
(MCTI) e responsável pelo
Programa Interministerial RNP,
que conta com a participação dos
ministérios da Educação (MEC), da
Saúde (MS) e da Cultura (MinC).
Pioneira no acesso à Internet no
Brasil, a RNP planeja e mantém a
rede Ipê, a rede óptica nacional
acadêmica de alto desempenho.
Com Pontos de Presença nas
27 unidades da federação, a rede
tem mais de 800 instituições
conectadas. São aproximadamente
3,5 milhões de usuários usufruindo
de uma infraestrutura de redes
avançadas para comunicação,
computação e experimentação,
que contribui para a integração
entre o sistema de Ciência e
Tecnologia, Educação Superior,
Saúde e Cultura.
Ministério da
Cultura
Ministério da
Saúde
Ministério da
Educação
Ministério da
Ciência, Tecnologia
e Inovação
IPv6
Básico
Antônio Marcos Moreiras
Alexandre Yukio Harano
Eduardo Barasal Morales
Edwin Santos Cordeiro
Heitor de Souza Ganzeli
Rodrigo Matos Carnier
Rodrigo Regis dos Santos
Colaboração
Tiago Jun Nakamura
Tuany Oguro Tabos
IPv6
Básico
Colaboração
Tiago Jun Nakamura
Tuany Oguro Tabosa
Rio de Janeiro
Escola Superior de Redes
2014
Copyright © 2014 – Rede Nacional de Ensino e Pesquisa – RNP
Rua Lauro Müller, 116 sala 1103
22290-906 Rio de Janeiro, RJ
Diretor Geral
Nelson Simões
Edição
Pedro Sangirardi
Revisão técnica
Luiz Carlos Lobato
Versão
3.0.0
Este material didático foi elaborado com fins educacionais. Solicitamos que qualquer erro encon-
trado ou dúvida com relação ao material ou seu uso seja enviado para a equipe de elaboração de
conteúdo da Escola Superior de Redes, no e-mail [email protected]. A Rede Nacional de Ensino e
Pesquisa e os autores não assumem qualquer responsabilidade por eventuais danos ou perdas, a
pessoas ou bens, originados do uso deste material.
As marcas registradas mencionadas neste material pertencem aos respectivos titulares.
Distribuição
Escola Superior de Redes
Rua Lauro Müller, 116 – sala 1103
22290-906 Rio de Janeiro, RJ
http://esr.rnp.br
[email protected]
I64 IPV6 básico / Rodrigo Regis dos Santos ... [et. al.]; colaboração Sidney C. de Lucena. – 3. ed.
– Rio de Janeiro: RNP/ESR, 2014.
210 p.: il.; 28cm.
CDD 004.62
Sumário
A metodologia da ESR ix
Sobre o curso x
Permissões de uso xi
Sobre os autores xii
1. Histórico do IPv6
Introdução 1
A internet e o TCP/IP 2
Soluções paliativas 6
NAT 7
Soluções 10
IPv6 11
Governança da internet 15
iii
A transição do IPv4 para o IPv6 19
IPv6 em uso 21
2. Cabeçalho IPv6
Cabeçalho IPv4 27
Cabeçalho IPv6 28
Cabeçalhos de extensão 33
Routing 35
Fragmentation 36
3. Endereçamento IPv6
Endereçamento 39
Unicast 41
Global Unicast 41
Unique local 42
EUI-64 44
Anycast 46
Multicast 47
Flags e escopo 47
Endereço Solicited-Node 49
Abordagem conservadora 52
iv
Considerações 54
4. ICMPv6 – Parte 1
ICMPv6 59
Descoberta de Vizinhança 64
Prefix information 75
Redirected header 76
MTU 77
5. ICMPv6 – Parte 2
Descoberta de endereços da camada de enlace 79
Redirecionamento 85
6. Funcionalidades do IPv6
Path MTU Discovery 95
Jumbograms 96
DiffServ 99
IntServ 100
v
Suporte à mobilidade no IPv6 100
Binding Updates 101
Tunelamento bidirecional 103
Otimização de Rota 103
Mobility 104
7. Protocolo DNS
O protocolo DNS 107
Definições 108
Domínio 108
Zonas de autoridade 109
Registro de recursos 110
Mapeamento direto 112
Mapeamento reverso 113
8. Segurança
A questão da segurança 117
Segurança no IPv6 117
IPSec 124
Endereços – CGA 128
Recomendações 129
vi
Túneis 6over4 (IPv6-over-IPv4) 140
Técnicas de tunelamento 140
Túneis GRE 144
Tunnel Broker 145
NAT64 e DNS64 161
464XLAT 165
6PE e 6VPE 169
6rd 170
6to4 173
Teredo 177
ISATAP 184
Inicialização do ISATAP 185
A+P 189
NAT444 190
Técnicas de tradução 191
SIIT 191
BIS 192
BIA 193
TRT 194
ALG e DNS-ALG 194
Segurança na transição 195
Considerações finais 195
11. Planejamento
O planejamento 199
O impacto do IPv6 200
vii
12. O IPv6 na RNP
IPv6 na RNP 205
viii
Escola Superior de Redes
A Escola Superior de Redes (ESR) é a unidade da Rede Nacional de Ensino e Pesquisa (RNP)
responsável pela disseminação do conhecimento em Tecnologias da Informação e Comunica-
ção (TIC). A ESR nasce com a proposta de ser a formadora e disseminadora de competências
em TIC para o corpo técnico-administrativo das universidades federais, escolas técnicas e
unidades federais de pesquisa. Sua missão fundamental é realizar a capacitação técnica do
corpo funcional das organizações usuárias da RNP, para o exercício de competências aplicá-
veis ao uso eficaz e eficiente das TIC.
A ESR oferece dezenas de cursos distribuídos nas áreas temáticas: Administração e Projeto
de Redes, Administração de Sistemas, Segurança, Mídias de Suporte à Colaboração Digital e
Governança de TI.
A metodologia da ESR
A filosofia pedagógica e a metodologia que orientam os cursos da ESR são baseadas na
aprendizagem como construção do conhecimento por meio da resolução de problemas típi-
cos da realidade do profissional em formação. Os resultados obtidos nos cursos de natureza
teórico-prática são otimizados, pois o instrutor, auxiliado pelo material didático, atua não
apenas como expositor de conceitos e informações, mas principalmente como orientador do
aluno na execução de atividades contextualizadas nas situações do cotidiano profissional.
Dessa forma, o instrutor tem participação ativa e dialógica como orientador do aluno para as
atividades em laboratório. Até mesmo a apresentação da teoria no início da sessão de apren-
dizagem não é considerada uma simples exposição de conceitos e informações. O instrutor
busca incentivar a participação dos alunos continuamente.
ix
As sessões de aprendizagem onde se dão a apresentação dos conteúdos e a realização das
atividades práticas têm formato presencial e essencialmente prático, utilizando técnicas de
estudo dirigido individual, trabalho em equipe e práticas orientadas para o contexto de atua-
ção do futuro especialista que se pretende formar.
Sobre o curso
O protocolo IPv6, há muito tempo lançado como o sucessor do protocolo IP versão 4 (IPv4),
vem sendo tratado com importância crescente ao longo dos últimos anos. Com a previsão
do Internet Assigned Numbers Authority (IANA) para o término das grandes faixas de IPv4
cedidas aos provedores de acesso Internet (ISPs), a alocação de faixas IPv6 pelos ISPs tem
crescido exponencialmente.
Hoje, a grande maioria dos ISPs de nível mundial possui o protocolo IPv6 nativamente configu-
rado em seus roteadores, e isso também passa a ocorrer com ISPs de nível regional. Ciente da
importância de uma política de incentivo à adoção do IPv6 pelas comunidades de TIC brasilei-
ras, o Comitê Gestor da Internet no Brasil (CGI.br) lançou o curso IPv6 Básico, voltado para os
profissionais de TIC envolvidos na migração do IPv4 para IPv6.
Este curso, de cunho teórico e prático, não se limita somente a mostrar as diferenças básicas
entre os dois protocolos e as novas funcionalidades do IPv6. Apresenta várias técnicas e
práticas de planejamento e configuração de endereçamento IPv6, proporcionando o enten-
dimento na prática de como ocorre a migração de IPv4 para IPv6. A Escola Superior de Redes
da RNP tem orgulho de ser parceira do CGI.br nesta importante iniciativa, adaptando para seu
portfólio este valioso material.
x
A quem se destina
O curso é destinado aos técnicos e administradores de redes que planejam implementar o
IPv6 em suas redes, aos engenheiros de redes das universidades federais e pontos de pre-
sença da RNP que pretendem atualizar seus conhecimentos em redes IPv6 e aos acadêmicos
com interesse de pesquisa em rede e tecnologia da Internet.
Itálico
Indica nomes de arquivos e referências bibliográficas relacionadas ao longo do texto.
Largura constante
Indica comandos e suas opções, variáveis e atributos, conteúdo de arquivos e resultado da saída
de comandos. Comandos que serão digitados pelo usuário são grifados em negrito e possuem
o prefixo do ambiente em uso (no Linux é normalmente # ou $, enquanto no Windows é C:\).
Conteúdo de slide q
Indica o conteúdo dos slides referentes ao curso apresentados em sala de aula.
Símbolo w
Indica referência complementar disponível em site ou página na internet.
Símbolo d
Indica um documento como referência complementar.
Símbolo v
Indica um vídeo como referência complementar.
Símbolo s
Indica um arquivo de aúdio como referência complementar.
Símbolo
Indica um aviso ou precaução a ser considerada.
Símbolo p
Indica questionamentos que estimulam a reflexão ou apresenta conteúdo de apoio ao
entendimento do tema em questão.
Símbolo l
Indica notas e informações complementares como dicas, sugestões de leitura adicional ou
mesmo uma observação.
Permissões de uso
Todos os direitos reservados à RNP.
Agradecemos sempre citar esta fonte quando incluir parte deste livro em outra obra.
Exemplo de citação: TORRES, Pedro et al. Administração de Sistemas Linux: Redes e Segurança.
Rio de Janeiro: Escola Superior de Redes, RNP, 2013.
xi
Comentários e perguntas
Para enviar comentários e perguntas sobre esta publicação:
Escola Superior de Redes RNP
Endereço: Av. Lauro Müller 116 sala 1103 – Botafogo
Rio de Janeiro – RJ – 22290-906
E-mail: [email protected]
Sobre os autores
“Os autores e colaboradores trabalham no CEPTRO.br, área do Núcleo de Informação e
Coordenação do Ponto BR - NIC.br, responsável por serviços e projetos relacionados princi-
palmente à infraestrutura da Internet no Brasil e ao seu desenvolvimento. A equipe desen-
volve soluções em infraestrutura de redes, software e hardware, além de gerenciar projetos
executados por parceiros externos.
Dentre os projetos coordenados pelo CEPTRO.br, destaca-se o IPv6.br. Projeto que engloba
uma série de iniciativas do NIC.br para disseminar o uso do protocolo IPv6 no Brasil, ofe-
recendo cursos presenciais e a distância, desenvolvendo materiais didáticos, ministrando
palestras e mantendo o site web http://ipv6.br, o blog http://ipv6.br/blog, o validador de sites
web para IPv6 http://ipv6.br/validador e o curso e-learning http://ipv6.br/curso.”.
xii
1
Histórico do IPv6
objetivos
conceitos
Soluções paliativas para o esgotamento de endereços IPv4: NAT (Network Address
Translation); Nova versão do IP: IPv6; Demanda por endereços IPv4; Transição do IPv4
para IPv6; Alocação de blocos IPv6
Introdução
Neste capítulo introdutório, além de conhecer um pouco da história da internet e do desenvolvi-
mento do protocolo IP, vamos entender os problemas causados pela forma adotada inicialmente
para distribuição dos endereços IP e pelo rápido crescimento da internet, além de conhecer as
soluções para resolver esses problemas. Seguindo esse histórico, veremos como algumas dessas
soluções evoluíram até chegarmos à definição da versão 6 do protocolo IP, o IPv6.
A internet é um fenômeno muito recente, mas que alterou, e continua alterando, a forma
como nos comunicamos, trabalhamos, compramos, vendemos, nos divertimos, nos rela-
cionamos com o Estado e mesmo como nos organizamos enquanto sociedade. Seu efeito
tem sido, em geral, benéfico. Tanto que muitos argumentam que o acesso a ela deveria ser
considerado um direito fundamental de todo ser humano. A internet quebra fronteiras geo-
Capítulo 1 - Histórico do IPv6
gráficas, socializa a informação, permite a colaboração entre as pessoas numa escala antes
inimaginável e favorece o desenvolvimento, tanto dos indivíduos, como das organizações.
Sem dúvida, a internet é algo que a sociedade deve preservar, e mais: deve trabalhar para
que seja algo de que todos possam usufruir, e cujo desenvolvimento seja sempre contínuo.
Do ponto de vista tecnológico, a internet é uma rede de alcance mundial, que interliga com-
putadores, tablets, celulares e uma infinidade de outros dispositivos. Na verdade, como seu
próprio nome sugere, é formada por uma interconexão de um grande número de redes, mais
ou menos independentes umas das outras. As diversas redes que compõem a internet são
1
administradas por diferentes instituições, que têm objetivos diversos e usam equipamentos
de vários fabricantes. Ainda assim, todas são capazes de interoperar. Como isso é possível?
l
de forma muito eficiente, e a construção de redes extremamente resilientes, em que pode
haver muitos caminhos diferentes entre dois pontos quaisquer.
O IPv6 é a versão mais
recente do protocolo IP.
Quem separa a internet das telecomunicações é justamente o IP. Ela tem de ser implan-
tada rapidamente na
internet, porque a
versão anterior, o IPv4,
O Protocolo Internet é o responsável por identificar cada dispositivo presente na rede, por meio
não é mais capaz de
de números que chamamos de endereços, e por encapsular todos os dados que fluem através suportar o crescimento
dela, agregando a eles informações suficientes para que cheguem a seus destinos. O IP pode da rede: não há mais
endereços livres.
fazer uso de diversos tipos de redes de telecomunicações diferentes, criando uma camada
padronizada sobre a qual todos os demais protocolos e serviços na internet funcionam.
A internet e o TCP/IP
11 1969: início da ARPANET. q
11 1981: definição do IPv4 na RFC 791.
e robusta que pudesse, mesmo com a queda de alguma estação, trabalhar com os computa- Estados Unidos.
dores e ligações de comunicação restantes. Em 1969, são instalados os primeiros quatro nós da
rede: na Universidade de Los Angeles (UCLA), na Universidade da Califórnia em Santa Bárbara
(UCSB), no Instituto de Pesquisas de Stanford (SRI) e na Universidade de Utah.
2
Figura 1.1
Rede Arpa (fonte:
Alex Mckenzie).
Figura 1.2
Mapa lógico dos
primeiros quatro
nós da ARPANET,
em dezembro
de 1969, como
esboçado por Larry
Roberts (fonte:
Computer History
Museum).
Um ponto interessante a ser notado é que, apesar de ter nascido como um projeto militar,
desde o início a ARPANET foi utilizada para conectar instituições de pesquisa, e sempre foi
baseada em padrões abertos. Talvez esse tenha sido um fator fundamental para sua evo-
lução para a internet que todos conhecem hoje, um ambiente aberto e propício à inovação,
3
com um gerenciamento que não é centralizado, mas dividido entre diversas instituições,
com a participação de operadores e usuários, incluindo a iniciativa privada, o governo e a
sociedade civil.
Definido na RFC 791, o protocolo IP possui duas funções básicas: RFC 791
Especificação do pro-
11 Fragmentação: permite o envio de pacotes maiores que o limite de tráfego estabelecido tocolo IP do Programa
de um enlace, dividindo-os em partes menores; Internet da DARPA.
11 Classe A:
11 Classe B.
11 Classe C.
11 Endereços reservados.
11 Classe A: define o bit mais significativo como 0, utiliza os 7 bits restantes do primeiro
octeto para identificar a rede, e os 24 bits restantes para identificar o host. Esses ende-
reços utilizam a faixa de 1.0.0.0 até 126.0.0.0;
11 Classe B: define os 2 bits mais significativos como 10, utiliza os 14 bits seguintes para
identificar a rede, e os 16 bits restantes para identificar o host. Esses endereços utilizam a
faixa de 128.1.0.0 até 191.254.0.0;
11 Classe C: define os 3 bits mais significativos como 110, utiliza os 21 bits seguintes para
identificar a rede, e os 8 bits restantes para identificar o host. Esses endereços utilizam a
faixa de 192.0.1.0 até 223.255.254.0.
4
Embora o intuito dessa divisão tenha sido tornar a distribuição de endereços mais flexível,
abrangendo redes de tamanhos variados, esse tipo de classificação mostrou-se ineficiente.
Dessa forma, a classe A atenderia um número muito pequeno de redes, mas ocupava
metade de todos os endereços disponíveis; para endereçar 300 dispositivos em uma rede,
seria necessário obter um bloco de endereços da classe B, desperdiçando assim quase o
total dos 65 mil endereços; e os 256 endereços da classe C não supriam as necessidades da
grande maioria das redes.
Outro fator que colaborava com o desperdício de endereços era o fato de que dezenas de
faixas classe A foram atribuídas integralmente a grandes instituições como IBM, AT&T, Xerox,
HP, Apple, MIT, Ford, DoD, entre muitas outras, disponibilizando para cada uma 16.777.216
milhões de endereços. Além disso, 35 faixas de endereços classe A foram reservadas para
Multicast finalidades específicas, como multicast, loopback e uso futuro.
Técnica que permite a entrega
de cópias de um mesmo pacote Em 1990, já existiam 313.000 hosts conectados à rede, e estudos já apontavam para um
a um determinado subconjunto possível colapso causado pela falta de endereços. Os problemas do aumento da tabela de
de estações.
roteamento se agravava, conforme a internet evoluía.
1981 213 –
1982 235 –
1983 562 –
1984 1.024 –
d 1985 1.961 –
Mais informações nas
1986 5.089 –
RFCs:
1287: Towards the 1987 28.174 –
Future Internet
Architecture. 1988 56.000 1.280
1296: Internet Growth
(1981-1991). 1989 159.000 4.800
3330: Special-Use IPv4
Addresses. 1990 313.000 9.300
5
Mapa de endereços IPv4
Visualização das informações da tabela de roteamento BGP.
Figura 1.3
Mapa de endereços
IPv4 (fonte: The
Measurement
Factory).
Essa imagem, extraída do projeto Routeviews, mostra uma visualização das informações da
tabela de roteamento BGP. Nela, o espaço de endereço IPv4 unidimensional é mapeado em
uma imagem de bidimensional, onde blocos CIDR sempre aparecem como quadrados ou
Para saber mais sobre
retângulos. o mapa de endereços
IPv4, acesse:
É possível observar, na figura, os grandes blocos classe A, no quadrante esquerdo superior, http://maps.measure-
distribuídos para instituições como HP, DEC, AT&T, Apple, MIT, GE, Level3, IBM, Merit etc. e ment-factory.com/
como, desproporcionalmente, regiões como a do LACNIC usaram pouco espaço.
Soluções paliativas
11 1992: IETF cria o grupo Routing and Addressing (ROAD). q
11 CIDR (RFC 4632):
11 DHCP:
Diante desse cenário, a Internet Engineering Task Force (IETF) passa a discutir estratégias IETF
IPv6 Básico
para solucionar a questão do esgotamento dos endereços IP e o problema do aumento da Grupo de pesquisa-
dores que atua como
tabela de roteamento. Para isso, em novembro de 1991, é formado o grupo de trabalho
corpo editorial e de
Routing and Addressing (ROAD), que apresenta como solução a esses problemas a utilização revisão técnica dos
do Classless Inter-domain Routing (CIDR). padrões da internet.
6
Definido na RFC 4632, que tornou obsoleta a RFC 1519, o CIDR tem como ideia básica o fim
do uso de classes de endereços, permitindo a alocação de blocos de tamanho apropriado à
real necessidade de cada rede; e a agregação de rotas, reduzindo o tamanho da tabela de
roteamento. Com o CIDR os blocos são referenciados como prefixo de redes. Por exemplo,
no endereço a.b.c.d/x, os x bits mais significativos indicam o prefixo da rede. Outra forma de
indicar o prefixo é através de máscaras. Por exemplo, a máscara 255.0.0.0 indica um prefixo
/8, a máscara 255.255.0.0 indica um /16, e assim sucessivamente.
Outra solução, apresentada na RFC 2131, que tornou obsoleta a RFC 1541, foi o protocolo
DHCP Dynamic Host Configuration Protocol (DHCP). Através do DHCP um host é capaz de obter um
Protocolo de aplicação endereço IP automaticamente e adquirir informações adicionais, como máscara de sub-rede,
adotado no serviço de
endereço do roteador padrão e o endereço do servidor DNS local.
configuração dinâmica
de estações da arquite-
O DHCP tem sido muito utilizado por parte dos ISPs, por permitir a atribuição de endereços
tura TCP/IP, que permite
a uma estação obter IP temporários a seus clientes conectados. Dessa forma, torna-se desnecessário obter um
diversas informações de endereço para cada cliente, devendo-se apenas designar endereços dinamicamente, através
configuração, incluindo
de seu servidor DHCP. Esse servidor terá uma lista de endereços IP disponíveis, e toda vez
o endereço IP e a
máscara de rede. que um novo cliente se conectar à rede, um desses endereços será designado a ele de forma
arbitrária. Então, no momento que o cliente se desconecta, o endereço é devolvido.
IPv4
Internet
Provedor
Residência
NAT ou empresa
Figura 1.4
Network Address
Translation (NAT).
Capítulo 1 - Histórico do IPv6
NAT
11 Vantagens: q
22 Reduz a necessidade de endereços públicos.
7
11 Desvantagens: q
22 Quebra o modelo fim-a-fim da internet.
22 Não é escalável.
A Network Address Translation (NAT) foi outra técnica paliativa desenvolvida para resolver
o problema do esgotamento dos endereços IPv4. Definida na RFC 3022 (tornou obsoleta a
RFC 1631), tem como ideia básica permitir que, com um único endereço IP, ou um pequeno
número deles, vários hosts possam trafegar na internet. Dentro de uma rede, cada compu-
tador recebe um endereço IP privado único, que é utilizado para o roteamento do tráfego Endereço IP privado
interno. No entanto, quando um pacote precisa ser roteado para fora da rede, uma tradução Endereço IP reservado
de endereço é realizada, convertendo endereços IP privados em endereços IP públicos que possui unicidade
local e pode ser usado
globalmente únicos. de forma aberta por
qualquer organização,
Para tornar possível esse esquema, utilizam-se os três intervalos de endereços IP declarados sem autorização prévia.
como privados na RFC 1918, sendo que a única regra de utilização é que nenhum pacote
contendo esses endereços pode trafegar na internet pública. As três faixas reservadas são: Endereço IP público
Endereço IP que possui
11 10.0.0.0 a 10.255.255.255 /8 (16.777.216 hosts); unicidade global e
somente pode ser
11 172.16.0.0 a 172.31.255.255 /12 (1.048.576 hosts);
alocado para uma orga-
11 192.168.0.0 a 192.168.255.255 /16 (65.536 hosts). nização através de uma
instituição autorizada
A utilização da NAT mostrou-se eficiente no que diz respeito à economia de endereços IP, da internet.
além de apresentar alguns outros aspectos positivos, como facilitar a numeração interna
das redes, ocultar a topologia das redes e só permitir a entrada de pacotes gerados em
resposta a um pedido da rede. No entanto, o uso da NAT apresenta inconvenientes que não
compensam as vantagens oferecidas.
A NAT quebra o modelo fim-a-fim da internet, não permitindo conexões diretas entre dois hosts,
o que dificulta o funcionamento de uma série de aplicações, como P2P, VoIP e VPNs. Outro
problema é a baixa escalabilidade, pois o número de conexões simultâneas é limitado, além
de exigir um grande poder de processamento do dispositivo tradutor. O uso da NAT também
impossibilita rastrear o caminho do pacote, através de ferramentas como traceroute, e dificulta
a utilização de algumas técnicas de segurança, como IPSec. Além disso, seu uso passa uma falsa
sensação de segurança, pois, apesar de não permitir a entrada de pacotes não autorizados, a
NAT não realiza nenhum tipo de filtragem ou verificação nos pacotes que passam por ela.
IPv6 Básico
8
200
150
Blocos de endereços /8
100
NAT + CIDR
50
Figura 1.5
Alocações de
endereços IPv4 ao
0
longo do tempo 1985 1990 1995 2000 2005
pela IANA (fonte:
ICANN).
Alocações da IANA
Embora essas soluções tenham diminuído a demanda por IPs, não foram suficientes para
Internet Assigned
Numbers Authority resolver os problemas decorrentes do crescimento da internet. A adoção dessas técnicas
(IANA) reduziu em apenas 14% a quantidade de blocos de endereços solicitados à IANA, e a curva
Autoridade respon- de crescimento da internet continuava apresentando aumento exponencial.
sável pela alocação
dos números de portas Essas medidas, na verdade, serviram para que houvesse mais tempo para o desenvolvimento
reservadas e regis-
de uma nova versão do IP, que fosse baseada nos princípios que fizeram o sucesso do IPv4,
tradas.
mas que também fosse capaz de suprir as falhas apresentadas por ele.
Mais informações:
11 RFC 4632: Classless Inter-domain Routing (CIDR): The Internet Address Assignment and
Aggregation Plan.
Nova versão do IP
11 Essas medidas geraram mais tempo para desenvolver uma nova versão do IP. q
11 1992: IETF cria o grupo IP Next Generation (IPng).
11 Principais questões:
Capítulo 1 - Histórico do IPv6
22 Escalabilidade.
22 Segurança.
22 Suporte a QoS.
22 Mobilidade.
22 Políticas de roteamento.
22 Transição.
9
A IETF formalizou através da RFC 1550, em dezembro de 1993, as pesquisas a respeito da
nova versão do protocolo IP, solicitando o envio de projetos e propostas para o novo proto-
colo. Essa foi umas das primeiras ações do grupo de trabalho da IETF denominado Internet
Protocol Next Generation (IPng).
Soluções
11 CATNIP. q
11 TUBA.
11 SIPP.
11 IPng.
11 IPv6.
SIP
SIPP
SIPP 128
bits ver.
Figura 1.6
IPng Evolução das
propostas de uma
nova versão do
IPv6 protocolo IP (fonte:
Migrating to IPv6).
Em janeiro de 1995, na RFC 1752, o IPng apresentou um resumo das avaliações das três
principais propostas:
10
11 TUBA: sua proposta era aumentar o espaço para endereçamento do IPv4 e torná-lo mais
hierárquico, buscando evitar a necessidade de alteração dos protocolos das camadas de
transporte e aplicação. Pretendia uma migração simples e em longo prazo, baseada na
atualização dos hosts e servidores DNS, sem a necessidade, entretanto, de encapsula-
mento ou tradução de pacotes, ou mapeamento de endereços;
11 SIPP: concebido para ser uma etapa evolutiva do IPv4, sem mudanças radicais e man-
tendo a interoperabilidade com a versão 4 do protocolo IP, fornecia uma plataforma para
novas funcionalidades da internet, aumentava o espaço para endereçamento de 32 bits
para 64 bits, apresentava nível maior de hierarquia e era composto por um mecanismo
que permitia “alargar o endereço”, chamado de cluster addresses. Já possuía cabeçalhos
de extensão e um campo flow para identificar o tipo de fluxo de cada pacote;
Por que o protocolo IP passou da versão 4 direto para a versão 6? Existiu uma versão 5
experimental, também conhecida como IPST, para trafegar voz e vídeo sobre multicast.
Não chegou a ser amplamente utilizada. Ainda hoje podemos encontrar muitos de seus
conceitos no protocolo MPLS.
Entretanto, conforme relatado também na RFC 1752, todas as três propostas apresentavam
problemas significativos. Desse modo, a recomendação final para o novo Protocolo Internet
baseou-se em uma versão revisada do SIPP, que passou a incorporar endereços de 128 bits,
juntamente com os elementos de transição e autoconfiguração do TUBA, o endereçamento
baseado no CIDR e os cabeçalhos de extensão. O CATNIP, por ser considerado muito
incompleto, foi descartado.
Após essa definição, a nova versão do Protocolo Internet passou a ser chamada
oficialmente de IPv6.
Mais informações:
IPv6
11 Definido pela RFC 2460 em 1998. q
11 128 bits para endereçamento.
11 Cabeçalhos de extensão.
11
As especificações da IPv6 foram apresentadas inicialmente na RFC 1883, em dezembro
de 1995. No entanto, essa RFC foi substituída em dezembro de 1998 pela RFC 2460.
Como principais mudanças em relação ao IPv4, destacam-se:
11 Suporte a cabeçalhos de extensão: as opções não fazem mais parte do cabeçalho base,
permitindo roteamento mais eficaz, limites menos rigorosos em relação ao tamanho e à
quantidade de opções, e maior flexibilidade para a introdução de novas opções no futuro;
d
cialidade dos dados transmitidos.
22 28,7% da população.
11 Brasil:
12
Internet Domain Survey Host Count
800.000.000
700.000.000
600.000.000
500.000.000
400.000.000
300.000.000
200.000.000
100.000.000
0
Jan - 94
Jan - 95
Jan - 96
Jan - 97
Jan - 98
Jan - 99
Jan - 00
Jan - 01
Jan - 02
Jan - 03
Jan - 04
Jan - 05
Jan - 06
Jan - 07
Jan - 08
Jan - 09
Jan - 10
Figura 1.7 Source: Internet Systems Consortium (www.isc.org)
Crescimento do
número de hosts
na internet (fonte: Durante os últimos dez anos, durante o desenvolvimento do IPv6, a internet continuou
Internet Systems apresentando ritmo de crescimento cada vez mais acelerado. O número de hosts conec-
Consortium). tados à internet saltou de 30 milhões para aproximadamente 732 milhões em Jan/2010, com
número cada vez maior de usuários e dispositivos conectados à rede.
Essa expansão da internet pode ser medida por diversos fatores, e inúmeras pes-
quisas têm mostrado que esse crescimento não ocorre de forma isolada.
13
Regiões População Usuários de Usuários de % por Região Crescimento
(em 2010) Internet Internet (atu- 2000-2010
(em 2000) almente)
Seguindo essa tendência, no Brasil o percentual de domicílios com acesso à internet, via Tabela 1.3
computadores domésticos, aumentou de 12,93% em 2005, para 27% em 2009. Já o número Crescimento
dos usuários de
de conexões através de banda larga fixa alcançou o total de 11 milhões, superado em 2010 internet 2000-2009
pelo número de acessos a banda larga móvel. (fonte: www.
internetworldstats.
com).
Demanda crescente por endereços IPv4
Com isso, a demanda por endereços IPv4 também cresce: q
11 Em 2011 foram atribuídos pela IANA os últimos blocos /8 aos RIRs;
11 Estes últimos blocos poderão ser atribuídos pelos RIRs de forma restrita
Em setembro de 2008, os RIRs chegaram a um acordo quanto à política que será adotada pela RIR
IANA quando sua reserva de endereços atingir o limite de 5 blocos /8. Esses últimos /8 serão Regional Internet
Registries (Registros
imediatamente atribuídos a cada RIR, que os atribuirão entre os ISPs e Registros Nacionais.
Regionais de Internet).
Como consequência desse crescimento, a demanda por endereços IP também cresce
consideravelmente. Em 2011 foram atribuídos pelo IANA os últimos 5 blocos /8 ao RIRs.
IANA
Registros
Nacionais da Figura 1.8
Internet JPNIC VNNIC Estrutura dos
Japão Vietnã Registros Regionais
da Internet.
14
Governança da internet
11 Internet Assigned Numbers Authority (IANA). q
11 Internet Corporation for Assigned Names and Numbers (ICANN).
Figura 1.9
Gerenciamento
dos endereços IP
na internet (fonte:
IANA).
Embora a internet seja conhecida como uma rede mundial livre de uma coordenação
central, há órgãos responsáveis por administrar os principais aspectos técnicos necessários
l
ao seu funcionamento. As atribuições desses órgãos são distribuídas em nível mundial,
respeitando uma estrutura hierárquica.
A responsabilidade pela
distribuição local dos A Internet Assigned Numbers Authority (IANA) é a responsável pela coordenação e alocação
endereços IP é dos
Registros de Internet global do espaço de endereços IP e dos ASNs. Desde 1998, a IANA passou a operar através
(Internet Registry – IR), da Internet Corporation for Assigned Names and Numbers (ICANN), uma organização inter-
que são classificados
nacional dirigida por um conselho de diretores, provenientes de diversos países, que super-
de acordo com sua
função principal e visiona a ICANN e as políticas elaboradas por ela, trabalhando em parceria com governos,
alcance territorial empresas e organizações criadas por tratados internacionais, envolvidos na construção e
dentro da estrutura
Capítulo 1 - Histórico do IPv6
manutenção da internet.
hierárquica da internet.
Os Registros Regionais de Internet (Regional Internet Registries – RIR) são órgãos, reconhe-
cidos pela IANA, que atuam e representam grandes regiões geográficas. A função primordial
de um RIR é gerenciar e distribuir endereços IP públicos dentro de suas respectivas regiões.
Existem cinco RIRs:
15
11 American Registry for Internet Numbers (ARIN), responsável pela América do Norte;
11 Latin American and Caribbean Internet Addresses Registry (LACNIC), que atua na América
Latina e em algumas ilhas do Caribe;
11 Réseaux IP Européens Network Coordination Centre (RIPE NCC), que serve a Europa e
países da Ásia Central.
Um Registro Nacional de Internet (National Internet Registry – NIR) é o responsável pela alo-
cação dos endereços IP em nível nacional, distribuindo-os aos Registros Locais de Internet
(Local Internet Registry – LIR). Os LIRs são geralmente Internet Service Providers (ISPs), que
por sua vez podem oferecer esses endereços aos usuários finais ou outros ISPs.
107 103
96 92
100 87
78
75 65
55
48
50
34
26
25
14
0
0
1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011
Figura 1.10
Esse gráfico apresenta a evolução do estoque de blocos IP na IANA ao longo dos últimos Evolução do estoque
anos, até 2011. de blocos IPs até
2011 (fonte: NIC.br).
IPv6 Básico
16
6
/8s
0
1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009
Figura 1.11
Registros de IP e
registro de nomes
de domínios por Como está a implantação do IPv6?
regiões, até 2009.
11 Ritmo lento da adoção do IPv6. q
11 Expectativa de que o IPv6 fosse o padrão da internet.
11 NAT e DHCP.
17
IPv4 disponíveis
v6
IP
do
rnet ão
n to da inte taç
Crescime an
pl
Im
6 - 10 anos
Embora todos os números confirmem a necessidade de mais endereços IP, questão que será Figura 1.12
resolvida com a adoção do IPv6, o ritmo de implantação da nova versão do protocolo IP não Previsão inicial de
crescimento do
está ocorrendo da forma prevista no início de seu desenvolvimento, que apontava o IPv6 IPv6 (fonte: Geoff
como protocolo padrão da internet em aproximadamente dez anos após sua definição; se Huston e George
isso realmente tivesse ocorrido, o objetivo desse curso provavelmente seria outro. Michaelson).
Hoje
IPv4 disponíveis
ternet
nto da in
Crescime
Transição ?
Implantação do IPv6
Ainda há muita discussão em torno da implantação do IPv6 e alguns fatores têm atrasado a Figura 1.13
implantação do novo protocolo. Técnicas como NAT e o DHCP, apesar de dar-nos tempo para Situação atual do
crescimento do
desenvolver o IPv6, colaboraram para a demora em sua adoção. Aliado a isso, há o fato de o
IPv6 Básico
18
necessário que a infraestrutura dos principais ISPs seja capaz de transmitir tráfego IPv6 de
forma nativa. No entanto, sua implantação em redes maiores tem encontrado dificuldades,
entre outros fatores por causa do receio de mudanças radicais na forma de gerenciá-las, dos
gastos com a troca de equipamentos como roteadores e switches, e despesas com o apren-
dizado e treinamento para a área técnica.
IPv4
Jan 1983 Esgotamento do IPv4
Desativação do IPv4
Projeto
Tecnicamente, o plano ilustrado na Figura 1.13 era muito simples de ser executado. Contudo,
este não levou em consideração aspectos econômicos e políticos em toda a sua complexi-
dade. Embora o IPv6 tenha sido projetado para ser um protocolo melhor do que o IPv4, a
característica que realmente se sobressai é a grande capacidade de endereçamento. Ele
pode até ser superior em outros aspectos, mas não de forma que seja considerado um
grande diferencial. Os gestores de TI viram-se ante a seguinte situação: na última década
ou pouco mais, sabiam da importância do IPv6 e de sua implantação, mas sabiam também
que teriam de gastar recursos para isso, sem benefícios a curto prazo, e que se não fizessem
nada o problema real só se manifestaria após muito tempo. Ou seja, poderiam adiar a
implantação do IPv6, aparentemente sem consequências negativas, e assim a maioria o fez.
O atraso na implantação do IPv6 na internet nos fez chegar em um ponto em que o esgota-
l mento do IPv4 já é uma realidade, e o IPv6 está longe de estar difundido em toda a internet.
Capítulo 1 - Histórico do IPv6
Nessa situação os novos usuários da rede necessitam ainda de IPs versão 4, para acessar
Nessa situação, são
necessárias tecnologias conteúdo e serviços que ainda não implantaram o novo protocolo.
para a transição que
permitam que, ao É uma situação transitória, e espera-se que dure muito pouco. Em alguns lugares pode ser
mesmo tempo em que mesmo que ainda possa ser evitada, caso se acelere suficientemente a implantação do IPv6
se implanta o IPv6, se
por parte dos provedores de serviço na rede. Espera-se que a transição para o IPv6 seja rápida.
compartilhe também
endereços IPv4. Provavelmente ele estará plenamente difundido na internet nos próximos dois a quatro anos.
19
IPv4 Esgotamento
Jan 1983 do IPv4
Projeto
Implantação IPv6 em toda a Internet
IPv6
1994
Figura 1.15
IPv6 Novas técnicas / Túneis / Tradução Novo plano de
1998
Técnicas de Transição / Túneis transição.
No Brasil, construiu-se o cronograma ilustrado na Figura 1.15, como referência para a implan-
tação do protocolo no país. Ele foi construído com base no diálogo com diversos provedores
de acesso, de serviços e operadoras de telecomunicações, em diversas reuniões de coorde-
nação ao longo dos anos de 2011 e 2012. Ele tem por trás de si, uma lógica muito simples:
11 Uma vez que os provedores de serviços e companhias em geral tenham como conseguir
conectividade internet, os serviços (sites em geral, comércio eletrônico, bancos, governos
etc.) devem migrar para IPv6. Essa migração deve ser feita rapidamente. Quanto mais
rápida e efetiva for essa migração, melhor será para todos: os sites não terão o risco de
perderem audiência, ou terem usuários que os acessarão com potenciais problemas, e os
provedores de acesso terão menos motivos para utilizarem o compartilhamento de IPv4
numa fase de transição;
11 Por fim, os provedores de acesso devem fazer chegar o IPv6 aos usuários domésticos.
Primeiro aos novos usuários, e depois aqueles já conectados à internet via IPv4.
Com base nesse cronograma, o Comitê Gestor da Internet no Brasil emitiu a Resolução
CGI.br/RES/2012/007/P.
Semana IPv6
Websites brasileiros e outros
serviços na Internet, como e-mail,
Provedores de trânsito devem ativar o IPv6
brasileiros devem
Provedores e operadoras de oferecer IPv6 a seus Os provedores devem
telecom devem oferecer IPv6 clientes corporativos oferecer IPv6 para os
para seus grandes clientes, novos usuários Internet
como grandes sites, outros Os que puderem, devem
provedores e datacenters participar do world IPv6 Launch IPv6 para todos
Dez 2011 Fev 2012 Jun/Jul 2012 Jan 2013 Jan 2014
Figura 1.16
Cronograma
Brasileiro de
migração para
o IPv6.
20
IPv6 em uso
11 15% dos ASs trabalham sobre IPv6. q
11 9 dos 13 root DNS servers são acessíveis via IPv6.
11 3% dos 1.000.000 de sítios web mais visitados da Internet são acessíveis via IPv6.
0.300%
0.264% 0.261%
0.250%
0.200%
0.189% 0.192%
0.150%
0.100%
0.050%
0.000%
10 - Ago
24 - Ago
07 - Set
21 - Set
05 - Out
19 - Out
02 - Nov
16 - Nov
30 - Nov
14 - Dez
28 - Dez
11 - Jan
Figura 1.17 Diversos estudos tentam mensurar a quantidade de informação sobre o protocolo IPv6 que
Porcentagem de clientes trafega na internet. Análises sobre o número de ASs anunciando IPv6, de consultas a servidores
IPv6 do Google em 2009
(fonte: Angus Lees e DNS e que relatam a quantidade de páginas na internet usando IPv6, são alguns exemplos de
Steinar H. Gunderson). como vem se tentando medir a evolução da implantação da versão 6 do Protocolo Internet.
O Google tem realizado uma avaliação do estado atual do uso de IPv6 por usuários comuns,
coletando informações fornecidas pelos navegadores de uma parcela de usuários de seus
Autonomous System
(AS)
serviços. Com isso, foi possível determinar que aproximadamente 0,2% de seus clientes têm
Conjunto de redes o IPv6 ativado, e que a quantidade de acessos utilizando IPv6 subiu de 0,189% (agosto de
controladas por uma 2008) para 0,261% (janeiro de 2009).
única autoridade admi-
nistrativa, que possui Outros dados interessantes apontam que apenas 6,9% dos ASs trabalham sobre IPv6. Des-
total autonomia para taca-se também que 9 dos 13 root DNS servers são acessíveis via IPv6 (A, B, F, H, I, J, K, L e M).
selecionar o protocolo
de roteamento a ser
adotado internamente Troca de tráfego IPv6
q
Capítulo 1 - Histórico do IPv6
no sistema autônomo.
11 Pelo menos 23% dos PTTs no mundo trocam tráfego IPv6.
21
Figura 1.18
Tráfego IPv6 anual
no AMS-IX.
Ponto fundamental da infraestrutura da internet, 23% dos PTTs no mundo trocam tráfego Figura 1.19
IPv6, e em um dos maiores IXPs, o Amsterdam Internet Exchange (AM-IX), o tráfego IPv6 Tráfego IPv6 no
PTTMetro-SP:
trocado é de aproximadamente 1Gbps, o que corresponde a 0,3% do tráfego total. média mensal
(fonte: CEPTRO.br).
No Brasil, desde fevereiro de 2010 o NIC.br oferece para os participantes do PTTMetro-SP o
serviço de trânsito IPv6 experimental gratuitamente. Com a iniciativa, o NIC.br tem o obje-
tivo de promover o uso do protocolo, reduzindo o tempo entre a atribuição dos blocos para
as entidades e seu uso efetivo, permitindo experimentação e facilitando sua implantação.
22
3500
3000
2500
Active BGP entries (FIB)
2000
1500
1000
500
0
04
05
06
07
08
09
10
Date
Figura 1.20 Blocos de endereços IPv6 vêm sendo alocados pelos RIRs há aproximadamente doze anos.
Entradas IPv6 na No entanto, o fato dos RIRs alocarem endereços aos Registros Nacionais ou aos ISPs não
tabela de rotas
global (fonte: bgp. significa que esses endereços estejam sendo utilizados. Ao cruzar os dados sobre a quanti-
potaroo.net). dade de blocos /32 IPv6 já alocados, com o número de rotas anunciadas na tabela de
roteamento, nota-se que apenas 7,5% desses recursos estão sendo efetivamente utilizados,
isto é, dos 103.000 blocos já alocados, apenas pouco mais de 7.700 estão presentes na
Figura 1.21 tabela global de roteamento..
Blocos alocados
para o Brasil versus
blocos roteados Os blocos alocados para o Brasil (apenas 20%) estão sendo efetivamente utilizados.
(fonte: CEPTRO.br).
200
152
150
95
100
50 43
32
13 21
Capítulo 1 - Histórico do IPv6
6
2 3 3 8
4 4
0
12 / 2003
12 - 2004
12 - 2005
12 - 2006
12 - 2007
12 - 2008
12 - 2009
08 - 2010
23
Como está a implantação do IPv6 no Brasil?
11 No Brasil, e em toda a América Latina, a situação é similar. q
11 Os blocos atribuídos para o LACNIC correspondem a apenas 1,8% dos já atribuídos
mundialmente.
O LACNIC é um RIR que atua na América Latina e Caribe, que já alocou cerca de 700 blocos
/32 IPv6, o que corresponde a aproximadamente 1,8% do total de blocos já alocados
mundialmente.Desses, 36% estão alocados no Brasil, embora apenas 20% estejam sendo
efetivamente utilizados.”.
ASNs
20,437
ARIN
19,961
RIPE NCC
576
AfriNIC
1,644 Figura 1.22
LACNIC
Alocações IPv6
feitas pelos RIRs
5,961 em 23/07/2010
APNIC (fonte: NRO.org).
11 O custo de não implementar o IPv6 poderá ser maior que o custo de implementá-lo.
É importante observar que, embora a utilização do IPv6 ainda não tenha tanta representativi-
dade, todos os dados apresentados mostram que sua penetração nas redes tem aumentado
gradativamente. No entanto, é preciso avançar ainda mais. Adiar por mais tempo a implan-
tação do IPv6 pode trazer diversos prejuízos para o desenvolvimento de toda a internet.
IPv6 Básico
24
Como vimos, existe hoje uma demanda muito grande por mais endereços IP, e mesmo que
a internet continue funcionando sem novos endereços, ela terá muita dificuldade para
crescer. A cada dia surgem novas redes, graças à expansão das empresas e ao surgimento
de novos negócios; iniciativas de inclusão digital têm trazido novos usuários para a internet;
o crescimento das redes 3G, assim como a utilização da internet em dispositivos eletrônicos
e eletrodomésticos são exemplos de novas aplicações que colaboram com seu crescimento.
É importante que os provedores internet ofereçam novos serviços a seus clientes, principal-
mente porque a inovação é a chave para competir e manter-se à frente da concorrência.
25
26
IPv6 Básico
2
Cabeçalho IPv6
objetivos
conceitos
Cabeçalhos IPv4 e IPv6, campos do cabeçalho IPv6 e aspectos dos cabeçalhos
de extensão.
Cabeçalho IPv4
O cabeçalho IPv4 é composto por 12 campos fixos, podendo conter ou não opções, q
fazendo com que seu tamanho possa variar entre 20 e 60 bytes.
11 A versão do protocolo.
11 Fragmentação.
11 O tipo de dados.
27
0 7 15 31
Versão Tamanho do Tipo de serviço Tamanho total
(Version) cabeçalho (ToS) (Total Length)
(IHL)
Opções + Complemento
(Options + Padding)
Figura 2.1
Cabeçalho IPv6 Cabeçalho IPv4 –
q
composto por 12
Mais simples: campos fixos.
l
11 40 bytes (tamanho fixo).
0 7 15 31
Opções + Complemento
(Options + Padding)
28
0 7 15 31
Figura 2.3 Entre essas mudanças, destaca-se a remoção de seis campos do cabeçalho IPv4, uma vez que
Cabeçalho IPv6: mais simples suas funções não são mais necessárias ou são implementadas pelos cabeçalhos de extensão.
que o cabeçalho IPv4.
No IPv6, as opções adicionais agora fazem parte dos seus cabeçalhos de extensão. Desse
modo, os campos Opções e Complementos puderam ser removidos.
Soma de Verificação
Valor de tamanho fixo O campo Tamanho do Cabeçalho também foi removido, porque o tamanho do cabeçalho IPv6 é fixo.
calculado a partir de um
bloco arbitrário de dados Os campos Identificação, Flags e Deslocamento do Fragmento foram removidos porque as
digitais para a detecção informações referentes à fragmentação são indicadas agora em um cabeçalho de extensão
de erros acidentais que
possam ter sido apropriado.
introduzidos durante a
sua transmissão ou Com o intuito de aumentar a velocidade do processamento dos roteadores, o campo
armazenamento. Soma de Verificação (ou hash) foi retirado, pois esse cálculo já é realizado pelos proto-
colos das camadas superiores.
Capítulo 2 - Cabeçalho IPv6
29
Versão Tamanho do Tipo de serviço Tamanho total
(Version) cabeçalho (ToS) (Total Length)
(IHL)
Opções + Complemento
(Options + Padding)
Figura 2.4
Outra mudança refere-se à alteração do nome e do posicionamento de outros quatro campos. Quatro campos
tiveram seus
IPv4 IPv6 nomes alterados e
posicionamentos
Tipo de Serviço Classe de Tráfego modificados.
30
Versão Classe de tráfego Identificador de fluxo
(Version) (Traffic class) (Flow label)
Figura 2.5 Também foi adicionado um novo campo, Identificador de Fluxo, sendo acrescentado ao
O campo protocolo IP um mecanismo extra de suporte a QoS.
‘Identificador
de Fluxo’ foi Mais detalhes sobre esse campo e de como o protocolo IPv6 trata a questão do QoS serão
acrescentado
apresentados ao longo deste curso.
Tamanho do
Versão Tipo de serviço Tamanho total
cabeçalho
(Version) (ToS) (Total Length)
(IHL)
Opções + Complemento
(Options + Padding)
Figura 2.6
Três campos foram
mantidos, do IPv4
para o IPv6.
31
Versão Classe de tráfego Identificador de fluxo
(Version) (Traffic class) (Flow label)
Os campos Versão, Endereço de Origem e Endereço de Destino foram mantidos, sendo alterado Figura 2.7
apenas o tamanho do espaço reservado para o endereçamento, que passa a ter 128 bits. Dois campos foram
alterados, do IPv4
Vamos conhecer um pouco sobre cada campo do cabeçalho base do IPv6: para o IPv6.
11 Tamanho dos Dados (16 bits): indica o tamanho, em bytes, apenas dos dados enviados
junto ao cabeçalho IPv6. Substituiu o campo Tamanho Total do IPv4, que indica o tamanho
do cabeçalho acrescido do tamanho dos dados transmitidos. Os cabeçalhos de extensão
também são incluídos no cálculo do tamanho;
11 Próximo Cabeçalho (8 bits): identifica cabeçalho que se segue ao cabeçalho IPv6. Esse
campo foi renomeado (no IPv4, chamava-se Protocolo) refletindo a nova organização dos
IPv6 Básico
pacotes IPv6, pois agora esse campo não contém apenas valores referentes a outros
protocolos, mas também indica os valores dos cabeçalhos de extensão;
32
11 Limite de Encaminhamento (8 bits): indica o número máximo de roteadores pelos quais
o pacote IPv6 pode passar antes de ser descartado, sendo decrementado a cada salto.
Padronizou o modo como o campo Tempo de Vida (TTL) do IPv4 tem sido utilizado, apesar
da definição original do campo TTL indicar o tempo que o pacote levaria (em segundos)
para ser descartado caso não chegasse ao seu destino;
Cabeçalhos de extensão
Figura 2.8
11 No IPv6, opções adicionais são tratadas por meio de cabeçalhos de extensão. q
Exemplos de 11 Localizam-se entre o cabeçalho base e o cabeçalho da camada de transporte.
cabeçalhos de
extensão IPv6. 11 Não há quantidade nem tamanho fixo para esses cabeçalhos.
Cabeçalho IPv6
Diferente do IPv4, que inclui no cabeçalho base todas as informações opcionais, o IPv6
trata essas informações através de cabeçalhos de extensão. Esses cabeçalhos localizam-se
entre o cabeçalho base e o cabeçalho da camada imediatamente acima, não havendo nem
quantidade, nem tamanho fixo para eles. Caso existam múltiplos cabeçalhos de extensão no
mesmo pacote, eles serão adicionados em série, formando uma “cadeia de cabeçalhos”.
11 Hop-by-Hop Options;
Hop-by-Hop
Técnica de rotea- 11 Destination Options;
mento na qual a
11 Routing;
estação origem e
cada roteador inter- 11 Fragmentation;
Capítulo 2 - Cabeçalho IPv6
mediário entregam
o datagrama ao 11 Authentication Header;
próximo roteador
11 Encapsulating Security Payload.
do caminho, até que
algum deles possa A utilização de cabeçalhos de extensão do IPv6 visa aumentar a velocidade de processa-
entregar o data-
grama diretamente
mento nos roteadores, já que o único cabeçalho de extensão processado em cada roteador
à estação destino. é o Hop-by-Hop; os demais são tratados apenas pelo nó identificado no campo Endereço de
Destino do cabeçalho base. Além disso, novos cabeçalhos de extensão podem ser definidos
e usados sem a necessidade de se alterar o cabeçalho base.
33
Hop-by-Hop Options
11 Identificado pelo valor 0 no campo Próximo Cabeçalho. q
11 Carrega informações que devem ser processadas por todos os nós ao longo do
caminho do pacote.
Opções
Figura 2.9
Cabeçalho Hop_
by_Hop
l
11 Tamanho do Cabeçalho (1 Byte): indica o tamanho do cabeçalho Hop-by-Hop em
unidades de 8 bytes, excluídos os oito primeiros;
O terceiro bit desse
11 Opções: contém uma ou mais opções e seu tamanho é variável. Nesse campo, o primeiro campo especifica se
byte contém informações sobre como essas opções devem ser tratadas, caso o nó que a informação opcional
pode mudar de rota
esteja processando a informação não a reconheça. O valor dos primeiros dois bits
(valor 01) ou não
especifica as ações a serem tomadas: (valor 00).
22 00: ignorar e continuar o processamento;
22 10: descartar o pacote e enviar uma mensagem ICMP Parameter Problem para o ende-
reço de origem do pacote;
22 11: descartar o pacote e enviar uma mensagem ICMP Parameter Problem para o ende- Multicast Listener
reço de origem do pacote, apenas se o destino não for um endereço de multicast. Discovery
Usado para descobrir
11 Até o momento, existem dois tipos definidos para o cabeçalho Hop-by-Hop – a Router ouvintes multicast em
Alert e a Jumbogram: um link diretamente
ligado, assim como faz o
11 Router Alert: utilizado para informar aos nós intermediários que a mensagem a ser IGMP no IPv4.
encaminhada exige tratamento especial. Essa opção é utilizada pelos protocolos Resource Reservation
Multicast Listener Discovery (MLD) e Resource Reservation Protocol (RSVP); Protocol
Destinado à reserva de
11 Jumbogram: utilizado para informar que o tamanho do pacote IPv6 é maior do que 64 KB.
recursos como banda e
latência através da rede.
IPv6 Básico
34
Destination Options
11 Identificado pelo valor 60 no campo Próximo Cabeçalho. q
11 Carrega informações que devem ser processadas pelo nó de destino do pacote.
Reservado
Figura 2.10
Estrutura do
cabeçalho Endereço de Origem
Destination
Options.
Mais informações na
d Options carrega informações que devem ser processadas pelo nó de destino do pacote, indi-
cado no campo Endereço de Destino do cabeçalho base. A definição de seus campos é igual à
RFC 2711 – IPv6 do cabeçalho Hop-by-Hop, usado no suporte à mobilidade do IPv6 através da opção Home
Router Alert Option.
Address, que contém o Endereço de Origem do Nó Móvel quando este está em trânsito.
Routing
11 Identificado pelo valor 43 no campo Próximo Cabeçalho. q
11 Desenvolvido inicialmente para listar um ou mais nós intermediários que deveriam
ser visitados até o pacote chegar ao destino.
Reservado
Identificado pelo valor 43 no campo Próximo Cabeçalho, o cabeçalho de extensão Routing foi
Loose Source e Record desenvolvido inicialmente para listar um ou mais nós intermediários que deveriam ser visi-
Route (LSRR) tados até o pacote chegar ao destino, semelhante às opções Loose Source e Record Route
Informação de rote- do IPv4. Essa função, realizada pelo cabeçalho Routing Type 0, tornou-se obsoleta pela RFC
amento no pacote IP
5095 devido a problemas de segurança.
usada pelos roteadores
Capítulo 2 - Cabeçalho IPv6
no encaminhamento do
Um novo cabeçalho Routing, o Type 2, foi definido para ser utilizado como parte do meca-
pacote para o destino e
para registro da rota. nismo de suporte à mobilidade do IPv6, carregando o Endereço de Origem do Nó Móvel em
pacotes enviados pelo Nó Correspondente.
11 Próximo Cabeçalho (1 byte): identifica o tipo de cabeçalho que segue ao cabeçalho Routing;
35
11 Routing Type (1 byte): identifica o tipo de cabeçalho Routing. Atualmente apenas o Type 2
está definido;
11 Saltos restantes: definido para ser utilizado com o Routing Type 0, indica o número de
saltos a serem visitados antes do pacote atingir seu destino final;
Mais informações na RFC 3775 – Mobility Support in IPv6 - 6.4. Type 2 Routing Header e na
RFC 5095 – Deprecation of Type 0 Routing Headers in IPv6.
Fragmentation
11 Identificado pelo valor 44 no campo Próximo Cabeçalho. q
11 Carrega informações sobre os fragmentos dos pacotes IPv6.
Próximo Deslocamento de
Reservado Res M
Cabeçalho fragmento
Figura 2.12
Estrutura do
Identificação cabeçalho
Fragmentation
11 Flag M (1 bit): se marcado com o valor 1, indica que há mais fragmentos. Se marcado com
o valor 0, indica que é o fragmento final;
11 Identificação (4 bytes): valor único, gerado pelo nó de origem, para identificar o pacote
original. Utilizado para detectar os fragmentos de um mesmo pacote.O processo de frag-
mentação de pacotes do IPv6 será detalhado nos próximos capítulos.
11 Utilizado pelo IPSec para prover autenticação e garantia de integridade aos pacotes IPv6.
Padrão desenvolvido
Embora as funcionalidades do IPsec sejam idênticas tanto no IPv4 quanto no IPv6, sua utili- para prover interope-
zação com IPv6 é facilitada pelo fato de seus principais elementos serem parte integrante da rabilidade e segurança
nova versão do protocolo IP. Outros aspectos também facilitam essa utilização, como o fato baseada em criptografia
de dados para os proto-
de não se utilizar NAT com IPv6. colos IP versões 4 e 6.
36
Resumo de cabeçalho de extensão
Quando houver mais de um cabeçalho de extensão, recomenda-se que eles apareçam q
na seguinte ordem:
11 Hop-by-Hop Options.
11 Routing.
11 Fragmentation.
11 Authentication Header.
Primeiro, é importante destacar que, para evitar que os nós existentes ao longo do caminho
do pacote tenham de percorrer toda a cadeia de cabeçalhos de extensão para conhecer as
informações que deverão tratar, esses cabeçalhos devem ser enviados respeitando uma
determinada ordem. Geralmente, os cabeçalhos importantes para todos os nós envolvidos
no roteamento devem ser colocados em primeiro lugar. Cabeçalhos importantes apenas
para o destinatário final são colocados no final da cadeia.
A vantagem dessa sequência é que o nó pode parar de processar os cabeçalhos assim que
encontrar algum cabeçalho de extensão dedicado ao destino final, tendo certeza de que não
há mais cabeçalhos importantes a seguir. Com isso, é possível melhorar significativamente
o processamento dos pacotes, porque, em muitos casos, apenas o processamento do
cabeçalho base será suficiente para encaminhar o pacote.
Vale observar que, se um pacote for enviado para um endereço multicast, os cabeça-
lhos de extensão serão examinados por todos os nós do grupo.
37
38
IPv6 Básico
3
Endereçamento IPv6
objetivos
conceitos
Representação dos endereços e tipos de endereços IPv6; endereços unicast,
identificadores de interface, endereços especiais, endereços Anycast e Multicast
e políticas de alocação e designação.
Endereçamento
A principal justificativa para o desenvolvimento do protocolo IPv6 é o aumento no espaço
para endereçamento. Por isso, é importante conhecer as diferenças entre os endereços IPv4
e IPv6, saber reconhecer a sintaxe dos endereços IPv6 e conhecer seus tipos de endereços
existentes e suas principais características.
11 2128 = 340.282.366.920.938.463.463.374.607.431.768.211.456
rápido crescimento da internet, surgiu o problema da escassez dos endereços IPv4, moti-
vando a criação de uma nova geração do protocolo IP.
O IPv6 possui um espaço para endereçamento de 128 bits, sendo possível obter 340.282.366.
920.938.463.463.374.607.431.768.211.456 endereços (2128). Esse valor representa aproxi-
madamente 79 octilhões (7,9x1028) de vezes a quantidade de endereços IPv4 e representa,
também, mais de 56 octilhões (5,6x1028) de endereços por ser humano na Terra, conside-
rando-se a população estimada em 6 bilhões de habitantes.
39
A representação dos endereços IPv6 divide o endereço em oito grupos de 16 bits, q
separando-os por “:”, escritos com dígitos hexadecimais.
11 2001:0DB8:AD1F:25E2:CADE:CAFE:F0CA:84C1
Exemplo:
11 2001:0DB8:0000:0000:130F:0000:0000:140B
11 2001:db8:0:0:130f::140b
Os 32 bits dos endereços IPv4 são divididos em quatro grupos de 8 bits cada, separados por “.”,
escritos com dígitos decimais. Por exemplo: 192.168.0.10.
22 “Endereço-IPv6/tamanho do prefixo”.
Exemplo:
11 Prefixo 2001:db8:3003:2::/64
40
11 Prefixo: 2001:db8:3003:2::/64
11 ID da sub-rede: 3003:2
URL Com relação à representação dos endereços IPv6 em URLs, estes agora passam a ser
Universal Resource representados entre colchetes. Desse modo, não haverá ambiguidades caso seja necessário
Locator é o identificador indicar o número de uma porta juntamente com a URL. Observe os exemplos a seguir:
universal de docu-
mentos e sítios web. 11 http://[2001:12ff:0:4::22]/index.html
11 http://[2001:12ff:0:4::22]:8080
11 Unicast: esse tipo de endereço identifica uma única interface, de modo que um pacote
enviado a um endereço unicast é entregue a uma única interface;
Diferente do IPv4, no IPv6 não existe endereço broadcast, responsável por direcionar um
pacote para todos os nós de um mesmo domínio. No IPv6, essa função foi atribuída a tipos
específicos de endereços multicast.
Unicast
11 Global unicast. q
11 Link local.
11 Unique local.
Capítulo 3 - Endereçamento IPv6
11 EUI-64.
11 Endereços especiais.
Global Unicast
11 2000::/3 q
11 Globalmente roteável (similar aos endereços públicos IPv4).
Figura 3.1
ID da Estrutura de
Prefixo de roteamento global sub-rede Identificador de interface endereços Global
Unicast.
Os endereços unicast são utilizados para comunicação entre dois nós, por exemplo, em
telefones VoIPv6, computadores em uma rede privada etc. Sua estrutura foi definida para
permitir agregações com prefixos de tamanho flexível, similar ao CIDR do IPv4.
Existem alguns tipos de endereços unicast IPv6: Global Unicast; Unique-Local; e Link-Local.
Existem também alguns tipos para usos especiais, como endereços IPv4 mapeados em IPv6, Endereço de
endereço de loopback e endereço não-especificado, entre outros. Loopback
Endereço IP reservado
11 Global Unicast: equivalente aos endereços públicos IPv4, o endereço global unicast é que é utilizado para
globalmente roteável e acessível na internet IPv6. É constituído por três partes: referenciar a interface
de loopback.
33 Prefixo de roteamento global: usado para identificar o tamanho do bloco atribuído
a uma rede;
33 Identificação da interface: deve identificar de forma única uma interface dentro de Isso representa 13%
do total de endereços
um enlace. possíveis com IPv6,
o que nos permite
Sua estrutura foi projetada para utilizar os 64 bits mais à esquerda para identificação da
criar: 2(64−3) =
rede e os 64 bits mais à direita para identificação da interface. Portanto, exceto em casos 2.305.843.009.213.
específicos, todas as sub-redes em IPv6 têm o mesmo tamanho de prefixo, 64 bits (/64), o 693.952 (2,3x1018)
sub-redes (/64)
que possibilita 264 = 18.446.744.073.709.551.616 dispositivos por sub-rede.
diferentes
ou 2(48−3) =
Atualmente, está reservada para atribuição de endereços a faixa 2000::/3 (001), que corres-
35.184.372.088.832
ponde aos endereços de 2000:: a 3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff. (3,5x1013) redes /48.
Link local
11 FE80::/64. q
11 Deve ser utilizado apenas localmente.
64 64
Figura 3.2
Estrutura de
FE80 0 Identificador de interface endereços
Link Local.
Podendo ser usado apenas no enlace específico onde a interface está conectada, o endereço
link-local é atribuído automaticamente utilizando o prefixo FE80::/64. Os 64 bits reser-
vados para a identificação da interface são configurados utilizando o formato IEEE EUI-64. IEEE EUI-64
Vale ressaltar que os roteadores não devem encaminhar para outros enlaces pacotes que Também conhecido
possuam como origem ou destino um endereço link-local. como IEEE-bit Extended
Unique Identifier, é um
formato que permite
IPv6 Básico
q
automaticamente um
11 FC00::/7 endereço único IPv6
64-bits sem a necessi-
11 Prefixo globalmente único (com alta probabilidade de ser único). dade de configuração
manual ou DHCP.
42
11 Utilizado apenas na comunicação dentro de um enlace ou entre um conjunto limitado q
de enlaces.
7 1 40 16 64
Figura 3.3
Estrutura ID da
de endereços Pref L Identificador global Identificador de interface
sub-rede
Unique Local.
O Unique Local Address (ULA) é um endereço com grande probabilidade de ser globalmente
único, utilizado apenas para comunicações locais, geralmente dentro de um mesmo enlace
ou conjunto de enlaces. Um endereço ULA não deve ser roteável na internet global. Um
endereço ULA, criado utilizando um ID global alocado pseudo-randomicamente, é composto
pelas seguintes partes:
11 Prefixo: FC00::/7;
11 Flag Local (L): se o valor for 1 (FD), o prefixo é atribuído localmente. Se o valor for 0 (FC),
o prefixo deve ser atribuído por uma organização central (ainda a definir);
11 Identificador global: identificador de 40 bits usado para criar um prefixo globalmente único;
Sua utilização permite que qualquer enlace possua um prefixo /48 privado e único global-
mente. Desse modo, caso duas redes, de empresas distintas por exemplo, sejam interco-
nectadas, provavelmente não haverá conflito de endereços ou necessidade de renumerar
a interface que o esteja usando. Além disso, o endereço ULA é independente de provedor,
podendo ser utilizado na comunicação dentro do enlace, mesmo que não haja uma conexão
com a internet. Outra vantagem é que seu prefixo pode ser facilmente bloqueado, e caso um
endereço ULA seja anunciado acidentalmente para fora do enlace, através de um roteador
ou via DNS, não haverá conflito com outros endereços.
22 Manualmente.
22 Autoconfiguração stateless.
22 DHCPv6 (stateful).
43
Os identificadores de interface (IID), utilizados para distinguir as interfaces dentro de um
enlace, devem ser únicos dentro do mesmo prefixo de sub-rede. O mesmo IID pode ser
CGA
usado em múltiplas interfaces em um único nó; porém, elas dever estar associadas a dife-
Cryptographically
rentes sub-redes.
Generated Address é
um endereço IPv6
Normalmente utiliza-se um IID de 64 bits, que pode ser obtido de diversas formas. Ele pode
gerado a partir de uma
ser configurado manualmente, a partir do mecanismo de autoconfiguração stateless do IPv6, função hash de
a partir de servidores DHCPv6 (stateful) ou formados a partir de uma chave pública (CGA). criptografia one-way.
Endereço EUI-64 48 1E C9 48
21 85
1E 0C
C9
0
48 1 1E 0 C90 121 0 85 0 0C
0 FF FE
Bit U/L
0
48 1 1E 0 C90 121 0 85 1 0C
0
Figura 3.4
Formação do
Identificador de Interface 4A 48
1E C9
1E C9
FF 21
FE 21
85 0C
85 0C IID baseado no
formato EUI-64.
d
EUI-64
Um IID baseado no formato EUI-64 é criado da seguinte forma: caso a interface possua um Mais informações na
endereço MAC de 64 bits (padrão EUI-64), basta complementar o sétimo bit mais à esquerda RFC 3986 – Uniform
Resource Identifier
(chamado de bit U/L – Universal/Local) do endereço MAC, isto é, se for 1, será alterado para (URI): Generic Syntax;
0; se for 0, será alterado para 1. Caso a interface utilize um endereço MAC de 48 bits (padrão RFC 4291 – IP Version 6
Addressing Architec-
IEEE 802), primeiro são adicionados os dígitos hexadecimais FF-FE entre o terceiro e quarto
ture; RFC 4193 – Unique
byte do endereço MAC (transformando no padrão EUI-64) e, em seguida, o bit U/L é comple- Local IPv6 Unicast
mentado. Por exemplo: Addresses; RFC 5156 –
Special-Use IPv6
11 Se o endereço MAC da interface for: Addresses e RFC 3587
– IPv6 Global Unicast
22 48-1E-C9-21-85-0C
22 48-1E-C9-FF-FE-21-85-0C
44
w Endereços e faixas especiais e endereços obsoletos
q
Mais informações:
Guidelines for 64-bit Endereços especiais:
Global Identifier
(EUI-64) Registration 11 Localhost: ::1/128 (0:0:0:0:0:0:0:1)þ
Authority –
http://standards. 11 Não especificado: ::/128 (0:0:0:0:0:0:0:0)þ
ieee.org/
11 IPv4-mapeado: ::FFFF:wxyz
Faixas Especiais:
11 6to4: 2002::/16
11 Documentação: 2001:db8::/32
11 Teredo: 2001:0000::/32
Obsoletos:
11 IPv4-compatível: ::wxyz
Mais informações na 22 FEC0::/10: prefixo utilizado pelos endereços do tipo site local, desenvolvidos para
RFC 3849 – IPv6 serem utilizados dentro de uma rede específica sem a necessidade de um prefixo
Address Prefix
global, equivalente aos endereços privados do IPv4. Sua utilização foi substituída
Reserved for Documen-
tation e na RFC 3879 pelos endereços ULA;
– Deprecating Site Local
22 ::wxyz: utilizado para representar o endereço IPv4-compatível. Sua função é a mesma
Addresses.
do endereço IPv4-mapeado, tornando-se obsoleto por desuso;
45
22 3FFE::/16: prefixo utilizado para representar os endereços da rede de teste 6Bone. Criada
para ajudar na implantação do IPv6, essa rede foi desativada em 6 de junho de 2006.
Anycast
Identifica um grupo de interfaces. q
11 Entrega o pacote apenas para a interface mais próxima da origem.
Possíveis utilizações:
11 Balanceamento de carga.
11 Utilizado em redes com suporte à mobilidade IPv6, para localizar os Agentes de Origem.
Subnet-Router.
Um endereço IPv6 anycast é usado para identificar um grupo de interfaces; porém, com a
propriedade de que um pacote enviado a um endereço anycast é encaminhado apenas para
a interface do grupo mais próxima da origem do pacote.
Os endereços anycast são atribuídos a partir da faixa de endereços unicast e não há dife-
renças sintáticas entre eles. Portanto, um endereço unicast atribuído a mais de uma interface
transforma-se em um endereço anycast. Deve-se, nesse caso, configurar explicitamente os
nós para que saibam que lhes foi atribuído um endereço anycast. Além disso, esse endereço
deve ser configurado nos roteadores como uma entrada separada (prefixo /128 – host route).
Esse esquema de endereçamento pode ser utilizado para descobrir serviços na rede, como
servidores DNS e proxies HTTP, garantindo a redundância desses serviços. Também pode
ser utilizado para fazer balanceamento de carga em situações onde múltiplos hosts ou
roteadores proveem o mesmo serviço, para localizar roteadores que forneçam acesso a
uma determinada sub-rede ou para localizar os Agentes de Origem em redes com suporte à
mobilidade IPv6.
Todos os roteadores devem ter suporte ao endereço anycast Subnet-Router. Esse tipo w
de endereço é formado pelo prefixo da sub-rede e pelo IID preenchido com zeros (ex.: Mais informações sobre
2001:db8:cafe:dad0::/64). Um pacote enviado para o endereço Subnet-Router será entregue o Internet Protocol
Version 6 Anycast
para o roteador mais próximo da origem dentro da mesma sub-rede. Addresses: http://
www.iana.org/
Também foi definido um endereço anycast para ser utilizado no suporte à mobilidade IPv6. assignments/
Esse tipo de endereço é formado pelo prefixo da sub-rede seguido pelo IID dfff:ffff:ffff:fffe ipv6-anycast-
-addresses
(exemplo: 2001:db8::dfff:ffff:ffff:fffe). Ele é utilizado pelo Nó Móvel, quando este precisar
localizar um Agente de Origem em sua rede original.
IPv6 Básico
46
Multicast
11 Identifica um grupo de interfaces. q
11 O suporte a multicast é obrigatório em todos os nós IPv6.
11 O prefixo FF é seguido de quatro bits utilizados como flags e mais quatro bits que
definem o escopo do endereço multicast.
8 4 4 112
Figura 3.5
Estrutura de Flags
endereços FF 0RPT Escopo Identificador do grupo multicast
multicast.
Endereços multicast são utilizados para identificar grupos de interfaces. Cada interface
pode pertencer a mais de um grupo. Os pacotes enviados para esses endereços são
entregues a todas as interfaces que compõem o grupo.
No IPv4, o suporte a multicast é opcional, já que foi introduzido apenas como uma extensão
ao protocolo. Entretanto, no IPv6 é requerido que todos os nós suportem multicast, uma vez
que muitas funcionalidades da nova versão do protocolo IP usam esse tipo de endereço.
Broadcast Seu funcionamento é similar ao do broadcast, já que um único pacote é enviado a vários
Técnica que permite a hosts, diferenciando-se apenas pelo fato de que no broadcast o pacote é enviado a todos os
entrega de cópias de
hosts da rede, sem exceção, enquanto que no multicast apenas um grupo de hosts receberá
um mesmo pacote a
todas as estações de esse pacote. Desse modo, a possibilidade de transportar apenas uma cópia dos dados a
uma determinada rede. todos os elementos do grupo, a partir de uma árvore de distribuição, pode reduzir a utili-
zação de recurso de uma rede, bem como otimizar a entrega de dados aos hosts receptores.
Aplicações como videoconferência, distribuição de vídeo sob demanda, atualizações de sof-
twares e jogos on-line são exemplos de serviços que vêm ganhando notoriedade e podem
utilizar as vantagens apresentadas pelo multicast.
Os endereços multicast não devem ser utilizados como endereço de origem de um pacote.
Esses endereços derivam do bloco FF00::/8, onde o prefixo FF, que identifica um endereço
multicast, é precedido por quatro bits, que representam quatro flags, e um valor de quatro
bits que define o escopo do grupo multicast. Os 112 bits restantes são utilizados para
identificar o grupo multicast.
Flags e escopo
Flag Valor Descrição
(binário)
Capítulo 3 - Endereçamento IPv6
47
Valor (4 bits hex) Descrição
1 Interface
2 Enlace
3 Sub-rede
4 Admin
5 Site
8 Organização
E Global
(0, F) Reservados Tabela 3.2
Opções do campo
(6, 7, 9, A, B, C, D) Não alocados
‘Escopo’.
11 Flag P: se o valor for 1, indica que o endereço multicast é baseado em um prefixo de rede.
Se o valor for 0, indica que o endereço não é baseado em um prefixo de rede;
11 Flag T: se o valor for 0, indica que o endereço multicast é permanente, ou seja, é atribuído
pela IANA. Se o valor for 1, indica que o endereço multicast não é permanente, ou seja, é
atribuído dinamicamente;
11 Os quatro bits que representam o escopo do endereço multicast são utilizados para deli-
mitar a área de abrangência de um grupo multicast. Valores atribuídos a esse campo:
22 0, F: reservados;
Desse modo, um roteador ligado ao backbone da internet não encaminhará pacotes com
escopo menor do que 14 (E em hexa), por exemplo. No IPv4, o escopo de um grupo multicast
é especificado através do campo TTL (Time-to-Live)do cabeçalho. TTL
Técnica usada em
sistemas de entrega,
Endereços multicast permanentes baseada no paradigma
do melhor esforço que
A lista a seguir apresenta alguns endereços multicast permanentes:
evita a circulação de
pacotes na rede por um
Endereço Escopo Descrição tempo infinito.
48
Endereço Escopo Descrição
Endereço Solicited-Node
11 Todos os nós devem fazer parte desse grupo. q
11 Formado pelo prefixo FF02::1:FF00:0000/104 agregado aos 24 bits mais à direita do IID.
11 Prefixo FF30::/12
Capítulo 3 - Endereçamento IPv6
11 Exemplo:
8 4 4 8 8 64 32
49
Com o intuito de reduzir o número de protocolos necessários para a alocação de endereços
multicast, foi definido um formato estendido de endereço multicast, que permite a alocação
de endereços baseados em prefixos unicast e de endereços Source-Specific Multicast (SSM). SSM
Endereços de destino
Em endereços baseados no prefixo da rede, a flag P é marcada com o valor 1. Nesse caso, SSM devem ser na faixa
o uso do campo Escopo não muda; porém, o escopo desse endereço multicast não deve de 232.0.0.0 / 8 para
exceder o escopo do prefixo unicast “carregado” junto a ele. Os 8 bits após o campo Escopo IPv4 ou FF3x::/32 para o
IPv6.
são reservados e devem ser marcados com zeros. Na sequência, há 8 bits que especificam o
tamanho do prefixo da rede indicado nos 64 bits que os seguem. Caso o prefixo da rede seja
menor que 64 bits, os bits não utilizados no campo Tamanho do Prefixo devem ser marcados
com zeros. O campo Identificador do Grupo utiliza os 32 bits restantes. Note que, em um
endereço onde a flag P é marcada com o valor 1, a flag T também deve ser marcada com o
valor 1, pois este não representa um endereço definido pela IANA.
11 Tamanho do prefixo = 0
11 Prefixo = 0
Do mesmo modo que no IPv4, os endereços IPv6 são atribuídos a interfaces físicas e q
não aos nós.
Com o IPv6 é possível atribuir a uma única interface múltiplos endereços, independente-
mente do seu tipo.
11 Com isso, um nó pode ser identificado através de qualquer endereço de suas interfaces.
22 Loopback ::1
22 Global 2001:....
11 A RFC 3484 determina o algoritmo para seleção dos endereços de origem e destino.
atribuídos às interfaces físicas, e não aos nós, de modo que cada interface precisa de pelo
menos um endereço unicast. No entanto, é possível atribuir a uma única interface múltiplos
endereços IPv6, independentemente do tipo (unicast, multicast ou anycast) ou sub-tipo
(loopback, link-local ou 6to4). Desse modo, um nó pode ser identificado através de qualquer
50
endereço das suas interfaces, e com isso torna-se necessário escolher, dentre seus múltiplos
endereços, qual será usado como endereço de origem e qual será utilizado como endereço
de destino, ao estabelecer uma conexão.
Para resolver essa questão, foram definidos dois algoritmos: um para selecionar o endereço
d
de origem e outro para o de destino. Esses algoritmos, que devem ser implementados por
todos os nós IPv6, especificam o comportamento padrão desse nós, porém não substituem
Mais informações: RFC as escolhas feitas por aplicativos ou protocolos da camada superior. Entre as regras mais
2375 – IPv6 Multicast importantes destacam-se:
Address Assignments;
RFC 3306 – Unicast-
11 Pares de endereços do mesmo escopo ou tipo têm preferência;
-Prefix-based IPv6
Multicast; RFC 3307 11 O menor escopo para endereço de destino tem preferência (utiliza-se o menor
– Allocation Guidelines
escopo possível);
for IPv6 Multicast
Addresses; RFC 3484 11 Endereços cujo tempo de vida não expirou têm preferência sobre endereços com tempo
– Default Address
de vida expirado;
Selection for Internet
Protocol version 6 11 Endereços de técnicas de transição (ISATAP, 6to4) não podem ser utilizados se um ende-
(IPv6); RFC 3569 – An
reço IPv6 nativo estiver disponível;
Overview of Source-
-Specific Multicast 11 Se todos os critérios forem similares, pares de endereços com o maior prefixo comum
(SSM); RFC 3956 –
Embedding the terão preferência;
Rendezvous Point (RP) 11 Para endereços de origem, endereços globais terão preferência sobre endereços temporários;
Address in an IPv6
Multicast Address e 11 Em um Nó Móvel, o Endereço de Origem tem preferência sobre um Endereço Remoto.
RFC 4007 – IPv6
Scoped Address Essas regras devem ser utilizadas quando não houver nenhuma outra especificação. As
Architecture.
especificações também permitem a configuração de políticas que possam substituir esses
padrões de preferências com combinações entre endereços de origem e destino.
Na hierarquia das políticas de atribuição, alocação e designação de endereços, cada RIR recebe
da IANA um bloco /12 IPv6. O bloco 2800::/12 corresponde ao espaço reservado para o LACNIC
alocar na América Latina. O NIC.br, por sua vez, trabalha com um /16 que faz parte desse /12.
A alocação mínima para ISPs é um bloco /32, no entanto, alocações maiores podem ser
feitas mediante apresentação de justificativa de utilização. Um aspecto importante que
merece destaque é que, diferente do IPv4, com o IPv6 a utilização é medida em relação ao
número de designações de blocos de endereços para usuários finais, e não em relação ao
número de endereços designados aos usuários finais.
51
Abordagem one size fits all
Recomendações para designação de endereços (RFC 3177): q
11 De um modo geral, redes /48 são recomendadas para todos os tipos de usuários.
11 Empresas grandes podem receber um /47, prefixos um pouco menores, ou múltiplos /48.
11 Redes /64 são recomendadas quando houver certeza de que apenas uma sub-rede
é necessária.
11 Uma rede /128 pode ser utilizada quando houver certeza de que apenas uma
interface será conectada.
11 Facilita a administração;
11 Há quem acredite que desperdiça demasiados endereços e que pode gerar pro-
blemas em algumas décadas.
Abordagem conservadora
11 Se usarmos one size fits all. q
11 Um /32 possibilita 65.536 /48
11 Não delegar /48 a todos, atribuindo /56 para usuários domésticos – PMEs.
Uma abordagem mais conservadora, oposta à one size fits all, recomenda que não sejam
delegados /48 a todo tipo de usuário, atribuindo /56 para usuários domésticos e pequenas e
médias empresas. Desse modo, o consumo total de endereços de 6 a 7 bits é reduzido.
Além disso, um /32 possibilita “apenas” 65,536 /48, que, no caso de grandes provedores, não
seria suficiente para atender toda a sua demanda.
11 Avaliam a requisição de blocos adicionais por parte dos ISPs baseando-se na quanti-
dade de blocos /56 designados.
52
Entre os RIRs, temos duas políticas distintas sendo praticadas em relação à recomendação
de uso aos ISPs e ao critério para alocação de blocos de endereços adicionais.
Os RIRs LACNIC e AFRINIC seguem a recomendação one size fits all, sugerindo que os prove-
dores de suas regiões também o sigam. A avaliação das requisições de blocos adicionais por
parte dos ISPs também segue essa abordagem, baseando-se na quantidade de blocos /48
designados por eles.
Já os RIRs APNIC, ARIN e RIPE seguem uma abordagem mais conservadora, utilizando a
quantidade de blocos /56 designados pelos provedores como base para avaliação das requi-
sições de blocos adicionais. Em todos os casos, é utilizada como medida para avaliação o
HD-Ratio valor do Host-Density Ratio (HD-Ratio). Fórmula para calcular o HD-Ratio:
Modo de medir o uso
do espaço de ende- HD = log (número de objetos alocados)
reçamento, onde seu
valor é relacionado à Log (número de objetos alocáveis)
porcentagem de uso
[RFC 3194]. Todos os RIRs utilizam como valor de limite (threshold) o HD-Ratio = 0,94, mas o LACNIC e
o AFRINIC sobre a utilização de blocos /48, enquanto APNIC, ARIN e RIPE sobre a utilização
de blocos /56.
53
Bloco Qtd. /56 Threshold (HD=0,94) % de Utilização
Provedores
NTT Communications: q
11 Japão.
11 http://www.ntt.com/business_e/service/category/nw_ipv6.html
Internode:
11 Austrália.
11 http://ipv6.internode.on.net/configuration/adsl-faq-guide/
IIJ:
11 Japão.
11 Túneis.
11 http://www.iij.ad.jp/en/service/IPv6/index.html
Arcnet6:
11 Malásia.
11 http://arcnet6.net.my/how.html
Em relação à política seguida por alguns provedores no mundo, que já fornecem a seus clientes
endereços IPv6, existem algumas visões diferentes, como mostram os exemplos citados.
Considerações
q
IPv6 Básico
/32 =
54
11 É suficiente para seu provedor? q
11 Reservar um bloco (/48 ?) para infraestrutura.
RFC 3531.
A RFC 3531 propõe um método para gerenciar a atribuição dos bits de um bloco de ende-
reços IPv6 ou de um prefixo, de modo que estes sejam alocados reservando espaço maior
entre eles. Com isso, caso seja necessário alocar novos blocos a um usuário, a probabilidade
de se alocar blocos contíguos ao que ele já possui será maior.
Figura 3.7
Exemplo
de alocações de 1 2
bloco sugerida pela
RFC 3531.
3 4
5 7 6 8
Exercício de fixação 1 e
Planejamento de endereçamento IP
Você é um provedor e recebeu o bloco 2001:0db8::/32. Presente em cinco estados, q
você atende usuários domésticos, pequenas, médias e grandes empresas, e tem
planos de expansão.
Paraná
Figura 3.8
Rio de Janeiro
Cenário para
exercício de
endereçamento.
55
Você decidiu que a melhor forma de dividir os endereços é hierarquicamente. Qual o
tamanho do bloco de cada estado?
11 Nessa mesma localidade, indique o primeiro e o segundo blocos designados para cada
tipo de usuário (os dois primeiros usuários de cada tipo).
Exercício de fixação 2 e
Tipo de endereços
1. Indique a que tipo pertence cada um dos seguintes endereços:
Endereço Tipo
2001:db8:cafe:f0ca:faca:2:3
2804:1:2:b0ca:2c0:17ff:fe00:d1ca
fe80::dad0:baba:ca00:a7a2
fe80::2c0:17ff:fe00:d1ca
2002:c8A0:79c::b010:de:c0c0
::1
fd00:ada:2345:b0ba::1
ff0e::beba:d012:3:4
ff05::baba:bebe:baba
2. Comprima ao máximo os seguintes endereços:
2001:0db8:0000:1200:0fe0:0000:0000:0003
2001:0db8::ca5a:0000:2000
2001:0db8:face:b00c:0000:0000:0100:00ab
3. Descomprima ao máximo os seguinte endereços:
2001:db8:0:ca1::1:abcd
IPv6 Básico
2001:db8:4::2
2001:db8:200::bdb:110
56
4. Utilizando o padrão EUI64, crie endereços IPv6 a partir do prefixo 2001:db8:ba1a:d0ce::/64
baseados nos seguintes endereços MAC:
00:e0:4c:70:89:8d
5c:1d:e0:8c:e7:e7
07:00:27:00:e8:8b
5. Divida o prefixo 2001:db8::/32 pela metade para que sejam gerados dois subprefixos.
6. Divida o prefixo 2001:db8:c000::/34 nos seguintes tamanhos:
/35
/36
7. Divida o prefixo 2001:db8:a000::/35 no seguinte tamanho:
/37
8. Você precisa subdividir o prefixo 2001:db8::/32 para atender a diversas sub-redes em sua
organização. Para cada caso, diga qual é o prefixo mais curto que atende sua necessidade,
o número de sub-redes geradas e o número de redes /64 possíveis em cada sub-rede. Diga
também qual é o prefixo mais curto possível sem “cortar caracteres” (indo de 4 em 4 bits),
o número de sub-redes geradas e o número de redes /64 possíveis em cada sub-rede.
9. A partir do prefixo 2001:0db8::/32, atribuir os prefixos às redes e computadores da orga-
nização ilustrada na figura a seguir:
56 redes
1500 redes
30000 redes
57
Descrição Endereço/Prefixo Descrição Endereço Prefixo
Rede 6 (R6) /56
IPv6 Básico
58
4
ICMPv6 – Parte 1
objetivos
conceitos
Estrutura do ICMPv6 e suas funcionalidades e descoberta de vizinhança.
11 Realizar diagnósticos.
11 ARP/RARP.
11 IGMP.
Definido na RFC 4443 para ser utilizado com o IPv6, o ICMPv6 é uma versão atualizada do
Internet Control Message Protocol (ICMP) utilizado com IPv4.
Essa nova versão do ICMP apresenta as mesmas funções que o ICMPv4, como reportar
erros no processamento de pacotes e enviar mensagens sobre o status das características
da rede. No entanto, ela não é compatível com o seu antecessor, apresentando agora um
número maior de mensagens e funcionalidades e possuem diferenças significativas.
59
Uma das principais diferenças é que o ICMPv6 assume funções de protocolo que existem
isoladamente no IPv4. Tal mudança foi projetada com o intuito de reduzir a multiplicidade
de protocolos, que é prejudicial, uma vez que piora a coerência e aumenta o tamanho das
implementações nos diversos dispositivos. As funções assumidas se referem às funcionali-
dades dos seguintes protocolos integrantes do IPv4:
É importante notar que tanto o ARP quanto o RARP são protocolos que operam entre as
camadas 2 e 3 do modelo ISO/OSI, pois não dependem de pacotes IP. Já o ICMPv6 funciona
inteiramente na camada 3, sendo encapsulado em pacotes IP. Isso significa que firewalls
que operam na camada de rede exigem atenção extra com o IPv6, já que podem bloquear
funções extremamente básicas, como a descoberta de vizinhos e a autoconfiguração.
Deve-se ter em mente que, de forma geral, o ICMPv6 é muito mais importante para o funcio-
namento do IPv6 do que o ICMP é para o funcionamento do IPv4.
O valor no campo Próximo Cabeçalho, que indica a presença do protocolo ICMPv6, é 58, q
e o suporte a esse protocolo deve ser implementado em todos nós.
22 Mobilidade IPv6.
60
IPv6
cadeia de cab.
de extensão
Figura 4.1
Encapsulamento do
ICMPv6
cabeçalho ICMPv6.
Em um pacote IPv6, o ICMPv6 posiciona-se logo após o cabeçalho base do IPv6 e dos cabe-
çalhos de extensão, se houver.
Cabeçalho simples: q
11 Tipo (8 bits): especifica o tipo da mensagem;
11 Soma de Verificação (16 bits): utilizada para detectar dados corrompidos no cabe-
çalho ICMPv6 e em parte do cabeçalho IPv6;
O cabeçalho de todas as mensagens ICMPv6 tem a mesma estrutura simples, sendo com-
posto por quatro campos:
61
Possui duas classes de mensagens: q
11 Mensagens de erro:
22 “Destination Unreachable”.
22 “Time Exceeded”.
22 “Parameter Problem”.
11 Mensagens de informação:
22 “Redirect”.
As mensagens ICMPv6 são divididas em duas classes, cada uma composta por diversos tipos
de mensagens:
2 Packet Too Big Indica que o tamanho do pacote é maior que a Unidade
Máxima de Trânsito (MTU) de um enlace.
62
Tipo Nome Descrição
tion
63
Descoberta de Vizinhança
11 Neighbor Discovery – definido na RFC 4861. q
11 Assume as funções de protocolos ARP, ICMP Router Discovery e ICMP Redirect, do IPv4.
22 Redirecionamento de pacotes.
22 Autoconfiguração de endereços.
Definido pela RFC 4861, o protocolo de Descoberta de Vizinhança torna mais dinâmicos
alguns processos de configuração de rede em relação ao IPv4, combinando as funções de
protocolos como ARP, ICMP Router Discovery e ICMP Redirect, além de adicionar novos
métodos não existentes na versão anterior do protocolo IP.
22 Prefix information;
22 Redirected header;
22 MTU.
11 Redirect: possibilita que o roteador informe a um nó uma rota melhor para ser utili-
zada no envio de pacotes a um determinado destino;
pode ser demasiadamente lento para um dispositivo que queira se comunicar logo.
Essa mensagem serve para solicitar ao roteador que envie uma mensagem
extra imediatamente.
Geralmente essa situação acontece quando uma máquina tenta se conectar ou reconectar
a uma rede (no momento em que ele habilita sua interface) e, por isso, ainda desconhece
quaisquer detalhes das configurações do enlace e da internet.
65
O pacote transmitido deve conter as seguintes características: q
11 O endereço de destino do cabeçalho IPv6 deve ser All-Router (FF02::2) multicast
Group, uma vez que o dispositivo não conhece os roteadores e suas informações;
11 O endereço de origem do cabeçalho IPv6 deve ser o unicast link local da interface
que está enviando a mensagem caso ele exista e, caso contrário, ele não deverá ser
especificado, ou seja, utiliza-se o endereço (::);
11 O campo Hop Limit do cabeçalho IPv6 deve ser marcado com o valor 255 para que
o protocolo fique imune ao recebimento de mensagem vindas de equipamentos
externos ao enlace;
11 O campo Type do cabeçalho ICMPv6 deve ser padronizado com o valor 133;
11 O campo Code do cabeçalho ICMPv6 deve ser padronizado com o valor 0, não apre-
sentando outras opções;
22 Options de tamanho variável: pode conter dados extras para auxiliar nas fun-
cionalidades básicas. No momento, apenas a opção Source Link-Layer Address
está implementada. Contudo, no futuro é possível que existam outras. Caso seja
transmitido uma opção não implementada para esse tipo de mensagem, ela será
ignorada pelo receptor.
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type Code
Checksum
133 0
Reserved
Figura 4.3
Options... Formato do Pacote
Router Solicitation.
22 Se for uma resposta, deverá ser um unicast link local, ou seja, direcionado para o
IPv6 Básico
dispositivo requisitante.
66
11 O endereço de origem do cabeçalho IPv6 é o unicast link local da interface do rote- q
ador que está enviando a mensagem;
11 O campo Hop Limit do cabeçalho IPv6 é marcado com o valor 255 para que o protocolo
fique imune ao recebimento de mensagens vindas de equipamentos externos ao enlace;
22 Cur Hop Limit de 8 bits: indica ao nó o valor que deve ser utilizado no campo
Hop limit do cabeçalho IPv6 quando for enviar um pacote. O valor 0 indicará que o
roteador não sugere nenhum valor default ao nó;
22 Other Stateful Configuration Flag (O) de 1 bit: indica se o nó deve receber infor-
mações adicionais via DHCPv6 (1) ou não (0). Caso a Flag M esteja configurada, a
opção marcada nessa flag será ignorada;
22 Mobile IPv6 Home Agent Flag (H) de 1 bit: indica se o roteador que está
enviando essa mensagem também funciona como Mobile IPv6 home agent no
enlace (1) ou não (0);
22 Reserved (Res) de 2 bits: não é utilizado e deve ser inicializado com 0 na trans-
missão. O receptor ignorará esse campo;
22 Options de tamanho variável: pode conter dados extras para auxiliar nas fun-
cionalidades básicas. No momento, só estão implementadas as opções Source
Link Layer Address, MTU, Prefix Information, Route Information e Recursive DNS
Server; contudo, no futuro é possível que novas opções sejam criadas. Caso seja
transmitida uma opção não implementada, o campo será ignorado.
67
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type Code
Checksum
134 0
Reachable Time
Retrans Timer
Figura 4.4
Formato do
Options... Pacote Router
Advertisement.
Utiliza o endereço multicast solicited-node em vez de broadcast. O host envia uma men-
sagem NS informando seu endereço MAC e solicita o endereço MAC do vizinho.
A segunda consiste no teste de acessibilidade de nós vizinhos do enlace. Nesse caso, a mensagem
pode ser enviada para verificar se determinado endereço lógico existe ou se ainda responde.
11 O campo Hop Limit do cabeçalho IPv6 é marcado com o valor 255 para que o protocolo
fique imune ao recebimento de mensagem vindas de equipamentos externos ao enlace;
68
11 O campo Type do cabeçalho ICMPv6 é padronizado com o valor 135; q
11 O campo Code do cabeçalho ICMPv6 e padronizado com o valor 0, não apresentando
outras opções;
22 Options de tamanho variável: pode conter dados extras para auxiliar nas funcio-
nalidades básicas. No momento só está implementada a opção Source Link-Layer
Address, que serve para especificar o endereço MAC do solicitante. Contudo, no
futuro existe a possibilidade de que outras sejam criadas. Caso seja transmitida
uma opção não implementada, o campo será ignorado pelo receptor.
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type Code
Checksum
135 0
Reserved
Target Address
Figura 4.5
Formato do
Pacote Neighbor Options...
Solicitation.
69
O pacote transmitido deve conter as seguintes características: q
11 O endereço de destino do cabeçalho IPv6 depende do propósito que originou a mensagem:
22 Para anunciar uma mudança ou para responder uma mensagem que possua o
endereço de origem não especificado, o campo deverá ser o All-Node (FF02::1)
multicast address, uma vez que ou pretende-se informar todos os nós vizinhos ou a
origem é desconhecida.
22 Caso seja resposta a uma mensagem que possua endereço de origem, o campo
deverá ser o endereço unicast (link-local ou global) especificado, uma vez que as
informações sobre o destino foram previamente fornecidas pela mensagem Nei-
ghbor Solicitation.
11 O endereço de origem do cabeçalho IPv6 deve ser o unicast da interface pela qual a
mensagem será enviada.
11 O campo Hop Limit do cabeçalho IPv6 deve ser marcado com o valor 255 para que
o protocolo fique imune ao recebimento de mensagem vindas de equipamentos
externos ao enlace.
11 O campo Type do cabeçalho ICMPv6 deve ser padronizado com o valor 136.
11 O campo Code do cabeçalho ICMPv6 deve ser padronizado com o valor 0, não apre-
sentando outras opções.
22 Router Flag (R) de 1 bit: indica se a origem é um roteador (1) ou não (0). Esse
campo auxilia na funcionalidade Neighbor Unreachability Detection, que será
explicada posteriormente.
22 Solicited Flag (S) de 1 bit: indica se a mensagem foi enviada por causa de uma
mensagem Neighbor Solicitation com origem especificada (1) ou não (0). Esse campo
auxilia na funcionalidade Neighbor Unreachability Detection, que será explicada
posteriormente.
33 Caso seja uma resposta, o campo deverá conter o endereço IPv6 do nó que
está respondendo;
33 Caso seja um anúncio de mudança, o campo deverá conter o endereço IPv6 que
possuirá mudança no endereço físico.
22 Options de tamanho variável: pode conter dados extras para auxiliar nas fun-
cionalidades básicas. No momento só está implementada a opção Target linklayer
address, que pode especificar o endereço MAC para aonde a mensagem será
enviada. Contudo, no futuro outras podem ser criadas. Caso seja transmitida uma
opção não implementada, o campo será ignorado.
IPv6 Básico
70
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type Code
Checksum
136 0
R S O Reserved
Target Address
Figura 4.6
Formato do
Pacote Neighbor Options...
Advertisement.
Esse mecanismo é igual ao existente no IPv4. As Figuras 4.7, 4.8 e 4.9 mostram o funcio-
namento do mecanismo Redirect.
Figura 4.7
Mecanismo Pacote IPv6
Redirect – passo 1.
Capítulo 4 - ICMPv6 – Parte 1
71
Roteador B Computador C Roteador A
Figura 4.8
Mecanismo
Redirect – passo 2.
Roteador B Computador C Roteador A
11 O endereço de origem do cabeçalho IPv6 tem que ser o link local address da interface
do roteador;
11 O campo Hop Limit do cabeçalho IPv6 tem de ser marcado com o valor 255 para que o proto-
colo fique imune ao recebimento de mensagem vindas de equipamentos externos ao enlace;
11 O campo Type do cabeçalho ICMPv6 deve ser padronizado com o valor 137;
11 O campo Code do cabeçalho ICMPv6 deve ser padronizado com o valor 0, não apre-
sentando outras opções;
72
33 Caso contrário, deverá conter o endereço IPv6 de link local do roteador que q
será o primeiro passo na nova rota.
22 Options de tamanho variável: pode conter dados extras para auxiliar nas fun-
cionalidades básicas. No momento só estão implementados o Target link-layer
address e o Redirect Header. Contudo, no futuro será possível que existam outras
possibilidades. Caso seja transmitida uma opção não implementada para esse tipo
de mensagem, ela será ignorada pelo receptor.
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type Code
Checksum
137 0
Reserved
Target Address
Destination Address
Figura 4.10
Options...
Formato do Pacote
Redirect.
Todas as opções possuem uma estrutura básica de dois campos de 8 bits, o type e o length .
O primeiro serve para indicar qual é a opção que está sendo transmitida. Já o segundo serve
para demarcar o tamanho, incluindo os campos type e length, do campo opcional.
Capítulo 4 - ICMPv6 – Parte 1
Atualmente existem várias opções com distintas funções, porém só algumas serão
detalhadas por serem mais utilizadas nas funcionalidades básicas do IPv6.
Essas mensagens podem trazer zero ou mais opções, definidas na RFC 4861.
73
Source link-layer address
Contém o endereço MAC do remetente do pacote. Sua função é carregar o endereço q
físico do nó de origem da mensagem. É utilizado nas seguintes mensagens: Neighbor
Solicitation, Router Solicitation e Router Advertisement.
11 Type de 8 bits: contém o valor 1, que é o identificador do campo opcional Source Link
Layer Address;
11 Length de 8 bits: indica o tamanho do campo opcional Source Link Layer Address;
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length
1
11 Type de 8 bits: contém o valor 2, que é o identificador do campo opcional Target Link
Layer Address.
11 Length de 8 bits: indica o tamanho do campo opcional Target Link Layer Address.
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length
2
74
Prefix information
Fornece a hosts os prefixos do enlace e os prefixos para autoconfiguração do endereço. q
Sua função é prover ao nó solicitante um prefixo de rede que pode ser utilizado tanto
para que esse dispositivo se autoconfigure quanto para que identifique se um endereço
de destino pertence ao enlace. É utilizado nas mensagens Router Advertisement e deve
ser ignorado em outras mensagens. O campo transmitido deve conter as seguintes
características:
11 Type de 8 bits: contém o valor 3, que identifica o campo opcional Prefix Information;
11 Length de 8 bits: contém o valor 4, que indica o tamanho dos campos fixos do campo
opcional Prefix Information;
11 On-Link Flag (L) de 1 bit: indica se o prefixo enviado pode (1) ou não (0) ser utilizado
para identificar endereços vizinhos do enlace. Caso o valor seja zero, o receptor não
deve assumir que o prefixo não é do enlace e não pode utilizar essa informação para
alterar sua tabela de prefixos do enlace (Prefix List);
11 Prefix de tamanho variável: contém o prefixo de rede a ser utilizado ou para a auto-
configuração ou para auxiliar na identificação de endereços do enlace.
Capítulo 4 - ICMPv6 – Parte 1
75
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length Prefix Length L A Reserved1
3
Valid Lifetime
Preferred Lifetime
Reserved2
Redirected header
Contém todo ou parte do pacote que está sendo redirecionado. Sua função é enviar q
parte ou a totalidade da mensagem original que deverá ser redirecionada pelo nó de
origem a outro nó. É usado nas mensagens Redirect e deve ser ignorado em outras men-
sagens. O campo transmitido deve conter as seguintes características:
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length
4
Reserved
IP Header + Data...
Figura 4.14
Formato do Pacote
Redirect Header.
IPv6 Básico
76
MTU
Indica o valor do MTU do enlace. Sua função é transmitir a todos os nós do enlace q
o mesmo tamanho de MTU válido. É usado nos casos em que o MTU da camada de
enlace não é bem conhecido.
Esse campo opcional é enviado nas mensagens Router advertisement e deve ser ignorado
em outras mensagens. O campo transmitido deve conter as seguintes características:
11 MTU de 32 bits: informa o tamanho máximo de MTU que deve ser utilizado em comu-
nicações naquele enlace.
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length Reserved
5
Figura 4.15
Formato do MTU
Pacote MTU.
11 Type de 8 bits: contém o valor 25, que é o identificador do campo opcional RDNSS;
77
0 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 1 2 3 4 5 6 7 8 9 3 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
Type
Length Reserved
25
Lifetime
Figura 4.16
Address of IPv6 Recursive DNS Servers... Formato do
Pacote RDNSS.
Novas opções foram definidas para novas funcionalidades do protocolo de Descoberta de Vizi-
nhança. Essas opções serão detalhadas conforme essas novas funções forem apresentadas.
IPv6 Básico
78
5
ICMPv6 – Parte 2
objetivos
conceitos
e prefixos; detecção de endereços duplicados; detecção de vizinhos inacessíveis;
redirecionamento; autoconfiguração de endereços stateless e stateful; protocolo
DHCPv6; estado dos endereços.
22 O host envia uma mensagem NS informando seu endereço MAC e solicita o ende-
reço MAC do vizinho.
2001:db8::faca:cafe:1234 A B 2001:db8::ca5a:f0ca:5678
MAC AB-CD-C9-21-58-0C MAC AB-CD-C0-12-85-C0
Capítulo 5 - ICMPv6 – Parte 2
Ao receber a mensagem, o vizinho a responde enviando uma mensagem NA informando seu Figura 5.2
endereço MAC. Essa característica do protocolo Descoberta de Vizinhança substitui, no IPv6, Envios de
mensagem
o protocolo ARP do IPv4, utilizando no lugar de um endereço broadcast o endereço multi- Neighbor
cast solicited-node como endereço de destino. Advertisement.
80
No IPv4, o mapeamento dos endereços da rede local é realizado através de mensa-
gens ARP Request.
11 Consiste no envio de uma mensagem NS pelo host, com o campo target address pre-
enchido com seu próprio endereço. Caso alguma mensagem NA seja recebida como
resposta, isso indicará que o endereço já está sendo utilizado.
O mecanismo DAD consiste no envio de uma mensagem NS pelo host, com o campo target
address preenchido com seu próprio endereço. Caso alguma mensagem NA seja recebida
em resposta, isso indicará que o endereço já está sendo utilizado e o processo de configu-
ração deve ser interrompido.
Gratuitous ARP No IPv4, os nós utilizam mensagens ARP Request e o método chamado Gratuitous ARP
Pacote de broadcast para detectar endereços unicast duplicados dentro do mesmo enlace, definindo os campos
ARP usado para se ter Source Protocol Address e Target Protocol Address, do cabeçalho da mensagem ARP Request,
certeza de que nenhum
outro dispositivo na com o endereço IPv4 que está sendo verificado.
rede tem o mesmo
endereço IP que o A topologia do exemplo a seguir é constituída por três computadores interconectados q
dispositivo de envio. Se por um switch, como indicado na próxima figura. O computador Cópia trocará seu
chegar uma resposta ao endereço lógico pelo mesmo endereço do computador Original, porém não pode haver
Gratuitous ARP gratuito,
significa que outro com- endereços repetidos no enlace. Cada computador possui uma diferente descrição:
putador na rede tem o 11 Original: é o verdadeiro dono do endereço IPv6 global (2001:db8::10) e do link local
mesmo endereço IP.
(FE80::200:FF:FEAA:0). A partir do endereço global, a máquina pode se comunicar
tanto na internet como na rede local;
81
Rede Local Figura 5.4
Topologia do
exemplo da
funcionalidade
Detecção de
Original Cópia Endereços
Local fe80::200:ff:feaa:0 Local fe80::200:ff:feaa:2 Duplicados.
Global 2001:db8::10/64 Global 2001:db8::10/64
Figura 5.5
Troca de
Cliente mensagens do
Local fe80::200:ff:feaa:1 exemplo da
Global 2001:db8::11/64 funcionalidade
q
Detecção de
No momento em que a máquina Cópia tentar adicionar o endereço repetido à sua Endereços
interface, a seguinte troca de mensagens acontece: Duplicados.
82
No final do processo, a máquina Cópia não consegue se autoconfigurar e a máquina q
Cliente só reconhece a máquina Original como o dono do endereço IPv6 (2001:db8::10).
11 Destination Cache.
11 Neighbor Cache: mantém uma lista de vizinhos locais para os quais foi enviado
tráfego recentemente, armazenado seus endereços IP, informações sobre o endereço
MAC e uma flag indicando se o vizinho é um roteador ou um host. Também informa
se ainda há pacotes na fila para serem enviados, a acessibilidade dos vizinhos e o
próximo agendamento de um evento de detecção de vizinhos inacessíveis. Essa
tabela pode ser comparada à tabela ARP do IPv4;
11 Destination Cache: mantém informações sobre destinos para os quais foi enviado
tráfego recentemente, incluindo tanto destinos locais quanto remotos, sendo atua-
lizado com informações recebidas por mensagens Redirect. O Neighbor Cache pode
ser considerado um subconjunto das informações do Destination Cache.
83
RoteadorAlternativo 1 RoteadorAlternativo2
eth0 eth1
Local fe80::200:ff:feaa:1 Local fe80::200:ff:feaa::2
Global 2001:db8:cafe::11/64 Global 2001:db8:dado::11/64
Nessa situação, durante a comunicação entre os clientes, acontece um problema no Rote- Figura 5.6
ador. Passado certo tempo, a máquina Cliente1 começa a desconfiar que o Roteador pode Topologia do
exemplo da
não estar operando devido à falta de mensagens dele provenientes. Isso acarreta na reali- funcionalidade
zação do mecanismo de detecção de vizinhos inacessíveis. de detecção
de vizinhos
inacessíveis.
IPv6 Básico
84
eth0 eth1
Local fe80::200:ff:feaa:1 Local fe80::200:ff:feaa::2
Global 2001:db8:cafe::11/64 Global 2001:db8:dado::11/64
Cliente1 Cliente2
Local fe80::200:ff:feaa:0 Local fe80::200:ff:feaa:3
Global 2001:db8:cafe::10/64 Roteador Global 2001:db8:dado::10/64
RoteadorAlternativo1 RoteadorAlternativo2
Figura 5.7 No final do processo, como o roteador não responde às mensagens de neighbor solicitation,
Troca de o Cliente1 por conhecer que o prefixo não pertence ao enlace, opta por procurar uma nova
mensagens do
exemplo da rota em sua tabela de roteamento e continua sua comunicação com o Cliente2.
funcionalidade
de detecção Redirecionamento
q
de vizinhos
inacessíveis. 11 Envia mensagens Redirect.
85
Roteador B Computador C Roteador A
Pacote IPv6
Figura 5.8
Pacotes IPv6 Mecanismos de
subsequentes redirecionamento
IPv6 Básico
de pacotes.
86
Mensagens Redirect são enviadas por roteadores para redirecionar um host automatica-
mente a um roteador mais apropriado ou para informar ao host que o destino encontra-se
no mesmo enlace. Esse mecanismo é igual ao que existe no IPv4.
Para gerar o endereço IP, um host utiliza uma combinação entre dados locais, como o
endereço MAC da interface ou um valor randômico para gerar o ID, e informações rece-
bidas dos roteadores, como múltiplos prefixos. Se não houver roteadores presentes, o
host gera apenas o endereço link-local com o prefixo “FE80::”.
22 Endereço de Tentativa.
22 Endereço Preferencial.
22 Endereço Depreciado.
22 Endereço Válido.
Capítulo 5 - ICMPv6 – Parte 2
22 Endereço Inválido.
11 Esse endereço passa a fazer parte dos grupos multicast solicited-node e all-node;
11 O host envia uma mensagem Router Solicitation para o grupo multicast all-routers;
11 Endereço Preferencial: endereço atribuído à interface. Pode ser utilizado sem restri-
ções, até expirar seu tempo de vida;
11 Endereço Depreciado: endereço cujo tempo de vida expirou. Pode ser utilizado para
continuar as comunicações abertas por ele, mas não para iniciar novas comunicações;
11 Endereço Inválido: endereço que não pode ser atribuído a uma interface. Um ende-
reço se torna inválido quando seu tempo de vida expira.
11 Cliente: possui o endereço IPv6 de link local (fe80::200:ff:feaa:0) e ainda não adquiriu
endereço global que permita conexão com a internet. Então, ele requisita ao roteador
informações para realizar sua autoconfiguração;
Rede Local
Figura 5.9
Topologia do
exemplo da
funcionalidade
Autoconfiguração
Roteador Stateless via Router
Cliente Local fe80::200:ff:feaa::1 Advertisement.
Local fe80::200:ff:feaa:0 Global 2001:db8::11/64
Nesse exemplo, o cliente envia uma mensagem Router Solicitation para o roteador. q
Este responde com uma mensagem Router Advertisement, que será processada e utili-
IPv6 Básico
88
Roteador
Cliente Local fe80::200:ff:feaa::1
Local fe80::200:ff:feaa:0 Global 2001:db8::11/64
Após a criação do endereço global, convém lembrar que, antes do dispositivo adicioná-lo q
à interface, o procedimento de detecção de endereços duplicados (Duplicate Address
Resolution) deve ser executado.
11 Fornece:
22 Endereços IPv6.
11 Clientes enviam mensagens a servidores fora de seu enlace utilizando um Relay DHCP.
DHCPv6 e DHCPv4 são independentes. Redes com Pilha Dupla precisam de serviços
DHCP separados.
A utilização de DHCPv6 oferece controle maior na atribuição de endereços, uma vez que,
além de fornecer opções de configuração de rede, é possível definir políticas de alocação de
endereços e atribuir endereços aos hosts que não sejam derivados do endereço MAC.
Em uma rede IPv6, é possível combinar o uso de autoconfiguração stateless com servidores
DHCP. Nesse cenário é possível, por exemplo, utilizar autoconfiguração stateless na atri-
buição de endereços aos hosts e servidores DHCPv6 para fornecer informações adicionais
de configuração, como o endereço de servidores DNS.
Os protocolos DHCPv6 e DHCPv4 são independentes, de modo que, em uma rede com
Pilha Dupla (dual stack), será necessário rodar um serviço para cada protocolo. Com Pilha Dupla
DHCPv4, é preciso configurar no cliente se este usará DHCP, enquanto que com o DHCPv6 Envolve a presença
sua utilização é indicada através das opções das mensagens RA. simultânea do IPv4 e
q
IPv6 no mesmo sistema.
11 Hosts: autoconfiguração stateless ou DHCPv6.
11 Formato da mensagem.
Número sequencial
Reservado
O endereçamento de uma rede muitas vezes é baseado nos prefixos atribuídos por ISPs.
No caso de uma mudança de provedor, é necessário renumerar todos os endereços da rede.
IPv6 Básico
No IPv6, o processo de reendereçamento dos hosts pode ser feito de forma relativamente
simples. Através dos mecanismos do protocolo de Descoberta de Vizinhança, um novo prefixo
90
pode ser anunciado pelo roteador a todos os hosts do enlace. É possível também a utilização
de servidores DHCPv6. Para tratar a configuração e reconfiguração dos prefixos nos roteadores
tão facilmente quanto nos hosts, foi definido na RFC 2894 o protocolo Router Renumbering.
O mecanismo Router Renumbering utiliza mensagens ICMPv6 do tipo 138, enviadas aos
roteadores através do endereço multicast all-routers, contendo as instruções de como
atualizar seus prefixos.
33 Flags:
91
A topologia do exemplo a seguir é constituída por um computador conectado a um ser- q
vidor DHCPv6. Nessa situação o cliente requisita um endereço global ao servidor DHCPv6.
A partir disso, uma negociação acontece entre as duas máquinas até que um endereço
seja reservado para o cliente. A descrição dos dispositivos que compõe tal topologia é:
Figura 5.12
Topologia do
exemplo da
ServidorDHCPv6 funcionalidade
Cliente Local fe80::200:ff:feaa::1 Autoconfiguração
Local fe80::200:ff:feaa:0 Global 2001:db8::11/64 Stateful DHCPv6.
Nesse exemplo, o Cliente envia uma mensagem Solicit para a rede procurando por servi- q
dores habilitados. O ServidorDHCPv6 responde com uma mensagem Advertise se anun-
ciando para fornecer informações. Essa mensagem carrega o endereço solicitado para
auxiliar o Cliente na escolha entre os servidores que responderam. Então, ele elege um
servidor (no exemplo só há um servidor) e envia uma mensagem Request para requisitar
permissão de uso do endereço global passado. O ServidorDHCPv6 armazena, num registro,
o endereço passado ao Cliente e manda uma mensagem Reply como confirmação.
IPv6 Básico
92
ServidorDHCPv6
Cliente Local fe80::200:ff:feaa::1
Local fe80::200:ff:feaa:0 Global 2001:db8::11/64
Client Identifier
Identity Association for Non-temporary Address
Elapsed time
Client Identifier
Server Identifier
Identity Association for Non-temporary Address
Client Identifier
Server Identifier
Elapsed time
Identity Association for Non-temporary Address
11 Tentativa: o endereço nesse estado ainda não foi atribuído a uma interface, principal-
mente porque o processo de detecção de endereços ainda não foi concluído. Todos os
pacotes que forem direcionados a um endereço nesse estado serão descartados;
11 Preferencial: o endereço nesse estado já foi atribuído a uma interface e pode ser
Capítulo 5 - ICMPv6 – Parte 2
utilizado indistintamente para comunicação na rede. Ou seja, pode ser utilizado tanto
como origem quanto como destino dos pacotes IPv6;
93
11 Depreciado: o endereço nesse estado já foi atribuído a uma interface, porém não q
pode ser utilizado como origem em novas comunicações. Contudo, os pacotes de
comunicações previamente estabelecidas trafegam normalmente;
11 Válido: o endereço nesse estado já foi atribuído a uma interface e serve para
designar os endereços tanto no estado preferencial quanto no depreciado;
11 Inválido: o endereço nesse estado não pode ser atribuído a uma interface e não deve
ser utilizado para comunicações na rede. Ou seja, ele não pode ser utilizado nem
como origem nem no destino de pacotes IPv6.
l
Uma consideração que
q
pode ser feita sobre o
Existe uma ordem para esses estados serem designados aos endereços, o que remete estado dos endereços
é a de que nem todo
à ideia de ciclo de vida. O endereço, ao ser criado, recebe o estado de tentativa. Com
endereço passa por
ele permanece até que o processo de detecção de endereços duplicados indique sua todos os estados. Isso
unicidade no enlace. A seguir, ele é adicionado a uma interface e recebe o estado prefe- pode acontecer por
dois motivos. O
rencial, o que lhe permite ser utilizado em comunicações com a internet. Após o término
primeiro provém da
do tempo chamado Preferred Lifetime, o endereço passa do estado preferencial para o habilidade dos
depreciado, no qual ele serve apenas para manter as comunicações já em andamento. dispositivos de
conseguirem reiniciar
Passado o tempo designado como Valid Lifetime, o endereço entra no estado Inválido e
os contadores de
não pode mais ser utilizado. tempo relacionados ao
Preferred lifetime e ao
Valid Lifetime. O
Estados segundo é o fato de
esses tempos não
Válido
serem necessaria-
mente limitados.
Tentativa Preferencial Depreciado Inválido Algumas implementa-
ções permitem que eles
sejam infinitos.
Valid Lifetime
94
6
Funcionalidades do IPv6
objetivos
conceitos
Path MTU Discovery; jumbograms; gerenciamento de grupos multicast;
Quality of Service (QoS); suporte à mobilidade.
11 IPv4: todos os roteadores podem fragmentar os pacotes que sejam maiores que o
MTU do próximo enlace.
Path MTU Discovery: busca garantir que o pacote será encaminhado com o maior
tamanho possível.
11 Implementações mínimas de IPv6 podem omitir esse suporte, utilizando 1280 bytes
como tamanho máximo de pacote.
Determinado pelos protocolos de roteamento, cada enlace na rede pode possuir um valor
Capítulo 6 - Funcionalidades do IPv6
95
No IPv6, a fragmentação dos pacotes é realizada apenas na origem, não sendo permitida em
roteadores intermediários. Esse processo tem o intuito de reduzir o overhead do cálculo dos
cabeçalhos alterados nos roteadores intermediários.
Para isso, é utilizado, no início do processo de fragmentação, o protocolo Path MTU Dis-
covery (PMTUD), descrito na RFC 1981, que descobre de forma dinâmica qual o tamanho
máximo permitido ao pacote, identificando previamente os MTUs de cada enlace no
caminho até o destino. O protocolo PMTUD deve ser suportado por todos os nós IPv6. No
entanto, implementações mínimas de IPv6 podem omitir esse suporte, utilizando 1280 bytes
como tamanho máximo de pacote.
11 5: essas iterações podem ocorrer diversas vezes até se encontrar o menor MTU;
O processo de PMTUD se inicia assumindo que o MTU de todo o caminho é igual ao MTU do
primeiro salto. Se o tamanho dos pacotes enviados for maior do que o suportado por algum
roteador ao longo do caminho, este vai descartá-lo e retornará uma mensagem ICMPv6
packet too big que devolve, juntamente com a mensagem de erro, o valor do MTU do enlace
seguinte. Após o recebimento dessa mensagem, o nó de origem reduzirá o tamanho dos
pacotes de acordo com o MTU indicado na mensagem packet too big.
Esse procedimento termina quando o tamanho do pacote for igual ou inferior ao menor
MTU do caminho, sendo que essas iterações, de troca de mensagens e redução do tamanho
dos pacotes, podem ocorrer diversas vezes até se encontrar o menor MTU. Caso o pacote
seja enviado a um grupo multicast, o tamanho utilizado será o menor PMTU de todo o con-
junto de destinos.
De um ponto de vista teórico, o PMTUD pode parecer imperfeito, dado que o roteamento Mais informações
dos pacotes é dinâmico, e cada pacote pode ser entregue através de uma rota diferente. No na RFC 1981 – Path
MTU Discovery for IP
entanto, essas mudanças não são tão frequentes, e caso o valor do MTU diminua devido a version 6.
uma mudança de rota, a origem receberá a mensagem de erro e reduzirá o valor do Path MTU.
Jumbograms
O IPv6 permite o envio de pacotes que possuam entre 65.536 e 4.294.967.295 bytes de q
comprimento.
Devem ser realizadas alterações também nos cabeçalhos TCP e UDP, ambos limitados a
16 bits para indicar o tamanho máximo dos pacotes.
96
A RFC 2675 define uma opção do cabeçalho de extensão Hop-By-Hop chamada Jumbo
Payload. Essa opção permite o envio de pacotes IPv6 com cargas úteis entre 64KB e 4GB de
Jumbogram comprimento, conhecidos como jumbograms.
Pacote de qualquer
tamanho superior Ao enviar jumbograms, o cabeçalho IPv6 trará os campos Tamanho dos Dados e Próximo
ao padrão Maximum Cabeçalho com o valor zero. Este último indicará que as opções do cabeçalho de extensão
Transmission Unit (MTU)
Hop-By-Hop devem ser processadas pelos nós, onde são indicados os tamanhos dos
da rede de tecnologia
subjacente em ambas pacotes jumbograms.
camadas de enlace ou
rede. O cabeçalho UDP possui um campo de 16 bits chamado Tamanho, que indica o tamanho do
cabeçalho UDP mais o tamanho dos dados, não permitindo o envio de pacotes com mais
de 65.536 bytes. Entretanto, é possível o envio de jumbograms definindo o campo Tamanho
como zero, deixando que o receptor extraia o tamanho real do pacote UDP a partir do
tamanho do pacote IPv6.
Nos pacotes TCP, as opções Maximum Segment Size (MSS), que negociam no início da
conexão o tamanho máximo do pacote TCP a ser enviado, e Urgent Pointer, que indica um
deslocamento de bytes a partir do número de sequência em que dados com alta prioridade
devem ser encontrados, também não podem referenciar pacotes maiores que 65.535 bytes.
Desse modo, para se enviar jumbograms é preciso, no caso do MSS, determinar seu valor
como 65.535, que será tratado como infinito pelo receptor do pacote. Em relação ao Urgent
Aprenda mais sobre os
jumbograms na RFC Pointer, a solução é semelhante, uma vez que se pode determinar o valor do Urgent Pointer
2675 – IPv6 Jumbograms. como 65.535, indicando que está além do final deste pacote.
11 Nova versão:
Recapitulando o que foi dito no Capítulo 3, multicast é uma técnica que permite endereçar
múltiplos nós como um grupo, possibilitando o envio de pacotes a todos os nós que o
compõem, a partir de um endereço único que o identifica.
Capítulo 6 - Funcionalidades do IPv6
Os membros de um grupo multicast são dinâmicos. Os nós podem entrar e sair de um grupo
a qualquer momento, não existindo limitações para o tamanho de um grupo multicast.
97
O MLD utiliza três tipos de mensagens ICMPv6: q
11 Multicast Listener Query (Tipo 130): as mensagens Query possuem dois subtipos.
A General Query é utilizada por roteadores para verificar periodicamente os
membros do grupo, solicitando a todos os nós multicast que reportem todos os
grupos de que fazem parte. A Multicast-Address-Specific Query é utilizada por rotea-
dores para descobrir se existem nós fazendo parte de um determinado grupo;
11 Multicast Listener Report (Tipo 131): mensagens Report não solicitadas são
enviadas por um nó quando este começa a fazer parte de grupo multicast. Elas
também são geradas em resposta a mensagens Query;
11 Multicast Listener Done (Tipo 132): enviada pelos nós quando estes estão deixando
um determinado grupo.
Essas mensagens são enviadas com um endereço de origem link-local e com o valor 1 no
campo Limite de Encaminhamento, garantindo que elas permaneçam na rede local. Caso o
pacote possua um cabeçalho Hop-by-Hop, a flag Router Alert será marcada; desse modo, os
roteadores não descartarão o pacote, ainda que o endereço do grupo multicast em questão
não esteja sendo ouvido por eles.
Uma nova versão do protocolo MLD, chamada de MLDv2, foi definida na RFC 3810. Equiva-
lente ao IGMPv3, além de incorporar as funcionalidades de gerenciamento de grupos do
MLD, essa nova versão introduziu o suporte à filtragem de origem, que permite a um nó
especificar se não deseja receber pacotes de uma determinada origem ou informar o inte-
resse em receber pacotes somente de endereços específicos. Por padrão, os membros de
um grupo recebem pacotes de todos os membros desse grupo.
11 Multicast Router Advertisement (Tipo 151): essa mensagem é enviada por rotea-
dores para anunciar que o roteamento IP multicast está habilitado. É enviada a partir
do endereço link-local do roteador para o endereço multicast all-snoopers (FF02::6A);
11 Multicast Router Solicitation (Tipo 152): essa mensagem é enviada pelos dispositivos
para solicitar mensagens Multicast Router Advertisement aos roteadores multicast. Ela
é enviada a partir do endereço link-local do dispositivo para o endereço multicast all-
-routers (FF02::2);
11 Multicast Router Termination (Tipo 153): essa mensagem é enviada por rotea-
dores para anunciar que suas interfaces não estão mais encaminhando pacotes IP
multicast. Ela é enviada a partir do endereço link-local do roteador para o endereço
multicast all-snoopers (FF02::6A). Mais informações na
RFC 2710 – Multicast
Listener Discovery
O endereço multicast IPv4 para all-snoopers é 224.0.0.106 e para all-routers é 224.0.0.2. (MLD) for IPv6 – e na
RFC 4286 – Multicast
Router Discovery.
Todas as mensagens MRD também são enviadas com um Limite de Encaminhamento igual a 1
e contendo a opção Router Alert.
IPv6 Básico
98
Quality of Service (QoS)
O protocolo IP trata todos os pacotes da mesma forma, sem nenhuma preferência. q
Algumas aplicações necessitam que seus pacotes sejam transportados com a garantia
de que haja o mínimo de atraso, latência ou perda de pacotes.
11 VoIP.Videoconferência.
11 Jogos on-line.
11 Entre outros.
Arquiteturas principais:
Ambas utilizam políticas de tráfego e podem ser combinadas para permitir QoS em
LANs ou WANs.
A princípio, o protocolo IP trata todos os pacotes da mesma forma, sem nenhuma prefe-
rência no momento de encaminhá-los. Isso pode acarretar diversas implicações no desem-
penho de uma aplicação, uma vez que atualmente muitas dessas aplicações, como voz e
vídeo sobre IP, requerem transmissão e reprodução praticamente em tempo real, podendo
ter sua qualidade diminuída devido à ocorrência de perda de pacotes, entrega fora de
ordem, atraso ou variação de sinal. Esses problemas podem acontecer devido à forma como
o tráfego chega e é manipulado pelos roteadores, já que, vindo de diferentes interfaces e
diversas redes, o roteador processa os pacotes na ordem em que são recebidos.
DiffServ
Trabalha por meio de classes, agregando e priorizando pacotes com requisitos q
de QoS similares.
O DiffServ trabalha por meio de classes, agregando e priorizando pacotes com requisitos
QoS similares. Pacotes DiffServ são identificados pelos oito bits dos campos Tipo de Serviço
do IPv4 e Classe de Tráfego do IPv6, com o intuito de identificar e distinguir as diferentes
classes ou prioridades de pacotes que necessitem de QoS.
99
Ambos os campos possuem as mesmas definições, e as prioridades atribuídas a cada tipo
de pacote podem ser definidas tanto na origem quanto nos roteadores, podendo também Comparado com o
ser redefinidas ao longo do caminho, por roteadores intermediários. Em pacotes que não IntServ, o DiffServ não
exige qualquer
necessitem de QoS, o campo Classe de Tráfego apresenta o valor zero. identificação ou gerência
dos fluxos, além de ser
geralmente mais
IntServ
q
utilizado nas redes,
devido à sua facilidade
11 Baseia-se na reserva de recursos por fluxo.
de implantação.
Normalmente é associado ao protocolo Resource ReSerVation Protocol (RSVP).
11 IPv6: campo Identificador de Fluxo é preenchido pela origem com valores aleatórios
entre 00001 e FFFFF para identificar o fluxo que necessita de QoS.
RSVP utiliza alguns elementos do protocolo IPv6, como o campo Identificador de Fluxo e o
cabeçalho de extensão Hop-by-Hop.
O modelo IntServ baseia-se na reserva de recursos por fluxo e sua utilização está normal-
mente associada ao protocolo RSVP. O RSVP é utilizado para reservar o recurso ao longo do
caminho da fonte até o destino de um fluxo que requer QoS.
No IPv6, para identificar os fluxos que necessitam de QoS, são utilizados os 20 bits do
campo Identificador de Fluxo, que são preenchidos com valores aleatórios entre 00001 e
Para mais informações,
FFFFF. Pacotes que não pertencem a um fluxo devem marcar o campo Identificador de Fluxo leia a RFC 1633 – Inte-
com zeros. Os hosts e roteadores que não têm suporte às funções desse campo devem grated Services in the
Internet Architecture:
preenchê-lo com os zeros quando enviarem um pacote, não alterá-lo ao encaminharem um
an Overview; RFC 2205
pacote, ou ignorá-lo quando receberem um pacote. Pacotes de um mesmo fluxo devem possuir – Resource ReSerVation
o mesmo endereço de origem e destino, e o mesmo valor no campo Identificador de Fluxo. Protocol (RSVP); RFC
2475 – An Architecture
O RSVP utiliza alguns elementos do protocolo IPv6, como o campo Identificador de Fluxo e for Differentiated
Services e RFC 3260
o cabeçalho de extensão Hop-by-Hop. Pacotes RSVP são enviados com o mesmo valor no
– New Terminology and
campo Identificador de Fluxo, junto com o cabeçalho de Extensão Hop-By-Hop, usado para Clarifications for
transportar uma mensagem Router Alert, indicando para cada roteador no caminho do Diffserv.
100
Nó móvel
Movimentação do nó
Endereço de origem
Agente de origem
Endereço de origem
+
Endereço remoto
Rede remota
Nó correspondente
Figura 6.1 O suporte à mobilidade permite que um dispositivo móvel se desloque de uma rede para outra
Mobilidade sem a necessidade de alterar seu endereço IP de origem, tornando a movimentação entre redes
IPv6
invisível para os protocolos das camadas superiores. Com isso, todos os pacotes enviados para
esse Nó Móvel continuarão sendo encaminhados a ele usando o endereço de origem.
11 Nó Móvel: dispositivo que pode mudar de uma rede para outra enquanto continua
recebendo pacotes através de seu Endereço de Origem;
11 Endereço Remoto: endereço global unicast atribuído ao Nó Móvel pela Rede Remota;
Binding Updates
Funcionamento: q
11 O Nó Móvel utiliza o Endereço de Origem para receber pacotes na Rede de Origem.
11 Deslocamento:
101
Mensagem Binding Updates
Figura 6.2
Troca de mensages
Mensagem Binding Acknowledgement
Binding.
O Nó Móvel possui um Endereço de Origem fixo, atribuído pela sua Rede de Origem. Mesmo
quando o nó se desloca de sua Rede de Origem, esse endereço é mantido.
Essa associação de endereços também pode ser feita diretamente com o Nó Corres-
pondente, com o intuito de otimizar a comunicação.
Para o Nó Móvel detectar que retornou à sua rede, é utilizado o processo de Descoberta
de Vizinhos Inacessíveis, para detectar se o seu roteador padrão está ativo. Caso localize
um novo roteador padrão, o Nó Móvel vai gerar um novo endereço baseado no prefixo
anunciado na mensagem RA. No entanto, encontrar um novo roteador padrão não significa
necessariamente que ele esteja em uma nova rede, porque pode ser apenas uma renume-
ração em sua rede ou a adição de um novo roteador. Com isso, antes de realizar a asso-
ciação de endereços com o Agente de Origem e com os Nós Correspondentes, o Nó Móvel
tenta localizar novamente seu roteador padrão para comparar se o intervalo entre o envio
de mensagens RA não solicitadas é o mesmo que o configurado em sua Rede Original.
Quando o Nó Móvel retorna à sua Rede de Origem, ele envia uma mensagem Binding
Updates informando ao Agente de Origem o seu retorno e que este não precisa mais lhe
encaminhar os pacotes.
102
Tunelamento bidirecional
Rede de origem
Nó correspondente
Agente de origem
Internet
Figura 6.3
Tunelamento
bidirecional:
Rede remota
pacotes enviados
interceptados pelo
Agente de Origem. Nó móvel
Nó correspondente
Agente de origem
Capítulo 6 - Funcionalidades do IPv6
Internet
Rede remota
Nó móvel
103
No modo Otimização de Rota, a comunicação entre o Nó Móvel e o Nó Correspondente
ocorre diretamente, sem a necessidade da utilização do Agente de Origem. Para que essa
comunicação ocorra, o Nó Móvel registra seu Endereço Remoto no Nó Correspondente, que
associa os Endereços de Origem e Remoto do Nó Móvel.
Mobility
11 Identificado no campo Próximo Cabeçalho pelo valor 135. q
11 Utilizado nas trocas de mensagens relacionadas à criação e gerenciamento das
associações de endereços.
Soma de verificação
O cabeçalho de extensão Mobility é indicado no campo Próximo Cabeçalho pelo valor 135.
Ele é utilizado pelo Nó Móvel, pelo Agente Remoto e pelo Nó Correspondente nas trocas de
mensagens relacionadas à criação e gerenciamento das associações de endereços.
104
Esse cabeçalho possui os seguintes campos:
11 Dados: o seu formato e tamanho dependem do tipo de mensagem Mobility que está
sendo enviada.
11 Binding Update (Tipo 5): enviada pelo Nó Móvel notificando ao Agente de Origem ou
ao Nó Correspondente sobre um novo Endereço Remoto;
11 Binding Ack (Tipo 6): enviada como confirmação de recebimento de uma mensagem
Binding Update;
11 Binding Error (Tipo 7): enviada pelo Nó Correspondente para relatar erros.
Também foram criadas quatro novas mensagens ICMPv6 utilizadas na configuração de pre-
fixos na Rede de Origem e na descoberta de Agentes de Origem.
O par de mensagens Home Agent Address Discovery Request e Home Agent Address
Discovery Reply são utilizadas para descobrir dinamicamente um Agente de Origem em
sua rede. Isso evita a necessidade de configurações manuais e problemas no caso da renu-
meração do Agente de Origem.
O Nó Móvel envia uma mensagem Discovery Request para o endereço anycast do Agente
de Origem em sua rede. O campo Endereço de Origem do cabeçalho base carrega o Endereço
Remoto do Nó Móvel. O Agente de Origem responde enviando uma mensagem Discovery
Reply. As mensagens Discovery Request e Reply são identificadas, respectivamente, pelos
valores 150 e 151 no campo Próximo Cabeçalho.
Já a mensagem Mobile Prefix Solicitation é enviada pelo Nó Móvel ao Agente de Origem, para
Capítulo 6 - Funcionalidades do IPv6
determinar mudanças nas configurações de prefixo em sua rede. O Agente Remoto responde
enviando uma mensagem Mobile Prefix Advertisement. Baseado nessa resposta, o Nó Móvel
pode ajustar seu Endereço de Origem. As mensagens Mobile Prefix Solicitation e Advertisement
são identificadas no campo Próximo Cabeçalho pelos valores 152 e 153, respectivamente.
105
Foi adicionada à mensagem RA a flag H, que permite a um roteador anunciar se atua como
um Agente de Origem na rede. A partir desse anúncio, um Nó Móvel forma uma lista de
Agentes de Origem da sua rede.
No entanto, para manter essa lista atualizada, o Nó Móvel precisa saber os endereços global
unicast dos roteadores. Porém, as mensagens RA trazem apenas o endereço link-local. Para
resolver esse problema, foi adicionada uma nova flag à opção Prefix Information, a flag R.
A marcação dessa flag indica que a opção Prefix Information não contém um prefixo, mas
sim o endereço global unicast do roteador.
Também foram criadas duas novas opções ao protocolo, a Advertisement Interval e a Home
Agent Information. A primeira indica o intervalo entre mensagens RA não solicitadas, infor-
mação que é utilizada no algoritmo de detecção de mudança de rede. Nas especificações do
protocolo de Descoberta de Vizinhança, o intervalo mínimo entre o envio dessas mensagens
deve ser de três segundos. No entanto, para garantir que o Nó Móvel detecte a mudança de
rede e aprenda as informações sobre a nova rede o mais rápido possível, roteadores com
suporte à mobilidade IPv6 podem ser configurados com um intervalo de tempo menor para
o anúncio de mensagens RA.
As principais diferenças entre o suporte à mobilidade do IPv6 e do IPv4 podem ser resumidas
nos seguintes tópicos:
11 A busca por agentes de origem realizada pelo Nó Móvel passou a ser feita utilizando Leia mais na RFC 3775
– Mobility Support in
anycast. Dessa forma, o Nó Móvel receberá apenas a resposta de um único Agente de IPv6.
Origem. Com o IPv4, utiliza-se broadcast, o que implica uma resposta separada para cada
Agente de Origem existente.
106
7
Protocolo DNS
objetivos
conceitos
Componentes do DNS.
O protocolo DNS
O Serviço de Tradução de Nomes, ou simplesmente “serviço de nomes”, é um componente
dos serviços em redes que permite a aplicativos e serviços localizar e fazer referência a
informações em um ambiente de rede. Os nomes são parte crítica dos serviços em redes,
pois ajudam na administração de todos os recursos disponíveis na rede.
Domain Name Service (DNS) fornece serviços de nomes e diretórios em redes que imple-
mentam a pilha de protocolos Transmission Control Protocol/Internet Protocol (TCP/IP).
Podemos considerá-lo como um sistema de banco de dados distribuído, que traduz nomes
de estações em endereços, fornecendo informações sobre roteamento e domínios.
O DNS é essencial para os sites que se conectam diretamente à internet. Porém, mesmo para
redes locais isoladas que utilizam protocolos da pilha TCP/IP, sempre faz sentido utilizá-lo.
É particularmente importante para o sistema de correio eletrônico, pois é nele que são defi-
nidos registros que identificam a máquina que manipula as correspondências relativas a um
dado nome, identificando, assim, onde determinado usuário recebe suas correspondências.
107
O rápido crescimento da internet levou à introdução dos conceitos de domínios e subdo-
mínios DNS. Os domínios compõem a estrutura básica do DNS e podem ser comparados a
diretórios em um sistema de arquivos, com cada domínio aparecendo como sub-árvores
de informações no espaço de nomes de domínio. Um endereço simbólico de estação em
um domínio deve ser único, porém esse mesmo endereço simbólico pode existir em outros
domínios. Os domínios são implementados como uma hierarquia, que pode ser vista como
uma árvore invertida, começando no domínio-raiz, cujo endereço simbólico real é “ ”, ou
seja, um rótulo (label) nulo.
“”
rnp
esr
Figura 7.1
Domínios genéricos Domínios
Árvore de
geográficos domínios DNS.
Definições
11 Domínio. q
11 Zonas de autoridade.
11 Registro de recursos.
11 Mapeamento:
22 Direto.
22 Reverso.
Domínio
11 Domínio: sub-árvore do espaço de nomes DNS. q
11 Nome de domínio completo, também denominado Fully Qualified Domain Name
(FQDN), consiste em:
IPv6 Básico
22 Nome da máquina.
22 Nome do domínio.
22 Domínio de topo.
108
11 Exemplo: q
22 www.rnp.br
22 rnp: domínio.
Cada sub-árvore é considerada parte de um domínio. Nesse caso, “rnp” faz parte do
domínio “br”. Considere o endereço www.df.rnp.br, no qual “df” é uma sub-árvore de “rnp”
e faz parte desse domínio.
Zonas de autoridade
Também denominadas Start of Authority (SOA). q
Domínios e zonas de autoridade não são sempre sinônimos.
Cada nome de domínio possui um registro de zona de autoridade que apresenta informa-
ções do domínio e da zona em que o domínio está inserido. Entre essas informações estão:
11 Tempo de expire: informa o tempo, em segundos, após o qual o servidor não mais res-
ponde por informações daquela zona;
11 Tempo de vida TTL (Time-to-Live): valor passado pelo servidor de nomes indicando, para a
máquina que originou a pergunta, o tempo que a informação pode ser mantida em cache.
109
Registro de recursos
11 Todos os domínios podem ter um conjunto de registro de recursos associado. q
11 A verdadeira função do DNS é mapear nomes de domínio em registros de recurso.
Um registro de recurso é composto por cinco campos: Domínio, Tempo de vida (TTL),
Classe, Tipo e Valor.
11 Tempo de vida (Time To Live): dá uma indicação do nível de estabilidade do registro. Infor-
mações muito estáveis recebem um valor alto, como 86400 (o número de segundos em um
dia). Informações altamente voláteis têm um valor pequeno, como 60 (em minutos);
11 Classe: terceiro campo de todo registro de recurso. Para informação de servidor internet,
é sempre IN. Para informações não relacionadas com a internet, são usados outros
códigos, que na prática são vistos raramente.
22 General Purpose Pointer (PTR): permite obter um nome de host, a partir do conheci-
mento do seu endereço IP. É a contraparte do registro A;
22 Canonical Name Alias (CNAME): permite criar um apelido para um host. Esse registro
IPv6 Básico
110
22 Host Information (HINFO): permite identificar propriedades de hardware e do
Sistema Operacional do host que serão exibidas toda vez que o usuário acessar esse
host. A padronização de identificação do tipo de CPU e do Sistema Operacional deve
obedecer aos nomes listados na RFC 1700;
22 Mail Exchange (MX): mantém informações referentes aos hosts responsáveis pelo
e-mail do domínio.
Finalmente, nós temos o campo Valor. Esse campo pode ser um número, um nome de
domínio, ou um conjunto de caracteres ASCII. A semântica depende do tipo de registro.
Considere que todos os domínios podem ter associado um conjunto de registro de recursos.
Conforme mencionado anteriormente, uma zona de autoridade refere-se a um local onde
estão armazenados os dados sobre as máquinas do domínio.
11 Servidor 1: SOA do domínio rnp.br e responsável pelas informações de DNS dessa rede;
11 Servidor 2: SOA do domínio df.rnp.br e responsável pelas informações de DNS dessa rede.
Esses servidores podem estar inclusive em localidades diferentes, sem relação direta (pri-
mário e secundário) um com o outro.
Capítulo 7 - Protocolo DNS
111
Mapeamento direto
DNS
Qual o endereço de
mail.rnp.br? Servidor DNS raiz
2
3
DNS
DNS
1 4
8 5
Servidor DNS raiz
Resposta: Servidor DNS local
6
200.130.38.66
7
DNS
Figura 7.2
Mapeamento
de um nome em
Servidor DNS raiz endereço IP.
O mapeamento direto é utilizado na tradução de nomes em endereços IP, que será usado
como destinatário do pacote a ser transmitido pela rede.
11 O servidor DNS local já possui em cache o endereço procurado. Nesse caso, a resposta é
enviada diretamente ao computador que fez a consulta, sem necessidade de encaminhar
consultas a outros servidores.
IPv6 Básico
112
Mapeamento reverso
200.130.77.75?
2
DNS
4
6
Resposta: Servidor DNS local Servidor
www.rnp.br 5
Figura 7.3
resposta:
Mapeamento de
um endereço IP em Classe C
um nome. 200.130.77
l raiz
Esse tipo de consulta é
e em seguida o servidor DNS na rede de destino. O nome é então passado ao compu-
tador que efetuou a consulta.
utilizado frequente-
mente em diagnósticos
e na localização de um Resolução direta no IPv6
spammer ou hacker.
Registros: q
11 IPv4 = A - traduz nomes para endereços IPv4.
Para que o DNS trabalhe com a versão 6 do protocolo IP, algumas mudanças foram definidas
na RFC 3596. Um novo registro foi criado para armazenar os endereços IPv6 de 128 bits, o
AAAA ou quad-A. Sua função é traduzir nomes para endereços IPv6, equivalente ao registro
A utilizado com o IPv4. Caso um host possua mais de um endereço IPv6, ele terá um registro
quad-A para cada endereço. Os registros são representados como a seguir:
www.ipv6.br. IN A 200.160.4.22
IN AAAA 2001:12ff:0:4::22
22 Exemplo:
22.4.160.200.in-addr.arpa PTR www.ipv6.br.
113
22 Obsoletos q
33 Registros
33 A6
33 DNAME
33 ip6.int
Para resolução de reverso, foi adicionado o registro PTR ip6.arpa, responsável por traduzir
Os outros tipos de
endereços IPv6 em nomes. Em sua representação, omitir sequência de zeros não é permitido registro DNS não
e o bit menos significativo é colocado mais à esquerda, como é possível observar no exemplo: sofreram alterações,
apenas foram adap-
11 22.4.160.200.in-addr.arpa PTR www.ipv6.br; tados para suportar o
novo tamanho dos
11 2.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.4.0.0.0.0.0.0.0.f.f.2.1.1.0.0.2.ip6.arpa PTR www.ipv6.br. endereços.
A RFC 2874 introduziu os registros A6 e DNAME, com o intuito de facilitar a renumeração de
redes, onde cada nameserver detém apenas uma parte do endereço IPv6. Inicialmente o
domínio para resolução de reverso, definido na RFC 1886, era o ip6.int; no entanto, houve mani-
festações contrárias à sua utilização, pois o “.int” significa “internacional”, não devendo servir
para fins administrativos na internet. Os registros A6 e DNAME tornaram-se obsoletos pelo
desuso, e o domínio “.int” foi substituído pelo “.arpa”, respectivamente nas RFCs 3363 e 3152.
11 Biblioteca de rotinas ligada a qualquer aplicação que deseja ter um endereço traduzido.
11 Resolver (lado cliente): módulo de software responsável pela montagem das consultas;
Os protocolos TCP/IP no núcleo não conhecem nada a respeito do DNS. Uma aplicação (ou
um serviço não transparente TCP/IP) precisa traduzir o endereço simbólico de seu compu-
tador hospedeiro para um endereço IP, antes de poder iniciar uma conexão de transporte
(TCP ou UDP), e é o resolver que faz essa tradução.
114
O resolver se comunica como os servidores de nomes, geralmente por meio de conexões
UDP. No Unix, para efetuar a tradução, o resolver contata um ou mais servidores de nomes
na rede, conforme indicado no arquivo /etc/resolv.conf.
d A base de dados de um servidor DNS pode armazenar tanto registros IPv6 quanto IPv4. q
Saiba mais na Esses dados são independentes da versão de IP em que o servidor DNS opera:
RFC 3596: DNS
Extensions to Support 11 Um servidor com conexão apenas IPv4 pode responder a consultas AAAA ou A.
IP Version 6; RFC 3363:
Representing Internet 11 As informações obtidas na consulta IPv6 devem ser iguais às obtidas na consulta IPv4.
Protocol version
O suporte a IPv6 do DNS deve ser observado por dois aspectos. O primeiro é que um ser-
6 (IPv6) Addresses in
the Domain Name vidor DNS deve ser capaz de armazenar registros quad-A para endereços IPv6. O segundo
System (DNS), e RFC aspecto é se um servidor DNS é capaz de transportar consultas e respostas através de cone-
3364: Tradeoffs in
xões IPv6, isto é, a base de dados de um servidor DNS pode armazenar tanto registros IPv6
Domain Name System
(DNS) Support for quanto IPv4, independente da versão de IP em que esse servidor opera.
Internet Protocol
version 6 (IPv6). Com isso, um servidor com conexão apenas IPv4 pode responder tanto a consultas AAAA
quanto A. No entanto, as informações obtidas na consulta via IPv6 devem ser iguais às
obtidas na consulta IPv4.
115
IPv6 Básico
116
8
Segurança
objetivos
conceitos
Segurança no IPv4; Segurança no IPv6; Incidentes de segurança no IPv6; Ferramentas
de segurança no IPv6.
A questão da segurança
A questão da segurança foi pensada desde o início do projeto IPv6. Mecanismos de autenticação e
encriptação passaram a fazer parte do novo protocolo, disponibilizando para qualquer par de dis-
positivos de uma conexão fim-a-fim métodos para garantir a segurança dos dados que trafegam
pela rede. No entanto, inúmeros problemas ainda existem e novas falhas de segurança surgiram.
IPv4: q
11 Destinado principalmente a interligar redes de pesquisa acadêmicas, o projeto
original do IPv4 não apresentava nenhuma grande preocupação com a questão da
segurança das informações transmitidas. No entanto, o aumento da importância
da internet para a realização de transações entre empresas e consumidores, por
exemplo, fez com que um nível maior de segurança passasse a ser exigido, como
Criptografia identificação de usuários e criptografia de dados, tornando necessário anexar novos
Procedimento adotado mecanismos ao protocolo original, que garantissem tais serviços. Contudo, as solu-
para cifrar informações,
ções adotadas normalmente são específicas para cada aplicação.
transformada da sua
forma original para Esse fato é bastante claro hoje na internet. Há quem defenda que deveria haver uma nova
outra ilegível.
internet, projetada do zero (abordagem clean-slate) para resolver esse problema.
Clean-slate
Segurança no IPv6
q
Abordagem radical,
onde todos os nós
O IPv6 é mais seguro?
Capítulo 8 - Segurança
22 Técnicas de transição.
22 Modelo fim-a-fim.
22 Mobilidade IPv6.
11 IPSec.
11 Extensões de privacidade.
No IPv6, a segurança foi uma preocupação desde o início: várias ferramentas de segurança
foram implementadas no protocolo.
Estratégia de implantação q
11 Sem planejamento. Exemplos:
22 Roteadores wireless.
22 Ou:
33 Planejamento (Plan).
33 Implantação (Do).
33 Verificação (Check).
33 Ação (Act).
CICLO DE GERENCIAMENTO
(Ciclo para atingir metas) Mais informações na
RFC 4864 – Local
Network Protection
6. Padronizar 1. Localizar problemas for IPv6.
e treinar e estabelecer metas
no sucesso
A P 2. Estabelecer
5. Tomar ação planos de ação
corretiva
no insucesso
C D
Figura 8.1
4. Verificar o 3. Conduzir Ciclo de
atingimento a execução gerenciamento
da meta do plano PDCA.
Antes de entrar em detalhes sobre as ferramentas, vamos pensar um pouco sobre a estra-
IPv6 Básico
É interessante notar quantos sistemas são capazes de executar o IPv6, e que muitos deles
vêm com o protocolo habilitado por padrão. A lista inclui Sistemas Operacionais, telefones
celulares, equipamentos de redes, entre outros.
119
Ano Incidente
2003 Worm: W32. HLLW. Raleka: download de arquivos de um local pré-definido e conecta em um IRC server.
Incidentes de segurança envolvendo IPv6 vêm sendo reportados há tempos. Tabela 8.2
Vejamos um exemplo. Incidentes de
segurança no IPv6.
O que fez esse ataque de diferente foi que, após quebrar o sistema, os atacantes
habilitaram o tunelamento IPv6 no sistema, com as comunicações sendo encami-
nhadas para outro país. O ataque e as comunicações foram capturadas usando
Snort, entretanto os dados não puderam ser decodificados devido ao tunelamento
IPv6. Também, uma vez tunelado, isto poderia potencialmente desabilitar/contornar
as capacidades de alguns sistemas IDS.
Marty está à procura de feedback. A medida em que o uso de IPv6 se espalha, espe-
cialmente na Asia, você vai querer estar preparado para isso. Lembre-se que, mesmo
em ambientes IPv4 (como no nosso Honeynet Solaris) atacantes podem codificar
seus dados em IPv6 e então tunelá-los através de IPv4. Nós provavelmente veremos
mais deste tipo de comportamento.
120
Malwares
Da mesma forma, malwares que fazem uso do IPv6 ou atacam sistemas IPv6 vêm sendo q
reportados pelo menos desde 2001.
Capítulo 8 - Segurança
121
Vulnerabilidades IPv6 publicadas ao longo do tempo
70
60
50
40
30
20
10
0
2000 2001 2002 2003 2004 2005 2006 2007 2008
Figura 8.2
Vulnerabilidades
IPv6 (fonte:
Total Não corrigidas
Joe Klein).
Figura 8.3
Impactos das
62% vulnerabilidades
DoS (fonte: Joe Klein).
6%
Teredo
11%
Aplicações
Figura 8.4
Núcleo dos
IPv6 Básico
122
A maior parte das vulnerabilidades publicadas afeta equipamentos de rede. q
Pilha dupla
+
Túneis
IPv4 IPv6
+ +
Túneis Túneis
Túneis
Encapsulado
e/ou encriptado
Figura 8.5
Áreas de ataque
(fonte: Joe Klein).
Camada de aplicação
Interface de usuário
Bibliotecas de programação
Camada de apresentação
Tratamento de erros
Problemas de codificação
Camada de sessão
Problemas de Logs
API's
Camada de transporte
Implementações impróprias
Camada de rede Incompatibilidade L2/L3, MTU, etc
Apesar de o IP tratar da camada de rede, implicações nas outras camadas podem levar
Capítulo 8 - Segurança
123
Ferramentas de segurança no IPv6
11 O IPv6 oferece várias ferramentas tanto para defesa quanto para ataque. q
11 Defesa:
22 IPSec.
22 SEND.
22 Crypto-Generated Address.
22 Privacy Addresses.
11 Ataque:
22 Túnel automático.
22 Novidade ou complexidade.
IPSec
11 Implementa criptografia e autenticação de pacotes na camada de rede. q
11 Fornece solução de segurança fim-a-fim.
22 Associações de segurança.
22 Suporte obrigatório.
22 Suporte opcional.
O IPSec foi desenvolvido para o IPv4 e pouca coisa muda com o IPv6. Contudo, o suporte
passa a ser mandatório, e não há a NAT para atrapalhar o funcionamento.
Figura 8.7
IPv6 Básico
IPSec no modo
Pode ser encriptado transporte.
124
Novo cab. IP Cabeçalho IPsec Cab. IP original TCP Dados
Figura 8.8
IPSec no
modo túnel. Pode ser encriptado
O IPSec pode ser usado de duas formas distintas, em modo de transporte ou em modo de
túnel. No modo de transporte, ambos os extremos da comunicação necessitam de suporte
IPSec, entre os quais se realiza a comunicação segura.
VPN ou Virtual Ao contrário do modo de transporte, no modo de túnel (também conhecido por VPN) o IPSec
Private Network é implementado em dispositivos próprios (exemplo: concentradores VPN), entre os quais será
Rede privada construída
efetuada a comunicação IPSec encapsulando todos os pacotes IP dos respectivos extremos.
sobre uma rede pública,
normalmente a internet,
É de salientar que, no caso de uma comunicação em modo de transporte, o cabeçalho do
onde os dados trafegam
criptografados. pacote IP original é mantido. No modo de túnel, este é codificado, e é criado um novo cabe-
çalho, possibilitando a ligação entre o dispositivo emissor e o dispositivo receptor (do túnel).
11 Túnel: protege todo o pacote IP, encapsulando-o dentro de outro pacote IP, deixando
visível apenas o cabeçalho IP externo.
22 Autenticação da origem.
33 Confidencialidade.
33 Autenticação da origem.
IPSec – AH
Authentication Header (AH): q
11 É adicionado após os cabeçalhos Hop-by-Hop, Routing e Fragmentation (se houver).
Capítulo 8 - Segurança
125
Próximo cabeçalho Tam. cabeçalho de extensão Reservado
IPSec – ESP
11 Encapsulating Security Payload (ESP). q
11 Responsável pela criptografia dos dados (opcional).
Número de sequência
Dados + complemento
Automática:
33 ISAKMP.
33 OAKLEY.
33 SKEME.
33 IKEv1.
126
SEcure Neighbor Discovery – SEND
IPv4 – ataques ao ARP e DHCP (Spoofing). q
11 Não há mecanismos de proteção.
Cadeia de certificados:
11 Gerados criptograficamente.
d ao Router Discovery.
22 Endereços bogons.
11 Com uma máscara padrão /64, são possíveis 264 endereços por sub-rede.
11 Percorrendo 1 milhão de endereços por segundo, seria preciso mais de 500.000 anos
para percorrer toda a sub-rede.
11 Worms que utilizam essa técnica para infectar outros dispositivos também terão
dificuldades para continuar se propagando.
127
Endereços – CGA
11 Endereços IPv6 cujas IIDs são geradas criptograficamente utilizando uma função hash q
de chaves públicas.
22 Sniffing.
33 Man-in-the-Middle.
33 Vírus.
33 DoS.
Muitas implementações da pilha IPv6 ainda não suportam IPSec integralmente. Assim, ele
vem sendo usado sem o suporte criptográfico. Mesmo quando este é usado, várias questões
de segurança em redes IP ainda estão presentes. Mas o IPv6 pode potencialmente melhorar
a segurança na internet.
22 Ainda há alguma incerteza sobre o perigo que pode ser criado por pacotes ICMPv6
com origem em endereços multicast globais.
IPv6 Básico
128
Recomendações
11 Implementar extensões de privacidade apenas em comunicações externas. q
22 Cuidado com o uso indiscriminado, que pode dificultar auditorias internas.
33 FF02::1(all-nodes on link).
11 Descartar pacotes com tamanho menor do que 1280 bytes (exceto o último).
Capítulo 8 - Segurança
129
IPv6 Básico
130
9
Coexistência e transição – Parte 1
objetivos
conceitos
Cenários de coexistência de IPv6 e IPv4; Classificação das técnicas de transição;
Descrição da Pilha Dupla e Técnicas de Tunelamento; Túneis GRE; Tunnel Broker;
Dual Stack Lite (DS-Lite); IVI, dIVI e dIVI-pd; NAT64 e DNS64; 464XLAT.
Coexistência e transição
Para que a transição entre os protocolos IPv4 e IPv6 ocorra de forma gradativa e sem mais
impactos no funcionamento das redes, é necessário que exista um período de coexistência
entre os dois protocolos internet.
Este Capítulo tem como objetivo apresentar as técnicas de transição do IPv4 para o IPv6,
mostrando alguns aspectos práticos e exemplos.
11 Para facilitar esse processo, foram desenvolvidas técnicas para manter a compatibili-
Capítulo 9 - Coexistência e transição – Parte 1
dade de toda a base das redes instaladas sobre IPv4 com o protocolo IPv6.
131
Cada uma dessas técnicas apresenta uma característica específica, podendo ser utilizada
individualmente ou em conjunto com outras técnicas, de modo a atender as necessidades
de cada situação, seja a migração para o IPv6 feita passo a passo, iniciando por um único
host ou sub-rede, ou até de toda uma rede corporativa.
A importância desse tópico vem do fato de o IPv4 e o IPv6 não serem diretamente compatí-
veis entre si. O IPv6 não foi projetado para ser uma extensão, ou complemento, do IPv4, mas
sim um substituto que resolve o problema do esgotamento de endereços.
A transição feita dessa forma seria muito simples de ser executada tecnicamente. Contudo,
por diversas razões, não foi o que aconteceu. Atualmente o IPv6 ainda não está sendo
amplamente utilizado na internet e o esgotamento do IPv4 já se tornou uma realidade. Hoje
existe a necessidade de se implantar o IPv6 numa internet sempre crescente, onde os novos
usuários ainda precisam de conectividade IPv4, mas não há mais endereços IPv4 livres para
atendê-los. Assim, novas técnicas auxiliares foram e continuam sendo desenvolvidas para
essa nova realidade.
O estudo das técnicas de transição é importante mesmo para aqueles que não pretendem
fazer uso ou para os que administram redes em que a implantação do IPv6 ainda não foi
iniciada. Algumas dessas técnicas, como afirmado anteriormente, são utilizadas de forma
automática por computadores e equipamentos de rede, permitindo o uso do IPv6 por
equipamentos numa rede IPv4 e eventualmente contornando mecanismos de segurança e
controle. É o caso, por exemplo, de redes com computadores Windows Vista ou Windows 7.
IPv6 Básico
132
Cenários de coexistência de IPv6 e IPv4
Na transição do IPv4 para o IPv6 é necessária a coexistência e interoperabilidade entre
ambos os protocolos e, para isso, é necessário o uso de tecnologias auxiliares, conhecidas
como técnicas de transição. A necessidade de coexistência ocorre em diferentes cenários,
cada qual com características e demandas singulares e uma técnica de transição, de forma
isolada, normalmente não é capaz de atender de forma simultânea a todos. Assim, o pri-
meiro passo para entender as técnicas de transição é entender os cenários existentes, as
necessidades apresentadas e as dificuldades envolvidas.
Rede Internet
Figura 9.1 IPv6 IPv4
Cenário 1:
necessidade de
conexão à rede
Sentido de início da comunicação
IPv4.
Greenfield networks Esse cenário também pode ocorrer em greenfield networks. Algumas empresas têm se
Expressão para se decidido por criar redes somente IPv6 nesse caso, por motivos de simplicidade, facilidade de
referir a projetos gerência e outros, mas necessitam ainda acessar servidores de clientes e fornecedores que
totalmente novos, aos
quais não se aplicam as estão na internet IPv4.
restrições normalmente
encontradas em tecno- Cenário 2: internet IPv4 para Rede IPv6
logias já em uso.
Mesma rede existente no cenário 1, mas que necessita receber conexões da internet q
IPv4, para o caso, por exemplo, de haver servidores IPv6 na rede, que devem atender
solicitações de clientes na internet IPv4.
Internet Rede
IPv4 IPv6
Figura 9.2
Cenário 2:
necessidade de
receber conexões Sentido de início da comunicação
da internet IPv4.
A inversão no sentido de origem da comunicação torna esse cenário muito mais complexo
que o cenário 1, pois normalmente não se consegue fazer um mapeamento 1:1 de todos
endereços IPv6 existentes na rede para endereços IPv4 válidos. Esse caso normalmente
exige soluções stateful, mas pode ser também atendido por soluções stateless, desde que
suportem conexões iniciadas via IPv4 para um subconjunto dos endereços IPv6 na rede.
133
Cenário 3: internet IPv6 para Rede IPv4
Esse é um típico cenário onde uma rede legada, na qual não é possível fazer uma atuali- q
zação para IPv6, necessita continuar em uso e responder requisições da internet IPv6.
Internet Rede
IPv6 IPv4 Figura 9.3
Cenário 3:
impossibilidade de
fazer atualização
Sentido de início da comunicação para IPv6.
Para esse cenário só cabem soluções stateful, já que a rede IPv4 deve comunicar-se com
toda a internet IPv6.
Rede Rede
IPv6 IPv4
Figura 9.5
Cenário 5: similar
Sentido de início da comunicação ao cenário 1.
134
Rede Rede
IPv4 IPv6
Figura 9.6
Cenário 6:
semelhante ao
cenário 2. Sentido de início da comunicação
Figura 9.7
Cenário 7: qualquer Internet Internet
dispositivo na IPv6 IPv4
internet IPv6 pode
iniciar uma conexão
com um dispositivo
Sentido de início da comunicação
na internet IPv4.
Internet Internet
IPv4 IPv6
Figura 9.8
Cenário 8: similar
ao cenário 7. Sentido de início da comunicação
Cenário 9: Rede IPv6 para Rede IPv6 bidirecional via internet IPv4
Esse cenário apresenta o caso em que a comunicação entre duas redes com IPv6 neces- q
sita ser feita através da internet IPv4 ou de Rede IPv4. A comunicação pode ser iniciada
Figura 9.9 por ambas as Redes IPv6.
Capítulo 9 - Coexistência e transição – Parte 1
Cenário 9:
comunicação entre
duas redes com
IPv6 precisa ser
feita por meio da Rede Internet Rede
internet IPv4 ou de IPv6 IPv4 IPv6
Rede IPv4.
Cenário 10: Rede IPv4 para Rede IPv4 bidirecional via internet IPv6
Esse cenário apresenta o caso em que a comunicação entre duas redes com IPv4 neces- q
sita ser transmitida através da internet IPv6 ou de Rede IPv6. A comunicação pode ser
iniciada por ambas as Redes IPv4.
135
Figura 9.10
Cenário 10:
comunicação
Rede Internet Rede entre duas redes
IPv4 IPv6 IPv4 com IPv4 precisa
ser transmitida
por meio da
internet IPv6 ou de
Classificação das técnicas de transição Rede IPv6.
Como já foi visto, desde 1983 a estrutura da internet é baseada no IPv4. Uma troca completa
e imediata do protocolo seria inviável devido ao tamanho e à proporção dessa rede. Por
isso, o IPv6 foi projetado para ser implantado gradualmente.
11 Túneis: permitem que diferentes redes IPv4 comuniquem-se através de uma rede
IPv6 ou vice-versa;
11 Tradução: faz com que equipamentos usando IPv6 comuniquem-se com outros que
usam IPv4, por meio da conversão dos pacotes.
Deve-se notar que tanto os túneis quanto as técnicas de tradução podem ser stateful ou
stateless. Técnicas stateful são aquelas em que é necessário manter tabelas de estado com
informações sobre os endereços ou pacotes para processá-los. Nas técnicas stateless não é
necessário guardar informações; cada pacote é tratado de forma independente. De forma
geral, técnicas stateful são mais caras: gastam mais CPU e memória, por isso não escalam
bem. Sempre que possível deve-se dar preferência a técnicas stateless.
Há casos em que é necessária a comunicação entre IPv4 e IPv6 para apenas um ou poucos
tipos de aplicações. Ou ainda: quando é usada uma técnica de tradução e ela funciona para
quase todas as aplicações, mas falha para algumas poucas, nomeadamente aquelas que car-
regam endereços IP literais no protocolo, na camada de aplicação. Para esses casos podem
ser usados gateways específicos, na camada de aplicação (são chamados de Application
Level Gateways ou ALGs).
IPv6 Básico
136
hoje padronizadas ou em discussão na IETF, e organizando-as segundo sua funcionalidade e
método de funcionamento. Nem todas serão abordadas neste Capítulo.
De forma geral, os critérios que devem ser utilizados na escolha da técnica a ser q
utilizada são:
11 Prefira técnicas que impliquem na utilização de IPv6 nativo pelos usuários finais, de
forma que túneis IPv4 dentro de IPv6 devem ser preferidos em detrimento de túneis
IPv6 sobre IPv4;
11 Evite técnicas para prolongar o uso do protocolo IPv4, sem a adoção concomitante
do IPv6;
A+P
DS-Lite
DS-Lite
com A+P
464XLAT 4rd
Stateless
4over6 dIVI
LISP dIVI-pd
L2TP GRE
IVI
Stateful Stateless
GRE
L2TP
6to4
LISP
Tunnel Broker Tunnel Broker
6PE 6rd
6VPE 6over4
ISATAP
Tunelamento
BGP Teredo
Figura 9.11 6a44
Classificação
das técnicas de IPv6 sobre ou para IPv4
transição.
Como uma terceira possibilidade de classificação, pode-se dividir as técnicas conforme q Capítulo 9 - Coexistência e transição – Parte 1
11 Oferecer conectividade IPv6 nativa em conjunto com conectividade IPv4 com comparti-
lhamento e preservação de endereços: DSLite, DSLite com A+P, 4rd, NAT64, IVI e 464XLAT;
11 Obter conectividade IPv6, quando o provedor internet não a oferecer: tunnel broker e
túneis estáticos 6over4 ou GRE;
11 Oferecer conectividade IPv6 para os usuários sobre uma rede de transporte IPv4: 6rd
(normalmente usado em provedores) e ISATAP (para redes internas);
11 Mecanismos para compartilhar endereços IPv4, estendendo sua vida: A+P e NAT444.
137
Pilha Dupla: IPv6 e IPv4 em todos os dispositivos
11 Os nós tornam-se capazes de enviar e receber pacotes, tanto para o IPv4 quanto q
para o IPv6.
11 Utiliza mecanismos IPv4, como DHCP, para adquirir endereços IPv4, e mecanismos do
IPv6 para endereços IPv6.
Na atual fase de implantação do IPv6, não é aconselhável ter nós com suporte apenas a
essa versão do protocolo IP, uma vez que muitos serviços e dispositivos na internet ainda
trabalham somente com IPv4. Como citado anteriormente, manter o IPv4 já existente fun-
cionando de forma estável e implantar o IPv6 nativamente, para que coexistam nos mesmos
equipamentos, é a forma básica escolhida para a transição na internet. Essa técnica é conhe-
cida como Pilha Dupla (Dual Stack ou DS) e deve ser usada sempre que possível.
A utilização desse método permite que dispositivos e roteadores estejam equipados com
pilhas para ambos os protocolos, tendo a capacidade de enviar e receber os dois tipos de
pacotes, IPv4 e IPv6. Com isso, um nó Pilha Dupla, ou nó IPv6/IPv4, se comportará como um
nó IPv6 na comunicação com outro nó IPv6 e se comportará como um nó IPv4 na comuni-
cação com outro nó IPv4.
No futuro, caso o IPv4
Cada nó IPv6/IPv4 é configurado com ambos endereços, utilizando mecanismos IPv4 não seja mais usado,
(exemplo: DHCP) para adquirir seu endereço IPv4 e mecanismos IPv6 (por exemplo: configu- basta simplesmente
desabilitar a pilha IPv4
ração manual, autoconfiguração stateless e/ou DHCPv6) para adquirir seu endereço IPv6.
em cada nó.
Esse método de transição permite uma implantação gradual, com a configuração de
pequenas seções do ambiente de rede de cada vez. O funcionamento da Pilha Dupla está
ilustrado na figura 9.12.
APLICAÇÃO
TCP/UDP (Transporte)
IPv6 IPv4
Enlace
138
11 Uma rede Pilha Dupla é uma infraestrutura capaz de encaminhar ambos os q
tipos de pacotes.
Em relação ao DNS, é preciso configurar os novos endereços IPv6, usando registros do tipo
AAAA (quadA), que armazenam seus endereços. Responder os endereços IPv6 (registros
AAAA) quando disponíveis para um determinado nome de domínio é o comportamento
padrão do servidor DNS, mesmo que este opere apenas com IPv4. O protocolo por meio do
d
qual é feita a consulta não interfere na resposta. Ao receber endereços IPv6 e IPv4 como
resposta a uma consulta no DNS, a aplicação decide qual protocolo usar. Normalmente a
Para mais detalhes preferência é pelo protocolo IPv6 e, em caso de falha, tenta-se o IPv4. Mais recentemente
sobre o suporte do têm sido experimentadas técnicas que implicam em tentativas simultâneas de conexão IPv6
DNS ao IPv6, consulte a
RFC 3596. e IPv4 e optam pela que for mais rápida (draft-ietf-v6ops-happy-eyeballs-07).
Em uma rede com Pilha Dupla, a configuração do roteamento IPv6 normalmente é inde-
pendente da configuração do roteamento IPv4. Isso implica no fato de que, se antes de
implementar o IPv6 a rede utilizava apenas o protocolo de roteamento interno OSPFv2 (com
suporte apenas ao IPv4), será necessário migrar para um protocolo de roteamento que
suporte tanto IPv6 quanto IPv4 (como IS-IS por exemplo) ou forçar a execução do OSPFv3
paralelamente ao OSPFv2.
A forma como é feita a filtragem dos pacotes que trafegam na rede pode depender da
plataforma usada. Em um ambiente Linux, por exemplo, os filtros de pacotes são total-
mente independentes uns dos outros, de modo que o iptables filtra apenas pacotes IPv4 e o
ip6tables apenas IPv6, não compartilhando nenhuma configuração. No FreeBSD, as regras
são aplicadas a ambos os protocolos no mesmo arquivo de configuração. Entretanto, a regra
pode ser aplicada simultaneamente aos dois protocolos ou a somente um. Para aplicar a
somente um deles, basta utilizar inet ou inet6, dependendo do protocolo ao qual as regras
devem ser aplicadas. De uma forma ou de outra, novas regras terão de ser configuradas no
firewall ao implantar-se o IPv6.
Capítulo 9 - Coexistência e transição – Parte 1
É importante reforçar que configurações independentes para IPv4 e IPv6 são necessárias
para diversos aspectos da rede, entre eles:
11 Protocolos de roteamento;
11 Firewalls;
Utilizar Pilha Dupla pode não ser possível em todas as ocasiões. Por exemplo, quando não
há mais IPv4 disponíveis e o provedor precisa atender a usuários novos com IPv6 e IPv4. Para
redes corporativas que já utilizam NAT isso não é um impedimento: o IPv6 nativo pode ser
usado em conjunto com o IPv4 compartilhado. Outra situação que dificulta a implantação
139
do IPv6 usando Pilha Dupla é a existência de equipamentos que não o suportam e que
não podem ser facilmente substituídos. Para contornar essas situações existem diversas
técnicas disponíveis, algumas das quais serão abordadas mais adiante.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Tabela 9.1
Aplicação nos
Técnicas de tunelamento cenários.
22 Roteador-a-Roteador.
22 Host-a-Roteador.
22 Roteador-a-Host.
22 Host-a-Host.
Host IPv6
Rede IPv6
Roteador
IPv6/IPv4
Rede IPv4
Rede IPv6
Figura 9.13
Tunelamento
de pacote IPv6
Host IPv6 no IPv4.
IPv6 Básico
140
l Quando a utilização de Pilha Dupla não é possível, umas das alternativas a ser considerada é
Também é possível, de a utilização de túneis. As técnicas de tunelamento fazem o encapsulamento de pacotes IPv6
forma análoga, em pacotes IPv4. Esse encapsulamento é conhecido como 6in4 ou IPv6inIPv4 (RFC 4213), e
encapsular pacotes IPv4
em pacotes IPv6, consiste em colocar o pacote IPv6 dentro de um pacote IPv4, adequar os endereços de origem
técnica conhecida como e destino para o IPv4 e colocar no cabeçalho o tipo 41 (29 em hexadecimal). Esse tipo de
4in6. Algumas das
encapsulamento é conhecido por 6in4, ou como “protocolo 41”. Quando o destino receber o
técnicas de transição
estudadas mais à frente pacote com tipo 41, o cabeçalho IPv4 é removido e o pacote é tratado como IPv6. A figura 9.14
fazem isso. ilustra esse comportamento.
Cabeçalho IPv4
Figura 9.14 É possível usar túneis criando-os manualmente. A técnica 6over4 (RFC 4213) usa um q
Funcionamento túnel manual estabelecido entre dois nós IPv4 para enviar o tráfego IPv6. Todo o tráfego
6in4.
IPv6 a ser enviado é encapsulado em IPv4 usando 6in4, explicado anteriormente.
A configuração manual consiste em definir quais serão os IPs v4 de origem e destino que
serão usados em cada ponta do túnel. Ao ser recebido pelo nó destino, o pacote IPv6 é
desencapsulado e tratado adequadamente.
Esse tipo de túnel pode ser usado para contornar um equipamento ou enlace sem
suporte a IPv6 numa rede, ou para criar túneis estáticos entre duas redes IPv6
através da internet IPv4.
É importante entender a diferença entre 6over4 e 6in4. O túnel 6over4 é um túnel estabele-
cido manualmente, que tem o objetivo de permitir conexão IPv6 entre dois nós de rede conec-
tados por uma rede via IPv4 – o encapsulamento 6in4 é usado. Já o encapsulamento 6in4, com
a utilização do tipo 41, pode ser usado também em outras técnicas de transição que trans-
portam pacotes IPv6 em redes IPv4, como poderá ser observado ao longo deste Capítulo.
141
Criar um túnel 6over4 é bastante fácil. A seguir serão mostrados exemplos de como fazer essa
implementação no Linux e com roteadores Cisco. A topologia da implementação em Linux é:
Internet
ou rede somente IPv4
192.0.2.1/25 192.0.2.129/25
192.0.2.2/25 192.0.2.130/25
Para verificar o correto funcionamento, pode-se usar o comando ping6 antes e depois de fazer
as configurações. Será possível notar que as duas máquinas passaram a comunicar-se via IPv6.
IPv6 Básico
142
Para o exemplo de configuração em roteadores Cisco de túneis 6over4, a topologia será:
Internet
ou rede somente IPv4
198.51.100.6 203.0.113.197
198.51.100.5 203.0.113.198
Roteador A Roteador B
Figura 9.16 Rede 1 Rede 2
Túnel manual
2001:db8:10::/64 2001:db8:20::/64
6over4 entre dois Túnel 6over4
roteadores. 2001:db8:100::1/64 2001:db8100::2/64
configure terminal
interface Tunnel10
end
Ainda no Roteador A, é necessário ativar o roteamento IPv6 e criar uma rota para a rede do
Roteador B, apontando para o Túnel 6over4:
ipv6 unicast-routing
Capítulo 9 - Coexistência e transição – Parte 1
configure terminal
interface Tunnel20
143
end
ipv6 unicast-routing
Mais uma vez, é possível testar a configuração utilizando o ping para IPv6.
Túneis GRE
11 Generic Routing Encapsulation (GRE): túnel estático host-a-host desenvolvido para q
encapsular vários tipos diferentes de protocolos.
A tabela a seguir mostra a aplicação dessa técnica aos cenários descritos anteriormente.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Outra opção de túnel estático para o transporte de IPv6 em redes IPv4 é o Generic Routing Tabela 9.2
Encapsulation (GRE) RFC 2784, um túnel estático entre dois nós originalmente desenvolvido Túneis GRE e os
cenários.
pela Cisco com a finalidade de encapsular vários tipos diferentes de protocolos, como por
exemplo IPv6 e IS-IS (a lista completa dos protocolos suportados pode ser encontrada em
http://www.iana.org/assignments/ethernetnumbers). Esse tipo de encapsulamento é
suportado na maioria do Sistemas Operacionais e roteadores, e possibilita a criação de um
link ponto a ponto. Assim como o 6over4, sua configuração é manual, de modo que pode
gerar um esforço na sua manutenção e gerenciamento proporcional à quantidade de túneis.
11 R (Routing): se for 1, indica que existe o campo Roteamento e que há informações de rote-
amento válidas nele e no Offset;
11 K (Key): se for 1, indica que o campo Chave existe e está sendo usado;
11 S (Sequence): se for 1, indica que o campo Número de sequência existe e está sendo utilizado;
11 Chave (Key): contém um número de 32 bits que é inserido pelo encapsulador. É usado
pelo destinatário para identificar o remetente do pacote;
144
11 Número de sequência (Sequence number): contém um número inteiro de 32 bits que
é inserido pelo remetente do pacote. É utilizado pelo destinatário para sequenciar os
pacotes recebidos;
32 bits
8 bits 8 bits 16 bits
4 bits 3 bits
Versão IHL Tipo de serviço Tamanho total
ID Flags Offset
Protocolo de envio Cabeçalho IPv4
TTL Protocolo (47) Checksum do cabeçalho
Origem
Protocolo de GRE Cabeçalho GRE Destino
Opções Padding
8 bits 8 bits 16 bits
4 bits 5 bits
Payload Pacote IPv6 C R K S Reserv Flags Versão Protocolo (para IPVv6 é 86dd)
Checksum Offset
Chave
Número de sequência
Roteamento
Cabeçalho IPv6
Cabeçalho
da camada
de transporte
Dados
Figura 9.18 A configuração dos túneis GRE é muito semelhante àquela feita para o 6over4. No exemplo
Pacote com dado para roteadores Cisco, no item 4, basta trocar:
cabeçalho GRE.
tunnel mode ipv6ip
Tunnel Broker
11 Consiste em criar um túnel IPv6 dentro da rede IPv4, do seu computador ou rede até q
o provedor que fornecerá a conectividade IPv6.
145
A tabela a seguir mostra a aplicação dessa técnica aos cenários descritos anteriormente.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Descrita na RFC 3053, essa técnica permite que dispositivos isolados, ou toda uma rede IPv4, Tabela 9.3
obtenham conectividade IPv6 por meio do estabelecimento de um túnel com um provedor, Tunnel Broker
e os cenários.
tornando-se, na prática, dispositivos, ou uma rede Pilha Dupla.
Os Tunnel Brokers normalmente oferecem blocos fixos IPv6 que variam de /64 a /48.
Os Tunnel Brokers podem usar tecnologias diversas para prover os túneis. Podem usar, por
exemplo, túneis 6in4, encapsulamento em UDP, o protocolo AYIYA, que significa Anything in
Anything (draft-massar-v6ops-ayiya-02), ou Tunnel Setup Protocol (TSP), definido na RFC 5572.
Muitos Sistemas Autônomos brasileiros têm utilizado com sucesso túneis com a Hurricane
Electric para anunciar seus blocos em caráter de teste e muitas empresas e usuários domés-
ticos têm utilizado túneis SixXS para familiarizar-se com o IPv6.
146
Servidor
Broker Internet
IPv6
2
Servidor
de túnel
1 3
Internet
IPv4
1. Cliente Pilha Dupla solicita túnel (pode ser solicitada autenticação) via IPv4. q
2. Broker cadastra usuário no servidor de túnel.
4. Túnel estabelecido.
Servidor
de túnel
Pilha dupla 1
Servidor Servidor Internet
esperando 2
acesso IPv6 Broker de túnel IPv6
3
Servidor
de túnel
Figura 9.20
Topologia física do
Capítulo 9 - Coexistência e transição – Parte 1
4
Tunnel Broker.
147
7. Criar o arquivo /etc/hotplug.d/iface/15-ipv6 com o seguinte código (que considera que a
conexão com o provedor utiliza PPP. Se for outro tipo de conexão, o código necessita de
pequenas alterações):
. /etc/functions.sh
NAME=ipv6
COMMAND=/usr/sbin/ip
# setup tunnel
cut d/ -f1)
$IPADDR&pass=$password&user_id=$username&tunnel_id=$tunnelid”
# setup tunnel
} &
# destroy tunnel
IPv6 Básico
148
ip tunnel del he-ipv6
} &
uci commit
config interface
option AdvSendAdvert 1
option AdvManagedFlag 0
option AdvOtherConfigFlag 0
option ignore 0
config prefix
option AdvOnLink 1
option AdvAutonomous 1
option AdvRouterAddr 0
option ignore 0
option ignore 1
Alterar o endereço “:9999” para a rota que usamos. Salvar o arquivo e executar os comandos
para que as alterações sejam aplicadas:
/etc/init.d/radvd enable
/etc/init.d/radvd start
149
11. A configuração está completa. Reiniciar o roteador e testar o túnel. Pode-se executar o
ping6 diretamente no roteador e, funcionando corretamente, executá-lo a partir de um
computador na LAN:
ping6 ipv6.google.com
Windows 2000/XP:
ipv6 install
Windows 2008/Vista/7
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Sim Não Não Não Sim Não Não Não Não Não
Serão analisadas agora algumas técnicas bastante pertinentes ao momento atual da Tabela 9.4
transição para o IPv6, num cenário em que não há mais IPv4 disponíveis, mas a base de DS-Lite e os
cenários.
usuários do provedor continua a crescer e ainda há muitos serviços exclusivamente
disponíveis em IPv4 na internet. Dessa forma, o provedor não pode oferecer exclusivamente
conectividade IPv6 ao usuário final, sendo forçado a oferecer também conectividade IPv4,
mas com IPs de alguma forma compartilhados.
150
11 Endereços IPv4 192.0.0.0/29 nas extremidades do túnel q
11 Endereços RFC 1918 para a rede do usuário
11 DHCPv4 no CPE
A primeira técnica a ser analisada será o Dual Stack Lite (Pilha Dupla simplificada), padroni-
zada na RFC 6333, que pode ser aplicada em situações em que o provedor já oferece IPv6
nativo para seus usuários. Sua implementação necessita de um equipamento denominado
Address Family Transition Router (AFTR), que implementa um Carrier Grade NAT (CGN), que
é um NAT de grande porte, na rede do provedor. Entre o AFTR e o CPE do usuário utiliza-se
um túnel IPv4 sobre IPv6 para transportar o tráfego IPv4. No contexto do DS-Lite, o CPE do
B4 usuário é chamado de B4. Nas extremidades desses túneis são usados endereços da faixa
Abreviação para 192.0.0.0/29, especialmente reservada para esse fim. Para o CPE do usuário e os demais
DSLite Basic Bridging
equipamentos da rede do usuário são utilizados IPs da RFC 1918 e não há problema se dife-
BroadBand.
rentes usuários utilizarem faixas de IPs repetidas, dado que o AFTR identifica os diferentes
túneis com base no IPv6 de origem dos pacotes encapsulados. Na CPE do usuário deve
existir um DHCP v4 para a distribuição dos endereços na rede interna. Deve existir também
l um Proxy DNS, que permita consultas via IPv4, mas faça essas consultas ao DNS recursivo
É possível usar do provedor via IPv6, evitando traduções desnecessárias no AFTR.
q
roteadores Linksys
WRT54GL e outros É importante destacar alguns pontos:
compatíveis com o
firmware OpenWRT, 11 O AFTR usa CGN, mas não força o usuário a utilizar duplo NAT. Ou seja, AFTR realiza a
disponível em: http:// função de NAT, de forma concentrada, para cada um dos dispositivos de cada usuário;
www.kangaroo.
comcast.net/wiki/ 11 O DS-Lite usa endereços privados na faixa 192.0.0.0/29 para as extremidades dos
(DS-Lite Linksys túneis v4 sobre v6, evitando a utilização desnecessária de endereços IPv4 na infraes-
WRT-54GL v1.1
trutura do provedor.
Installation).
Rede IPv6
Provedor 192.0.0.1
192.0.0.2 2001:db8:c::1/64
2001
:db8
:a::1
/64
2001:db8:b::1/64 203.0.113.130/25
192.168.0.1/24
2001:db8:cl1::1/64 Internet
Core IPv6 nativo IPv4 Capítulo 9 - Coexistência e transição – Parte 1
B4 (CPE) AFTR
DHCPv4 Nat Pool: 203.0.113.1/32
Proxy DNS
192.168.0.3/24
Figura 9.21 2001:db8:cl1::3/64 Internet
IPv6
Exemplo de
topologia DS-Lite.
Uma alternativa para implantar o DS-Lite é a utilização do software AFTR desenvolvido pelo
Internet Systems Consortium (ISC), inicialmente por solicitação e com financiamento da
Comcast, um grande provedor que opera com cabo nos Estados Unidos. O software está
disponível em http://www.isc.org/software/aftr e pode ser usado em servidores GNU/Linux
no provedor, permitindo implementação de baixo custo, robusta e escalável. Para o B4 (CPE)
podem ser utilizados também dispositivos rodando Linux.
151
A configuração dessa topologia é bastante simples. Para configurar o AFTR, basta criar um
arquivo chamado aftr-script, contendo:
aftr_start() {
set -x
aftr_stop() {
set -x
case “$1” in
start)
aftr_start
;;
stop)
aftr_stop
;;
*)
exit 1
;;
esac
exit 0
defmtu 1450
pool 203.0.113.1
acl6 ::0/0
152
E então iniciar o serviço.
modprobe ip6_tunnel
Esse exemplo de configuração usa apenas um endereço para o pool de NAT, mas poderiam
ser usados mais. Note que o endereço IPv4 da interface física do servidor AFTR não está na
mesma rede dos endereços usados no pool. O endereço IPv6 da extremidade AFTR do túnel
não é o endereço físico da interface, mas outro, numa rede diferente. Os pacotes direcio-
nados para os endereços do Pool IPv4 e para o endereço IPv6 da extremidade do túnel são
roteados para a interface de túnel e tratados pelo software AFTR. Por fim, é importante
notar que os mesmos endereços 192.0.0.1 e 192.0.0.2 são usados para múltiplos clientes e
que a detecção de novos túneis de clientes é feita automaticamente pelo AFTR, com base no
endereço IPv6 de origem destes.
Uma variação dessa técnica, que tenta resolver o mesmo problema, é a combinação do
DS-Lite com o Address Plus Port (A+P), e é conhecida como DS Lite A+P (o A+P será apresen-
tado com mais detalhes neste capítulo). O funcionamento do DS Lite A+P é similar ao do DS
Lite, mas, ao invés de ser um endereço IPv4 privado, o CPE do usuário recebe um endereço
IPv4 público. As portas disponíveis para utilização, contudo, são limitadas, pois esse IP
público é compartilhado com outros nós. O CPE deve então realizar a função de tradução
de endereços (NAT), oferecendo IPs privados (RFC 1918) para os demais nós na rede, mas
obedecendo à restrição das portas imposta pelo A+P na tradução.
Com a utilização do DS-Lite com A+P, a escalabilidade é melhor, uma vez que o NAT é feito
de forma distribuída, nos CPEs. O usuário pode também realizar o mapeamento de portas
no NAT e receber conexões entrantes, numa situação muito próxima à que existiria sem o
compartilhamento de endereços.
O DS Lite com A+P é ilustrado na figura a seguir. Na imagem, o CPE recebe o endereço IPv4
restrito das portas 1024 a 2047, como exemplo, mas tanto as portas disponíveis quanto a
Capítulo 9 - Coexistência e transição – Parte 1
153
Túnel IPv4 sobre IPv6
192.168.0.2/24
2001:db8:cl1::2/64
Rede IPv6
Provedor 192.0.0.1
192.0.0.2 2001:db8:c::1/64
2001
:db8
:a::1
/64
2001:db8:b::1/64 203.0.113.130/25
192.168.0.1/24
2001:db8:cl1::1/64 Internet
Core IPv6 nativo IPv4
203.0.113.1:1024~2047 AFTR
B4 (CPE) A+P Pool: 203.0.113.1/32
DHCPv4
Proxy DNS
Nat 44
192.168.0.3/24
2001:db8:cl1::3/64 Internet
IPv6
Deve-se notar que o DS-Lite e o DS-Lite com A+P usam IPv4 sobre IPv6, mas utilizam-se de Figura 9.22
técnicas stateful para o compartilhamento dos endereços IPv4. Exemplo topologia
DS-Lite com A+P.
Suporta Sim Não Não Não Sim Não Não Não Não Não
No item anterior foi apresentado o DS-Lite, que era útil para utilização no provedor, num
cenário em que não há mais endereços IPv4 disponíveis, mas onde sua base de usuários
continua a crescer. Dessa forma, o provedor não pode oferecer exclusivamente conectivi-
dade IPv6 ao usuário final, sendo forçado a oferecer também conectividade IPv4, mas com
IPs de alguma forma compartilhados.
Todas as soluções são extensões do IVI (RFC6219), cujo nome vem da concatenação dos
numerais romanos IV (4) e VI (6). O IVI é um mecanismo de tradução stateless 1:1, desenvol-
vido por pesquisadores da CERNET2, a rede acadêmica chinesa, que é somente IPv6. A China
optou por criar uma rede acadêmica IPv6 pura, totalmente nova, no lugar de implantar o
154
IPv6 em Pilha Dupla na rede já existente. Essa estratégia pode parecer estranha atualmente,
mas permitiu o desenvolvimento da indústria nacional de equipamentos de rede e, em con-
junto com incentivos econômicos para uso da nova rede, alavancou a implantação do IPv6
nas universidades e o desenvolvimento de diversas aplicações. Em muitas universidades
chinesas, hoje, o tráfego IPv6 é maior do que o IPv4.
O IVI foi criado inicialmente para permitir que servidores IPv6, ligados à CERNET2, pudessem
comunicar-se com a internet IPv4. Para isso, um endereço IPv4 é atribuído virtualmente ao
dispositivo, utilizando um mecanismo de tradução de pacotes stateless.
As três soluções, IVI, dIVI e dIVI-pd, são experimentais. Existem relatos de implantação e
teste realizados na CERNET/CERNET2 e pela China Telecom. Para o IVI há código disponível
publicamente, na forma de um patch para o kernel do Linux. Para o dIVI e o dIVI-pd não há
implementações públicas disponíveis.
IVI
Pode-se entender o conceito do funcionamento do IVI imaginando-se que este cria um nó
IPv6 espelho para o IPv4 e um nó IPv4 espelho para o IPv6, sendo que um nó espelho é um
endereço que simula a presença do dispositivo na rede, mas que na verdade encaminha os
pacotes enviados a ele para o dispositivo real através da tradução stateless. O servidor ou
usuário IPv6 nativo na rede atendida pelo IVI, embora não tenha um endereço IPv4 atribuído
a si, é visto por um nó IPv4 na internet por meio de seu “endereço espelho” e, de forma
análoga, enxerga um nó IPv4 qualquer na internet por meio de seu “endereço IPv6 espelho”.
A figura a seguir demonstra o conceito.
Subconjunto dos
Internet Rede endereços IPv6
Tradutor IVI
IPv4 IPv6
Figura 9.23
Explicação Host IPv4 Host IPv6 espelhado Host IPv4 espelhado com Host IPv6 com
conceitual do IVI. na rede IPv4 endereço IPv4-traduzido endereço IPv4-traduzível
O provedor, para implantar o IVI, escolhe um subconjunto de seu bloco IPv4, que será usado
para formar endereços IPv6, a fim de atender os servidores – ou usuários somente IPv6 –
Capítulo 9 - Coexistência e transição – Parte 1
que se comunicarão com a internet IPv4 por meio do IVI. Os endereços são mapeados
conforme a figura a seguir.
155
Endereços IPv4 na internet Endereços IPv6 na internet
IVI IVI
IPv4 IPv6
Por exemplo, um provedor cujo bloco IPv6 é 2001:db8::/32 e cujo bloco IPv4 é
192.61.100.0/24 pode escolher o prefixo IPv6 2001:db8:ff00::/40 e o bloco IPv4
192.51.100.0/26 para formar os endereços IVI. Os endereços IPv4 são mapeados para IPv6,
então, da seguinte forma:
192.51.100.1 - 2001:db8:ffc0:3364:0100::0
192.51.100.2 - 2001:db8:ffc0:3364:0200::0
(...)
192.51.100.62 - 2001:db8:ffc0:3364:3e00::0
Note que o IVI não é uma solução para o esgotamento do IPv4. Para seu funcionamento, é
necessário separar um conjunto de endereços IPv4 válidos do bloco disponível no provedor
e mapeá-lo para um conjunto de endereços IPv6 globais. A tradução no IVI é feita de forma
stateless, o que é simples de implementar e escala bem. Note também que o IVI precisa
funcionar em conjunto com o DNS64, caso seja necessário resolver os nomes de dispositivos
IPv4. Veja ainda que os métodos de tradução como IVI e NAT64 não funcionam com aplica-
ções que carregam os endereços IP na camada de aplicação, sendo necessária a utilização
de Application Layer Gateways (ALGs) nesses casos.
O IVI oferece conectividade fim a fim, seja IPv4 ou IPv6, para os dispositivos atendidos.
IPv6 Básico
156
ORG: 192.51.100.1 ORG: 2001:db8:ffc0:3364:0100::0
DST: 203.0.113.1 DST: 2001:db8:ffcb:0071:0100::0
Internet Rede
IPv4 Host IPv6
Host com
somente Tradutor IVI prefixo IVI
IPv4
Figura 9.25 As regras aplicadas na tradução do cabeçalho dos pacotes estão especificadas na RFC 6145 e
Tradução de são mostradas a seguir:
endereços no IVI.
IHL (descartado)
Identificação (descartado)
Flags (descartado)
Offset (descartado)
157
O caso de aplicação mais comum para o IVI é oferecer visibilidade IPv4 para servidores
somente IPv6 dentro de uma determinada rede, mas ele poderia ser utilizado também para
usuários, com a mesma finalidade, desde que haja uma quantidade suficiente de endereços
IPv4 disponíveis. Os dispositivos que utilizarem o IVI devem usar endereçamento manual ou
DHCPv6, pois o endereço precisa seguir um padrão específico que não pode ser obtido pela
autoconfiguração IPv6.
O IVI ainda não está largamente implementado e atualmente a única maneira de testá-lo é
através do Linux. Para usar o IVI é necessário aplicar um patch ao kernel do Linux.
Esse patch está disponível em http://www.ivi2.org/IVI/.
Após aplicar o patch é necessário habilitar a opção IVI e o protocolo IPv6 deve ser adicionado
no modo “built in”, e não como módulo. No menu config do kernel essas opções estão em:
Networking →
Networking Options →
#!/bin/bash
# IVI4 = 192.51.100.0/26
Destination-PF
158
# Mapeamento IPv6-to-IPv4
mroute6 2001:db8:ff00:: 40
Uma vez apresentado o IVI, pode-se entender o funcionamento do dIVI e do dIVI-pd. Ambas
as técnicas utilizam tradução dupla e compartilhamento de endereços IPv4, com restrição de
portas. Dessa forma, os nós atendidos por elas usam Pilha Dupla, tendo IPv6 nativo para a
comunicação com a internet IPv6 e um IPv4 compartilhado. Com o dIVI e o dIVI-pd a comuni-
cação fim a fim é possível, tanto com o uso de IPv4, como com o uso de IPv6, guardando-se a
restrição de que apenas um subconjunto do total de portas está disponível para um deter-
minado dispositivo no IPv4. Não é necessário o uso de NAT64 e nem de ALG. A figura 9.26
representa tanto o funcionamento do dIVI quanto o do dIVI-pd.
CPE1
Host 1
Internet
IPv4
IPv4
+ Rede Tradução N:1
IPv6 CPE2 IPv6 IPv6 para IPv4
Internet
IPv6
Figura 9.26 Host 2 Tradução 1:1
Topologia da rede IPv4 - IPv6 Stateless
com a utilização do
dIVI e dIVI-pd. Mapeamento de portas parc. statefull
dIVI
No dIVI, os endereços IPv4 são mapeados em IPv6 usando um formato definido no
draft-bcx-behave-address-fmt-extension, que é uma extensão da RFC 6052. Nesse formato,
que pode usar prefixos IPv6 com diferentes tamanhos, é possível carregar o endereço IPv4
que está sendo compartilhado e também informações que identificam quais são as faixas de
portas que podem ser utilizadas pelo nó: o PSID, que é uma espécie de identificador da CPE,
e o Q, que indica qual a taxa de compartilhamento de endereços. Com essas informações,
um algoritmo muito simples na CPE identifica quais portas podem e quais não podem ser
Capítulo 9 - Coexistência e transição – Parte 1
usadas. De forma análoga, o tradutor IVI N:1 na rede do provedor traduz o IPv4 de destino
para o endereço IPv6 correspondente, baseando-se tanto no endereço quanto na porta.
Os bits de 64 a 71, representados por “u”, devem possuir valor zero. Eles são reservados
para compatibilidade com o formato de identificação de dispositivo na arquitetura de ende-
reçamento IPv6, de acordo com a RFC 4291.
159
0 32 40 48 56 64 72 80 88 96 104 112 120 128
32 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits
Na CPE pode haver dois tipos de tradução. Pode ser feita uma tradução totalmente stateless, Figura 9.27
mas, nesse caso, o nó deve conhecer a priori a restrição das portas e enviar os pacotes já Endereçamento
IPv6 traduzido do
obedecendo a isso. Outra possibilidade é a tradução na CPE ser parcialmente statefull, de IPv4 pelo dIVI.
forma que o nó não precise obedecer a qualquer restrição quanto à porta de origem. Nesse
segundo caso, a CPE deve fazer a tradução das portas e manter o estado dessa tradução.
Note que no dIVI apenas um endereço IPv4 e um endereço IPv6 são atribuídos ao disposi-
tivo. Um caso de uso esperado para essa técnica é o uso para dispositivos móveis, em redes
3G ou 4G. O Sistema Operacional do dispositivo poderia suportar as funções da CPE dIVI, ou
seja, tradução 1:1 de IPv4 para IPv6 e mapeamento de portas, de forma que, funcionando
como um nó somente IPv6 na realidade, ainda assim pudesse oferecer uma API Pilha Dupla
para as aplicações.
dIVI-pd
O dIVI e o dIVI-pd são, de fato, muito parecidos. O dIVI-pd permite que seja designado um
prefixo IPv6 para o dispositivo no lugar de um único endereço. Dessa forma, é possível uti-
lizar a autoconfiguração stateless ou ainda endereçar toda uma rede com diversos nós.
É importante observar que apenas um endereço IPv4 continua sendo atribuído para cada
CPE no dIVI-pd, de forma que se for necessário atribuir endereços IPv4 para mais de um nó,
a CPE deverá fazê-lo utilizando NAT44 e endereços privados, da RFC 1918.
O dIVI-pd também usa os endereços no formato definido pela RFC 6052, com o prefixo de Figura 9.28
comprimento /64 e dois tipos de extensões, o CPE index, como parte do prefixo e o sufixo no Endereçamento
IPv6 traduzido do
mesmo formato utilizado pelo dIVI. IPv4 pelo dIVI-pd.
(d) bits (s+k) bits (m) (8) (32) bits (16) bits (8)
160
Note que para os usuários é possível atribuir prefixos /64, ou mais curtos, como /60 ou /56.
Isso determina o valor de m (preenchimento com zeros). Note ainda que o fato de o formato
de sufixo ser o mesmo utilizado pelo dIVI permite a construção de CPEs compatíveis com as
duas técnicas.
O dIVI e o dIVI-pd são realmente ótimas soluções, tendo características praticamente ideais
para uso por provedores de acesso, por isso seu desenvolvimento e padronização devem
ser acompanhados com muita atenção:
11 Operam com base em redes somente IPv6, que é para onde caminha a internet;
11 Usam traduções stateless, que são simples de implementar e baratas do ponto de vista
computacional, permitindo boa escalabilidade;
11 Quando necessário o uso de técnicas statefull, para a tradução de portas, isso é feito no
lado do usuário, mantendo o princípio de que a complexidade na internet deve estar nas
extremidades, e não próxima ao core da rede;
11 A tradução implementada no provedor, de IPv6 para IPv4, N:1, pode ser usada de forma
isolada, em conjunto com DNS64 e eventualmente ALGs, para clientes somente IPv6;
CPEs com suporte à tradução no sentido inverso poderiam ser implementados apenas
para os clientes para os quais esse método não for suficiente e que realmente necessi-
Suporta Sim Não Não Não Sim Não Não Não Não Não
Outra técnica de tradução aplicável em situações similares às do IVI, dIVI e dIVI-pd, ou seja,
para nós somente IPv6 acessarem a internet IPv4, é o NAT64 (RFC 6146). O NAT64 é uma
técnica stateful de tradução de pacotes IPv6 em IPv4, que necessita de uma técnica auxiliar
Capítulo 9 - Coexistência e transição – Parte 1
para a conversão do DNS, chamada de DNS64 (RFC 6147). São sistemas distintos, mas que
O processo é definido
d trabalham em conjunto para permitir a comunicação entre as redes IPv6 e IPv4.
em detalhes na O NAT64 necessita fazer a tradução de endereços IPv4 em IPv6, esta tradução é feita
RFC 6052. conforme ilustrado na figura a seguir.
0 96 128
96 bits 32 bits
Figura 9.29
Endereçamento
IPv6 traduzido do Prefixo v4 (32)
IPv4 pelo NAT64.
161
O prefixo IPv6 pode ser escolhido pela operadora, mas é recomendada a utilização do
prefixo 64:ff9b::/96, reservado especificamente para a utilização em algoritmos de mapea-
mento de endereços IPv4 em IPv6. Por exemplo, o IPv4 203.0.113.1 seria convertido para o
endereço IPv6 64:ff9b::203.0.113.1.
DNS
DNS
DNS Servidor
Cliente IPv6 DNS64 Autoritativo NAT64 IPv4
DNS Query
AAAA exemplo.com DNS Query
AAAA exemplo.com
DNS Response
NXDOMAIN
DNS Query
A exemplo.com
DNS Response
DNS Response A 200.0.113.1
AAAA
64:ffb9::200.0.113.1
TCP em IPv6
Dst: [64:ffb9::200.0.113.1]:80 Alocação de um IPv4
Org: [2001:db8::abcd]:xyz do pool de endereços
TCP em IPv4
Dst: 200.0.113.1:80
Org: 192.0.2.45:6853
TCP em IPv4
TCP em IPv6 Dst: 192.0.2.45:6853
Dst: [2001:db8::abcd]:xyz Org: 200.0.113.1:80
Org: [64:ffb9::200.0.113.1]:80
Figura 9.30
Diagrama de
sequência do
NAT64/DNS64.
IPv6 Básico
162
Rede IPv6 Internet IPv4
DNS
1 DNS64
2
3 4
6 5
Figura 9.31 O NAT64 possui implementações para Linux, Windows, grandes roteadores (Cisco e Juniper)
Topologia de rede e roteadores domésticos baseados em Linux. Como exemplo, serão apresentadas a seguir
do NAT64/DNS64.
configurações para Linux e Cisco.
#modprobe –r nf_nat64
11 $PREFIX_ADDR = 64:ff9b::
11 $PREFIX_LEN = 96
nf_nat64 14542 0
./nat64-config.sh $IPV4_ADDR
163
6. Verifique se a interface Nat64 está “up”, através do comando ip link.
ping6 64:ff9b::200.160.4.22
Router> enable
Router(config-if)# exit
Router(config-if)# exit
Router# end
options {
dns64 64:ff9b::/96 {
clients {any;};
mapped {any;};
suffix ::;
recursive-only yes;
IPv6 Básico
break-dnssec yes;
};
164
É interessante notar que o DNS64 pode apresentar problemas em sua interação com o
DNSSEC. Um validador DNSSEC que não saiba lidar com o DNS64 pode rejeitar todos os
dados que vêm deste, como se não fossem válidos. A RFC 6147, onde o DNS64 é definido,
especifica formas de contornar o problema.
464XLAT
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Sim Não Não Não Sim Não Não Não Não Não
Servidor
Cliente IPv4 CLAT PLAT IPv4
TCP em IPv4
Dst: 200.0.113.1
Org: 192.168.1.2 TCP em IPv6
Dst: 2001:db8:bbbb::200.0.113.1
Org: 2001:db8:aaaa::192.168.1.2
Alocação de um IPv4
do pool de endereços
TCP em IPv4
Capítulo 9 - Coexistência e transição – Parte 1
Dst: 200.0.113.1
Org: 192.0.2.45
TCP em IPv4
Dst: 192.0.2.45
TCP em IPv6 Org: 200.0.113.1
Dst: 2001:db8:aaaa::192.168.1.2
TCP em IPv4 Org: 2001:db8:bbbb::200.0.113.1
Dst: 192.168.1.2
Org: 200.0.113.1
165
2001:db8:cafe::1
2001:db8:aaaa::1
IPv6 Público
Internet IPv6 Internet IPv4
IPv4 Privado
É recomendado que haja um cache DNS implementado no CLAT, capaz de responder às Figura 9.33
solicitações dos clientes IPv4, fazendo as perguntas ao servidor DNS recursivo do provedor Topologia de rede
do 464XLAT.
por meio do protocolo IPv6, evitando assim traduções desnecessárias para esse fim.
O CLAT é uma tradução stateless baseada na RFC 6145 e funciona de maneira semelhante
ao IVI, mas utiliza IPv4 privado e não público. A forma como o endereço IPv4 é incluído no
endereço IPv6 também é um pouco diferente. A regra de tradução é:
0 96 128
96 bits 32 bits
Figura 9.34
Prefixo XLAT IPv4 (32) Endereço IPv6
traduzido do IPv4
pelo 464XLAT.
Esse prefixo XLAT de 96 bits é único por cliente e é atribuído a este pelo provedor do serviço.
Como o prefixo utilizado é um /96, a autoconfiguração stateless não é possível e é neces- w
sária a utilização de DHCPv6 para a atribuição de endereços. O CLAT pode ser implemen-
tado no CPE ou em celulares. Para a implementação
do CLAT em celulares,
Já o PLAT é um NAT64 (RFC 6146) que converte o endereço IPv6 em um dos endereços IPv4 existe um projeto
disponível para Android
disponíveis no banco de endereços do provedor. Para fazer a sua implementação, basta
em http://code.google.
seguir as recomendações feitas no Capítulo anterior. com/p/androidclat/.
Para a implementação
Testes foram realizados por pelo provedor norte-americano TMobile e o pelo Ponto de em CPE, pode-se
Troca de Tráfego japonês JPIX, em conjunto com seus participantes. Sua implementação em utilizar o IVI (http://
www.ivi2.org/IVI/), com
larga escala está sendo considerada. Os softwares ou implementações do CLAT e XLAT não
as configurações
são vinculadas e diferentes versões de um ou do outro podem ser utilizadas para obter o adequadas.
sistema desejado.
Embora não seja a solução ideal, do ponto de vista técnico, é uma solução que poderá ser
usada em larga escala em breve, pois já existem implementações funcionais de seus compo-
nentes básicos. Outro ponto a considerar é que o 464XLAT pode funcionar em conjunto com
NAT64, já que o PLAT é um NAT64. Basta acrescentar o DNS64 ao sistema. Usuários podem
IPv6 Básico
ser somente IPv6 e usar o NAT64/DNS64, e migrar para a utilização do 464XLAT acrescen-
tando um CPE que execute a função de CLAT, caso haja, por exemplo, aplicações que não
funcionem com o NAT64.
166
10
Coexistência e transição – Parte 2
objetivos
conceitos
O 4rd; 6PE e 6VPE; 6rd; 6to4; Teredo; ISATAP; A+P; NAT444; Técnicas de tradução:
SIIT, BIS, BIA, TRT, ALG e DNS-ALG; Segurança na transição.
4rd
O 4rd é uma solução similar ao DS-Lite, uma vez que usa túneis 4in6 para fornecer IPs q
versão 4 compartilhados para usuários que já têm IPv6 nativo. Mas, de forma análoga
às técnicas de tradução dIVI e 464XLAT, o 4rd é stateless e usa compartilhamento de IPs
com restrição de portas.
A técnica foi desenvolvida com base no 6rd, que será estudado mais à frente, e está em
processo de padronização, definida atualmente no draft-despres-intarea-4rd-01. Produtos
Figura 10.1
O 4rd em uso: da linha SEIL, do provedor japonês IIJ, também implementam o protocolo. A figura a seguir
similar ao DS-Lite. ilustra uma situação típica de uso do 4rd.
IPv4 (rfc1918)
IPv6 (nativo)
Provedor
Pool de IPs V4
para compartilhar
Capítulo 10 - Coexistência e transição – Parte 2
Internet
IPv4
4rd CE 4rd BR
Core IPv6 nativo Stateless A+P
IPv4 válido
compartilhado
com restrição
de portas A+P
Internet
IPv4 (rfc1918) NAT44 IPv6
IPv6 (nativo)
167
É importante considerar que o 4rd, além de distribuir IPs versão 4 compartilhados com A+P, pode
também distribuir IPs válidos sem restrição de portas, para cada CPE, além de sub-redes IPv4. Existe uma implemen-
tação pública do 4rd
A figura a seguir representa a forma como os endereços IPv4 e IPv6 são mapeados 1:1, que funciona no vyatta
e pode ser encontrada
para o caso em que os endereços IPv4 são compartilhados com A+P. Perceba que o
em http://bougaidenpa.
mapeamento é stateless. org/masakazu/
archives/176.
Prefixo CE 4rd (47 bit max)
Para o mapeamento das portas, regras simples foram estabelecidas. As portas baixas, de Figura 10.2
0 a 4096, nunca são designadas a um cliente. O tamanho do port-set-ID pode ir de 1 a 15 bits. Tradução de
endereços feita
Os clientes podem receber de 1 a 4 blocos diferentes de portas, de tamanhos variados, pelo 4rd.
conforme o tamanho do portsetID. Os 16 bits de cada porta disponível são definidos da
seguinte forma:
11 4º bloco: 1 + port-set-ID (n=1 a 15 bits) + sufixo (que varia de 0 a 15-n). Tabela 10.1
Note que, se o port-set-ID tiver 15 bits, apenas um bloco estará disponível; se tiver 14 bits, 2 blocos; Modos de
compartilhamento
se tiver 13 bits, 3 blocos; e se tiver de 1 a 12 bits, 4 blocos de portas estarão disponíveis. de portas.
10 1024 4 8 16 32 60 4096
11 2048 2 4 8 16 30 4096
168
Tamanho Quantidade Head=0001 Head=001 Head=01 Head=1 Total Portas
do de IDs 1o. bloco 2o. bloco 3o. bloco 4o. bloco de não utilizadas
port set (CPEs) portas
(bits)
12 4096 1 2 4 8 15 4096
13 8192 – 1 2 4 7 8192
14 16384 – – 1 2 3 16384
15 32768 – – – 1 1 32768
A configuração dos CPEs pode ser feita manualmente, mas a proposta também define uma
opção de configuração via DHCPv6, que pode ser usada.
Assim como as técnicas dIVI e dIVI-pd, a técnica 4rd tem características praticamente ideais
para uso por provedores de acesso, por isso seu desenvolvimento e padronização devem
ser acompanhados com muita atenção:
11 Opera com base em redes somente IPv6, que é para aonde caminha a internet;
11 Utiliza traduções stateless, que são simples de implementar e baratas do ponto de vista
computacional, permitindo boa escalabilidade;
6PE e 6VPE
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Tabela 10.2
q
6PE e 6VPE e os
cenários. 11 6PE – RFC 4798
O roteamento através de MPLS tem sido largamente utilizado nas redes dos grandes prove-
dores de conectividade internet. Entretanto, grande parte desses equipamentos já insta-
lados não possuem suporte a IPv6. Dado o alto custo desses equipamentos, pode existir a
necessidade de mantê-los em operação. No intuito de resolver esse problema, podemos usar
as técnicas conhecidas como 6PE e o 6VPE, definidas, respectivamente, nas RFCs 4798 e 4659,
que permitem que redes IPv6 estabeleçam a comunicação por meio de um core MPLS IPv4,
usando Label Switch Paths (LSPs). Sua implementação usa Multiprotocol BGP (MBGP) sobre
IPv4 para trocar rotas IPv6 e necessita que os PEs (Roteador de Borda) sejam Pilha Dupla.
Através do MBGP os roteadores de borda recebem as rotas IPv6, mas aplicam MPLS IPv4
sobre os pacotes para realizar o roteamento. Quando o pacote chegar à rede IPv6 de destino,
o cabeçalho MPLS é removido e o pacote é encaminhado normalmente através do IPv6.
169
A diferença entre o 6PE e o 6VPE é que, no primeiro caso, os roteadores mantêm apenas
uma tabela global de roteamento, de forma que o 6PE é mais indicado para provimento de
conectividade internet. Já os roteadores 6VPE são capazes de manter várias tabelas de rote-
amento separadas logicamente, de forma que a técnica é apropriada para prover serviços
de redes privadas (VPNs). A seguir o diagrama que explica o funcionamento do 6PE.
Figura 10.3
Topologia de
rede 6PE.
MPLS
IPv4
PE PE
Pilha Dupla Pilha Dupla
Tabela 10.3
6rd 6rd e os cenários.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
O 6rd tem o objetivo de permitir ao usuário final ter conexão com as redes IPv6 apesar de a
rede da operadora continuar funcionando em IPv4.
O 6rd (RFC5569) é uma extensão da técnica 6to4, que está em desuso e será melhor expli-
cada a seguir. O 6rd resolve algumas das limitações técnicas do 6to4, como, por exemplo,
sua assimetria e a falta de controle sobre os relays utilizados, permitindo sua utilização em
larga escala.
Para entender o funcionamento do 6rd, pode-se observar a figura a seguir, que ilustra a
topologia típica de uso. Esse tipo de técnica,
assim como o
6PE/6VPE, permite que
os provedores usem a
infraestrutura IPv4 já
CPE Internet existente para fazer
6rd IPv4 uma implantação
rápida do IPv6.
Rede Relay
IPv4 6rd
2001:db8:cb00:7101::1
203.0.113.1 Figura 10.4
Internet
IPv6 Básico
170
Analisando a figura, é possível notar que o 6rd depende basicamente de dois componentes:
11 Relay 6rd: instalado na interface entre a rede IPv4 da operadora e a internet IPv6.
O CPE 6rd é um CPE tradicional (xDSL modem, cable modem, 3G modem etc.), cujo software
foi modificado para permitir o uso do 6rd. A necessidade dessa modificação dificulta a
implementação da técnica, uma vez que requer a substituição, lógica ou física, de equipa-
mentos em campo. Tal modificação nos CPEs normalmente é viável nos casos em que o
provedor gerencia remotamente o equipamento, sendo capaz de fazer upgrades em seu
firmware. O 6rd relay é um equipamento que vai encapsular e desencapsular pacotes para
trafegarem corretamente nas redes IPv4 e IPv6.
O CPE 6rd atribui ao usuário um endereço IPv4, como um CPE normal. Entretanto, um ende-
reço IPv6 também é atribuído ao usuário. Esse endereço IPv6 é um endereço IPv6 público
válido, mas é construído de maneira específica para que o relay 6rd identifique-o como um
endereço 6rd. O endereço IPv6 atribuído é constituído da seguinte forma:
Figura 10.5 No 6rd o tamanho do prefixo e o tamanho do endereço IPv4, que formam o prefixo dele-
Tradução de gado 6rd, são escolhas do provedor de acesso. Para permitir que a autoconfiguração de
endereço IPv4 para
IPv6 no 6rd. endereço stateless funcione, é necessário que o tamanho desse prefixo n + o seja menor
que 64 bits. O ID sub-rede de tamanho m pode ser definido pela operadora, mas é mais
provável que a operadora deixe a definição do valor e tamanho do campo para o usuário
final adequar às necessidade de sua rede.
O 6rd é uma técnica funcional cuja implementação em massa foi testada com sucesso no
provedor francês Free. Entretanto, a técnica não tem sido adotada por outros, principal-
mente pela necessidade de atualização do software ou de substituição dos CPEs.
Para configurar o CPE e o roteador de borda com Linux, é necessário pelo menos o kernel
mínimo 2.6.33 e as configurações para isso são:
171
Roteador relay 6rd:
interface Loopback0
interface Tunnel0
interface Dialer0
172
ip address dhcp ! (203.0.113.130)
interface Tunnel0
interface Ethernet0
11 O ID da sub-rede pode ser usado para segmentar a rede IPv6 6to4 em até 216 sub-redes,
com 264 endereços cada, como por exemplo 0, 1, 2, 3, 4...
Capítulo 10 - Coexistência e transição – Parte 2
11 O ID da interface pode ser igual ao segundo campo (o Windows faz assim) ou qualquer
outro número no caso de configuração manual (no Linux, usa-se sequencial: 1, 2, 3, 4...).
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Tabela 10.4 O 6to4 (RFC 3056) é umas das técnicas de transição mais antigas em uso e é a técnica que
6to4 e os cenários. inspirou a criação do 6rd. Sua concepção era simples e muito interessante: com a ajuda de relays
173
Pilha Dupla distribuídos na internet, abertos, instalados de forma colaborativa por diversas
redes, qualquer rede IPv4 poderia obter conectividade IPv6, através de túneis 6in4 automáticos.
Por meio do 6to4 qualquer computador com um IPv4 válido poderia funcionar como uma
extremidade de um conjunto de túneis automáticos e prover todo um bloco IPv6 /48 para
ser distribuído e usado em uma rede.
A técnica funcionou parcialmente e ainda é usada na internet, mas apresenta diversos pro-
blemas. De fato, talvez tenha trazido mais problemas para a implantação do IPv6, de forma
geral, do que ajudado. O 6to4 é composto pelos seguintes elementos:
11 Relay 6to4: roteador com suporte ao 6to4 e que possui conexão nativa IPv4 e IPv6.
Funciona como a extremidade dos túneis automáticos para os Roteadores 6to4 que
precisam se comunicar com a internet IPv6. Os relays 6to4 usam o endereço anycast IPv4
192.88.99.1 e anunciam rotas para 2002::/16 através deles, para a internet;
11 Roteador 6to4: roteador que suporta 6to4, que fica na extremidade de uma rede IPv4,
e é responsável por trazer conectividade IPv6 para essa rede, por meio dos túneis 6to4.
No caso dos acessos à internet IPv6, ele direcionará o tráfego até o Relay Router mais
próximo, que encaminhará o pacote ao seu destino. Para acesso a outras redes 6to4, os
túneis são fechados diretamente com outros Roteadores 6to4;
11 Cliente 6to4: equipamento de rede ou computador que usa endereços IPv6 fornecidos
pelo túnel 6to4. O cliente 6to4 é um cliente Pilha Dupla convencional, normalmente numa
rede doméstica ou corporativa, que pode usar IPv4 nativo ou compartilhado. O cliente
não diferencia um endereço IPv6 obtido via 6to4 de um endereço IPv6 nativo.
200=C8
192=C0
180=B4
002=02
Com isso, o bloco IPv6 correspondente, via 6to4, é 2002:C8C0:B402::/48. A figura a seguir
mostra a estrutura do endereço 6to4. Figura 10.6
Estrutura do
endereço 6to4.
0
16 bits 32 bits 16 bits 64 bits
q
IPv6 Básico
A figura e tabela a seguir demonstram o fluxo dos pacotes em uma rede 6to4. É impor-
tante notar que não existe a necessidade de uma rede e dos pacotes irem e voltarem
pelo mesmo relay 6to4. As etapas 1, 3, 4 e 6 usam pacotes IPv6, e as etapas 2 e 5 utilizam
pacotes IPv6 encapsulados em IPv4 através do protocolo 41.
174
RL1
Relay 6to4
C2 Cliente 6to4 1.2.3.6
2002:0102:0304:1::2 192.88.99.1 2001.1111::1
R1
3
Roteador 6to4 2 R3
6 1
Equipamento Rota
RL1 ::/0 rede IPv6 por meio da interface LAN / 2002::/16 através da interface virtual 6to4
RL2 ::/0 rede IPv6 através da interface LAN / 2002::/16 por meio da interface virtual 6to4
R3 2002::/16 através do Relay RL2 (rota descoberta por meio da divulgação via BGP)
R1 ::/0 através do Relay 6to4 RL1 ou RL2 utilizando a interface virtual 6to4
2002::/16 por meio da interface virtual 6to4
2002:0102:0304:1/64 para a rede local através da interface LAN
11 2: o pacote IPv6 é recebido por R1 através da interface LAN, que verifica sua tabela de
roteamento e descobre que deve enviar o pacote para a interface virtual 6to4 (rota para a
Capítulo 10 - Coexistência e transição – Parte 2
rede 2002::/16). Nessa interface o pacote IPv6 é encapsulado em um pacote IPv4 (proto-
colo tipo 41) e enviado ao Relay RL1 ou RL2 (O Relay 6to4 pode ser definido manualmente
no roteador 6to4 ou então automaticamente através da utilização do endereço anycast
192.88.99.1). Vamos supor que o pacote foi enviado para o Relay RL1;
11 3: RL1 recebe o pacote 6to4 através de sua interface IPv4, vê que o pacote utiliza o proto-
colo 41 e o encaminha para a interface virtual. Esta desencapsula o pacote IPv6 e verifica
na sua tabela de roteamento que deve enviá-lo pela interface LAN através do roteador
R3, que simplesmente repassa o pacote IPv6 ao servidor S2;
11 4: S2 responde com o envio de outro pacote IPv6 com destino ao Cliente C2 utilizando a
sua rota padrão, que aponta para o roteador R3. Então R3 recebe o pacote e, através da
rota recebida via BGP, sabe que deve enviá-lo para o relay mais próximo, que é RL2;
175
11 5: RL2 recebe o pacote IPv6 e verifica que o destino é a rede 6to4 (2002::/16). Desse
modo, de acordo com sua tabela de roteamento, ele encaminha o pacote para a interface
virtual 6to4, que o empacota em um pacote IPv4 (protocolo 41) e o envia ao endereço
IPv4 implícito no endereço IPv6 do destinatário do pacote;
11 6: o roteador R1 recebe o pacote através de seu endereço IPv4, verifica que o pacote está
utilizando o protocolo 41 e o encaminha à interface virtual 6to4. Esta o desencapsula e
verifica o endereço de destino. De acordo com sua tabela de roteamento e o endereço de
destino, o pacote IPv6 é enviado através da sua interface LAN para o Cliente 6to4 C2.
Entre os problemas que afetam o 6to4, podemos citar problemas de qualidade com relays
públicos e problemas de segurança. Alie-se a isso o fato de que diversos Sistemas Operacio-
nais suportam túneis 6to4 de forma automática, entre eles o Windows XP, o Windows Vista
e o Windows 7. O fato de os Sistemas Operacionais ativarem os túneis 6to4 sem intervenção
ou conhecimento dos usuários traz algumas consequências sérias. Uma delas é que firewalls
ou outras medidas de segurança em redes corporativas podem ser inadvertidamente con-
tornadas. Outra, é que, via túnel, os pacotes podem seguir caminhos mais longos, trazendo
uma experiência pior para o usuário, em comparação àquela que ele teria se estivesse sim-
plesmente usando IPv4. Um agravante é que não há relays públicos 6to4 no Brasil, ocasio-
nando a ida do pacote para localidades distantes como América do Norte ou Europa, mesmo
que a origem e o destino estejam no país.
Ainda assim, é recomendável agir para mitigar esse problema, principalmente porque existe
uma medida bastante simples e efetiva, que pode ser utilizada. Deve-se lembrar que o
caminho de ida do 6to4 pode ser diferente do caminho de volta. Isso permite que um relay
6to4 seja criado em um servidor web, ou em uma rede, com o objetivo de responder as
requisições recebidas via 6to4. O relay não deve ser público; apenas servirá para responder
às requisições dirigidas ao serviço advindas de clientes 6to4. A implementação desse relay
não reduzirá o tempo gasto para receber pacotes 6to4, mas garante que os pacotes 6to4 de
resposta saiam da rede com destino ao originador da requisição, já encapsulados em IPv4, e
isso dará a vantagem do tempo de resposta ser consideravelmente reduzido, já que não será
necessário o pacote ir até o relay localizado no exterior. Essa redução pode melhorar bastante
a experiência de acesso de um usuário que use 6to4 para acessar um serviço qualquer.
Para implementar esse relay é necessário que os roteadores de borda da rede permitam a
saída de pacotes com IP de origem 192.88.99.1. Provavelmente isso estará bloqueado por
padrão na rede, já que esse IP não faz parte do bloco a ela designado. É preciso verificar
também se o provedor de upstream não está filtrando também esse endereço. Normal-
mente, se a rede em questão for um AS, com bloco próprio, o upstream não terá filtros
antispoofing. Caso contrário, terá. Com a liberação do endereço, basta configurar o próprio
servidor web, ou um outro elemento na rede, para fazer o encapsulamento das respostas
usando 6to4. No Linux a configuração é:
IPv6 Básico
ip tunnel add tunel6to4 mode sit ttl 64 remote any local 192.88.99.1
176
ip addr add 192.88.99.1/24 dev lo
ip link set lo up
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\
Parameters\DisabledComponents
Ao fazer isso, a chave será criada com o valor 0x00. O bit 1 (do menos significativo para o
mais significativo) deve ser mudado para 1, para desabilitar o 6to4. Ou seja, o valor da chave
deve passar a ser 0x01. A função de todos os bits é descrita a seguir. Note que 0 é o valor
padrão e significa que a função está ativa, 1 desativa a função:
bit 1: 6to4
bit 2: ISATAP
bit 3: Teredo
O 6to4 é, então, um protocolo com histórico importante, mas cujo uso deve ser evitado
atualmente. Deve-se desativá-lo em redes corporativas e bloqueá-lo nos firewalls. Contudo,
para redes Pilha Dupla que têm serviços IPv6 públicos na internet, principalmente servi-
dores web, é recomendada a instalação de um relay 6to4 para responder a solicitações de
usuários externos usando essa tecnologia, mitigando parte dos problemas trazidos por esta.
Teredo
11 Encapsula o pacote IPv6 em pacotes UDP. q
11 Funciona através de NAT tipo Cone e Cone Restrito.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
Tabela 10.6 A técnica de tunelamento automática Teredo, criada pela Microsoft e definida na RFC 4380,
Teredo e os permite que nós localizados atrás de Network Address Translations (NAT), obtenham
cenários.
conectividade IPv6 utilizando tunelamento em IPv4, usando o protocolo UDP.
Sua utilização não é recomendada, uma vez que não é muito eficiente, tem alta taxa de falhas
e algumas considerações de segurança. Contudo, é importante conhecê-la bem, já que está
implementada e é utilizada de forma automática em algumas versões do Windows. Com o
uso de túneis automáticos, mesmo que a rede não tenha o IPv6 implantado, usuários podem
177
ter endereços IPv6 em seus dispositivos, inclusive com capacidade para receber conexões
entrantes, contornando mecanismos e regras de segurança existentes no ambiente.
Existem dois elementos importantes no Teredo, o Servidor Teredo e o Relay Teredo. A conexão
é realizada através de um Servidor Teredo, que a inicia após determinar o tipo de NAT usado
na rede do cliente. Em seguida, caso o nó destino possua IPv6 nativo, um Relay Teredo é usado
para criar uma interface entre o cliente e o nó destino. O Relay utilizado será sempre o que
estiver mais próximo do nó destino e não o mais próximo do cliente.
Os Servidores Teredo utilizam a porta UDP 3544 para comunicar-se com os dispositivos.
Bloquear pacotes IPv4 enviados de uma rede para a internet nessa porta e na direção
inversa é uma forma efetiva para evitar a utilização indesejada, muitas vezes involuntária,
desse tipo de túneis.
Por padrão, os Windows 7 e Vista já trazem o Teredo instalado e ativado por padrão,
enquanto que no Windows XP, 2003 e 2008, ele vem apenas instalado. Quanto ao FreeBSD
e ao Linux, ele não vem instalado. Caso seu uso seja desejado, é possível usar um software
chamado miredo.
Para iniciar o túnel, existe uma comunicação entre o cliente e o Servidor Teredo com a fina-
lidade de identificar o tipo de NAT usado na rede. Para isso são usados dois IPs versão 4 no
servidor. O Teredo é capaz de funcionar com NAT do tipo Cone, também chamado de
NAT Estático e NAT Cone Restrito, também conhecido como NAT Dinâmico, mas não fun-
ciona com NAT Simétrico.
11 NAT Cone: todas as requisições originadas de um mesmo endereço e porta internos são
mapeadas para uma mesma porta do NAT. Com isso, é preciso apenas conhecer o ende-
reço público do NAT e a porta associada a um nó interno para que um nó externo esta-
beleça uma comunicação, não importando seu endereço ou porta, podendo assim enviar
arbitrariamente pacotes para o nó interno. É também conhecido como NAT Estático;
11 NAT Simétrico: além de possuir as mesmas restrições do NAT tipo Cone Restrito por
Porta, cada requisição realizada, a partir de um endereço e porta internos, para um ende-
reço e porta externos, é mapeada unicamente no NAT. Ou seja, se o mesmo endereço
interno envia uma requisição com a mesma porta, porém para um endereço de destino
diferente, um mapeamento diferente será criado no NAT. Esse tipo de NAT é também
IPv6 Básico
178
Se o pacote passar
pelo NAT, ele é do Responde utilizando
Cliente Teredo tipo Cone restrito NAT IP diferente Servidor Teredo
Figura 10.8 Uma vez identificado o tipo de NAT, o cliente constrói seu endereço IPv6, conforme a
Definição do tipo de figura a seguir:
túnel Teredo.
0
32 bits 32 bits 16 bits 16 bits 32 bits
Figura 10.9 O prefixo é sempre 2001:0000::/32. As Flags servem para identificar o tipo de NAT.
q
Tradução de
endereço IPv4 para 11 Teredo utiliza o prefixo 2001:0000::/32
IPv6 no Teredo.
11 Os 32 bits seguintes contêm o endereço IPv4 do servidor Teredo.
11 Os 16 bits seguintes são utilizados para definir flags que indicam o tipo de NAT utili-
zado e introduzem uma proteção adicional ao nó contra ataques de scan.
possível, quando o cliente está numa rede com NAT Cone Restrito. Note que, no estabeleci-
mento do túnel, os primeiros pacotes fluem através do Servidor Teredo. Uma vez estabele-
cido o túnel, toda a comunicação é feita através do Relay, bidirecionalmente.
179
Servidor Teredo
Cliente
Teredo
1 5
Rede IPv4 2 Servidor IPv6
8 9
Relay Teredo
Além de bloquear a porta UDP 3544, para evitar a criação de túneis Teredo, estes podem ser Figura 10.10
desabilitados no próprio Windows. Para isso, deve ser criada e configurada uma chave de Estabelecimento de
túnel Teredo.
registro, do tipo DWORD:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\
Parameters\DisabledComponents
Ao fazer isso, a chave será criada com o valor 0x00. O bit 2 (do menos significativo para o
mais significativo) deve ser mudado para 1, para desabilitar o Teredo. Ou seja, o valor da
chave deve passar a ser 0x02. A função de todos os bits é descrita a seguir. Note que 0 é o
valor padrão e significa que a função está ativa, 1 desativa a função:
bit 1: 6to4
bit 2: ISATAP
bit 3: Teredo
Baseado nas mensagens RA recebidas dos servidores, o cliente constrói seu endereço IPv6,
usando o seguinte padrão:
11 Os bits 0 a 31 são o prefixo do Teredo recebido do servidor através das mensagens RA;
o padrão é 2001:0000;
11 Os bits 32 a 63 são o endereço IPv4 primário do servidor Teredo que enviou a primeira
mensagem RA;
11 Os bits 64 a 79 são utilizados para definir algumas flags. Normalmente, somente o bit
mais significativo é usado, e ele é marcado como 1 se o cliente está atrás de NAT do tipo
Cone. Caso contrário, é marcado como 0. Apenas o Windows Vista e Windows Server
2008 usam todos os 16 bits, que seguem o formado “CRAAAAUG AAAAAAAA”, onde
“C” continua sendo a flag Cone; o bit R é reservado para uso futuro; o bit U define a flag
Universal/Local (o padrão é 0); o bit G define a flag Individual/Group (o padrão é 0); e os
IPv6 Básico
12 bits “A” são randomicamente determinados pelo cliente para introduzir uma proteção
adicional ao nó contra ataques de scan;
180
11 Os bits 80 a 95 são a porta UDP de saída do NAT, recebida nas mensagens RA e masca-
rada através da inversão de todos os seus bits. Esse mascaramento é necessário porque
alguns NATs procuram portas locais dentro dos pacotes e os substituem pela porta
pública ou vice-versa;
11 Os bits 96 a 127 são o endereço IPv4 público do servidor NAT, mascarado através da
inversão de todos os seus bits. Esse mascaramento é necessário porque alguns NATs
procuram endereços IPs locais dentro dos pacotes e os substituem pelo endereço público
ou vice-versa.
11 2: se a mensagem RA do passo anterior não for recebida, o cliente Teredo envia outra
mensagem RS, mas agora com o Cone flag desativado. O servidor Teredo 1 responde
novamente com uma mensagem RA, mas como o Cone flag da mensagem RS estava
desativado, ele responde usando o mesmo endereço IPv4 em que recebeu a mensagem
RS. Se agora o cliente receber a mensagem de RA, então ele conclui que está utilizando
Capítulo 10 - Coexistência e transição – Parte 2
11 3: para ter certeza de que o cliente Teredo não está usando um NAT do tipo simétrico,
ele envia mais uma mensagem RS, mas agora para o servidor secundário Teredo 2, que
responde com uma mensagem do tipo RA. Quando o cliente recebe a mensagem RA do
servidor Teredo 2, ele compara o endereço e a porta UDP de origem contidos na men-
sagem RA recebida dos dois servidores; se forem diferentes, o cliente conclui que está
usando NAT do tipo simétrico, que não é compatível com o Teredo.
181
Servidor IPv6
Servidor Teredo 2
6
3
Internet
IPv6
4 5
NAT
Rede Local
IPv4 Figura 10.12
Comunicação
por meio de NAT
Cliente Teredo tipo Cone.
11 3: o host IPv6 responde ao cliente Teredo com uma mensagem ICMPv6 Echo Reply, que é
roteada através do relay Teredo mais próximo dele;
11 4: o relay Teredo então encapsula a mensagem ICMPv6 Echo Reply e envia diretamente
ao cliente Teredo. Como o NAT utilizado pelo cliente é do tipo Cone, o pacote enviado pelo
relay Teredo é encaminhado para o cliente Teredo;
11 5: como o pacote retornado pelo relay Teredo contém o endereço IPv4 e a porta UDP
utilizada por ele, o cliente Teredo extrai essas informações do pacote. Depois disso, um
pacote inicial é encapsulado e enviado diretamente pelo cliente Teredo para o endereço
IPv4 e porta UDP do relay Teredo;
11 6: o relay Teredo recebe esse pacote, remove o cabeçalho IPv4 e UDP e o encaminha para
o host IPv6. Depois disso, toda a comunicação entre o cliente Teredo e o host IPv6 é feita
via o relay Teredo através desse mesmo método.
IPv6 Básico
182
Servidor IPv6
Tráfego IPv6
Servidor Teredo 2
9
3
Internet
IPv6
4
NAT
Rede Local
IPv4
Figura 10.13
Comunicação
por meio de NAT
restrito. Cliente Teredo
11 3: o host IPv6 responde ao cliente Teredo com uma mensagem ICMPv6 Echo Reply que é
roteada através do relay Teredo mais próximo dele;
11 4: através do pacote recebido, o relay Teredo descobre que o cliente Teredo está utili-
zando um NAT do tipo restrito; sendo assim, se o relay Teredo enviar o pacote ICMPv6 dire-
tamente para o cliente Teredo, ele será descartado pelo NAT porque não há mapeamento
pré-definido para tráfego entre o cliente e o relay Teredo. Com isso, o relay Teredo envia
um pacote Bubble para o cliente Teredo através do servidor Teredo, usando a rede IPv4;
11 5: o servidor Teredo recebe o pacote Bubble do relay Teredo e o encaminha para o cliente
Teredo, mas coloca no indicador de origem o IPv4 e a porta UDP do relay Teredo. Como
Capítulo 10 - Coexistência e transição – Parte 2
11 6: o cliente Teredo extrai do pacote Bubble recebido o IPv4 e a porta UDP do relay Teredo
mais próximo do host IPv6; com isso, o cliente Teredo envia um pacote Bubble para o
relay Teredo, para que seja criado um mapeamento de conexão entre eles no NAT;
183
11 9: o relay Teredo remove os cabeçalhos IPv4 e UDP do pacote e o encaminha através da
rede IPv6 para o host IPv6. Após isso, os pacotes subsequentes são enviados através do
relay Teredo.
O principal problema de segurança quando se utiliza o Teredo é que seu tráfego pode passar
despercebido pelos filtros e firewalls se estes não estiverem preparados para interpretá-lo.
Sendo assim, os computadores e a rede interna ficam expostos a ataques vindos da internet
IPv6. Para resolver esse problema, antes de implementar o Teredo, deve-se fazer uma
revisão nos filtros e firewalls da rede ou pelo menos dos computadores que utilizarão essa
técnica. Além desse problema, ainda temos os seguintes:
11 O cliente Teredo divulga na rede a porta aberta por ele no NAT e o tipo de NAT que está
utilizando, possibilitando assim um ataque através dela;
11 A quantidade de endereços Teredo é bem menor que os endereços IPv6 nativos, facili-
tando a localização de computadores vulneráveis;
11 Um ataque por negação de serviço é fácil de ser aplicado, tanto no cliente quanto no relay;
11 Devido ao método de escolha do relay pelo host de destino, pode-se criar um relay falso
e utilizá-lo para coletar a comunicação deste host com os seus clientes.
ISATAP
11 Intra-Site Automatic Tunnel Addressing Protocol (ISATAP) é uma técnica de tunelamento q
que liga hosts a roteadores.
11 Não há um serviço público de ISATAP; é uma técnica usada dentro das organizações.
11 Sua utilização faz sentido, por exemplo, quando a organização já tem numeração IPv6
válida e conectada na borda, mas sua infraestrutura interna não suporta IPv6.
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Sim Não
IntraSite Automatic Tunnel Addressing Protocol (ISATAP) é uma técnica de tunelamento que Tabela 10.7
liga dispositivos a roteadores. Sua utilização ocorre dentro das organizações, pois não há um ISATAP e os
cenários.
serviço público de ISATAP. É possível usar a técnica quando a organização tem IPv6 na
extremidade de sua rede, fornecido por seu provedor, mas sua infraestrutura interna, ou
parte dela, não suporta o protocolo.
184
Roteador
ISATAP
Rede Rede
IPv4 IPv6
Cliente ISATAP
Figura 10.14 fe80::0:5fee:192.168.0.1
Topologia da rede 192.168.0.1
Túnel ISATAP
ISATAP.
Essa técnica, definida na RFC 5214, é baseada em túneis IPv6 criados automaticamente
dentro da rede IPv4 e em endereços IPv6 associados aos clientes de acordo com o prefixo
especificado no roteador ISATAP e no IPv4 do cliente. Para a criação desses túneis, são
usadas as especificações da seção 3 da RFC 4213, que trata do tunelamento através do
protocolo IPv4 tipo 41 ou 6in4.
Os endereços IPv4 dos clientes e roteadores são usados como parte dos endereços q
ISATAP, permitindo a um nó determinar facilmente os pontos de entrada e saída dos
túneis IPv6, sem usar nenhum protocolo ou recurso auxiliar. O formato do endereço
ISATAP segue o seguinte padrão:
11 Prefixo unicast: é qualquer prefixo unicast válido em IPv6, que pode ser link-local
(FE80::/64) ou global. Normalmente utiliza-se uma rede /64 obtida a partir do prefixo
global fornecido pelo provedor internet para uso na rede;
11 ID IPv4 público ou privado: se o endereço IPv4 for público, esse campo deve ter o valor
«200». Se for privado (192.168.0.0/16, 172.16.0.0/12 e 10.0.0.0/8), o valor do campo será zero;
Figura 10.15
Tradução de 11 ID ISATAP: sempre tem o valor 5EFE;
endereço IPv4 para
IPv6 no ISATAP. 11 Endereço IPv4: é o IPv4 do cliente ou roteador em formato IPv4;
0 64 80 96 128
64 bits 16 bits 16 bits 32 bits
Inicialização do ISATAP
q
Capítulo 10 - Coexistência e transição – Parte 2
185
Rede
IPv6
Servidor DNS
1 2
Roteador ISATAP
Tráfego IPv4
3 4
nativo
Rede
IPv4
Figura 10.16
Exemplo da
Tráfego IPv6 em túneis ISATAP
inicialização do
Cliente ISATAP utilizando protocolo 41
ISATAP.
11 1: nesse passo, o cliente tenta determinar o endereço IPv4 do roteador, se o endereço IPv4
já não estiver determinado na sua configuração. No caso do Windows, ele tenta por padrão
resolver os nomes ISATAP e ISATAP.domínio-local via resolução local ou servidor DNS;
11 4: o roteador ISATAP responde com uma mensagem de Anúncio de Roteador (RA) encap-
sulada em IPv4, e com isso o cliente já pode configurar os seus endereços IPv6/ISATAP.
Servidor DNS
Rede
IPv6
Tráfego IPv4
nativo Rede
IPv4
Roteador ISATAP
2 3 4
5 1
Tráfego IPv6 em túneis ISATAP
C1 6
utilizando protocolo 41
Cliente
ISATAP Figura 10.17
Em uma mesma
Tráfego IPv6 em túneis ISATAP C2 rede: comunicação
utilizando protocolo 41 Cliente
IPv6 Básico
entre clientes
ISATAP ISATAP.
186
Passos para a comunicação entre clientes ISATAP na mesma rede:
11 4: o roteador ISATAP responde com uma mensagem de Anúncio de Roteador (RA) encap-
sulada em IPv4, e com isso o cliente já pode configurar os seus endereços IPv6/ISATAP;
11 7: o cliente ISATAP C1 recebe o pacote IPv4 e desencapsula o pacote IPv6 dele; depois
responde com outro pacote IPv6 encapsulado em IPv4, utilizando o protocolo 41 através
da rede IPv4 com destino ao endereço IPv4 do cliente C2.
Tráfego IPv6
Rede Nativo
IPv6
Rede Rede
IPv4 IPv4
2
1 5 3
6 4
R1 R2
Roteador Roteador
ISATAP ISATAP
C1 C2
Cliente ISATAP Cliente ISATAP
Tráfego IPv6 em túneis ISATAP
utilizando protocolo 41
Figura 10.18 Passos para a comunicação entre clientes ISATAP em diferentes redes:
Capítulo 10 - Coexistência e transição – Parte 2
Em redes
diferentes: 11 1: o cliente ISATAP C1 quer enviar um pacote IPv6 para o cliente C2. Através de sua
comunicação entre tabela de roteamento, ele descobre que tem de enviá-lo utilizando a interface virtual
clientes ISATAP.
ISATAP; com isso, o pacote é encapsulado em IPv4 (protocolo 41) e enviado ao endereço
IPv4 do roteador R1;
11 2: o roteador R1 recebe o pacote através de sua interface IPv4, mas, como o pacote IPv6
está encapsulado utilizando o protocolo 41, ele o desencapsula (utilizando a interface
virtual ISATAP) e verifica o endereço IPv6 do destino. Depois disso, ele descobre que
a rota para o destino é através da rede IPv6; sendo assim, o pacote desencapsulado
(IPv6 nativo) é encaminhado para o roteador R2;
187
11 3: o roteador R2 recebe o pacote IPv6 em sua interface IPv6, mas verificando o endereço
de destino, descobre que ele é destinado ao cliente C2 que está na sua sub-rede ISATAP.
Sendo assim, ele envia o pacote através dessa interface, que encapsula novamente o
pacote IPv6 em um pacote IPv4 e o envia a C2 (baseado no IPv4 que está implícito no
IPv6). O cliente ISATAP C1 recebe o pacote IPv4 e desencapsula o pacote IPv6 (através da
interface virtual ISATAP);
11 4: cliente ISATAP C2 quer responder ao cliente C1; sendo assim, ele verifica a sua tabela de
rotas e conclui que tem de enviar o pacote através da interface virtual ISATAP. Com isso, o
pacote IPv6 é encapsulado em IPv4 e encaminhado ao roteador R2;
11 5: roteador R2 recebe o pacote através de sua interface IPv4, mas como o pacote está
utilizando o protocolo 41, ele desencapsula o pacote IPv6 dele e o encaminha através da
sua interface IPv6, verificando na sua tabela de roteamento;
11 7: C1 recebe o pacote, mas como está encapsulado com o protocolo 41, ele extrai o
pacote IPv6 enviado por C2, e o recebe.
Rede
IPv6
Rede Servidor
IPv4 2 3 IPv6
1
4
Tráfego IPv6
Roteador Nativo
ISATAP
Passos para a comunicação entre clientes ISATAP e computadores IPv6: Figura 10.19
Comunicação entre
11 1: o cliente ISATAP quer enviar um pacote IPv6 para o servidor IPv6. Através de sua tabela clientes ISATAP e
de roteamento, ele descobre que tem de enviá-lo utilizando a interface virtual ISATAP; computadores IPv6.
com isso, o pacote é encapsulado em IPv4 (protocolo 41) e enviado ao endereço IPv4 do
roteador ISATAP;
11 2: o roteador ISATAP recebe o pacote através de sua interface IPv4, mas como o pacote
IPv6 está encapsulado utilizando o protocolo 41, ele o desencapsula (utilizando a interface
virtual ISATAP) e verifica o endereço IPv6 do destino. Depois disso, ele descobre que a rota
IPv6 Básico
para o destino é através da rede IPv6, e sendo assim o pacote desencapsulado (IPv6 nativo)
é encaminhado para o servidor IPv6. O servidor recebe o pacote IPv6 destinado a ele;
11 3: o servidor IPv6 quer responder ao cliente ISATAP; sendo assim, verificando sua tabela de
roteamento, ele descobre que tem de enviar através de sua rota padrão, via a rede IPv6;
188
11 4: como a rota para a rede do cliente ISATAP é através do roteador ISATAP, o pacote é
encaminhado a ele via sua interface IPv6. Verificando em sua tabela de roteamento,
o roteador descobre que deve enviar o pacote através de sua interface virtual ISATAP;
sendo assim, o pacote é encapsulado em IPv4 e encaminhado ao cliente ISATAP através
da rede IPv4. O cliente recebe o pacote IPv4, mas como está utilizando o protocolo 41,
desencapsula e recebe o pacote IPv6.
A+P
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Não Não
Tabela 10.8 Os mecanismos A+P e NAT444, que serão explicados a seguir, não ajudam diretamente na
A+P e os cenários. transição de IPv4 para IPv6, mas têm sido usados na tentativa de prolongar a vida útil do IPv4.
Esses mecanismos podem ser usados, contudo, em conjunto com a implantação nativa do
IPv6, a fim de garantir conectividade IPv4 para os usuários, numa internet em transição,
onde muitos dos serviços disponíveis ainda são somente IPv4.
A técnica Address Plus Port (A+P), que significa “endereço mais porta”, está definida na q
RFC 6346 e compartilha o mesmo endereço público com mais de um usuário, simulta-
neamente. Para isso ser possível é necessária uma limitação das portas que estarão
disponíveis para cada um. É possível fazer a atribuição dos endereços e portas para os
diferentes usuários de forma stateless.
O mesmo IPv4 válido é compartilhado entre diversos usuários diferentes. A CPE é respon-
sável por fazer um NAT na rede do usuário, de forma a atender os dispositivos nela pre-
sentes com IPs privados, da RFC 1918, e obedecer a restrição de portas ao fazer a tradução.
No caso da implantação em redes com dispositivos móveis, como smartphones, estes
devem ser atualizados e estar cientes da restrição de portas.
Essa técnica provavelmente não seria notada por usuários domésticos comuns, pois estes
continuariam com IPs válidos e técnicas atuais como STUN ou uPnP para permitir conectivi-
dade fim a fim, em conjunto com o NAT na rede do usuário, continuariam funcionando.
A figura a seguir demonstra o funcionamento do A+P.
A restrição de portas não é, contudo, adequada para serviços corporativos, pois não
permitiria o uso de servidores em portas padronizadas. O problema pode ser agra-
vado se as portas forem atribuídas de forma dinâmica.
Capítulo 10 - Coexistência e transição – Parte 2
189
Cliente A+P CPE A+P
192.168.0.1 203.0.113.1:3072~4095
Cliente A+P
192.168.0.2
Rede
IPv4 Internet
Provedor IPv4
Cliente A+P
192.168.0.1
CPE A+P
Figura 10.20
Cliente A+P 203.0.113.1:4096~5119
Topologia de
192.168.0.2 rede A+P.
Exemplos práticos da utilização do A+P já foram dados, nos itens que trataram do DS-Lite
com A+P, dIVI e dIVI-pd.A utilização de A+P, se possível, geralmente é preferível à utilização
do NAT444, estudado no item seguinte. É importante lembrar que a utilização dessas técnicas
deve ser sempre acompanhada da implantação do IPv6.
NAT444
Cenário 1 2 3 4 5 6 7 8 9 10
Suporta Não Não Não Não Não Não Não Não Não Não
Assim como o A+P, o NAT444 tem sido usado na tentativa de prolongar a vida útil do IPv4 na Tabela 10.9
internet. Esse mecanismo fere o princípio de comunicação fim a fim da internet e seu uso NAT444 e os
cenários.
deve ser evitado ao máximo. Alternativas que levem as redes na direção de redes somente
IPv6 são preferíveis, assim como alternativas que usem métodos stateless e que mantenham
a complexidade nas extremidades da rede.
l
A utilização dessa técnica resolveria, de forma provisória, o problema da falta de endereços
IPv4, já que eles seriam largamente reutilizados, mas o custo seria comprometer as conexões
fim a fim e possivelmente a “quebra” de diversas aplicações hoje existentes. Se usado, o NAT444
deve acompanhar a
Pode-se argumentar que o NAT já é usado normalmente e que não há prejuízo na utilização implantação do IPv6
nativo para os usuários.
da internet por conta disso. Isso não é verdade. O NAT, na rede dos usuários, por si só, já
Não deve ser usado
é prejudicial, embora tenha desempenhado um importante papel nos últimos anos para a isoladamente.
conservação dos endereços IPv4 na internet. Técnicas como servidores STUN, uPnP e outras
foram desenvolvidas para restaurar, parcialmente, a comunicação fim a fim perdida com
uma camada apenas de NAT. Com o uso de NAT444 elas deixarão de funcionar.
Outro ponto a considerar é que essa técnica é cara, exigindo equipamentos com grande
IPv6 Básico
190
Um ponto a considerar, do ponto de vista estritamente técnico, é a escolha do bloco de IPs
a ser usado no NAT. Como o uso dos blocos da RFC1918 é comum nas redes dos usuários,
qualquer bloco escolhido dentre os disponíveis pelo provedor fatalmente colidirá com
o bloco de algum de seus clientes. Existe uma proposta em estudo para a reserva de
um novo bloco, exclusivo para a utilização em situações onde houver duplo NAT. O ARIN
prontificou-se a ceder o bloco em questão e a proposta está sendo analisada pelo IETF:
draft-weil-shared-transition-space-request-15.
Devido ao rápido esgotamento do IPv4, podem existir situações em que essa técnica terá de
ser utilizada. Seu uso muitas vezes é incentivado por fabricantes de equipamentos, talvez
devido ao alto custo dos equipamentos necessários para sua implementação.
A figura a seguir exemplifica o funcionamento das redes hoje e como ficará o funcionamento
da rede com a utilização do NAT444.
Internet
IPv4
Técnicas de tradução
11 Possibilitam um roteamento transparente na comunicação entre nós de uma rede q
IPv6 com nós em uma rede IPv4, e vice-versa.
11 Utiliza um tradutor localizado na camada de rede da pilha, que converte campos espe-
cíficos dos cabeçalhos de pacotes IPv6 em cabeçalhos de pacotes IPv4 e vice-versa.
191
11 Cabeçalhos TCP e UDP geralmente não são traduzidos. q
11 Usa um endereço IPv4-mapeado em IPv6, no formato 0::FFFF:a.b.c.d, que identifica o
destino IPv4, e um endereço IPv4-traduzido, no formato 0::FFFF:0:a.b.c.d, para identi-
Mais informações: RFC
ficar o nó IPv6. 4966 Reasons to Move
the Network Address
11 Utiliza faixas de endereços IPv4 para identificar nós IPv6.
Translator – Protocol
11 Traduz mensagens ICMPv4 em ICMPv6 e vice-versa. Translator (NAT-PT) to
Historic Status.
Stateless IP/ICMP Translation Algorithm (SIIT), definido na RFC 2765, é um mecanismo de tra-
dução stateless de cabeçalhos IP/ICMP, que permite a comunicação entre nós com suporte
apenas ao IPv6 com nós que apresentam suporte apenas ao IPv4.
Usa um tradutor localizado na camada de rede da pilha, que converte campos específicos
dos cabeçalhos de pacotes IPv6 em cabeçalhos de pacotes IPv4 e vice-versa. Para realizar
Mais informações:
esse processo, o tradutor necessita de um endereço IPv4-mapeado em IPv6, no formato RFC 2765 Stateless IP/
0::FFFF:a.b.c.d, que identifica o destino IPv4, e um endereço IPv4-traduzido, no formato ICMP Translation
Algorithm (SIIT).
0::FFFF:0:a.b.c.d, para identificar o nó IPv6. Quando o pacote chega ao SIIT, o cabeçalho é
traduzido, convertendo o endereço para IPv4 e encaminhando ao nó de destino.
BIS
11 Bump in Stack (BIS) funciona entre a camada de aplicação e a de rede. q
11 Uso para suportar aplicações IPv4 em redes IPv6.
22 Address mapper: possui uma faixa de endereços IPv4 que são associados a ende-
reços IPv6, quando o translator receber um pacote IPv6.
22 Extension name resolver: atua nas consultas DNS realizadas pela aplicação IPv4.
Aplicação IPv4
Resolvedor Mapeador
de nome de de endereço
extensão
Tradutor
IPv6
Figura 10.22
IPv6 Básico
192
Bump in the Stack (BIS) é um método que possibilita a comunicação de aplicações IPv4 com
nós IPv6. Definido na RFC 2767, funciona entre a camada de aplicação e a de rede, adicio-
nando à pilha IPv4 três módulos:
11 Extension name resolver: atua nas DNS queries realizadas pelo IPv4, de modo que, se o
servidor DNS retorna um registro AAAA, o resolver pede ao address mapper para atribuir
um endereço IPv4 correspondente ao endereço IPv6;
11 Address mapper: possui certa quantidade de endereços IPv4 para associar a endereços
Mais informações na IPv6 quando o translator receber um pacote IPv6. Como os endereços IPv4 não são
RFC 2767 – Dual Stack transmitidos na rede, eles podem ser endereços privados. Esse método permite apenas a
Hosts using the
“Bump-In-the-Stack” comunicação de aplicações IPv4 com hosts IPv6, e não o contrário, além de não funcionar
Technique (BIS). em comunicações multicast.
BIA
11 Bump in the API (BIA): similar ao BIS, traduz funções da API IPv4 em funções da API q
IPv6 e vice-versa.
22 Function mapper, que detecta as chamadas das funções do socket IPv4 e invoca as
funções correspondentes do socket IPv6 (e vice-versa).
Aplicação IPv4
TCP/UDP/IPv4 TCP/UDP/IPv6
Figura 10.23
Arquitetura de Driver de identificação de rede
dual stack host
usando BIA.
Bump in the API (BIA) é um mecanismo similar ao BIS, que adiciona uma API de tradução
entre o socket API e os módulos TPC/IP dos hosts de Pilha Dupla, permitindo a comunicação
de aplicações IPv4 com hosts IPv6, traduzindo as funções do socket IPv4 em funções do
socket IPv6 e vice-versa. Conforme descrito na RFC 3338, três módulos são adicionados:
193
extension name resolver e address mapper, que funcionam da mesma forma que no BIS, e o
function mapper, que detecta as chamadas das funções do socket IPv4 e invoca as funções Interface socket
correspondentes do socket IPv6 e vice-versa. Interface de interação
entre os processos
BIA apresenta duas vantagens em relação ao BIS: não depende do driver da interface de de aplicação e as
implementações dos
rede e não introduz overhead na tradução dos cabeçalhos dos pacotes. No entanto, também
protocolos da arquite-
não suporta comunicações multicast. tura TCP/IP no Sistema
Operacional.
TRT
11 Transport Relay Translator (TRT): atua como tradutor de camada de transporte, possi- q
bilitando a comunicação entre hosts IPv6 e IPv4 através de tráfego TCP/UDP.
11 Atua em máquinas com Pilha Dupla que devem ser inseridas em um ponto intermedi-
ário dentro da rede.
Mais informações: RFC
11 Na comunicação de um host IPv6 com um host IPv4, adiciona um prefixo IPv6 falso ao 3338 – Dual Stack
endereço IPv4 do destino. Hosts Using Bump in
the API (BIA).
11 Quando um pacote com esse prefixo falso passa pelo TRT, o pacote é interceptado e
enviado ao host IPv4 de destino em um pacote TCP ou UDP.
Transport Relay Translator (TRT): atuando como um tradutor de camada de transporte, esse
mecanismo possibilita a comunicação entre hosts apenas IPv6 e hosts apenas IPv4, através
de tráfego TCP/UDP. Sem a necessidade de instalação de qualquer tipo de software, o TRT
roda em máquinas com Pilha Dupla que devem ser inseridas em um ponto intermediário
dentro da rede. Na comunicação de um host IPv6 com um host IPv4, conforme definição
na RFC 3142, é adicionado um prefixo IPv6 falso ao endereço IPv4 do destino. Quando um
pacote com esse prefixo falso passa pelo TRT, é interceptado e enviado ao host IPv4 de
destino em um pacote TCP ou UDP. Na tradução TCP e UDP, o checksum deve ser recalcu-
Mais informações na
lado. Apenas no caso de conexões TCP o estado do socket sobre o qual o host está conec- RFC 3142 – An
tado deve ser mantido, sendo removido quando a comunicação for finalizada. Para que o IPv6-to-IPv4 Transport
Relay Translator.
mecanismo funcione de forma bidirecional, é necessária a adição de um bloco de endereços
IPv4 públicos e o uso de um servidor DNS-ALG para mapear os endereços IPv4 para IPv6.
ALG e DNS-ALG
Application Layer Gateway (ALG). q
11 Trabalha como um proxy HTTP.
11 O cliente inicia a conexão com o ALG, que estabelece uma conexão com o servidor,
retransmitindo as requisições de saída e os dados de entrada.
11 Em redes que somente usam IPv6, o ALG habilita a comunicação dos hosts com ser-
viços em redes que apenas usam IPv4, configurando o ALG em nós com Pilha Dupla.
11 Utilizado quando o host que deseja acessar a aplicação no servidor IPv4 está atrás de
NAT ou de um firewall.
DNS-ALG:
IPv6 Básico
11 Traduz consultas DNS do tipo AAAA de um host IPv6, para uma consulta do tipo A,
caso o servidor de nomes consultado se encontre no ambiente IPv4, e vice-versa.
194
Segurança na transição
11 Com a utilização de Pilha Dupla, as aplicações ficam expostas aos ataques a ambos os q
protocolos, IPv6 e IPv4, o que pode ser resolvido configurando firewalls específicos
para cada protocolo.
11 Como se proteger:
Considerações finais
A utilização de Pilha Dupla IPv4 e IPv6 na internet foi imaginada com a técnica padrão para
uma transição sem solução de continuidade na migração para o IPv6. A Pilha Dupla parece
ser, ainda hoje, a melhor escolha para provedores e redes corporativas, desde que não haja
falta de endereços IPv4 válidos e, consequentemente, for possível utilizá-la.
O rápido esgotamento dos endereços IPv4, a existência de equipamentos legados onde não
é possível usar IPv6 e a presença de equipamentos somente IPv6, por falta de IPs v4 livres,
criaram a demanda por outras técnicas de transição. As principais foram apresentadas ao
longo deste texto.
Deve-se considerar, ao escolher a técnica a ser usada em uma rede específica, que a internet
caminha para usar o IPv6. Não há dúvida de que no futuro a internet utilizará majorita-
riamente IPv6 e, possivelmente, somente IPv6. Aqueles que trabalham com redes há pelo
menos pouco mais de uma década viveram outras transições similares, como por exemplo,
quando, em redes corporativas, era comum o uso de IPX/SPX, Netbios, Appletalk e IP con-
comitantemente. A convergência tecnológica é um processo natural. Ela facilita o gerencia-
mento das redes, a interoperabilidade, o desenvolvimento de novas aplicações e serviços,
reduzindo custos, de forma geral. Capítulo 10 - Coexistência e transição – Parte 2
Com isso em mente, os provedores devem planejar-se para atender, daqui a pouco tempo,
seus novos usuários exclusivamente com redes IPv6, de forma nativa. Devem oferecer
paliativamente a eles um IPv4 válido, se houver disponível, ou compartilhado, se necessário.
Isso deve ser feito enquanto houver uma quantidade relevante de dispositivos na internet
que não tenham implantado IPv6. Pode-se fazer isso com auxílio de técnicas de transição
baseadas em túneis, ou tradução, usando a rede que será exclusivamente IPv6.
195
tempo até que tecnologias melhores e mais baratas, do ponto de vista financeiro e computa-
cional, estejam mais maduras. Não é um problema para o qual se possa recomendar soluções
em uma direção, ou outra, genericamente. Cada operador ou usuário na internet deve analisar
sua situação específica e escolher dentre as várias opções possíveis, a melhor para seu caso.
Um dos pontos a considerar na escolha das técnicas de transição a serem utilizadas é se elas
são stateless ou stateful. Técnicas stateless são preferíveis, dado que escalam melhor e são
mais baratas. Se necessário usar técnicas stateful, é preferível que estejam implantadas nos
equipamentos dos usuários e não no provedor.
O NAT444 é uma técnica a ser evitada. Seu uso não leva a rede do provedor em direção ao
IPv6, acarreta altos custos financeiros e dificuldades técnicas para os usuários da internet.
O NAT444 fere o princípio da conexão fim a fim, que foi essencial para o desenvolvimento da
internet nos moldes em que a conhecemos atualmente e é uma das bases que a fazem ser
um ambiente propício à inovação, novas ideias, aplicações, serviços e negócios. O compar-
tilhamento de IPs com restrição de portas (A+P) e NAT44 são soluções preferíveis, adotadas
em conjunto com túneis ou dupla tradução sobre redes nativas IPv6. NAT 64 em conjunto
com DNS 64 e possivelmente ALGs também é uma solução preferível ao NAT444.
Com o compartilhamento de IPs não haverá apenas um usuário associado a um IP num dado
momento, mas sim diversos. Podem ser alguns poucos, dezenas, ou mesmo centenas.
IPv6 Básico
Esse será um problema temporário, resolvido facilmente com a migração dos principais ser-
viços na internet, como portais de conteúdo, de comércio eletrônico, serviços bancários ou
de governo, para IPv6. Paliativamente, no contexto do compartilhamento do IPv4, pode-se
196
propiciar uma possibilidade melhor de identificação, dependendo da técnica utilizada, se
como informação for obtido não apenas o IP, mas também a porta de origem, a partir da
qual a conexão foi realizada. Dessa forma, para aqueles serviços na internet que hoje já
guardam logs dos IPs de origem dos usuários, como bancos e serviços de comércio eletrô-
nico, é recomendado que passem também a guardar as portas de origem, além de implan-
tarem de forma urgente o IPv6.
197
IPv6 Básico
198
11
Planejamento
objetivos
conceitos
Treinamento em IPv6 e análise do impacto do IPv6 na rede.
O planejamento
Após conhecermos um pouco sobre o funcionamento e os novos recursos do protocolo IPv6,
discutiremos neste capítulo alguns conceitos importantes que precisam ser estudados na
hora de implantar IPv6 nas grandes redes de computadores. Devemos compreender todos
os aspectos que envolvem a implantação do IPv6, como análise de custos, troca de material
e treinamento, principalmente em redes corporativas.
Pontos importantes:
Capítulo 11 - Planejamento
11 Essa mudança não ocorrerá apenas porque o protocolo IPv6 apresenta melhorias em
relação ao seu antecessor;
11 O esgotamento dos endereços IPv4 não fará a internet acabar, nem mesmo que deixe
de funcionar;
199
11 Mas deve haver diminuição na taxa de crescimento da rede e dificuldades no desenvolvi-
mento de novas aplicações;
11 Todos esses problemas podem ser evitados com a adoção do IPv6 antes do término do IPv4;
11 A migração do IPv4 para IPv6 acontecerá de forma gradual, com o IPv4 ainda em funcionamento.
É importante que as redes estejam preparadas para o novo protocolo desde já. Quanto mais cedo a
questão for entendida – e a implantação planejada –, menores serão os gastos no processo.
11 Cursos.
11 Livros.
11 Sites.
11 Documentos técnicos.
11 Fóruns.
11 Eventos.
O RIPE NCC oferece alguns vídeos sobre “cases IPv6” que podem servir como fonte RIPE NCC
de conhecimento. Registro Regional
da Internet RIR para
Esses vídeos estão no YouTube, no endereço www.youtube.com/ripencc, alguns com legendas em Europa, Oriente Médio e
português:Randy Bush (Internet Initiative Japan Inc.); Lorenzo Colitti (Google); Marco Hogewoning partes da Ásia Central.
(Dutch ISP XS4ALL); Andy Davidson (NetSumo ISP Consultancy); David Freedman (Claranet).
O impacto do IPv6
11 Como o IPv6 pode afetar os negócios: q
22 Novas aplicações.
22 Novas oportunidades.
22 Novos serviços.
22 IPv6 nativo.
22 Túneis.
33 Roteadores: médio.
33 Firewalls: médio.
200
33 Com softwares (15%): q
33 Softwares de gerenciamento e monitoramento de redes: alto.
33 SOs: médio.
33 Treinamento: alto.
33 Implementação: alto.
33 Manutenção: médio/alto.
33 10 min.: preparação.
11 Gerentes:
11 Técnicos:
33 Capacidade do hardware.
33 Prioridades de negócio.
33 Conhecimento existente/treinamento.
33 Clientes.
33 Legislação.
33 Custo.
33 Timing.
33 Troca de tráfego.
Este exercício foi aplicado no treinamento IPv6 oferecido pelo RIPE a provedores europeus. Algumas
respostas apresentadas pelos técnicos à pergunta “por que investir no protocolo IPv6?” foram:
11 Dispositivos móveis;
11 Obter a alocação agora é um investimento, porque possui muito espaço e nenhum custo;
201
Já a resposta negativa dos gerentes à mesma questão tinha os seguintes argumentos:
11 Empresas que se preocupam com segurança não querem v6 agora, porque hardware e
software não estão maduros;
11 Procedimento de compra.
22 Paridade de funcionalidades.
22 Serviços críticos.
11 Faça testes.
202
Comece fazendo
11 Desenvolva um plano de endereçamento. q
11 Obtenha os endereços.
11 Anuncie-os:
22 Web.
22 DNS autoritativo.
22 Servidores de e-mail.
22 http://registro.br/info/pedido-form.txt
11 Dúvidas: [email protected]
Não faça
11 Não separe as funcionalidades v6 do v4. q
11 Não faça tudo de uma vez.
Considerações
11 IPv4 já não é mais sinônimo de internet. q
11 Evitar o problema não o fará desaparecer.
11 Quanto você está disposto a gastar agora, para economizar dinheiro depois?
203
IPv6 Básico
204
12
O IPv6 na RNP
objetivos
conceitos
Backbone IPv6; troca de tráfego IPv6; distribuição de blocos IPv6; regras de
alocação de endereços IPv6
IPv6 na RNP
11 O projeto entrou em operação em novembro de 2001. q
11 A partir de 2005, o IPv6 tornou-se nativo na rede e trânsito global.
O projeto de IPv6 foi iniciado na RNP em fevereiro de 2001. Entretanto, desde 1998 a RNP
possuía um bloco de endereços de teste, alocado pelo 6Bone. Em setembro de 2001, a RNP
obteve a alocação de um bloco de endereços IPv6 de produção, junto à American Registry
for Internet Numbers (ARIN).
A alocação de endereços IPv6 de produção segue uma política restritiva. A RNP era a única
rede no país que, naquela época, atendia às condições exigidas pela ARIN, tanto pelas suas
características técnicas quanto pelo histórico acumulado de projetos de desenvolvimento
desse protocolo. Na época, a RNP já contava com o apoio do Comitê Gestor da Internet no
Brasil, que considerava a iniciativa relevante para o progresso dos serviços de internet no país.
Inicialmente, esses endereços foram usados numa rede piloto instalada entre os Pontos de
Presença da RNP em São Paulo, Rio de Janeiro, Rio Grande do Norte e Rio Grande do Sul.
Capítulo 12 - O IPv6 na RNP
Posteriormente, a RNP ativou conexões entre essa rede piloto IPv6 e as redes acadêmicas
Internet2 e Renater. Ambas as conexões foram feitas através de túneis IPv6.
O primeiro túnel IPv6 foi estabelecido com a francesa Renater, em 9 de novembro. O túnel
com a Internet2, dos Estados Unidos, foi implementado em 30 de novembro. Essas duas
conexões, constituídas entre redes IPv6 nativas no Brasil e no exterior, permitiram acesso
direto às redes IPv6 norte-americanas e europeias.
205
A partir de 2005, a RNP passou a contar com IPv6 nativo em todos os PoPs do backbone e
também com trânsito global. Dessa forma, a RNP cumpre a meta de prover conectividade O bloco de endereço
IPv6 nativa para seus clientes, conectando todos os estados brasileiros e o Distrito Federal. IPv6 de produção
usado pela RNP
corresponde ao prefixo
Backbone IPv6 na RNP 2001:12F0::/32.
A rede IPv6 nativa utiliza a mesma infraestrutura física usada pela rede IPv4. Todos q
os roteadores funcionam com pilha dupla, ou seja, IPv6 rodando nos mesmos equipa-
mentos da rede de produção IPv4 e rodando nativamente sobre os links de backbone.
Os PoPs, por sua vez, são providos de equipamentos de distribuição que também
possuem recurso de IPv6 nativo para acesso dos clientes. Entretanto, no caso de haver
clientes que não possuam uma conexão nativa IPv6 até o equipamento de distribuição
do PoP, túneis são utilizados para o acesso local IPv6 desses clientes.
O backbone da RNP utiliza o protocolo OSPFv3 para roteamento IPv6 interno, e o BGP4+
(BGP4 com extensão para multiprotocolo), para roteamento IPv6 externo.
A topologia atual do backbone da RNP, chamada rede Ipê, pode ser vista na figura a seguir.
IPv6 Básico
206
Figura 12.1
Backbone RNP.
AMPATH:
Rede Clara:
A Internet2.
RIS:
Dualtec.
CTBC.
Durand do Brasil.
Terremark.
DENIC eG.
ANSP:
A rede Ipê possui diversos peerings para a troca de tráfego IPv6 nativo.
207
Backbone IPv6 RNP – Clientes
Alguns clientes IPv6 da rede Ipê. q
Rio Grande do Sul:
11 Faculdades de Taquara.
Santa Catarina:
Paraná:
Rio de Janeiro:
11 Escritório da RNP.
São Paulo:
Bahia:
Pará:
Distrito Federal:
208
Distribuição de blocos IPv6 na RNP
11 Foi alocada uma rede /47 para a infraestrutura IPv6. q
11 Interfaces LAN do PoP utilizam endereços pré-alocados para cada PoP, segundo um
plano de endereçamento.
A RNP possui quatro blocos /24 para uso na rede de infraestrutura IPv4. De forma equi-
valente, a RNP alocou um bloco /47 para a rede de infraestrutura IPv6. Desse bloco /47,
uma sub-rede /48 é destinada para interfaces nativas e a outra sub-rede /48 é destinada
para interfaces de túnel.
Os endereços IPv6 para as interfaces da rede local de cada PoP também fazem parte do /47
de infraestrutura da RNP. Esses endereços estão contidos em blocos /64 pré-alocados para
cada PoP, conforme plano de endereçamento da RNP. Para cada PoP, foi pré-alocado um
conjunto de 16 redes /64.
11 Cada instituição recebe apenas um bloco IPv6 /48, mas alocações maiores podem
ser estudadas.
As instituições clientes que desejarem ter conectividade IPv6 devem solicitar à RNP uma
faixa de endereçamento IPv6. Caso aprovada, a faixa concedida será colocada em operação
mediante a configuração dos roteadores dos PoPs que as atendem.
209
IPv6 Básico
210
Os autores e colaboradores trabalham no CEPTRO.br, área
do Núcleo de Informação e Coordenação do Ponto BR - NIC.
br, responsável por serviços e projetos relacionados prin-
cipalmente à infraestrutura da Internet no Brasil e ao seu
desenvolvimento. A equipe desenvolve soluções em infra-
estrutura de redes, software e hardware, além de geren-
ciar projetos executados por parceiros externos. Dentre os
projetos coordenados pelo CEPTRO.br, destaca-se o IPv6.br.
Projeto que engloba uma série de iniciativas do NIC.br para
disseminar o uso do protocolo IPv6 no Brasil, oferecendo
cursos presenciais e a distância, desenvolvendo materiais
didáticos, ministrando palestras e mantendo o site web
http://ipv6.br, o blog http://ipv6.br/blog, o validador de
sites web para IPv6 http://ipv6.br/validador e o curso
e-learning http://ipv6.br/curso.
LIVRO DE APOIO AO CURSO
ISBN 978-85-63630-40-7
9 788563 630407