Mobile

7 abr, 2014

Mobilidade: dispositivos móveis com IPv6

Publicidade

Grande parte dos dispositivos tecnológicos disponíveis atualmente possuem algum tipo de conexão com a Internet, com redes privadas, públicas ou conexão compartilhada entre outros dispositivos. Pensando nisso, e sabendo que a cada ano mais dispositivos são lançados e mais usuários passam a adotá-los, foi necessário pensar em formas de mantê-los todos conectados sem conflitos de endereçamento simultâneo, mantendo a mesma qualidade e estabilidade de conexão – e independentemente da localização física do aparelho –, da mesma forma como acontece com os computadores.

A mobilidade para o protocolo IPv6 deve atender a um requisito básico: permitir que o usuário do dispositivo mude de sub-rede sem com isso perder a conexão e, é claro, de forma transparente, conservando seu IP original, que deve ser acessível através de um host intermediário. A intenção do IPv6, nesse caso, é fornecer meios para que o host móvel possa se comunicar com outros hosts ainda configurados sob o protocolo IPv4, utilizando para esse fim o protocolo de IP móvel (Mobile IP).

O protocolo Mobile IP foi desenvolvido pela IETF – Internet Engineering Task Force – e, com o advento do protocolo IPv6, foram criadas várias normas complementares e específicas para dispositivos móveis, que você pode conhecer através da RFC 3775 (mais antiga) e da RFC 6275, criada em julho de 2011, ou seja, a mais nova especificação disponível sobre o assunto.

A mobilidade para IPv6 (MIPv6) é composta pelos seguintes elementos:

  • Mobile agent (agente móvel, o dispositivo, por exemplo) – é composto por um nó (mobile node) ou um host que faz parte de uma rede, mas que também pode mudar de rede e continuar pertencendo à rede original.
  • Home network (rede local) – rede original do dispositivo móvel.
  • Home agent (agente local) – roteador na rede local que define túneis para entrega do novo endereço para o dispositivo móvel quando este encontra-se longe da rede local. Mantém a localização atual (endereço IP) do dispositivo móvel e é usado com um ou mais agentes estrangeiros. Redireciona todos os dados que forem endereçados ao agente móvel para sua nova localização.
  • Care-of address (endereço a ser tratado/administrado, também pode ser chamado de endereço temporário) – o endereço care-of de um dispositivo móvel é o endereço IP de rede nativo do dispositivo quando este estiver operando em uma rede estrangeira.
  • Foreing network (rede estrangeira) – representa a rede onde o agente móvel está temporariamente alocado. É o intermediador entre o dispositivo móvel e a rede de origem.
  • Home Address (endereço local) – é o endereço original e permanente que identifica o usuário junto à sua rede de origem (home network).
  • Foreign Agent (agente estrangeiro) – roteador que armazena informações sobre os nós móveis que visitam sua rede e entregam pacotes para o dispositivo móvel através de um túnel com o agente local. Agentes estrangeiros também anunciam endereços estrangeiros care-of adressess que são usados pelo agente local.
  • Local-link Address (link de endereço local) – é um endereço com o qual os hosts da rede de origem podem se comunicar com o agente móvel sem usar para esse fim roteadores ou outros dispositivos.
  • Visited Network (rede visitada) – sub-rede à qual o dispositivo móvel está conectado e não é sua rede local.
  • Túnel – caminho utilizado pelos pacotes endereçados ao host móvel. Local onde também acontece o encapsulamento das informações.
  • Binding (ligação) – associação entre o home address e o care-of address.

Funcionamento

O funcionamento resumido do Mobile IP atribui dois endereços IP a um determinado dispositivo. Um desses endereços IP é fixo, e o Home Address e é atribuído pelo Home Agent, que por sua vez faz parte da Home Network, rede que possui o primeiro registro de IP do Mobile Agent, ou seja, do dispositivo. O segundo IP associado ao nó é temporário (care-of-address) e informa a atual posição do dispositivo. Essa posição, por sua vez, é determinada pelo Foreign Agent pertencente a Foreign Network. Parece complicado, não?

São três as etapas de funcionamento de um endereçamento IP Móvel:

  • Discovery – descoberta de redes nas quais o dispositivo poderá se conectar
  • Registration – registro do endereço e da conexão móvel
  • Tunneling – forma de comunicação entre as redes local e estrangeira

