IPv6 (Parte 1: Protocolo e Serviços Básicos) Edgard Jamhour 2002, Edgard Jamhour Problemas do IP Versão 4 • Em 1998: 29,5 milhões de hosts em 190 países. – IPv4 permite endereçar 32 bilhões de hosts. • Esgotamento do espaço de endereçamento pelo uso de classes. – CIDR (Classless Inter Domain Routing) reduziram a pressão por IP´s mas aumentam em demasia as tabelas de roteamento dos backbones na Internet. – Endereços IPv4 privados podem ser utilizados apenas por clientes. • Novas aplicações estão aumentando a necessidade de mais endereços IPv4 para servidores. 2002, Edgard Jamhour Estrutura da Internet - Como as informações são roteadas na Internet? INTERNET Coleção de Roteadores - Quem configura os roteadores da Internet? 2002, Edgard Jamhour Estrutura da Internet • A internet é estruturada na forma de sistemas autônomos: A B C F E G I D SISTEMA AUTÔNOMO 1 H J SISTEMA AUTÔNOMO 2 X Y Z SISTEMA AUTÔNOMO 3 2002, Edgard Jamhour Sistema Autônomo (Autonomous System - AS) • Um AS é uma rede que divulga seus endereços para outras redes da Internet. • Propriedades do AS – Possui os seus próprios IP’s. – Seus endereços independem do provedor de acesso. – Pode conectar-se a vários provedores simultaneamente. Redes pertencentes ao AS Conexão com outro AS F G I H J Conexão com outro AS 2002, Edgard Jamhour Exemplo de AS • Bloco de Endereços do AS: G: 200.17.1.1 H: 200.17.2.1 J: 200.17.3.1 – 200.17.0.0/16 (255.255.0.0) – 200.17.0.0 ao 200.17.255.255 200.17.1.0/24 AS: 200.17.0.0/16 Conexão com outro AS F Conexão com outro AS 200.17.2.0/24 G I H J 200.17.3.0/24 2002, Edgard Jamhour Tipos de AS • Sistemas autônomos podem ser: – Redes Privadas: • Transportam apenas o seu próprio tráfego. – Provedores: • Transportam o tráfego de outras redes. privado público público privado público 2002, Edgard Jamhour Quem usa os endereços do Provedor não é um AS Gateway Default da Rede Corporativa A B C F E G I D H J SISTEMA AUTÔNOMO 2 SISTEMA AUTÔNOMO 1 X Y Z SISTEMA AUTÔNOMO 3 2002, Edgard Jamhour Roteadores na Internet • Os roteadores da Internet são de dois tipos: • Exterior Gateways – Troca informações com roteadores pertencentes a outros AS. – Equipamento muito caro, com alta capacidade de memória. • Interior Gateways – Troca informações apenas no interior do seu AS. – Roteador comum. Gateway Interno F G I H J Gateway Externo 2002, Edgard Jamhour Sistema Autônomo • As rotas na Internet são atualizadas automaticamente. • A estratégia de roteamento no interior do sistema autônomo rede é escolhida pelo administrador do sistema. – IGP: Internal Gateway Protocol • A estratégia de roteamento entre sistemas autônomos é definida por um protocolo de roteamente padrão: – BGP: Border Gateway Protocol 2002, Edgard Jamhour EGP e IGP Conhece todas as rotas da Internet Conhece apenas as rotas no interior do AS 216.1.2.0/24 AS: 216.1.2.0/16 IGP A IGP B IGP IGP F E D G IGP IGP IGP SISTEMA AUTÔNOMO 1 H I IGP J IGP IGP E I AS: 220.2.0.0/16 IGP IGP IGP C IGP EGP SISTEMA AUTÔNOMO 2 220.2.1.0/24 2002, Edgard Jamhour EGP SA3 IGP Y Z • ROTAS • • 200.17.0.0/16 por Z 200.18.0.0/16 por Z IGP X IGP W IGP EGP 200.17.0.0/16 200.18.0.0./16 • ROTAS • • • 210.7.0.0/16 por E 200.17.0.0/16 por E 200.18.0.0/16 por E IGP B IGP E IGP C D F IGP EGP IGP IGP IGP G I IGP J IGP SA2 210.7.0.0/16 SA1 2002, Edgard Jamhour Correção de Rotas • Tabelas de roteamento são alteradas nos gateways quando uma mensagem indica que: – Uma nova rede foi encontrada. – Um caminho melhor para uma rede foi encontrado. – Um caminho considerado anteriormente “melhor” foi degradado. 2002, Edgard Jamhour BGP: Border Gateway Protocol • Função – Troca de informação entre sistemas autônomos • Criado em 1989 – RFC 1267 – Substitudo do EGP • Utiliza mensagens de “update” para informar aos roteadores sobre alterações nas tabelas de roteamento. 2002, Edgard Jamhour BGP Mensagem de UPDATE A BGP B C SISTEMA AUTÔNOMO 4 E F G H D SISTEMA AUTÔNOMO 1 I SISTEMA AUTÔNOMO 2 BGP Speaker SISTEMA AUTÔNOMO 3 PROPAGAÇÃO DAS ALTERAÇÕES 2002, Edgard Jamhour IGP: Internal Gateway Protocol • IGP: Interior Gateway Protocols – RIP e OSPF • RIP: Routing Information Protocol – Utilizado para redes pequenas e médias – Utiliza número de saltos como métrica – Configuração simples, mas limitado. • OSPF: Open Shortest Path First – Utilizado em redes grandes e muito grandes (mais de 50 redes) – Atualiza rotas de maneira mais eficiente que o RIP. 2002, Edgard Jamhour OSPF • OSPF: Open Shortest Path First – Protocolo do tipo IGP – Específico para redes IP • RIP funciona para outros protocolos, e.g. IPX – Ao contrário do que o nome sugere, o algoritmo trabalha com o melhor caminho ao invés do primeiro. 2002, Edgard Jamhour Características do OSPF • Leva em conta o campo TOS (Type Of Service) do IP. • Permite balanceamento de carga. • Permite a divisão da rede em áreas. • Os roteadores trocam mensagens autenticadas. • Flexibilidade na criação de rotas (mascara de subrede variável). 2002, Edgard Jamhour Terminologia OSPF BACKBONE OSPF Area 0.0.0.0 Area 0 N1 R0 Fronteira de Área R1 Area 1 R2 N2 R3 Fronteira de AS R7 R4 Area 2 R6 R5 N1 2002, Edgard Jamhour IPv6 • IPv6: Internet Protocolo, versão 6. – Também denominado IPng (ng: next generation) • Características: 1. Endereçamento hierárquico, baseados em prefixos, permite manter as tabelas de roteamento pequenas e roteamento eficiente no backbone. 2. Mecanismos de autoconfiguração de interfaces de rede. 3. Suporte ao encapsulamento de si mesmo e dos outros protocolos. 2002, Edgard Jamhour Características do IPv6 4. Classe de serviço para distinguir o tipo de dados. 5. Suporte a roteamento multicast aperfeiçoado. 6. Autenticação e criptografia embutidas. 7. Métodos de transição para migrar para IPv4. 8. Métodos de compatibilidade para coexistir e comunicar com IPv4. 2002, Edgard Jamhour Datagrama IPv6 • IPv6 utiliza um formato de datagrama completamente diferente do IPv4. • O cabeçalho do IPv6 é composto de duas partes: – um cabeçalho de tamanho fixo – zero ou mais cabeçalhos de extensão Cabeçalho Base tamanho fixo Cabeçalho Extensão ... Cabeçalho Extensão Dados IPv6 tamanho fixo ou variável Cabeçalho Com todos as funções DADOS IPv4 2002, Edgard Jamhour Cabeçalho IPv6 • A figura abaixo mostra a porção fixa do cabeçalho IP. – O cabeçalho IPv6 tem menos campos que o IPv4 – No total, o IPv6 utiliza um cabeçalho de 40 bytes. byte 1 Version byte 2 Priority Payload length byte 3 byte 4 Flow Label Next Header Hop Limit Source Address (16 bytes) Destination Address (16 bytes) 2002, Edgard Jamhour Cabeçalho IPv6 • Version (4 bits) – Contém o número fixo 6. – Será utilizado pelos roteadores e demais hosts para determinar se eles podem ou não transportar o pacote. IPv4 IPv6 O roteador analisa o campo de versão para determinar como o restante do cabeçalho deve ser interpretado. 2002, Edgard Jamhour Cabeçalho IPv6 • Priority (4 bits) – Utilizado como descritor de tráfego. – 0 a 7: tráfego assíncrono. • a aplicação admite reduzir a taxa de comunicação em caso de congestionamento. – 8 a 15: tráfego em tempo real. • a aplicação precisa manter o atraso constante, mesmo que isso implique em perdas de pacotes. – Quanto menor a prioridade, mais atraso pode ser tolerado: • Exemplo: 1 (News), 4 (FTP), 6 (Telnet), 0 (Não Importa) 2002, Edgard Jamhour Controle de Fluxo • Flow Label (24 bits) – Permite identificar 16 milhões de conexões entre 2 pares de IP. – Permite controlar a banda associada a uma conexão. – O tratamento dado a uma conexão deverá ser pré-definido em cada roteador que participar da rota do datagrama, previamente a comunicação. No IPv6 os roteadores podem diferenciar as conexões. FL=1 IPB IPA FL=2 2002, Edgard Jamhour Cabeçalho IPv6 • Payload Lenght (16 bits) – Indica quantos bytes seguem o cabeçalho fixo de 40 bytes. – O valor é zero no caso do jumbograma. • Next Header (8bits) – Se houver cabeçalhos de extensão, indica o seu tipo. • Atualmente são definidos 6 tipos de cabeçalho de extensão – Se não houverem, indica o cabeçalho de transporte. • Hop Limit (8 bits) – Equivalente ao Time to Live do IPv4. 2002, Edgard Jamhour Cabeçalhos de Extensão • 6 tipos de cabeçalhos de extensão estão definidos atualmente: – Hop-by-hop options (0): • informações para analisadas pelos roteadores – Routing (43) • rota completa ou parcial que a mensagem deve seguir – Fragmentation (44) • Gerenciamento de fragmentos de datagrama – Authentication (51) • Verificação da identidade do transmissor – Encrypted security payload (50) • Informação sobre o conteúdo criptografado – Destination options (60) • Analisadas apenas pelos computadores. – Sem próximo cabeçalho (59) 2002, Edgard Jamhour Comparação com IPv4 • Os seguintes campos do IPv4 foram eliminados do cabeçalho básico IPv6: – Identificação, Flags de Fragmentação e Deslocamento de Fragmento. • O TCP tende a eliminar a fragmentação de datagramas. • Quando necessário pode ser definido num cabeçalho de extensão. • O IPv6 especifica uma MTU de 576 bytes ou mais. – Checksum de Cabeçalho • Eliminado para reduzir a carga na CPU dos roteadores. • Pode ser implementado pelo TCP ou pelo cabeçalho de autenticação. – Tipo de Serviço (TOS) • Substituído pelo conceito de fluxo 2002, Edgard Jamhour Cabeçalhos de Extensão • Os datagramas IPv6 podem ter 0 ou vários cabeçalhos de extensão, conforme mostra o exemplo abaixo: cabeçalho base NEXT = IPv6 (41) Cabeçalho IPv6 cabeçalho base NEXT = TCP segmento TCP cabeçalho base NEXT = ROUTE cabeçalho ROUTE NEXT=TCP segmento TCP cabeçalho base NEXT = ROUTE cabeçalho ROUTE NEXT=AUTH cabeçalho AUTH NEXT=TCP segmento TCP 2002, Edgard Jamhour Hop-by-hop Header • Define opções sobre o datagrama transportado, que todos os roteadores devem analisar (todos os nós IPv6, incluindo o destino). • Formato dos cabeçalhos de extensão: T-L-V (Type – Length – Value) – Tamanho variável • Type (8 bits): XX – Y – ZZZZZ – XX: indica como um nó IPv6 que não reconhece a opção deve proceder. • Ignorar, Descartar em Silêncio, Descartar enviando ICMP – Y: se a opção muda ou não ao longo do trajeto . • Se muda, não incluir no checksum – ZZZZZ: bits que definem a opção • E.G. Exemplo de opção: 194 (Jumbograma) – Suportar datagramas com mais de 64K 2002, Edgard Jamhour Exemplo: Jumbograma indica o tipo de cabeçalho de extensão (hop by hop) indica o tamanho do cabeçalho de extensão (menos 8 bytes que são mandatários) indica a opção “jumbograma” 1 byte 1 byte 1 byte 1 byte Next Header 0 194 4 Tamanho do campo valor, em bytes. Jumbo payload length tamanho do datagrama, valor superior a 64k (até 4 Gbytes) 2002, Edgard Jamhour Destination Options Header • Permite passar informações que devem ser interpretadas apenas pelo destinatário. – É destinado para suportar o desenvolvimento de novos softwares sem causar problemas com os roteadores existentes. – Essa opção permitirá a criação flexível de novos protocolos de roteamento (para os roteadores) e novos protocolos entre usuários finais. 1 byte 1 byte 2 bytes Next Header Length opcoes opcões seqüência de opções individuais. 2002, Edgard Jamhour Routing Header • Indica um ou mais roteadores que devem compor o caminho do pacote até o destinatário. – o caminho completo pode ser especificado (strict routing) – o caminho parcial pode ser especificado (loose routing) Número de saltos restantes (máximo de 23) 1 byte Próximo Cabeçalho 1 byte Tamanho do Cabeçalho 1 byte Tipo (0) Bit map 1 – 24 endereços 1 byte Endereços Restantes indica se cada endereço pertence a uma rota “strict” ou “loose”. 2002, Edgard Jamhour Roteamento strict routing B A 4-ABCDE 3-ABCDE C D 2-ABCDE 1-ABCDE E 0-ABCDE 5-ABCDE-00000 B loose routing A 3-ACE-111 2-ACE 2-ACE C D 1-ACE 1-ACE E 0-ACE 2002, Edgard Jamhour Fragmentation Header • A fragmentação no IPv6 funciona de maneira similar ao IPv4. – Ao contrário do IPv4, o IPv6 só permite efetuar a fragmentação na origem. – Os roteadores não podem fragmentar os pacotes. Se o pacote for muito grande para ser colocado num quadro, ele é descartado pelo roteador e uma mensagem ICMP é enviada de volta ao cliente. 1 byte Next Header 1 byte 13 bits Reservado Fragment Offset 1 bit 1 bit res MF Datagram Identification indica se é o último fragmento ou não. indica a posição do fragmento (múltiplo de 8 bytes). 2002, Edgard Jamhour Autenticação e Criptografia • IPv6 traz funções de segurança que não eram contempladas pelo IPv4. • Essas funções de segurança permitem: – Autenticar quem enviou o pacote para o receptor. – Gerenciar a criptografia dos dados. • O IPv6 assume a utilização de um mecanismo de criptografia baseado em chaves. – Antes que os dados possam ser trocados de forma segura, um contrato, denominado “SECURITY ASSOCIATION (SA)”, deve ser estabelecido entre dois computadores. 2002, Edgard Jamhour Security Association • Num SA, ambos os computadores concordam em como trocar e proteger a informação, definindo: – Tipo de autenticação, Tipo de criptografia, Algoritmo de Criptografia, Tamanho da Chave, etc. • Serviços de rede implementados pelo sistema operacional: – ISAKMP • Internet Security Association and Key Management Protocol • centraliza a administração de associações de segurança, reduzindo o tempo de conexão. – Oakley • Oakley generation protocol. • Gera e gerencia as chaves de segurança utilizadas para proteger a informação. 2002, Edgard Jamhour Security Associations • Os pacotes IPv6 são protegidos de acordo com os critérios definidos em uma Associação de Segurança. Protocolo de Criptografia Algoritmo de Hashing Tamanho da Chave Método de Autenticação Etc. Protocolo de Criptografia Algoritmo de Hashing Tamanho da Chave Método de Autenticação Etc. 2002, Edgard Jamhour Security Parameter Index - SPI • Um servidor pode ter ao mesmo tempo várias associações de segurança diferentes (SA), pois pode manter comunicações seguras com vários usuários ao mesmo tempo. • Um parâtretro de 32 bits denominado SPI é enviado junto como os pacotes IPv6 para indicar qual SA foi usado para proteger a mensagem. IPV6 –SPI1 SA1 SPI1 IPV6 –SPI2 SA2 SPI1 SA1 SPI1 SA2 SPI2 SA3 SPI3 2002, Edgard Jamhour Distribuição de Chaves no IPv6 • Os pacotes IPv6 possuem um campo de 32 bits, denominado “Security Parameter Index”, que indica qual associação de segurança foi utilizada para proteger o pacote. O receptor utiliza esse indicador para determinar como interpretar a informação recebida. Segurança no IPv6 IPv6 IPv6 2002, Edgard Jamhour Autenticação do Transmissor • O princípio de autenticação adotado pelo IPv6 consiste em enviar uma mensagem para o servidor com uma assinatura digital. – A mensagem é o próprio datagrama, pois ele contém o endereço do emissor. Pacote Assinado Cabeçalho de Base Assinatura Digital Dados Cabeçalho extensão 2002, Edgard Jamhour Authentication Header • Permite identificar para o receptor de um datagrama quem foi que o enviou. – Length: • comprimento do cabeçalho em múltiplos de 32. – Security Parameter Index: • identificador de 32 bits, com a SA compartilhada pelo transmissor e pelo receptor. – Authentication Data: • Checksum de 32 bits gerado pelo MD5 (ou outro protocolo) 1 byte Next Header 1 byte Length 1 byte reserved 1 byte reserved Security Parameter Index Authentication Data More Data 2002, Edgard Jamhour Encrypted Security Payload Header • A transmissão de dados criptografados pelo IPv6 é feita através do cabeçalho Encrypted Security Payload. – a chave de criptografia utilizada é definida pelo campo Security Parameter Index. – o algoritmo de criptografia pode ser qualquer, mas o DES CipherBlock Chainin é o default. 1 byte Next Header 1 byte Length 1 byte reserved 1 byte reserved Security Parameter Index Encrypted Payload (dados criptografados) 2002, Edgard Jamhour Endereços IPv6 • Definido pela RFC 2373 – IPv6 Addressing Architecture • Exemplo de Endereço IPv6: – FE80:0000:0000:0000:68DA:8909:3A22:FECA • endereço normal – FE80:0:0:0:68DA:8909:3A22:FECA • simplificação de zeros – FE80 ::68DA:8909:3A22:FECA • omissão de 0’s por :: (apenas um :: por endereço) – 47::47:192:4:5 • notação decimal pontuada – ::192:31:20:46 • endereço IPv4 (0:0:0:0:0:0:0:0:192:31:20:46) 2002, Edgard Jamhour Categorias de Endereço IPv6 • Unicast: – O destinatário é um único computador. • Anycast: – O endereço de destino define um grupo de hosts. O pacote é entregue para qualquer um deles (o mais próximo) • Multicast: – O destinatário é um grupo de computadores, possivelmente em redes físicas distintas. 2002, Edgard Jamhour Categorias de Endereço unicast OU anycast multicast 2002, Edgard Jamhour Classes de Endereço IPv6 Prefix (hexa) Fraction of Address Space Reserved 0::/8 1/256 Unassigned NSAP Allocation … 200::/7 … 1/128 IPX Allocation 400::/7 1/128 Unassigned … … Aggregatable Global Unicast 2000::/3 1/8 Unassigned Addresses … … Link Local Unicast . Addresses FE80::/10 1/1024 Site Local Unicast Addresses FEC0::/10 1/1024 Allocation Multicast Addresses Total Alocado FF00::/8 1 1/256 15% 2002, Edgard Jamhour Endereços Unicast Especiais • Loopback: – ::1 • Não especificado (todos os bits iguais a ‘0’) – :: • Compatível com IPv4 (prefixo de 96 bits ‘0’) – ::AB:CD equivalente a A.B.C.D (e.g. ::0102:0304) • Mapeado (prefixo de 80 bits ‘0’) – ::FFFF:<IPv4> – Permite que hosts IPv6 falem com servidores IPv4 (eg. ::FFFF:0102:0304) • Local ao Enlace: – Endereços de rede física ou enlace (privado não roteáveis) • Local ao Site: – Endereços de redes privada (privado roteáveis) 2002, Edgard Jamhour Aggregatable Global Unicast • Especificado pela RFC 2374 • Endereçamento com três níveis hierárquicos Topologia Pública Topologia Site Interface Rede Organização Individual Site 2002, Edgard Jamhour Aggregatable Global Unicast FP: AGGR 3 FP 001 13 TLA ID 8 TLA NLA Organização SLA SITE SITE Organização BACKBONE BACKBONE Format Prefix (AGGR) TLA ID: Top Level Aggregation Identifier NLA ID: Next Level Aggregation Identifier SLA ID: Site Level Aggregation Identifier Interface ID: Link Level Host Identifier 24 16 RES NLA ID SLA ID 64 Interface ID 2002, Edgard Jamhour Arquitetura Internet IPv4 X IPv6 • O IPv6 prevê 8192 TLA, correspondentes as entradas nas tabelas de roteamento dos roteadores de mais alto nível. • No caso do IPv4, são atualmente mais de 50000 entradas e elas continuam crescendo. • Cada TLA pode controlar até 224 organizações (16 milhões de organizações). • Cada organização pode ter até 216 sites (64K sub-redes). 2002, Edgard Jamhour Backbone IPv6 6bone www.6bone.net Backbone experimental, Organizado pelo IETF. Conta com participantes do mundo todo. TLA: 3FFE::/16 2002, Edgard Jamhour Endereços de Multicast IPv6 • O formato de endereços Multicast IPv6: – PF: valor fixo (FF) – Flags: • 0000 endereço de grupo dinâmico • 1111 endereço de grupo permanente – Escopo: • 1: nó local, 2: enlace local, 5: site local, 8: organização • 14: global. 8 PF 4 Flags 4 112 Escopo ID de Grupo 2002, Edgard Jamhour Endereços Multicast Especiais • RFC 2375 – FF01::1: todas as interfaces do nó (host) – FF02::1: todos os nós do enlace (rede local) – FF01::2 todos os roteadores locais ao nó – FF05::2 todos os roteadores do site – FF02::B agentes móveis locais ao enlace – FF02::1:2 agentes DHCP do enlace – FF05::1:3 servidores DHCP do site – FF02::1::FFxx:xxxx endereço de nó solicitado (formado com os 24 bits de endereço unicast do host). 2002, Edgard Jamhour ICMPv6 • As funções do protocolo ICMP foram estendidas no IPv6. • O ICMPv6 (RFC 1885: Internet Control Message Protocol for IPv6) recebeu também as funções: – De controle das informações de grupos Multicast (feitas pelo IGMPv4) – Da resolução de endereços IPv6 (feitas pelo ARP) • As funções do ICMPv6 também estão descritas na RFC 2461 (Neighbor Discovery for IPv6) 2002, Edgard Jamhour Mensagens ICMP • Identificadas como Next Header = 58 – Tipo: • 0 a 127: erro – Destino inalcançável, pacote muito grande, TTL excedido, problema de parâmetro • 128 a 362: informativas – Echo request, Echo response, Consulta de Adesão ao Grupo, Relatório de Adesão a Grupo, Redução de Adesão ao Grupo, Solicitação de Roteador, Anúncio de Roteador, Solicitação de Vizinho, Mensagem de Redirecionamento, etc. 8 Tipo 8 Código 16 Checksum Corpo da Mensagem 2002, Edgard Jamhour Descoberta de Vizinho • O ICMPv6 permite ao host IPv6 descobrir outros hosts IPv6 e roteadores em seu enlace. • Esse mecanismo permite também ao roteador redirecionar o host para outro roteador caso ele não seja a melhor escolha para rota. – Essa função também existe no IPv4. • A descoberta de vizinhos permite também ao host determinar a cada instante se o destinatário continua acessível (NUD: neighbor unreachability detection). 2002, Edgard Jamhour Resolução de Endereços Host A Host B IP FE80::0800:5A12:3456 IP FE80::0800:5A12:3458 MAC 08005A123456 MAC 08005A123458 Ethernet Host C Host D IP FE80::0800:5A12:3457 IP FE80::0800:5A12:3459 MAC 08005A123457 MAC 08005A123459 2002, Edgard Jamhour Neighbor Solicitation • Comunicação de A para B – A envia uma mensagem de “neighbor solicitation” • Campos do IP – Próximo 58 (ICMP) – Saltos (255) – IP Destino (endereço de nó solicitado: multicast) • ICMP – Tipo 135 (Neighbor Solicitation) – Endereço Alvo: IP do destinatário – MAC de origem 2002, Edgard Jamhour Neighbor Adverstisement – B envia para A um Neigbor Adverstisement • Campos do IP – Próximo 58 (ICMP) – Saltos (255) – IP Destino (endereço de nó A) • ICMP – – – – Tipo 136 (Neighbor Adverstisement) Endereço Alvo: IP de B MAC de origem (o MAC de B) Flags RSO (3 bits) » R Flag Roteador: A resposta foi de um roteador » S Flag Solicitado: O anúncio é resposta a uma solicitação. » 0 Flag SobreEscrito: Solicitação de Atualização da Cache de MAC enviada espotaneamente pelo HOST B. 2002, Edgard Jamhour Descoberta de Roteador e Prefixo • Os roteadores enviam mensagens periodicamente mensagens ICMP denominadas “Router Advertisements” (configurado no roteador) • Essas mensagens permitem: – Descoberta de Prefixo • Permite ao host determinar qual o intervalo de endereços IP dos hosts da mesma LAN que ele. – Descoberta de Roteador • Permite ao host determinar, quando o destinatário não pertence a sua rede, para qual roteador o pacote deve ser enviado. 2002, Edgard Jamhour Router Advertisement • Campos do IP: – Next Header: 58 (ICMP) – Saltos: 255 – Endereço de Destino: • Multicast Especial (todos os nós do enlace): FF02:1 • Campos do ICMP: – Tipo: • 134 (router adverstisement) – Flags: • M e O: Utilizados na configuração de endereços sem estado. – Tempo de Vida do Roteador • Tempo em ms que o roteador deve ser considerado disponível sem outra mensagem de router adverstisement. 2002, Edgard Jamhour Router Advertisement • Campos do ICMP (continuação): – Tempo de Vida do Roteador • Tempo em ms que o roteador deve ser considerado disponível sem outra mensagem de router adverstisement. – Tempo Atingível • Configura os hosts com o tempo em ms que os hosts podem guardar as respostas de vizinhos na cache. – Tempo de Restransmissão • Configura os hosts com o tempo em ms que eles devem aguardar para retransmitir as mensagens de solicitação de vizinho quando não há resposta. – Opção 1: • MAC do roteador – Opção 2: • MTU do enlace – Opção 3: • Prefixo para o Enlace 2002, Edgard Jamhour Router Solicitation • Um host que queira descobrir um roteador acessível no enlace sem aguardar a próxima mensagem de router advertisement pode enviar uma mensagem de router solicitation. • Essa mensagem ICMP (tipo 133) é enviada ao endereço de multicast: – Todos os roteadores do enlace: FF02::2 • O roteador que recebe a mensagem responde com uma mensagem de router advertisement diretamente para o nó solicitante. 2002, Edgard Jamhour Redirecionamento • Pelas mensagens de “router advertisement” um host pode aprender sobre a existência de mais de um roteador na rede. • Nesse caso, quando ele envia a mensagem ele pode escolher o roteador errado (como gateway default). • Se o roteador não for o melhor posicionado para fazer a entrega ele envia uma mensagem Redirect (ICMP tipo 137) informando ao host sobre a existência de uma rota melhor para o destino. • Ao receber a mensagem, o host atualiza sua tabela de roteamento. 1 2 A B Router adverstisement 2002, Edgard Jamhour Autoconfiguração de IP sem Estado • Atribuição automática de IP na inicialização de uma interface pode ser feita de duas formas. – Stateful: via DHCP – Stateless: via ICMPv6 (RFC 1971) • O processo stateless envolve os seguintes passos: – 1. O host cria um endereço de enlace local: • FE80::/10 combinando com seu endereço MAC – 2. O host verifica se o endereço já existe com uma mensagem de neighbor advertisement. Se já existir, a autoconfiguração falhou. – 3. O host envia mensagens de solicitação de roteador, se nenhum responder, o host tenta DCHP, se nenhum responder, ele se comunica apenas no interior do enlace. 2002, Edgard Jamhour Autoconfiguração de IP sem Estado (continuação) – 4. Se o host receber uma mensagem de router advertisement: • Se o flag M estiver setado (endereço gerenciado): – O nó deve solicitar seu endereço via DHCP • Se o flag O estiver setado (outras configuração de estado): – O nó deve obter também as demais informações de configuração de rede via DHCP. • Se o flag A estiver setado – O host autoconfigura seu endereço sem DHCP • Opção de Prefixo: – Se o flag A estiver setado, o host reconstrói seu endereço utilizando o prefixo recebido e seu endereço MAC. 2002, Edgard Jamhour DNS no IPv6 • Foram definidas extensões no DNS para suportar IPv6 (RFC 1886). • As extensões definem: – Um registro AAAA para mapear host IPv6 em nomes de domínio. – Um novo domínio para consultas do tipo endereçodomínio (zona reversa – registros PTR). – Mudança nas consultas existentes para efetuar processamento correto das consultas A e AAAA. 2002, Edgard Jamhour Zona IPv6 Reversa • Por exemplo, • se o host – www6.ppgia.pucpr.br • possui o endereço: – 222:0:1:2:3:4:5678:9ABC • A entrada no arquivo de zona reversa será: C.B.A.9.8.7.6.5.4.0.0.0.3.0.0.2.0.0.1.0.0.0.0.0.0.0.2.2.2.2.IPv6.INT PTR www6.ppgia.pucpr.br. 2002, Edgard Jamhour Mudança no Formato dos Registros • O formato hierárquico de endereços IPv6 permite que uma organização troque de prefixo de público (TLA ou NLA) sem grandes alterações na rede. • Todavia, utilizando a construção dos arquivos de zona padrão, a atualização das entradas dos arquivos de zona no caso da mudança de prefixo seria muito grande. • Por isso uma nova proposta de representação de nomes de domínio associada a prefixos foi definida para o IPv6 : • RFC 2874: DNS Extensions to Support IPv6 Address Aggregation and Renumbering 2002, Edgard Jamhour Definição do Registro AAAA • Um entrada de registro AAAA seria definida da seguinte maneira: – Dominío do Host – AAAA – Endereço IPv6 – P – Nome de Domínio do Prefixo • Onde: – O endereço IPv6 contém apenas os bits de menor ordem que independem do prefixo. – P é o tamanho do prefixo. 2002, Edgard Jamhour Exemplo (ip6.top1.com) TLA: 2111/16 (ip6.top2.com) TLA: 2122 (ip6.prov1.com) NLA: 00AB/32 (ip6.prov2.com) NLA: 00BC Mudança de Provedor (ip6.ppgia.pucpr.br) 00A1/16 (ip6.ppgia.pucpr.br) 00B1/16 (www6) Interface: 0000:1000:5A12:3456 (www6) Interface: 0000:1000:5A12:3456 2111:00AB:00A1::1000:5A12:3456 3 FP 001 13 TLA ID 8 24 RES NLA ID 16 SLA ID 64 Interface ID 2002, Edgard Jamhour Configuração do Arquivo de Zonha • Antes da mudança de provedor • www6.ppgia.pucpr.br AAAA ::1000:5A12:3456 80 ip6.ppgia.pucpr.br • ip6.ppgia.pucpr.br AAAA 0:0:00A1:: 32 ip6.prov1.com • ip6.prov1.com AAAA 0:00AB:: 16 ip6.top1.com • ip6.top1.com AAAA 2111:: • ip6.prov2.com AAAA 0:00BC:: 16 ip6.top2.com • ip6.top2.com AAAA 2122:: • Para efetuar a mudança de provedor basta mudar um único registro: • ip6.ppgia.pucpr.br AAAA 0:0:00A1:: 32 ip6.prov2.com 2002, Edgard Jamhour