Faculdade de Engenharia da Universidade do Porto Estratégias de Transição de IPv4 para IPv6 Criação de um projecto piloto IPv6 na FEUPnet Tito Carlos S. Vieira 29 Junho 2001 Tito Carlos S. Vieira [email protected] 1 Sumário Evolução do protocolo IP Internet Protocol versão 6 (IPv6) Especificação IPv6 Endereçamento IPv6 Estratégias de transição de IPv4 para IPv6 Dual Stack IP Túneis IPv6 em IPv4 6over4 Cenários de transição de IPv4 para IPv6 Computadores IPv6 isolados numa infra-estrutura IPv4 Uma empresa com ligações externas Uma empresa que utiliza NAT Aplicações dependentes de IPv4 Desenvolvimento Teste e Avaliação Conclusões e Perspectivas futuras Tito Carlos S. Vieira [email protected] 2 Motivação para o IPng As principais restrições do IPv4 são: Número máximo de endereços disponíveis aquém do necessário Tamanho excessivo das tabelas de encaminhamento Aparecimento de novas tecnologias das quais o IPv4 dificilmente tira partido Aparecimento de novos serviços e aplicações Tito Carlos S. Vieira [email protected] 3 Datagrama IPv6 Version Indica a versão do protocolo Priority Indicador da prioridade de datagrama Flow Label Identificador de fluxo Payload Length Indica, em bytes, o tamanho total do datagrama IP excluindo o cabeçalho Next header Identifica o tipo do cabeçalho que se encontra imediatamente após o cabeçalho IPv6 Hop Limit Indica o número máximo de nós intermédios que o pacote pode percorrer até alcançar o destino Source Address & Destination Address Armazenam os endereços dos nó de origem e destino, respectivamente Tito Carlos S. Vieira [email protected] 4 Cabeçalhos de extensão IPv6 Em muitos casos é necessário colocar informação adicional no cabeçalho. Para estas excepções o IPv6 providencia cabeçalhos de extensão A sua presença é indicada pelo valor zero no campo Next header do cabeçalho IPv6 Valor Descrição 0 Hop-by-hop Options Header 43 Routing Header 44 Fragment Header 51 Autenthication Header 59 No Next header 60 Destination Options Header Tito Carlos S. Vieira [email protected] 5 Endereçamento IPv6 Endereços de 128 bitsaumento de um factor de 296 face ao IPv4 Em IPv6 são definidos três tipos de endereços: Unicast - Um identificador para uma única interface Anycast - Um identificador para um conjunto de interfaces. Um pacote enviado para um endereço anycast é entregue apenas a uma interface do conjunto Multicast - Um identificador para um conjunto de interfaces, tipicamente pertencentes a nós diferentes. Um pacote enviado para um endereço multicast é entregue a todas as interfaces do conjunto Tito Carlos S. Vieira [email protected] 6 Representação de endereços 1. A forma preferida é x:x:x:x:x:x:x:x onde os “x” são valores hexadecimais 2. O endereço é formado por oito grupos de 16 bits • Exemplo: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 3. Supressão de zeros Utiliza o símbolo “::” que representa múltiplos de grupos de 16 bits de zeros O símbolo “::” só pode aparecer uma vez num endereço 3. Representação de um ambiente misto de endereços IPv4 e IPv6 Sintaxe: x:x:x:x:x:x:d.d.d.d • “x” valores hexadecimais dos seis grupos de 16 bits de ordem mais alta • “d” valores decimais (endereço IPv4) • Exemplo ::FFFF:129.144.52.38 Tito Carlos S. Vieira [email protected] 7 Endereços Unicast O endereço unicast identifica apenas uma interface Um pacote destinado a um endereço unicast é enviado directamente para a interface especificada pelo endereço Os vários tipos de endereços unicast são: Aggregatable Global Unicast IPv4 compatible NSAP IPX Link Local Site Local loopback Tito Carlos S. Vieira [email protected] 8 Aggregatable Global Unicast Estão organizados em três níveis hierárquicos Topologia pública (Public Topology) – um conjunto de fornecedores que providenciam ou transportam serviços de Internet Topologia do site (Site Topology) – refere-se à topologia local de uma organização, não providencia serviços de transporte para além da organização Identificador da interface (Interface Identifier) – Identifica as interfaces num link Global Tito Carlos S. Vieira Site-Local [email protected] Link-local 9 Aggregatable Global Unicast Formato de Prefixo (FP – Format Prefix) - valor 001. Este campo é usado para identificar o tipo de endereços, por exemplo endereços multicast ou diferentes tipos de endereços unicast. TLA ID (Top Level Aggregator) - Nível mais alto da hierarquia de routing. Na 6bone atribuído o valor 0x1FFE NLA ID - Next level aggregator - Representa os actuais fornecedores de topo na 6bone. São também designados por pTLA (pseudo TLA) SLA ID – Site level aggregator Tito Carlos S. Vieira [email protected] 10 Comparação entre IPv4 e IPv6 Tito Carlos S. Vieira [email protected] 11 Tito Carlos S. Vieira [email protected] 12 Tito Carlos S. Vieira [email protected] 13 Estratégias de transição de IPv4 para IPv6 Tito Carlos S. Vieira [email protected] 14 Objectivos para a transição Consideram-se cinco grandes objectivos para a transição 1. Interfuncionamento entre nós que implementam IPv4 e nós que implementam IPv6 2. Permitir que nós IPv6 sejam adicionados de forma incremental 3. Garantir que a transição seja tão fácil quanto possível para os utilizadores finais, administradores de sistemas e operadores de rede 4. Assegurar um número mínimo de dependências de actualização 5. Garantir um baixo custo de implantação Mecanismos definidos para a transição de IPv4 para IPv6 Dual Stack IP Túneis IPv6 em IPv4 IPv6 over IPv4 Tito Carlos S. Vieira [email protected] 15 Dual Stack IP Tito Carlos S. Vieira [email protected] 16 Túneis IPv6 em IPv4 Objectivo: encapsular pacotes IPv6 em pacotes IPv4, de forma a viabilizar a transmissão sobre a infra-estrutura IPv4 Adicionar um cabeçalho especial IPv4 a um datagrama IPv6 Tito Carlos S. Vieira [email protected] 17 Túneis IPv6 em IPv4 Túnel Configurado O endereço do nó de saída do túnel é determinado com base em informação de configuração Túnel Automático O endereço do nó de saída do túnel é determinado a partir do pacote que vai ser encapsulado Tito Carlos S. Vieira [email protected] 18 IPv6 over IPv4 O objectivo é permitir que nós IPv6 isolados consigam comunicar com outros nós IPv6 utilizando um domínio multicast IPv4 como o seu endereço link-local virtual Os pacotes IPv6 são transmitidos em pacotes IPv4 com o valor 41 como tipo de protocolo O cabeçalho IPv4 contém os endereços de origem e destino Tito Carlos S. Vieira [email protected] 19 Cenários de Transição de IPv4 para IPv6 Cenário 1 – Computadores IPv6 isolados numa infra-estrutura IPv4 pretendem comunicar com uma rede IPv6 Cenário 2 – Uma empresa com ligações externas Cenário 3 – Uma pequena/média empresa que utiliza NAT Cenário 4 – Aplicações dependentes de IPv4 Tito Carlos S. Vieira [email protected] 20 Cenário 1 Solução 1- Exige suporte Descrição 2. Configuração do túnel entre R1 e R2. Os pacotes IPv6 são encapsulados e enviados para R2. de Multicast Dual Stack 6over4 Configuração de túneis Rede IPv4 Rede IPv6 Internet (IPv4) 6over4 túnel Host IPv4 IPv4/IPv6 1. Pacotes IPv6 encapsulados em pacotes IPv4 multicast enviados da interface 6over4 do host para a interface 6over4 do router(R1). Router IPv4 (R1) Router IPv4/IPv6 (R1) Router IPv4/IPv6 (R2) Banco Agência Host IPv6 Banco Central Exigências: Solução 2 – Não requer Multicast • Os nós IPv6 do Banco central precisam de comunicar com todos os outros nós da rede da agência Dual Stack • Não é permitida a utilização de tradutores para garantir a utilização Configuração de túneis Rede IPv4 de segurança e procedimentos de autenticação, das funcionalidades Rede IPv6 Internet (IPv4) disponíveis no IPv6 Túnel Host—R2 • Não são permitidas alterações na rede central do Banco Host Host IPv4/IPv6 IPv4 Router IPv4 (R1) Router IPv4/IPv6 (R2) Tito Carlos S. Vieira [email protected] Host IPv6 21 Cenário 2 Requisitos da migração Hipóteses Site 1 é o principal Sites 2 e 3 já implementam Dual stack IP Algumas aplicações funcionam apenas em IPv4 Necessidade de comunicar com nós apenas IPv6 Necessidade de comunicar com nós apenas IPv4 Minimizar o tráfego IPv4 Site 2 Rede IPv4/IPv6 Site 1 Escritório principal Rede apenas IPv4 Rede IPv4 Site 3 Rede IPv4/IPv6 Tito Carlos S. Vieira [email protected] 22 Descrição do cenário 2 Site 1 (Principal) 5 domínios: 4 Ethernet; 1 Token Ring 2 anéis FDDI A rede não suporta multicasting Os nós do Domínio 5 executam aplicações dependentes de IPv4 Todos os domínios contêm: • Um router que interliga as várias subredes de cada domínio e o backbone • Serviços de DHCP, DNS, Mail e servidores de ficheiros R1 FDDI-01 Domínio 6 Domínio novo R2 R3 R8 Domínio 5 Contém aplicações dependentes de IPv4 FDDI-02 R9 R4 ET H 1 ET H 3 ETH 2 R5 ET H 4 ET H 6 ETH 5 R7 R6 ET H 7 ET H 8 ETH 8 TR-02 TR-03 TR-01 Domínio 1 Domínio 2 Domínio 3 Domínio 4 Tito Carlos S. Vieira [email protected] 23 Transição faseada IPv6 R1 Fase 1 - Routers do backbone Fase 2 - Domínio 1 FDDI-01 Fase 3 - Domínios 2, 3 e 4 Domínio 6 Domínio novo IPv6 Fase 4 - Domínio 5 IPv6 R2 R3 R8 R8 Fase 5 - Domínio 6 Domínio 5 Contém aplicações dependentes de IPv4 Solução 1- Dual stack FDDI-02 em todos os equipamentos R9 Solução 2- Dual stack nosrouters e Bump in the R7 R7 Stack IPv6 R5 R5 R4 ET H 1 DNS ET H 3 DHCP ET ET H H 44 ET ET H H 66 R6 R6 ET ET H H 77 ETH ETH 55 ETH 2 Mail/File Servers Router DNS ET ET HH 88 ETH 8 ETH DHCP Mail/File Servers Domínio 1 Routers Fase 1 Domínio 1 Fase 2 Domínio 2 Domínios 2,3,4 Domínio 5 Fase 3 Fase 4 TR-02 TR-02 TR-03 TR-03 TR-01 TR-01 Domínio 3 Domínio 6 Domínio 4 Fase 5 Tito Carlos S. Vieira [email protected] 24 Cenário 3 Descrição Empresa que possui nove escritórios distribuídos geograficamente em pontos estratégicos Cada escritório contém servidores de DHCP, DNS, E-mail e routers que são utilizados entre escritórios para optimizar o tráfego A rede utiliza um espaço de endereçamento não global, cujos prefixos são 192.168/16 e cada escritório usa um prefixo /24 Tito Carlos S. Vieira [email protected] 25 Cenário 3 Router; DNS;DHCP Valença Router Ponte Lima E-mail DNS;DHCP E-mail Router DNS;DHCP Viana Router DNS;DHCP E-mail E-mail Vila do Conde Router DNS;DHCP E-mail Router Antas (Porto) Router Areosa (Porto) DNS;DHCP E-mail DNS;DHCP Router E-mail DNS;DHCP Matosinhos Sede NAT; DNS Paranhos (Porto) Firewall (Porto) 4 Mbps Maia (Porto) Router DNS;DHCP Gaia E-mail (Porto) E-mail Internet Router DNS;DHCP E-mail Tito Carlos S. Vieira [email protected] 26 Solução para Cenário 3 Fase 3- 4º Valença Valença Fase 3- 3º Ponte Lima Lima Ponte FASE 1 IPv6 na SEDE Fase 3- 2º Viana Viana FASE 2 IPv6 nos escritórios do Porto Fase 3- 1º Vilado do Conde Vila Conde FASE 3 IPv6 nos restantes escritórios Antas FASE 1 Ordem: 2 Ordem: •Router principal •Servidores deSede DHCP Paranhos PORTO •Servidores de DNS (Porto) •Outros servidores: Mail;HTTP; FTP; etc... etc.. •Postos de trabalho FASE 4 (Porto) Areosa (Porto) Matosinhos (Porto) 4 Mbps Maia (Porto) Desactivar IPv4 pela ordem inversa Gaia Internet Sede Escr. Porto Rest. Escrit Fase Final Fase 3 Fase 4 (Porto) Fase 1 Fase 2 Tito Carlos S. Vieira [email protected] 27 Cenário 4 A dependência de aplicações ao IPv4 poderá inviabilizar uma solução totalmente IPv6 Esta dependência não inviabilizará globalmente a utilização de IPv6 Soluções aconselhadas Reescrita das aplicações para suportar IPv6 Existência de uma rede que suporte IPv4 e IPv6 Tito Carlos S. Vieira [email protected] 28 Cenário 4 Solução Ideal: Reescrita das aplicações para suportar IPv6 Descrição do cenário Solução possível (3 fases) Rede suporta IPv4/IPv6 Nós apenas IPv4 IPv4/IPv6 IPv6 IPv4/IPv6 IPv6 FASE 1 Configurar Dual Stack FASE 2 Tradutor (Bump in the Stack) IPv4/IPv6 IPv6 IPv4/IPv6 IPv6 FASE 3 Eliminar o tráfego IPv4 IPv4/IPv6 IPv6 Tito Carlos S. Vieira [email protected] 29 Desenvolvimento Tito Carlos S. Vieira [email protected] 30 Bancada de Testes Equipamento utilizado • 1 router CISCO 2500 • 1 hub com 8 portas • 4 Computadores Sistemas Operativos • Linux RedHat 5.1 • MS Windows (NT e 2000) Tito Carlos S. Vieira [email protected] 31 1- Implementação de IPv6 no Router IOS versão 11.3 Interface “Ethernet 0” • Entradas “IPv6 address” e “IPv6 mtu” • Apenas suporta IPv6 conforme indica a entrada “no ip address” • Prefixo “3FFE:31FF:0:3::/64” Interface “Ethernet 1” • Existência do endereço IPv4 e ausência de endereços IPv6 Comunicações IPv6 pela interface “Ethernet 0” e comunicações IPv4 pela interface “Ethernet 1” Tito Carlos S. Vieira [email protected] 32 2- Implementação de IPv6 em Linux Utilização das recomendações de Peter Bieringer 3- Implementação de IPv6 em Windows 2000 / NT 4 Utilização do protocolo “MSR IPv6 Protocol” Tito Carlos S. Vieira [email protected] 33 Implementação de serviços e protocolos sobre IPv6 DNS Criada a zona ipv6.fe.up.pt Configurado no servidor Linux (tanenbaum) Utilização de “bind” na versão 8.1.2 Campos “AAAA” Configuração • Configuração do ficheiro named.conf • Configuração das zonas • Configuração do reverse das zonas Tito Carlos S. Vieira [email protected] 34 Configuração das Zonas Configuração do Reverse das Zonas Tito Carlos S. Vieira [email protected] 35 Implementação de HTTP Plataforma: Linux Servidor: Apache 1.3 Browser: Chimera Tito Carlos S. Vieira [email protected] 36 Implementação de mecanismos de transição de IPv4 para IPv6 Cenários criados Primeiro: decorre da necessidade de comunicação entre a ilha IPv6 e outros nós IPv4 do campus da FEUP Segundo: baseia-se no propósito de integrar a ilha IPv6 com outras plataformas de investigação IPv6 no resto do mundo Tito Carlos S. Vieira [email protected] 37 Cenário 1 Implementação de Dual Stack Ilha IPv6.fe.up.pt ooloo tanenbaum tito Hub IPv6 IPv6 IPv4 Router Tito Carlos S. Vieira [email protected] 38 Cenário 2 Ligação à 6bone Solicitação do prefixo IPv6 (3ffe:31ff:0:3::/64) Túnel com a FCCN Tito Carlos S. Vieira [email protected] 39 Teste e Avaliação Tráfego na ilha IPv6 Implementação do software MRTG Análises • • • • Anuais Mensais Semanais Diárias Sistema de Monitorização Objectivo: analisar a qualidade da comunicação IPv6 existente na ilha IPv6 da FEUP e entre esta e outros sítios IPv6, no resto do mundo Tito Carlos S. Vieira [email protected] 40 Interface “Ethernet 0” MRTG Interface “Ethernet 1” Tito Carlos S. Vieira [email protected] Trafego Entrada Trafego Saída 41 Sistema de Monitorização Observação das seguintes métricas conectividade taxa de perda de pacotes • Nº de retransmissões tempos de resposta • tempo de contacto com um determinado sistema remoto Utilização de ping para recolher os valores das métricas referidas Verificação:Local; Regional; Nacional; Internacional Tito Carlos S. Vieira [email protected] 42 Os processos de recolha de dados O sistema de monitorização iniciou a recolha de dados em Agosto de 2000 Os dados recolhidos exigiram a implementação de um sistema de análise, de forma a poderem ser lidos melhor e mais facilmente Criação de gráficos de barras que sintetizam a informação das milhares de linhas registadas Criação de uma interface web para a apresentação dos gráficos Tito Carlos S. Vieira [email protected] 43 A página com a informação Tito Carlos S. Vieira [email protected] 44 Resultados Obtidos Tito Carlos S. Vieira [email protected] 45 Conclusões da experimentação As comunicações baseadas em IPv6 são possíveis O IPv6 está disponível para implementação em routers de diversos fabricantes e em diversos sistemas operativos O IPv6 está a criar junto da comunidade técnica uma ligação forte com vista à sua implementação A transição para IPv6 pode fazer-se de forma incremental A utilização de IPv6 não obriga à descontinuação do IPv4 A implementação de IPv6 numa organização não depende nem fica condicionada pela utilização de IPv6 na infra-estrutura do seu ISP O endereçamento de nós IPv6 pode fazer-se automaticamente A organização e constituição dos endereços IPv6 é mais vantajosa e eficiente do que a do seu antecessor IPv4 Tito Carlos S. Vieira [email protected] 46 Conclusões de âmbito global A adopção do IPv6 é (neste momento) irreversível Será desnecessário manter esforços no sentido de prolongar a vida do IPv4 O IPv6 não resolve apenas os problemas de endereçamento do IPv4 Perspectivas Futuras Estudar os aspectos relacionados com segurança, routing e mobilidade em IPv6 Averiguar a possibilidade de implementar IPv6 em algumas salas de informática, da FEUPnet Publicar e editar um livro sobre IPv6 Tito Carlos S. Vieira [email protected] 47 “IPv6 on everything” – IPv6 Forum “IPv4 is in the same state as DOS/Windows 3.1!” – IPv6 Forum US Summit 2000 “Internet is for everyone, everywhere!” “If you think Internet is for everyone everywhere you think IPv6!” Terena 2000 Tito Carlos S. Vieira [email protected] 48