Na descoberta da rede (figura 1), o nó móvel é responsável por checar se o dispositivo encontra-se conectado à uma rede e qual. Também localiza as redes para as quais o dispositivo poderá migrar, lista os care-of addresses disponíveis para conexão, informa o nó móvel sobre quaisquer recursos especiais disponibilizados pelos agentes estrangeiros, como técnicas alternativas de encapsulamento de dados e ainda permite aos nós móveis obterem a informação sobre se o agente é um home agent, foreign agent ou ambos, e portanto saber se está conectado a uma rede local ou a uma rede no exterior. Para auxiliar na identificação das redes, foi implementada uma nova versão do Internet Control Message Protocol – ICMP – para IPv6 (ICMPv6), utilizado para a troca de mensagens necessárias para descobrir o conjunto de Home Agents e para obter o prefixo do Home Address ao qual o nó móvel irá se conectar.

Screenshot from 201
Figura 1: Descoberta de redes disponíveis para conexão

A etapa de registro (figura 2), faz com que, uma vez que o nó móvel reconhece que a rede na qual ele está conectado é uma rede estrangeira (foreign network) e depois que adquire o seu IP temporário (care-of address), seja enviado um aviso ao home agent localizado em sua home address, para que ele possa reencaminhar os dados (ligações, mensagens etc.) para a sua nova localização.

Figura 2: Registro do dispositivo em uma rede
Figura 2: Registro do dispositivo em uma rede

Já a etapa de tunelamento (figura 3) é a maneira pela qual o agente local reencaminha as mensagens que chegaram até ele e que são destinadas ao nó móvel. É uma maneira eficiente de interligar dois hosts que devem trocar informações, independentemente da rede em que estiverem.

Screenshot from 20111
Figura 3: Visão geral do tunelamento de conexões

Endereçamento

Da mesma forma que redes sem fio, os dispositivos móveis que utilizam-se de IPs para conexão necessitam de um endereçador que possibilite a formação dos novos endereços para o equipamento. Alguns pontos de acesso funcionam como um servidor DHCP para Ipv6, agora conhecidos como DHCPv6. A RFC 3315 explica a implementação da nova versão do DHCP para dispositivos IPv6. Alguns projetos como o Dibbler, portável para várias plataformas, garantem a implementação do DHCPv6 em redes mistas. O projeto DHCPv6 do Fedora Project também é uma excelente implementação para Linux, e merece ser estudada.

Problemas frequentes

Alguns problemas podem ser encontrados nas redes móveis com IPv6. Os problemas com a latência são um dos primeiros a serem apontados. A qualidade do fluxo de dados depende da distância entre o Home Agent e o Foreign Agent. Atualmente existem várias iniciativas, pesquisas e estudos tentando resolver esse tipo de problema.

Outro problema frequente é o envio de grandes quantidades de pacotes para o Home Agent, fazendo com que esse host seja derrubado sem que nenhuma informação possa ser trocada com o agente móvel (nó móvel). Esse ataque possui o nome de DoS (Denial of Service – negação de serviço) e também pode ser causado quando um intruso intercepta pacotes que estejam sendo trocados entre os nós na rede ou então quando um host malicioso gera uma falsa requisição de registro (Registration Request) especificando seu próprio endereço IP como care-of address do nó móvel. Todos os pacotes enviados pelos correspondentes nós serão encapsulados pelos Home Agent ao host malicioso.

Um dos métodos de prevenção ao ataque DoS é requisitar uma autenticação forte em todas as mensagens de requisição de registro, entre o nó móvel e o seu home agent. O IP Móvel por padrão utiliza a criptografia MD5, que fornece uma chave secreta de autenticação e verificação de integridade.

Conclusão

É importante ressaltar que a mobilidade é um conceito que recebe melhorias e mudanças todos os dias. Novidades no protocolo ainda estão surgindo e há estudos em andamento para correção de problemas de endereçamento, desenvolvedores trabalhando em novas formas de conexão em hostpots com IPv4/IPv6 e até mesmo pesquisas sobre formas de implementar de forma confiável a geolocalização no protocolo IPv6, pois empresas, fabricantes de dispositivos e distribuidores de informação querem (e muito) saber onde está o seu cliente. Não é preciso dizer que, quanto mais tecnologia, mais difícil será se esconder!