Qual campo da mensagem neighbor solicitation identifica a máquina de destino?

Últimas atualizações:
22/04/2009 – 08:17
07/07/2009 – 07:17

Introdução

Às vésperas do primeiro curso presencial de IPv6, oferecido pelo Nic.br, seguem abaixo anotações retiradas dos cursos do projeto 6DEPLOY (veja aqui) e do Introdução ao IPv6, do próprio Nic.br.

A organização segue o esquema dos dois cursos acima e tem a intenção de servir como referência rápida, sem profundidade. Serão completadas nos próximos dias.

Considerações iniciais

  • O IPv6 é um novo protocolo e não uma atualização do IPv4! Seu projeto levou cerca de 10 anos.
  • Há uma espectativa de os estoques de IPv4 da IANA se esgotem entre 2010 e 2012. Dos registros regionais (no nosso caso, o LACNIC), não durem mais do que 3 anos.
  • Medidas do IPv4:
    • 32 bits
    • 4.294.967.296
  • Medidas do IPv6:
    • 128 bits
    • 340.282.366.920.938.463.374.607.431.768.211.456 => 2128 => 79 trilhões de trilhões de vezes a disponibilidade do IPv4 ~= 5,6 x 1028 endereços por ser humano.
    • Reserva metade dos bits para enderaçamento local => 18.446.744.073.709.551.616 ou 264 redes disponíveis.
  • O IPSec é obrigatório no IPv6.
  • O ICMP foi modificado, com a inclusão de mecanismos de autoconfiguração de endereços, descoberta de endereços (Neighbour Discovery) e gerenciamento de grupos multicast.
  • Implementado o suporte a conexões móveis criando facilidades para permitir que um usuário se desloque de uma rede para outra sem necessidade de alterar seu IP.
  • A fragmentação de pacotes no IPv6 passa a ser feito apenas na origem tornando rápido o roteamento.
  • Mecanismos de transição: tunelamento, tradução e pilha dupla.
  • Política de distribuição de blocos IPv6:
    • A IANA distribui um bloco /12 para cada RIR.
    • Os RIRs distribuem blocos /32 para cada provedor.
    • Os provedores devem distribuir blocos variando de /48 a /56, para seus clientes. Um bloco /48 pode ser dividido em até 65.536 redes diferentes, cada uma com 18.446.744.073.709.551.616 endereços diferentes. Um bloco /56 pode ser dividido em até 256 redes diferentes, cada uma com 18.446.744.073.709.551.616 endereços diferentes.
    • Um usuário pode receber um bloco /64.
  • Sistemas operacionais com suporte a IPv6:
    • BSD: FreeBSD desde a versão 4.0. O NetBSD desde a versão 1.5 (2000). O OpenBSD desde a versão 2.7.
    • Linux: desde a versão 2.1.8 do Kernel, com grandes limitações. Suporte estável a partir da versão 2.2.x.
    • MAC OS X: Desde a versão 10.2 Jaguar. Já vem habilitado por padrão.
    • Windows: Primeira versão no SP1. Versões XP SP2 e SP3, Vista, 2003 Server, 2008 Server e SE já estão com a versão mais aprimorada.
  • Equipamentos de rede com suporte a IPv6:
    • 3com: Desde 1997. NetBuilder desde a versão 11.0. Switches PathBuilder 5500 já possuem suporte IPv6.
    • Alcatel-Lucent: SR-OS, utilizado nos roteadores 7750SR e 7710SR possui suporte a diversas funcionalidades do IPv6.
    • Cisco: A partir da versão 12,0(21) ST do Cisco IOS (2001).
    • Hitachi: Desde 2001 os roteadores GR2000 da família Gigabit Router.
    • Juniper: Desde a versão 5.1 do JUNOS (2001) nos roteadores T-Series e M-Series
  • Cabeçalho do IPv6

    Qual campo da mensagem neighbor solicitation identifica a máquina de destino?

    igura 1. Cabeçalho do IPv6 (Fonte: Curso IPv6 On-line Nic.br)

    • Descrição dos campos do cabeçalho IPv6:
      • Versão: Campo de identificação de versão do protocolo IP utilizado (valor: 6). Tamanho: 4 bits.
      • Class de Tráfego: Define as diferentes classes e prioridades dos pacotes IPv6. É a referência básica do mecanismo de QoS. Tamanho: 20 bits
      • Identificador de Fluxo: Identifica e diferencia sequências de pacotes pertencentes ao mesmo fluxo de dados, que necessitem do mesmo tratamento. Torna eficiente a atividade dos roteadores. Tamanho: 20 bits.
      • Tamanho dos dados: Volume de dados, em bytes, que o pacote transporta. Tamanho: 16 bits.
      • Próximo Cabeçalho: Tipo de iinformação que se segue ao cabeçalho. Tamanho: 16 bits. Poderá ser um pacote da camada de transporte (TCP/UDP) ou um dos cabeçalhos de extensão, cujos valores possíveis são mostrados na tabela abaixo.
    Valor Nome do cabeçalho Definição
    0 Hop-by-Hop Transporta informações opcionais que são processadas em cada nó ao longo do caminho do pacote, incluindo a origem e o destino.
    60 Destination Options Transporta informações opcionais que são processadas apenas pelo destino final do pacote.
    43 Routing Suporte à mobilidade. Armazena o endereço original de um nó móvel (Type 2).
    44 Fragmentation Utilizado pela origem para enviar pacotes maiores do que o MTU de um caminho. Vale lembrar que no IPv6, a fagmentação ocorre na origem e são reagrupados no final.
    51 Authentication Utilizado pelo serviço IPSec para prover autenticação e garantia de integridade aos pacotes.
    50 Encapsulation Security Payload Utilizado pelo IPSec, também. identifica integridade e confidencialidade aos pacotes.
    • A ordem acima deve ser respeitada pelo nó de origem. Já o nó de destino deve ser capaz de entender os cabeçalhos em qualquer ordem.
    • Se o campo Endereço de Destino tiver um endereço multicast, os cabeçalhos de extensão serão examinados por todos pertencentes ao grupo multicast.
    • O cabeçalho Mobility pode ser usado pelos nós que possuírem suporte à mobilidade.
    • OBS: O espaço reservado para o endereçamento, 128 bits, permite gerar 3,4 x 1038 endereços distintos.
  • Limite de encaminhamento: Número máximo de roteadores pelos quais o pacote pode passar, antes de ser descartado. Tamanho: 8 bits
  • Endereço de origem do pacote. Tamanho: 128 bits
  • Endereço de destino do pacote. Tamanho: 128 bits
  • Informações adicionais são tratadas através dos cabeçalhos de extensão, localizados entre o cabeçalho base (descrito acima) e o cabeçalho da camada de transporte. Não há limites quanto à quantidade de cabeçalho de extensão em um mesmo pacote.
  • Endereçamento

    • O endereçamento é representado por oito grupos de 16 bits, separados por : e escritos em hexadecimal:

      FEDC:0034:0000:0000:0012:0000:0ABC:00FF
      FEDC:34:0:0:12::ABC:FF
      fedc:0034::0012:0:0ABc:00FF

    • Permitida a representação CIDR: FEDC:34::/48 ou FEDC:34:0:0:12::ABC:1A/64
    • Endereços de qualquer tipo podem ser atribuídos a uma interface. Uma interface pode compartilhar mais de um endereço, que pode ser de qualquer tipo.
    • Endereços do tipo broadcast não existem mais. Mas a funcionalidade do broadcast é provida pelos endereços multicast.
    • Tipos de endereços:
      • Unicast: Endereços que indentificam uma interface unívocamente e, com os seguintes tipos:
        • Global unicast: é a versão pública do endereçamento e, portanto, disponível na Internet IPv6. Seu formato possui sete campos: o prefixo de 3 bits (001); um identificador TLA (Top-Lever Aggregation); um campo reservado (RES); um identificador NLA (Next-Level Aggregation); um identificador SLA (Site-Lever Aggregation); o identificador da interface (interfaceID). Abaixo uma representação sumária:
          3 13 8 24 16 64
          FP TLA ID RES NLA ID SLA ID InterfaceID
        • Link-local: atribuídos automaticamente e válidos apenas dentro do mesmo enlace. É identificado por FE80::/64 (64 bits reservados para identificar uma interface).
        • Unique-local: Identificados pelo prefixo FC00::/7, seguidos de um ID global único de 40 bits, gerado randomicamente e, não roteáveis na Internet.
        • Mapeamento IPv4: Utilidados para representar um endereço IPv4 como endereço IPv6 e somente disponível na etapa de transição (quando a Internet for completamente IPv6). Seu formato é: ::FFF:wxyz, onde wxyz é o IPv4 convertido em hexadecimal.
        • Loopback: Identifica a própria interface (interface local) => ::1.
        • Unspecified: indica a ausência de endereço => ::.
      • Anycast: utilizado para identificar um grupo de interfaces pertencentes a nós diferentes. Um pacote destinado a um endereço anycast é enviado apenas para a interface deste grupo mais próxima da origem.
        • Há um consenso de que a experiência com endereços anycast ainda é pequena e, até que ela cresça o suficiente, as seguintes restrições foram recomendadas: (a) um endereço anycast NÃO PODE ser utilizado como endereço de origem de qualquer pacote IPv6; (b) um endereço anycast SÓ PODE ser associado a roteadores.
        • Há um formato para definir endereços anycast. O prefixo da sub-rede no endereço, identifica um link específico. Este endereço anycast é sintáticamente o mesmo do endereço unicast, só que com os bits do identificador da interfaze zerados, como mostrado a seguir:
          n bits (128 – n) bits
          prefixo da subrede 00000000000
      • Multicast: semelhante ao endereço anycast. Identifica um grupo de interfaces ou um grupo de nós. Um pacote destinado a um endereço multicast é enviado para TODAS as interfaces do grupo.
        • Um nó pode pertencer a mais de um grupo multicast.
        • A implementação nativa do multicast no IPv6 elimina a necessidade de criar túneis MBone (Multicasting Backbone), já que todos os hosts e roteadores implementam o endereço multicast.
        • O endereço multicast usa o bloco reservado FF00::/8, onde o octeto que segue o prefixo FF contêm quatro flags que determinam o tempo de vida do pacote 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.
        • A facilidade do broadcast pode ser utilizada através do prefixo FF02::1 referenciando todos os nós de um link multicast.
        • O formato dos endereços multicast é o seguinte:
          8 4 4 112
          111 111 flags escopo grupo ID
        • Na tabela acima, o camplo flags tem o formato 000T, onde T indica um endereço multicast permanentemente alocado. T=1 indica um endereço temporário. O campo escopo limita o escopo dos endereços multicas e assume alguns valores representando endereços multicast node-local, site-local, link-local, organization-local, global, etc.
    • Alocação do espaço de endereçamento: O prefixo definido pelos primeiros bits do endereço indica cada tipo de endereço IPv6. O campo variável que compreende esses bits é denominado Format Prefix (FP). A alocação de todo espaço de endereçamento, disponível em [2] e [3], é mostrado na tabela abaixo:
      Prefixo Fração do espaço total de endereçamento Alocação
      0000 0000 1/256 Não alocado (inclui alguns endereços especiais)
      0000 0001 1/256 Não alocado
      0000 001 1/128 Reservado para Alocação NSAP
      0000 01 1/64 Não alocado
      0000 010 1/128 Reservado para Alocação IPX
      0000 01 1/64 Não alocado
      0000 1 1/32 Não alocado
      0001 1/16 Não alocado
      001 1/8 Global unicast
      010 1/8 Não alocado
      011 1/8 Não alocado
      100 1/8 Não alocado
      101 1/8 Não alocado
      110 1/8 Não alocado
      1110 1/16 Não alocado
      1111 0 1/32 Não alocado
      1111 10 1/64 Não alocado
      1111 110 1/128 Não alocado
      1111 1110 0 1/512 Não alocado
      1111 1110 10 1/1024 Unicast: Link-local
      1111 1110 11 1/1024 Unicast: Site-local
      1111 1111 1/256 Multicast

    Serviços básicos

    ICMPv6

    • O ICMPv6 é utilizado para: informar características da rede, realizar dignoósticos e relatar erros no processamento de pacotes.
    • Isso é feito através da troca de duas classe de mensagens ICMPv6: mesagens de erro e mensagens de informação.
    • O cabeçalho do ICMPv6 é o seguinte:

      Qual campo da mensagem neighbor solicitation identifica a máquina de destino?

      Figura 1. Cabeçalho do IPv6 (Fonte: Curso IPv6 On-line Nic.br)

    • Descrição dos campos do cabeçalho:
      • Tipo: tipo da mensagem. Tamanho: 8 bits.
      • Código: informações adicionais para determinados tipos de mensagens. Tamanho: 8 bits.
      • Soma de Verificação: utilizado para detectar dados corrompidos no cabaçalho ICMPv6 e em parte do cabaçalho IPV6. Tamanho: 16 bits.
      • Dados: informações de diagnóstico e erro, de acordo com o tipo de mensagem. Tamanho: variável, de acordo com a mensagem.
    • O ICMPv6 incorpora funções de outros protocolos como o ARP/RARP e IGMP (Internet Group Management Protocol). Tais protocolos são importantes para:
      • Descoberta de Vizinhança
      • Gerenciamento de Grupos Multicast
      • Mobilidade
      • Descoberta do Path MTU
    • Mensagens de erro
      Tipo Nome Descrição
      1 Destination Unreachable Indica falhas na entrega do pacote como endereço ou porta desconhecida ou problemas na comunicação.
      2 Packet too big Indica que o tamanho do pacote é maior que a MTU de um enlace.
      3 Time Exceeded Indica que o Limite de Roteamento ou o tempo de remontagem do pacote foi excedido.
      4 Parameter Problem Indica erro em algum campo do cabeçalho IPv6 ou que o tipo indicado no campo Próximo Cabeçalho não foi reconhecido.
      100-101 Uso experimental.
      102-126 Não usado.
      127 Reservado para expansão das mensagens de erro ICMPv6.
    • Mensagens de informação:
      Tipo Nome Descrição
      128 Echo Request Utilizada pelo comando ping
      129 Echo Reply Utilizada pelo comando ping
      130 Multicast Listener Query Utilizada no gerenciamento de grupos multicast.
      131 Multicast Listener Report Utilizada no gerenciamento de grupos multicast.
      132 Multicast Listener Done Utilizada no gerenciamento de grupos multicast.
      132 Multicast Listener Done Utilizada no gerenciamento de grupos multicast.
      133 Router Solicitation Protocolo de Descoberta de Vizinhança, para que hosts requisitem aos roteadoresas mensagens de Router Advertisements imediatamente.
      134 Router Adivertisement Protocolo de Descoberta de Vizinhança, enviadas peridodicamente ou em resposta a uma Router Solicitation. São utilizadas pelos roteadores para anunciar sua presença em um enlace e na Internet.
      135 Neighbor Solicitation Protocolo de Descoberta de Vizinhança: mensagem multicast enviada por um nó para determinar o endereço MAC e a acessibilidade de um vizinho, além de detectar a existência de endereços duplicados.
      136 Neighbor Advertisement Protocolo de Descoberta de Vizinhança: mensagem enviada como resposta a um Neighbor Solicitation. Pode também ser enviada para anunciar a mudança de algum endereço MAC dentro do enlace.
      137 Redirect Message Protocolo de Descoberta de Vizinhança: utilizada por roteadores para informar ao host, um roteador mais indicado para se alcançar um destino.
      138 Router Renumbering Utilizada no mecanismo de Re-endereçamento (Renumbering) de roteadores.
      139 ICMP Node Information Query Utilizada para descobrir informações sobre nomes e endereços, são atualmente limitadas a ferramentas de diagnóstico, depuração e gestão de redes..
      140 ICMP Node Information Response Utilizada para descobrir informações sobre nomes e endereços e são atualmente limitadas a ferramentas de diagnóstico, depuração e gestão de redes.
      141 Inverse Neighbor Discovery Solicitation Message Utilizada em uma extensão do protocolo de Descoberta de Vizinhança.
      142 Inverse Neighbor Discovery Advertisement Message Utilizada em uma extensão do protocolo de Descoberta de Vizinhança.
      143 Version 2 Multicast Listener Report Utilizada no gerenciamento de grupos multicast.
      144 Home Agent Address Discovery Request Message Utilizada no mecanismo de Mobilidade IPv6.
      145 Home Agent Address Discovery Reply Message Utilizada no mecanismo de Mobilidade IPv6.
      146 Mobile Prefix Solicitation Utilizada no mecanismo de Mobilidade IPv6.
      147 Mobile Prefix Advertisement Utilizada no mecanismo de Mobilidade IPv6.
      148 Certification Path Solicitation Message Utilizada pelo protocolo SEND.
      149 Certification Path Advertisement Message Utilizada pelo protocolo SEND.
      150 Utilizada experimentalmente com protocolos de mobilidade como o Seamoby.
      151 Multicast Router Advertisement Utilizada pelo mecanismo Multicast Router Discovery.
      152 Multicast Router Solicitation Utilizada pelo mecanismo Multicast Router Discovery.
      153 Multicast Router Termination Utilizada pelo mecanismo Multicast Router Discovery.
      154 FMIPv6 Messages Utilizada pelo protocolo de mobilidade Fast Handovers.
      200-201 Uso experimental.
      255 Utilizado para expansão das mensagens de erro ICMPv6.

    Protocolo de Descoberta de Vizinhança (Neighbor Discovery)

    • Utilizado por hosts e roteadores para:
      • Determinar o endereço MAC dos nós da rede.
      • Encontrar roteadores vizinhos
      • Determinar prefixos e outras informações de configuração da rede.
      • Detectar endereços duplicados.
      • Determinar a acessibilidades dos roteadores.
      • Redirecionamento de pacotes.
      • Autoconfiguração de endereços.
    • As mensagens de informação do ICMPv6 com tipos 133 a 137 são usadas pelo protocolo de Descoberta de Vizinhança e possuem o valor 255 no campo Limite de Roteamento do cabeçalho IPV6. Tal valor garante que as mensagens serão originadas de um nó do mesmo enlace. Portanto, as mensagens com valores diferentes são descartadas. Tais mensagens podem ainda, conter as seguinte opções:
      Mensagem Atribuição
      Source link-layer address Utilizada em mensagens Neighbor Solicitation, Router Solicitation e Router Advertisement. Nele está o endereço do remetente do pacote.
      Target link-layer address Utilizada nas mensagens de Neighbor Advertisement e Redirect. Contém o endereço de destino do pacote.
      Prefix information Fornece aos hosts os prefixos do enlace e os prefixos para que o endereço seja autoconfigurado. Utilizada em mensagens Router Advertisement.
      Redirected header Utilizada nas mensagens Redirect. Essa mensagem contém todo ou parte do pacote de redirecionamento.
      MTU Utilizada em mensagens Router Advertisemente. Essa opção garante que todos os nós em um enlace usem o mesmo valor de MTU.
    • Funcionalidades:
      • Descoberta de endereço da Camada de Enlace: Utlizada para determinar o endereço MAC dos vizinhos do mesmo enlace, onde um host envia uma mensagem Neighbor Solicitation informando no campo de Dados seu endereço MAC e também solicitando o endereço MAC do vizinho. Ao receber a mensagem, o vizinho a responde enviando uma mensagem Neighbor Advertisement informando seu endereço MAC.
      • Descoberta de Roteadores e Prefixos: Utilizada para localizar roteadores vizinhos dentro do mesmo enlace, bem como aprender prefixos e parâmetros relacionas à autoconfiguração de endereço. A descoberta de roteadores e prefixos é realizada através da recepção de uma mensagem Router Advertisement enviada a partir de um roteador local para o endereço multicas all-nodes.
      • Detecção de Endereços Duplicados:
      • Detecção de Vizinhos Inacessíveis: Mecanismo utilizado na comunicação host-a-host, host-a-roteador e roteador-a-host para rastrear a acessibilidade dos nós ao longo do caminho. Um nó considera um vizinho acessível se ele recebeu recentemente a confirmação de entrega de algum pacote a esse vizinho. Essa confirmação pode ser uma resposta a uma mensagem do protocolo de Descoberta de Vizinhança ou algum processo da camada de transporte que indique que uma conexão foi estabelecida. Este processo apenas é executado quando os pacotes são enviados a um endereço unicast, não sendo utilizado no envio para endereços multicast. Para acompanhar os estados de um vizinho, o nó IPv6 utiliza as seguintes tabelas:
        • Neighbor Cache: mantem 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 um 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 a próxima vez que um evento de detecção de vizinhos inacessíveis está agendado.
        • Destination Cache: mantem informações sobre destinos para os quais foi enviado tráfego recentemente, incluíndo tanto destinos locais quanto remotos, sendo atualizado com informações recebidas por mensagens Redirect. O Neighbor Cache pode ser considerado um subconjunto das informações do Destination Cache.
      • Redirecionamento: Mensagens Redirection são enviadas por roteadores para redirecionar um host automaticamente a um roteador mais apropriado ou para informar ao host que o destino encontra-se no mesmo enlace.

    Mecanismos de autoconfiguração: stateless e stateful

    • Autoconfiguração de endereços Stateless
      • Permite aos nós a configuração automática dos endereços unicast em suas interfaces, sem a utilização de servidores DHCP. Faz isto a partir de informações enviadas pelos roteadores, em mensagens Router Advertisement e, de dados como o endereço MAC das interfaces, criando automaticamente endereços link-local únicos.
      • Os endereços link-local são gerados utilizando o prefixo FE80::/64. A esse prefixo é anexado o identificador de 64 bits da interface física. Se a interface utilizar um MAC de 48 bits, acrescenta-se FFFE no centro do endereço e invert-se o seu sétimo bit. O novo endereço passa a fazer parte dos grupos multicast solicited-node e all-node.
      • Por meio do processo de detecção de endereços duplicados é feita a verificação da unicidade do endereço de link-local gerado. Atenção: Caso outro nó no enlace esteja utilizando o mesmo endereço link-local, automaticamente o processo de auto-configuração é interrompido, exindo uma configuração manual.
      • Se o endereço link-local for considerado único e válido, ele será automaticamente inicializado para a interface. Esse processo é o mesmo utilizado por hosts e roteadores.
      • Para determinar quais roteadores pertencem ao enlace e quais os prefixos, o host envia uma mensagem Router Solicitation para o grupo multicast all-routers.
      • Feito isso, todos os roteadores do enlace respondem com uma mensagem Router Advertisement. Tais mensagens são utilizadas para configurar:
        • os roteadores padrões,
        • um valor predefinido para o campo Limite de Encaminhamento de cabeçalho IPv6,
        • o valor de MTU do enlace e,
        • a lista de prefixos de rede.
      • Para cada prefixo informado nas mensagens Router Advertisement é gerado um endereço através do mecanismo de autoconfiguração stateless, combinando o prefixo ao identificador da interface. Estas mensagens, também apresentam duas flags:
        • managed address configuration: indica se os hosts deve ou não utilizar autoconfiguração stateful para obter endereços e,
        • stateful configuration: indica se os hosts devem utilizar a autoconfiguração stateful para obter informações adicionais, como endereços de servidores DNS e outros dados sobre a configuração da rede.
    • Autoconfiguração de endereços Stateful
      • É uma técnica alternativa à stateless, onde é necessário a utilização de servidores que informem aos hosts, os dados a serem utilizados na obtenção dos endereços, além de outras configurações da rede.
      • Utilizado quando não há roteadores em uma rede ou quando as mensagens Router Advertisement apresentam flags que habilitam seu uso. Baseia-se no uso de protocolos como o DHCPv6, a fim de obter endereços e outras opções de configuração.
      • No DHCPv6 as mensagens são trocadas em UDP, entre cliente e servidor.
      • Os clientes utilizam um endereço link-local para transmitir ou receber mensagens DHCP, enquanto que os servidores utilizam um endereço multicast reservado (FF02::1:2 ou FF05::1:3) para receber mensagens dos clientes. Caso o cliente necessite enviar uma mensagem a um servidor, que esteja fora de seu enlace, é utilizado um Relay DHCP.
      • O DHCPv6 fornece opções de configurações de rede tais como endereços de servidores de DNS, NTP, etc. Permite a análise das políticas de acesso antes de atribuir um endereço ao host.
    • É possível utilizar os dois mecanismos simultâneamente: statless e stateful.

    Fragmentação

    • O processo de fragmentação de um pacote de dados se inicia utilizando o protocolo Path MTU Discovery, 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 Path MTU Discovery assume que o MTU de todo o caminho é igual ao MTU do primeiro salto. Se o tamanho de qualquer um dos pacotes enviados for maior do que o suportado por algum roteador ao longo do caminho, este irá descartá-lo e retornar uma mensagem ICMPv6 packet too big. Após o recebimento dessa mensagem, o nó de origem reduzirá o tamano dos pacotes de acordo com o MTU do caminho indicado na mensagem packet too big.
    • O procedimento termina quando o tamanho do pacote for igual ou inferior ao menor MTU do caminho.
    • Há uma opção do Cabeçalho de Extensão Hop-By-Hop, chamada Jumbo Payload, que permite o envio de pacotes com cargas úteis entre 65.536 e 4.294.967.295 bytes de comprimento, chamados de jumbograms.

    QoS

    • Foram designadados dois campos do cabeçalho IPv5: Classe de Tráfego e Indicador de Fluxo, ambos com o objetivo de implementar a priorização do fluxo de determinados pacotes.

    DNS

    • Registro AAAA para o DNS.
    • ip6.arpa, para atender o PTR.
    • Um cliente DNS com suporte IPv6, em uma consulta, busca primeiro por registros do tipo AAAA. Não obtendo resposta, consulta por registro do tipo A, com o mesmo nome.
    • O servidor DNS pode responder a consultas feitas através do IPv4 ou do IPv6> Os dados obtidos na consulta IPv6 devem ser iguais aos obtidos na consulta IPv4.

    Suporte à mobilidade

    • O suporte à mobilidade no IPv6 permite que um dispositivo móvel se desloque de uma rede para outra, sem necessidade de alterar seu IP de origem.
    • Quando o nó móvel se desloca da sua rede de origem, ele obtém um novo endereço IPv6 na rede remota. Este endereço remoto pode ser obtido através de mecanismos de autoconfiguração stateless ou statefull.
    • Para ter certeza de que os pacotes IPv6 cheguem a sua rede remota, é necessária a associação entre o endereço remoto e o endereço de origem, que é feita pelo Agente de Origem.
    • O Agente de Origem registra o endereço remoto enviado em uma mensagem Binding Update pelo nó móvel e responde com uma mensagem Binding Acknowledgement.
    • O encaminhamento de pacotes para o nó móvel pode acontecer de ois modos: tunelamento bidirecional ou otimização de rota.
    • Um novo Cabeçalho de Extensão, o Mobility, foi criado. Também, foi adicionado um novo tipo de Cabeçalho Routing, o Type 2.
    • Foram criadas quatro novas mensagens ICMPv6:
      • Home Agent Address Discovery Request
      • Home Agent Address Discovery Reply
      • Mobile Prefix Solicitation
      • Mobile Prefix Advertisement

    Segurança no IPv6

    Roteamento, mobilidade e gerenciamento no IPv6

    Coexistencia com IPv4 e a transição

    Referências

    [1] IPv6.br: melhor referência para começar sobre IPv6.
    [2] IPv6 Address Space Allocation, http://www.tcpipguide.com/free/t_IPv6AddressSpaceAllocation.htm.
    [3] Adailton J. S. Silva e Marcel R. Faria, Hierarquia de Endereços IPv6.

    Quais são as mensagens do comando ping6?

    O Comando ping e ping6 no Linux utiliza o protocolo ICMP para enviar mensagens ECHO REQUEST e receber ECHO RESPONSE para testar a conexão entre o sistema e outra máquina na rede. Ele retorna o tempo de resposta que um pacote de rede demora para ir e voltar. Muito útil para realizar o diagnóstico de uma conexão.

    O que é Neighbor Solicitation?

    A mensagem Neighbor Solicitation é enviada por um dispositivo para requisitar a um determinado vizinho o envio de mensagens Neighbor Advertisement. Por causa dessa funcionalidade, ela é utilizada para suprir três necessidades basicas de comunicação em redes IPV6.

    Qual a mensagem utilizada para pedir a um roteador por informações sobre a rede?

    Router Solicitation (RS): Quando um host deseja saber se existe um roteador (ou roteadores) disponível no segmento, o host envia uma mensagem deste tipo, onde a origem do pacote é o endereço do host (link local) e o destino é o grupo multicast “All Routers” (FF02::2).

    Qual a função dos campos do protocolo IPv6?

    A criação dos cabeçalhos de extensão do IPv6 teve a finalidade de aumentar a velocidade de processamento nos roteadores, visto que o único que deve ser processado em cada roteador é o Hop-by-Hop, enquanto que os demais são tratados apenas pelo nó de destino.