Redes IPv6: Características e Componentes do Protocolo

Propaganda
Redes IPv6: Características e Componentes do Protocolo para Soluções de Segurança
O protocolo IPv6 foi criado não só para resolver problemas da quantidade de endereços disponíveis, mas
também para oferecer novos serviços e benefícios que não existiam no IPv4 ou que não eram utilizados
de forma otimizada. O seu conceito não visa ser revolucionário, apenas evolucionário. Funções
desnecessárias foram removidas, as necessárias mantidas e novas funcionalidades foram acrescentadas.
Este tutorial apresenta, de forma resumida e didática, informações introdutórias referentes ao protocolo IP
versões 4 e 6, suas características e o porquê do desenvolvimento do IPv6. Tem por objetivo apresentar
um estudo voltado para segurança do IPv6, a partir de uma análise de suas funcionalidades e
características a fim de otimizar a sua utilização em um sistema real.
Brian von Seigneux Engert Hansen
Bacharel em Ciência da Computação pela Universidade Católica de Petrópolis – UCP (2009), e
Especialista em Engenharia de Redes e Sistemas de Telecomunicações pelo Inatel (2011).
Atualmente ocupa o cargo de Trainee Expert na operadora de Telecomunicações Oi, atuando na gerência
de análise de desempenho da rede de dados.
Email: [email protected]
Categoria: Banda Larga
Nível: Introdutório
Enfoque: Técnico
Duração: 20 minutos
Publicado em: 08/04/2013
1
Redes IPv6: Introdução
A massiva popularização da Internet gerou um problema grave: a escassez de endereços IP. Parte disso se
deve à má distribuição destes endereços, onde algumas empresas possuem faixas inteiras, fazendo com
que grande parte não seja utilizada.
Para solucionar este problema, foi desenvolvido o protocolo IP versão 6, que consiste em uma evolução
do protocolo IPV4, criado na década de 80. Esta evolução se fez necessária uma vez que o IPv4,
composto por 32 bits, teve seus últimos blocos registrados entregues pelo IANA em outubro de 2010[1].
Para solucionar este problema, foi desenvolvido o protocolo IP versão 6, que consiste em uma evolução
do protocolo IPV4, criado na década de 80. Esta evolução se fez necessária uma vez que o IPv4,
composto por 32 bits, teve seus últimos blocos registrados entregues pelo IANA em outubro de 2010[1].
A versão 6 deste protocolo, descrito na RFC 1752, apresenta 128 bits possibilitando uma maior
combinação de endereços.
Conforme mencionado, sua concepção foi originada para suprir a escassez de endereços IP, no entanto,
sua implementação trás benefícios secundários a rede como a criptografia IPSec nativa, portabilidade
numérica (mobile IPv6), fim do broadcast, autoconfiguração e principalmente, menor carga para os
roteadores.
Atualmente, com o avanço da utilização da Internet para fins financeiros (transações, pagamento de
contas, dentre outros), a preocupação com segurança é cada vez maior. Cada vez mais bancos
disponibilizam serviços de Internet Banking, e empresas vendem seus produtos on-line. Além disso, os
usuários desejam ter sua privacidade assegurada ao utilizar a Internet.
Baseado nestes e outros problemas relativos à segurança, os desenvolvedores do IPv6 resolveram incluir
facilidades de segurança neste protocolo, implementando então segurança em nível de camada de rede.
Isto reduz a necessidade de implementação de mecanismos de segurança nas camadas superiores, em
particular na camada aplicação, garantindo assim maior nível de segurança ao usuário, quando comparado
ao ambiente IPv4.
A fim de garantir a segurança, o IPv6 prevê em sua implementação os protocolos de
segurançaAuthentication Header (AH) e do Encrypted Segurity Payload (ESP) que serão discutidos
adiante.
2
Redes IPv6: Endereçamento IP
Para que haja uma transferência de dados numa rede, devem-se especificar parâmetros de direcionamento,
como origem e destino.
A forma como este endereço IP é atribuído a um host e a sua disposição dentro da rede corresponde ao
endereçamento IP. Deve-se atentar que a atribuição de um endereço IP a um equipamento deve ser feita
cuidadosamente, para evitar loops e falhas de comunicação. Tal cuidado pode ser decisivo na
diagramação de sua rede, diferenciando assim uma rede gerenciada de uma bagunça desordenada.
A fim de garantir que o desenho da rede supra as necessidades do ambiente, deve-se planejá-la
cuidadosamente de modo a suportar eventuais mudanças na rede, e mais comumente, o crescimento de
um domínio de rede.
O IP oferece um serviço de pacote não confiável (também chamado de melhor esforço), ou seja, o pacote
vem quase sem garantias. O pacote pode chegar desordenado (comparado com outros pacotes enviados
entre os mesmos nós), também podem chegar duplicados, ou podem ser perdidos por inteiro. Se uma
determinada aplicação requer maior confiabilidade, esta é adicionada na camada de transporte (camada
4).
Os roteadores são utilizados para encaminhar pacotes IP através de redes interconectadas. A falta de
qualquer garantia de entrega significa que o desenho da troca de pacotes é feito de forma mais
simplificada. (Note que se a rede cai, reordena ou de outra forma danifica um grande número de pacotes,
o desempenho observado pelo utilizador será pobre, logo a maioria dos elementos de rede tentam
arduamente não fazer este tipo de coisas - melhor esforço. Contudo, um erro ocasional não irá produzir
nenhum efeito notável).
O IP é o elemento comum encontrado na Internet pública dos dias de hoje. É descrito no RFC 791 da
IETF [2], que foi pela primeira vez publicado em Setembro de 1981. Este documento descreve o
protocolo da camada de rede mais popular e atualmente em uso. Esta versão do protocolo é designada de
versão 4, ou IPv4. O IPv6 tem endereçamento de 128 bits, oferecendo mais endereçamentos que os 32
bits do IPv4.
Endereçamento IPv4
Com a evolução da Internet, equipamentos que antes eram interconectados através do protocolo NCP, são
hoje são identificados de forma única em toda a rede por endereços IP (versão 4, futuramente versão 6).
Os bits utilizados na definição de um endereço IP são dispostos em 4 grupos com 8 bits cada. Os
primeiros bits (mais a esquerda) são responsáveis por identificar a rede na qual o equipamento se
encontra, enquanto os demais são utilizados para identificar o próprio equipamento nesta rede. Este
endereçamento hierárquico permite uma maior gerência (organização) da rede e também reduz o volume
de processamento dos roteadores por permitir a sumarização de endereços (recurso de agrupamento de
redes em macro grupos para diminuir o número de entradas em uma tabela de roteamento, possibilitando
assim, um roteamento mais ágil, aumentando a eficiência da rede).
Pode-se exemplificar o conceito acima no endereço IP 170.30.20.10, os dígitos 170.30 identificam a rede
(desde que seja empregada a utilização da máscara padrão da classe) enquanto os bytes 20.10 identificam
a máquina na rede.
A fim de melhorar a sua distribuição e também facilitar o roteamento, os endereços foram agrupados em
classes [3]. Cada classe utiliza um número diferente de bytes para identificar a rede (classe A - 1 byte,
classe B - 2 bytes e classe C - 3 bytes), resultando em um range de IPs apresentado no diagrama abaixo:
3
Classe
Faixa de Endereçamento
A
0.0.0.0 a 127.255.255.255
B
128.0.0.0 a 191.255.255.255
C
192.0.0.0 a 223.255.255.255
D
224.0.0.0 a 239.255.255.255
E
240.0.0.0 a 247.255.255.255
Figura 1: Faixa de endereços [4]
Através desta divisão em classes, é possível endereçar uma quantidade razoável de redes. O problema,
entretanto, ocorre devido à grande demanda por endereços classe B. Esta demanda deve-se ao fato de que
o número total de máquinas que podem ser interligadas através de uma rede classe C é relativamente
pequeno (254 hosts no máximo).
Endereçamento IPv6
Em virtude dos problemas decorrentes da utilização do protocolo IPv4, desde 1991 a Internet Engineering
Task Force (IETF), organização responsável pelos padrões dos protocolos usados na internet, tinha como
objetivo evoluir o protocolo. O novo protocolo deveria ser capaz de resolver o esgotamento da capacidade
de endereçamento, ser eficiente no roteamento, flexível e transparente às aplicações dos usuários. Após
inúmeros esforços, foi definido o protocolo IPv6.
Este protocolo consiste em uma reformulação do protocolo IPv4, resolvendo vários de seus problemas. É
mais robusto, suportando endereços hierárquicos de grande tamanho (128 bits) e apresenta também novas
facilidades de roteamento. Apesar de o tamanho ser, na prática, menor do que o valor teórico, pois a
atribuição e o roteamento de endereços segue uma organização hierárquica, estima-se que estejam
disponíveis 1564 endereços por metro quadrado da superfície da Terra [5].
De acordo com o artigo Segurança e IPv6 aspectos teóricos e práticos escrito por Antonio M. Moreiras
no 10° fórum internacional de software livre [6], o projeto de migração do IPv6 foi desenhado da seguinte
forma:
Figura 2: Estimativa desenvolvida em 2000 [7]
4
Porém, o cenário atual apresenta um ambiente totalmente diferente retratado abaixo:
Figura 3: Constatação em 2010 [7]
Em virtude do comportamento dos gráficos acima, pode-se observar a discrepância entre os valores
estimados e os reais. Tal diferença indica uma resistência do mercado, limitações técnicas e necessidade
de investimento em infraestrutura foram os principais responsáveis pelo atraso no processo de migração
de seus sistemas.
5
Redes IPv6: Principais Características
O inovador IPv6 foi concebido com um pacote de inovações, dentre as quais destacam-se a inclusão da
extensão do espaço de endereçamento, autoconfiguração, estrutura de cabeçalho, comprimento do
cabeçalho, IPsec, mobilidade, qualidade de serviço (QoS), agregação de rotas e transmissão eficiente que
serão discutidas neste tema trabalho. Será feito também um comparativo entre as versões 4 e 6
apresentando suas similaridades e diferenças em pontos específicos do protocolo.
Extensão do Espaço de Endereçamento
Cada endereço IPv4 é tipicamente representado por 32 bits (1 byte), divididos em 4 grupos com 8 bits
cada (1 byte), onde cada grupo é separado por pontos. Como exemplo, pode-se citar o endereço
192.168.10.1. Já um endereço IPv6 é composto por 128 bits (como definido na RFC 4291) e representado
em uma notação hexadecimal, composta por campos de 16 bits, separados por dois pontos. Como
exemplo, pode-se citar o endereço fe80:ab21:c4d2:9852:abcd:1224:02f1:c3b2.
Este novo endereçamento com 128 bits provê uma enorme gama de endereços (2128 ou 3.4 x 1038),
enquanto o IPv4, com seus 32 bits, possui um total de apenas 232 (ou 4.3 x 109) endereços. De acordo com
o Wagner Zucchi em WM7 Engenheiros Associados [9], este range apresentado pelo IPv6, se dividido
igualmente entre todos os seres humanos, resultaria em mais de um trilhão de IPs por pessoa.
Os endereços IPv6, da mesma forma como ocorre no IP4, são divididos em redes, onde cada prefixo
identifica cada porção de endereços.
Pode-se ilustrar a definição acima a parte do IP 21DA:D3:: / 48 consiste em um prefixo rota e
21DA:D3:0:2F3B:: / 64 um prefixo sub-rede.
Autoconfiguração
Este conceito reside na RFC 4862 e consiste nas redes basicamente plug and play, definido como sendo
uma das mais interessantes e úteis características do IPv6, garante que equipamentos em uma rede IPv6 se
configurem, independentemente de estarem utilizando um protocolo não orientado a conexão. Com a
utilização do IPv4, os hosts são configurados manualmente ou com protocolos de configuração como o
DHCP [10].
Utilizando a autoconfiguração do IPv6, há métodos definidos para a configuração de seus endereços IP,
dispensando a utilização de um servidor DHCP, uma vez que a abrangência de endereços definida pelo
IPv6 permita que seja configurado um IP estático em cada componente (de modo semelhante ao que
ocorre atualmente com os endereços MAC que vem ligados a placa).
Estrutura de Cabeçalho
O IPv6 introduz um novo formato de cabeçalho (Figura 1) definido na RFC 2460. Em oposição ao
anterior (Figura 2), todos os campos deste novo cabeçalho possuem tamanho fixo, totalizando 40 bytes. O
fato de esse possuir um tamanho fixo diminui consideravelmente o tempo gasto no processamento dos
pacotes feito pelos roteadores, visto que não há necessidade de calcular a extensão de certos campos, e
nem o tamanho do cabeçalho como um todo. Além disso, ocorreu uma redução do número de campos
utilizados, por meio da exclusão de campos de pouca utilidade prática. Este fato também contribui para a
diminuição do tempo gasto em processamento por roteadores.
6
Figura 4: Cabeçalho IPv6 [11]
Figura 5: Cabeçalho IPv4 [12]
Após uma breve comparação dos componentes presentes nos cabeçalhos IPv4 e IPv6, nota-se que 5
campos foram removidos (IP Header Length, Identification, flags, fragment, Offset e Header Checksum)
enquanto outros foram substituídos:
type of service: priority;
flow label: um novo campo para Quality of Service (QoS);
Total length: comprimento do cabeçalho é fixo no IPv6;
Payload length: comprimento do cabeçalho é fixo no IPv6;
Next header: substituindo Protocol;
time to live: Hop Limit [2];
Extensão de Cabeçalho
Um cabeçalho IPv4 possui um tamanho variável, compreendido entre 20 e 60 bytes [13], sendo que esta
segunda opção é pouquíssimo utilizada por comprometer a performance e geralmente
administrativamente proibida por razões de segurança.
O IPv6 no entanto, possui um método diferenciado para lidar com estas opções, permitindo assim, um
processamento otimizado além de solucionar alguns problemas de segurança apresentados na versão
anterior.
A RFC 2460 define seis extensões de cabeçalho: salto a salto, roteamento, fragmento, destino,
autenticação (AH) e encapsulamento do payload de segurança, onde cada extensão de cabeçalho é
definida pelo campo next header no cabeçalho predecessor.
7
Mobilidade
O IPv6 é compatível com dispositivos móveis (MIPv6) [14], sendo um protocolo melhorado capaz de
realizar roaming para um dispositivo móvel, podendo assim se deslocar de uma rede para outra sem que
haja a perda de conectividade (por consequência, do endereço IP).
O IPv4 também pode ser utilizado no endereçamento de dispositivos móveis, no entanto, apresenta várias
limitações, como o tamanho do campo de endereçamento, dependência do address resolution
protocol (ARP) e dificuldades na realização de handover entre access-points [15].
Para solucionar esta questão do handover, o IPv6 utiliza o Neighbor Discory, descrito na RFC 4861.
Juntamente com a evolução do MIP, surgiu uma preocupação em se garantir a segurança em ambientes
móveis, o MIPv6, como por exemplo, o route optimization (descrito na RFC 4449), onde o controle de
fluxo entre a estação base e a móvel deverá ser devidamente protegido.
8
Redes IPv6: Desafios para a Implantação
Na seção anterior, foram apresentadas algumas vantagens no processo de implementação do IPv6, tal
como um comparativo entre as versões 4 e 6. Nesta seção será abordada uma visão mais prática, com
exemplos de sistemas já implementados e as dificuldades encontradas neste processo de migração (IPv4
para IPv6).
Principais Pontos que uma Empresa Interessada em Implantar o IPv6 Deve Estar Ciente
Durante o processo de implantação do IPv6, deve-se atentar para alguns fatores de risco que podem
deixar o seu sistema em risco:
Um atacante que possivelmente possua mais experiência com o IPV6, que a organização que o
está implantando.
Dificuldade em detectar acessos IPV6 desconhecidos ou não autorizados em redes IPV4 em
produção.
A complexidade de se trabalhar paralelamente com IPV4 e IPV6.
Falta de softwares de segurança focados em IPV6, se comparado ao número desenvolvido para o
IPV4.
Proliferação dos túneis de transição IPV6 (ou IPV4), complicando as defesas nos destino de uma
rede, mesmo se autorizado ou não (por exemplo, os túneis host iniciados por usuários finais).
A fim de minimizar os riscos supracitados, sugere-se um investimento em treinamento e capacitação dos
colaboradores envolvidos em toda cadeia de implementação, para que possam estar confortáveis com este
novo ambiente de rede e prontos para lidar com situações imprevistas.
Pontos a Serem Considerados Durante o Processo de Planejamento
Um ponto chave a ser observado consiste na não compatibilidade entre os ambientes IPv4 e IPv6 [16].
Como atualmente a internet e todas as VPNs estão interconectadas a partir de endereços IPv4, foram
desenvolvidos dois mecanismos para comportarem esta interoperabilidade:
Para que um endereço IPv6 seja transmitido em um ambiente IPv4, os primeiros bits do pacote (de 128
bits) são preenchidos com “0” ou “F” (lembrando que o IPv6 trabalha com a notação hexadecimal). Uma
vez feito isto, os 32 bits finais correspondem ao endereço IPv4.
Já em uma situação oposta, como o cabeçalho IPv6 possui um tamanho quatro vezes maior quando
comparado a um cabeçalho IPv4, utiliza-se uma técnica de inserção do endereço em um domínio AAAA
[17].
A ideia desta inserção é bastante semelhante ao princípio de funcionamento de um servidor DNS, mas ao
invés de se associar um IPv4 a um nome, é associado um endereço IPv4 a um endereço IPv6, garantindo
assim um funcionamento razoável.
Vale ressaltar que estas soluções desperdiçam processamento e aumentam o delay do sistema, por
agregarem processamento e entradas à tabela de roteamento, mas por se tratar de uma solução temporária
utilizada durante a migração, não trará grandes prejuízos a uma rede.
Conjunto de Recomendações para Amenizar as Ameaças ao Sistema
9
A figura abaixo é fruto de um estudo que aponta as principais formas de ataque sofridas por um sistema.
A fim de diminuir os riscos impostos a um dado sistema, pode-se utilizar de alguns recursos de
segurança, dentre os quais se destacam:
Implementação de diferentes tipos de endereçamento IPv6 (política de endereçamento, único
endereço local, alocação dispersa, etc.) para limitar o acesso e conhecimento do ambiente,
dificultando uma possível invasão.
Utilizar ferramentas automatizadas para gerenciamento de endereços a fim de evitar uma entrada
de endereços IPv6 inválida, o que pode facilmente ocorrer em virtude de sua extensão.
Implementar o protocolo ICMPv6 e garantir que as mensagens essenciais à operação sejam
permitidas e as outras bloqueadas.
Utilizar IPsec (Internet Protocol Security) para autenticação e prover confidencialidade de ativos
que podem estar vinculados a um modelo de segurança escalável Identificar capacidades e
fraquezas da rede em ambientes IPv6.
Focar sua atenção nos aspectos de segurança em mecanismos de transição, como protocolos de
tunelamento.
Garantir que roteadores IPv6, filtros de pacotes, firewalls, túneis multicast e pacotes MLD não
sejam roteados de forma imprópria.
Figura 6: Ataques por camada [7]
10
Redes IPv6: Arquitetura Básica IPSec
Em 1995, a RFC 1825 estabeleceu a arquitetura de segurança na camada de Inter-redes da pilha TCP/IP
(equivalente à camada de rede do modelo OSI), através da especificação dos protocolos AH
(Authentication Header, cabeçalho de autenticação) e ESP (Encapsulated Security Payload,
encapsulamento de segurança de carga útil), cujos cabeçalhos seriam usados para prover serviços de
segurança (autenticidade, integridade e confidencialidade) ao IPv4 e IPv6. Detalhes de implementação
destes dois protocolos foram inicialmente especificados nas RFC 1826 e RFC 1827. A RFC 1825 também
definiu a necessidade de um protocolo de gerenciamento de chaves como necessário ao uso de AH ou
ESP, bem como especificou o conceito de Security Association (associação de segurança, ou
simplesmente SA), um conjunto de informações que definem uma conexão, igualmente necessário em
qualquer implementação dos protocolos AH e ESP. Foram ainda definidos o MD5 e o DES no modo
CBC como algoritmos padrões do AH e ESP, respectivamente [18].
Em oposição à crença de muitos administradores de rede, o IPSec é relativamente antigo, sendo
desenvolvido para ser utilizado com a arquitetura IPv4. Sua arquitetura não proprietária [19] possibilitou
o avanço desta solução e sua utilização em larga escala. Com isso, o significativo ganho trazido por esta
ferramenta foi tamanho, que sua utilização em ambientes IPv6 se tornou obrigatória.
O seu diferencial quando comparado a outras soluções de segurança em camada de rede pode ser
observada a partir da utilização conjunta de protocolos de segurança de tráfego de dados, de autenticação
de cabeçalho (AH - Authentication Header), de encapsulamento seguro do payload ou conteúdo dos
dados (ESP - Encapsulating Security Payload) e de procedimentos e protocolos de gerência de chaves.
Outro fator a ser considerado na aplicação do IPSec, é a segurança provida pela criptografia K9 utilizada
por ele. Este padrão, bastante aceito pelo mercado, é um diferencial, quando comparado ao padrão SSL
utilizado em grande escala em aplicações web.
Figura 7: Arquitetura IPSec [20]
11
Protocolos AH e ESP
A arquitetura IPSec é composta pelos protocolos AH e ESP, utilizados de forma complementar para
maximizar os benefícios de segurança trazidos por cada um destes protocolos. Assim como o IPSec, o
AH e ESP são protocolos não proprietários, garantindo assim a interoperabilidade com os demais
componentes da rede (podendo estes ser de diferentes fabricantes ou mesmo diferentes equipamentos de
um mesmo fabricante).
Com este objetivo, foram definidos algoritmos obrigatórios para autenticação de cabeçalho. São estes:
HMAC-MD5, RFC 2403 - Com a utilização do HMAC- MD5 em conjunto com o ESP e AH;
HMAC-SHA-1, RFC 2404 - Com a utilização do HMAC- SHA-1 em conjunto com o ESP e AH.
Já para o encapsulamento seguro do payload, além destes dois já citados acima, os outros algoritmos são:
DES-CBC, RFC 2405 - ESP DES-CBC Cipher Algorithm With Explicit IV;
Null Authentication Algorithm;
Null Encryption Algorithm.
As especificações IPSec também suportam negociação de compressão IP definidas pela RFC 2393 - IP
Payload Compression Protocol.
Gerenciamento de Chaves
Uma importante característica do IPSEC é a utilização de chaves criptográficas. Tais chaves visam
proteger o sistema contra atacantes.
O processo de autenticação representa um papel crucial durante o estabelecimento do túnel IPSec.
Durante este processo, a chave criptográfica, que pode ser definida como um padrão ISAKMP, IKE ou
OAKLEY, é checado. Se houver qualquer divergência de caracteres entre quaisquer das duas pontas
(cliente-servidor), o túnel não será estabelecido.
Deve-se atentar a questão da gerência da chave, que deve ser feita cuidadosamente, pois em ambientes de
grande porte, pode-se facilmente confundi-las, criar túneis incorretos, gerando riscos à confidencialidade
da informação e abrindo brechas de segurança à eventuais atacantes.
As especificações IPSec definem um conjunto separado de mecanismos para o gerenciamento de chaves,
com suporte para distribuição automática ou manual destas. Para distribuição manual e automática de
chaves foram especificados procedimentos baseados em chaves públicas definidas pelas seguintes RFCs:
RFC 2408 - Internet Security Association and Key Management Protocol (ISAKMP);
RFC 2409 - The Intenet Key Exchange (IKE);
RFC 2412 - The OAKLEY Key Determination Protocol.
12
Mesmo com as definições dos padrões acima, as especificações IPSec permitem a inclusão de outros
protocolos de gerência de chaves públicas como, por exemplo, SKIP.
Funcionamento
O protocolo IPSec pode operar tanto em um gateway ou host com os requisitos de segurança
estabelecidos por um banco de dados de política de segurança (SPD - Security Policy Database)mantido
pelo usuário, pelo administrador da rede ou por uma aplicação operando dentro de limites pré-definidos.
O IPSec pode ser comumente utilizado na proteção de ambientes onde deseja-se proteger uma ou mais
conexões entre um par de hosts, entre dois gateways de segurança ou entre um host e um gateway [21].
Figura 8: Túnel IPSec [22]
Uma vez que todos os parâmetros forem checados (dentre eles IP da interface Loopback da extremidade
remota, chave criptográfica, o modelo de encapsulamento de dados, dentre outros), a conexão com o túnel
é estabelecida e pode-se iniciar o trânsito de informações através dele.
Como o próprio nome já indica, uma conexão tunelada garante a segurança, uma vez que as informações
transitadas neste túnel só podem ser acessadas em suas extremidades, ou seja, o sistema fica imune a
atacantes nas demais localidades.
Isto se torna especialmente interessante quando se trafega informação através meios compartilhados,
como a Internet.
Os pacotes IP que transitarem por este túnel estabelecido serão selecionados através de três formas de
processamento definido por seletores. Estes, por sua vez, utilizam o pacote IP e as informações do
cabeçalho da camada de transporte, comparando-os com as entradas do banco de dados SPD (Security
Policy Database). Com base nas políticas aplicadas e identificadas pelos seletores, cada pacote pode ser
tratado de duas formas distintas:
Este pode ser submetido aos serviços IPSec, ou então, é permitido desprezar tais serviços. Nos casos onde
a segunda opção é aplicada, o pacote é descartado por razões de segurança.
Conforme mencionado, a arquitetura básica IPSec é formada pelos protocolos ESP e AH. Estes
protocolos atuam de forma complementar para garantir a integridade da conexão e também da informação
a ser enviada. O protocolo IP AH (Authentication Header) fornece integridade não orientada a conexão,
autenticação da origem dos dados e serviço opcional anti-replay. Já o protocolo IP ESP(Encapsulating
Security Payload) provê confidencialidade (criptografia) e também pode prover as mesmas funções do
protocolo AH já citadas. Vale ressaltar que os protocolos AH e ESP foram projetados para trabalhar de
forma complementar, no entanto, eles são bastante flexíveis, podendo ser implementados de forma
independente.
13
Cada um destes protocolos (AH e ESP) suportam dois modos de utilização:
Modo transporte: os protocolos tem por objetivo prover proteção primária aos protocolos das
camadas superiores.
Modo túnel: os protocolos são aplicados para "tunelar" pacotes IP.
Existe também a possibilidade de um usuário ou administrador controlar a granularidade dos serviços
IPSec oferecidos. Por exemplo, pode-se criar um único túnel de criptografia k9 com o objetivo de
transportar todos os dados entre dois gateways de segurança, ou então, pode-se criar túneis separados para
cada conexão TCP entre os pares de hosts que se comunicam através desses gateways
Associação de Segurança
A concepção de associação de segurança (AS - Security Association) em um sistema constitui um
importante pilar na implementação do IPSec. Consiste em uma “conexão” cujo objetivo é viabilizar o
tráfego de serviços seguros. Uma vez que esta “conexão” seja estabelecida, a segurança dos serviços é
garantida pela utilização dos protocolos de segurança (AH, ESP, ou ainda de ambos) [23].
Durante sua implementação, deve-se atentar que, em situações onde são implementados paralelamente os
AH e ESP, mais de uma AS deve ser definida.
Antes de iniciar um estudo mais rígido deste conceito, vale ressaltar que o conceito de AS supracitado se
difere do conceito de AS utilizado em protocolos de roteamento link state, uma vez que a utilização deste
mecanismo pelo OSPF, EIGRP e BGP principalmente corresponde ao Autonomous System(AS), enquanto
este artigo trata o conceito de Associação de Segurança (AS).
Uma vez que os conceitos teóricos estejam definidos, há três questões práticas que devem ser entendidas
para que se possa identificar corretamente uma AS (associação de Segurança); deve-se utilizar três
parâmetros SPI (Security Parameter Index), um dado endereço IP de destino e um identificador do
protocolo (AH ou ESP) [23]:
O SPI consiste em um número utilizado na identificação de uma associação de segurança (AS), sendo
definido durante a negociação que antecede o estabelecimento da mesma [21].
O endereço IP de destino (normalmente aplicado a uma interface lógica Loopback) pode
serunicast, multicast ou broadcast. No entanto, para a definição dos mecanismos de gerenciamento de
AS, o IPSec geralmente assume um endereço destino unicast. Mas, em aplicações bastante específicas,
este pode ser multicast ou até mesmo broadcast.
O identificador utilizado para definir o AH é 51, enquanto que para o ESP, é utilizado o identificador
número 50.
Uma vez que os parâmetros de identificação estejam corretamente implementados, deve-se atentar que
durante o processo de estabelecimento de um AS, deve-se definir também uma chave de autenticação a
ser utilizada por estes algoritmos.
Cumpridos os itens acima, o estabelecimento de uma AS pode ocorrer, no entanto, este estabelecimento
pode se dar de duas formas distintas: transporte ou túnel [23].
14
Authentication Header (AH)
O protocolo AH, Authentication Header, tem por objetivo adicionar autenticação e integridade,
garantindo a autenticidade do pacote e também que este não foi alterado durante a transmissão por algum
eventual atacante. O AH pode ser utilizado no modo transporte ou no modo túnel, como já descrito
anteriormente.
Figura 9: Cabeçalho AH [24]
A utilização do protocolo AH tem por vantagens prevenir ataques dos seguintes tipos:
Replay: Este ataque ocorre quando um atacante intercepta um pacote válido e autenticado pertencente a
uma conexão, altera suas especificações e então, "entra nesta conversa". Uma forma de se prevenir este
tipo de ataque é a utilização do campo Sequence Number, pois permite numerar os pacotes que trafegam
dentro de uma determinada AS.
Spoofing: Este ataque ocorre quando um atacante assume o papel de uma máquina confiável para o
destino e, desta forma, ganha privilégios na comunicação. Para proteger o sistema deste tipo de ataque,
sugere-se a utilização de mecanismos de autenticação.
Roubo de conexões ou connection hijacking: Este ataque ocorre quando um atacante intercepta um
pacote no contexto de uma conexão e passa a participar de uma dada comunicação. Para proteger o
sistema deste tipo de ataque, sugere-se a utilização de mecanismos de autenticação.
Encapsulating Security Payload (ESP)
O protocolo ESP (Encapsulating Security Payload) tem por objetivo adicionar autenticação e
confidencialidade, a fim de garantir que somente os destinatários autorizados possam acesso ao conteúdo
do pacote. O ESP pode também ser utilizado no modo transporte ou no modo túnel, como apresentado
anteriormente.
15
Figura 10: Cabeçalho ESP [25]
O uso do ESP previne ataques do tipo:
Replay: tal ataque pode ser evitado a partir da utilização do Sequence Number, de modo
semelhante ao Authentication Header;
Particionamento de pacotes cifrados: tipo de ataque onde um atacante obtém partes de pacotes
cifrados e consegue montar um pacote e com isso consegue estabelecer uma conexão com
membros de uma determinada sessão. Uma forma de prevenir este tipo de ataque é a partir da
utilização de mecanismos de autenticação.
Sniffer: um intruso busca por uma rede e uma vez identificada, inicia um processo de captação de
pacotes buscando obter padrões criptográficos para que seja feita a quebra de pacotes e por
consequência a descoberta da informação trafegada. Como alternativa para proteger o sistema
contra este tipo de ataque, sugere-se a utilização de uma criptografia forte (por exemplo, em
ambientes WI-FI 802.11), sugere-se a adoção da criptografia PSK-WPA2.
Outro importante fator a ser avaliado durante o processo de migração da versão do protocolo IP (v4 para
v6) consiste na observação da capacidade de atualização da plataforma, tal como a viabilidade para esta
migração. Para tanto, Antonio M. Moreiras apresentou em seu artigo Segurança e IPv6 aspectos teóricos e
práticos no 10° fórum internacional de software livre a tabela ilustrada na figura a seguir com estas
informações para as principais plataformas utilizadas no mercado atualmente:
16
Figura 11: Plataformas [7]
17
Redes IPv6: Multihoming e Multicast
Multihoming
O conceito de multihoming consiste em possuir capacidade para utilizar mais de uma conexão a internet
simultaneamente. Um host, por exemplo, deve possuir mais uma conexão (por exemplo, 100baseT e
WiFi); uma conexão para uma LAN com mais de um router para internet; ou uma conexão para um
único router que possa ter mais uma conexão à internet. Frequentemente, refere-se amultihoming para um
site inteiro, que pode ser uma casa, pequeno escritório ou campus de uma grande corporação.
Multihoming é extremamente útil, no entanto trás um grande impacto à arquitetura global da internet. Esta
sessão descreve as motivações para multihoming, os problemas que trás, componentes necessários para
um bom funcionamento, possíveis soluções e também as implicações em segurança. Usuários, em sua
maioria, são defensores do conceito de multihoming e aprovam a sua utilização. Dentre as principais
vantagens apresentadas pelo multihoming, pode-se destacar a confiança obtida a partir da resiliência, em
caso de queda de um link ISP. Outras razões consideráveis incluem melhor performance, a partir da
utilização de balanceamento de carga, qualidade de serviço e das políticas de segurança que podem rotear
os pacotes internamente protegendo os ativos de uma organização.
Por um lado a utilização do multihoming trás vantagens óbvias, mas por outro deve-se analisar as
complicações de sua utilização por dois motivos: O primeiro consiste no encaminhamento de pacotes para
a estação devida, uma vez que a estação possui mais de um IP, dificultando a sua implementação; o
segundo ponto a ser destacado consiste na identificação dos equipamentos finais, como por exemplo o
protocolo de transporte (endereços TCP ou UDP somados ao número da porta) ou associações de
segurança IPSec (endereço de destino adicionado a índices de segurança). Para garantir o funcionamento
do multihoming, tanto a internet deve saber os múltiplos caminhos para a rede final, como os nós no site
devem ser capazes de utilizar múltiplos endereços simultaneamente e de forma transparente (o protocolo
de roteamento geralmente implementado nesta solução é o OSPF) [26]. A forma implica em um enorme
aumento da tabela de roteamento da internet. Com isso, os nós terão de possuir uma cópia das conexões
TCP, das respostas UDP, associações de segurança IPsec e outros protocolos de camadas superiores
(ULPs) ligadas aos endereços.
Qualquer solução multihoming deve satisfazer dois objetivos principais. O primeiro consiste em deixar o
caminho multihoming transparente para as demais camadas (do modelo OSI). Se isto não ocorrer, o
funcionamento do multihoming não trará mais benefícios que uma simples mudança de provedora de
serviços e re-mapeamento manual da rede. O segundo ponto, consiste em se evitar um crescimento
exponencial em tabelas de roteamento globais. Lidar com este crescimento, é o principal desafio dos
engenheiros da internet atualmente, seja com IPv4 ou IPv6, com ou sem multihoming.
Ramificações de Segurança para Multihoming
A RFC 4218 apresenta uma visão geral das vulnerabilidades de segurança inerentes ao multihoming.
Resumidamente, deve- se tomar cuidado com o ataque DOS (denial of service), que consiste no reenvio
de pacotes não intencionais ou para buracos negros, assim como problemas com o multicast. Ele adverte,
no geral, que protocolos não orientados a conexão, como o UDP, apresente mais problemas de segurança
que protocolos de transporte orientados a conexão. Também, se identificadores ou localizadores são
divididos, a segurança deve estar “amarrada” a estes identificadores para diminuir o impacto de ataques
focados em identificador-localizador. Garantir a segurança em outros componentes da infraestrutura
como o servidor DNS e protocolos de roteamento ajudam a minimizar os ataques potenciais em
um multihoming [27]. Redes devem garantir que elas não anunciem seus prefixos a fim de gerar controle
de tráfego assimétrico. Qualquer tipo de tráfego que siga caminhos assimétricos deve ser bloqueado por
18
checagem RPF (reverse path forwarding) ou por filtros de pacote orientados a estado. Com estes
cuidados, torna-se impossível implementar o IPSec em roteadores de bordas.
O protocolo SHIM6 contem alguns medidores de tráfego de segurança:
Com base em endereços hash (RFC 5535) permite se comprovar a confidencialidade de endereço e
para evitar o redirecionamento de ataques.
Probes de acessibilidade (RFC 5534) permitem identificar ataques de inundação de terceiros.
Comunicações em duas vias são necessários antes da emissão de uma resposta e da criação de
qualquer estado. Isto significa que um baseado no estado DOS (tentando usar toda a memória
disponível no respondedor), pelo menos, revele o Endereço IPv6 que o atacante estava usando.
Mensagens de estabelecimento de contexto de uso nonces para evitar ataques de repetição e para
evitar off-path atacantes de interferir o estabelecimento.
Após o estabelecimento de contexto, a cada mensagem de controle SHIM6 contém um tag de
contexto atribuído à contexto particular. Isto implica que um invasor precisa descobrir uma tag de
contexto válido, antes de ser capaz de falsificar qualquer mensagem de controle SHIM6. Isso
também ajuda a proteger o protocolo SHIM6 de off-path atacantes.
Multicast
Multicast (também referido como Multicast IP) é muitas vezes usado para se referir a um
“broadcastmultiplexado”.
Tem por objetivo a entrega de informação para múltiplos destinatários simultaneamente a partir da
utilização de uma estratégia mais eficiente onde as mensagens são transportadas por um link uma única
vez e somente são duplicadas quando o link para os destinatários se divide em duas direções. Em
comparação com o Multicast, a entrega simples ponto-a-ponto é chamada de unicast, e a entrega à todos
os elementos de uma rede chama-se broadcast.
Apesar do Multicast IP ter um modelo conceitual bastante convincente, este demanda muito mais
recursos, equipamentos e processamento na rede do que o modelo Unicast best effort ponto-a-ponto, o
que tem gerado muitas críticas. Porém, ainda não foi apresentado nenhum mecanismo que permita ao
modelo de Multicast IP ser aplicado a uma escala de milhões de pontos e/ou milhões de
gruposmulticast como seria de fato necessário para que as aplicações multicast em geral se difundam na
Internet comercial. Até 2003, a maioria dos esforços para escalonar o multicast para grandes redes têm se
concentrado no simples caso onde temos uma única fonte multicast, o que parece ser mais “tratável”,
computacionalmente falando.
A segurança no Multicast é um dos maiores problemas, então. as soluções de comunicação segura
utilizadas comumente, geralmente empregam criptografia simétrica. No entanto, a sua aplicação em um
tráfego Multicast IP permitiria qualquer um dos destinatários multicast posar como o remetente. Isso é
claramente inaceitável. O grupo MSEC do IETF, tem trabalhado no desenvolvimento de protocolos de
segurança a fim de resolver este problema, com base na arquitetura do protocolo IPsec. O IPsec não pode
ser utilizado no cenário Multicast pois, em suma, supõe-se que haja somente um remetente e um
destinatário. O IETF propôs então um novo protocolo, o TESLA, que está se mostrando muito
convincente e flexível para o ambiente Multicast seguro.
Especificações do Multicast em Ambientes IPv6
19
Constitui parte essencial da infraestrutura IPv6, sendo que as aplicações multicast incluem distribuição
multimídia, busca, roteamento, replicação de database, computação paralela e entrega de informação
em real-time.
Com o IPv6, endereços de multicast possuem um range que abrange desde endereços de uma única
interface (ou link) à Internet global. Eles podem ser permanentemente assinalados e conhecidos, como
nos exemplos citados acima ou eles podem ser utilizados temporariamente com propósito específico.
A RFC 4291 (IP Version 6 Addressing Achitecture), define um endereço multicast como sendo um
identificador para um conjunto de interfaces (geralmente pertencentes à diferentes nós). Um pacote
enviado à um endereço multicast é entregue para todas as interfaces identificadas por aquele endereço.
Normalmente, estes são os endereços inclusos em um grupo multicast. O protocolo MLD (Multicast
Listener Discovery) consiste em um método de interfaces onde cada um encaminha pacotes. A versão 2
deste protocolo (MLDv2), descrita na RFC 2810 gerencia grupos multicast com a ajuda de 2 diferentes
tipos de mensagem ICMPv6:
Multicast Listener query (Tipo = 130);
Version 2 Multicast Listener Report (tipo = 143).
O MLDv2 é compatível com o MLDv1 (RFC 2710), então, por consequência, também apresenta suporte
a:
Version 1 Multicast Listener Report (tipo = 131)
Version 1 Multicast Listener Done (tipo = 132)
Todas estas mensagens são enviadas com um endereço de origem (ou com um endereço não especificado,
se necessário), um contador de saltos IPv6 com limite de 1 e um alerta opcional em um roteador IPv6
(RFC 2711) em um cabeçalho opcional salto a salto (A opção de se utilizar um roteador alerta, força os
roteadores a examinarem as mensagens MLD enviadas a um endereço multicast IPv6, onde os roteadores
de uma forma geral não apresentavam interesse).
A forma como os roteadores realmente implementam multicast depende da tecnologia de rede empregada
na camada 2. Sua utilização em links ponto a ponto é bastante trivial, diferentemente de sua utilização em
links multiponto. Ele deve ser implementado a partir da configuração de seu link em modo promíscuo em
links com capacidade broadcast; ou então ele requer um protocolo lógico de camada 2 ou links de
camada não broadcast.
A maior mudança introduzida no MLDv2 é o endereço de origem específico Multicast. MLDv2 tem por
objetivo permitir que uma interface especifique, para cada endereço multicast, qual o seu endereço de
origem e se ele deseja ou não receber pacotes.
A RFC 4604 apresenta uma atualização ao MLDv2 e descreve em um único documento
origensmulticast específicas para IPv4 (IGMPv3) e IPv6 (MLDv2).
Como mostrado acima, endereços de multicast IPv6 são facilmente identificáveis. Eles correspondem a
endereços iniciados por oito bits 1 ou FF na notação hexadecimal.
20
Figura 12: Multicast [28]
Os oito bits seguintes em um endereço multicast especificam os flags e o escopo. Os 112 bits finais em
um endereço multicast são chamados de Group ID e são utilizados para especificar o conjunto que
elementos que fazem parte de um grupo multicast. Em uma versão anterior, o Group ID era composto por
apenas 32 bits, e algumas implementações ainda hoje, possuem 32 bits.
De acordo com as especificações IPv6, endereços multicast sempre apresentam um escopo que limita o
recebimento de nós. O escopo consiste em um grupo de nós nos quais os pacotes são destinados de
acordo com a sua origem. Seus valores são apresentados na tabela ilustrada na figura abaixo:
Value
1
2
4
5
8
E
Scope
Interface Local
Link Local
Admin. Local
Site Local
Organization Local
Global
Figura 13: Escopo Multicast [29]
Alguns Group ID conhecidos são definidos a partir de escopos variáveis. Um bom exemplo são os
endereços All NTP (Network Time Protocol) servers:
FF02::101 All
NTP
Servers Link
Local
FF04::101 All
NTP
Servers Admin
Local
FF05::101 All
NTP
Servers Site
Local
FF08::101 All
NTP
Servers Organization Local
FF0E::101 All
NTP
Servers
Global
A lista completa de endereços IPv6 conhecidos pode ser encontrada na RFC 2375, categorizado por
escopo e esta lista foi recentemente estendida para atender as novas especificações [30].
21
Os flags especificam, inicialmente, onde um endereço multicast é conhecido, endereço predefinido ou se
consiste em um valor temporariamente definido. Este flag também especifica se um
endereçomulticast temporário autoriza um prefixo unicast permitido nele, e então, se especifica algo que
vá de encontro a RFC 3956. Este prefixo unicast elimina a necessidade de um protocolo adicional para
alocar um endereço multicast único.
Um ponto de encontro para um grupo multicast consiste na raiz de uma árvore usada com o Protocol
Independent Multicast - Sparse Mode (protocolo Independente Multicast – Modo disperso) (PIM-SM)
descrito na RFC 4601, um protocolo de roteamento multicast sofisticado. PIM-SM cria uma árvore de
origens e membros de grupos. Então, o tráfego destas origens é primeiramente roteado em direção ao
ponto de encontro (upstream) e em seguida encaminhado ao grupo de membros receptores, ou
destinatários (downstream).
Para os endereços multicast conhecidos, os 4 bits de indicação devem obrigatoriamente ser compostos por
zeros. O primeiro bit do flag indicador é reservado e deve ser 0. Os três bits indicadores restantes são
chamados de R, P e T (para rendezvous – encontro, prefix – prefixo, e transient – transitório) e
indicadores diferentes de zero para os endereços multicast:
Flags
O
R
P
T
Estes indicadores são descritos pela RFC 3306 e 3956 da seguinte forma:
0000: Conhecidos, predefinidos como endereços multicast (como em todos os exemplos
apresentados anteriormente);
0001: Endereço multicast temporário sem um limite de banda unicast embutido;
0011: Endereços multicast temporários com um prefixo unicast embutido e pontos de encontro;
0111: Endereços multicast temporários com um prefixo unicast embutido e pontos de encontro.
Ele provê uma forma simples de alocar endereços multicast pertencentes ou alocados por um prefixo de
rede no seguinte formado, sem a adição de qualquer endereço de protocolo de uma nova alocação de
endereços multicast:
8
4
4
8
8
11111111 Flags Scope reserved plen
64
network
prefix
32
group
ID
Os oito bits seguintes aos indicadores (flags) e escopo (scope) devem ser zero. Os próximos oito bits
devem especificar um comprimento para o prefixo, estendido até 64 seguido pelo prefixo, justificado a
esquerda e preenchido com zero.
22
Um exemplo descrito na RFC 3306 é bastante interessante, uma vez que nos permite fazer uma análise do
mesmo. A partir do endereço FF38:0030:3FFE:FFFF:0001:0:1234:5678 podemos chegar às seguintes
conclusões:
Corresponde a um endereço de Multicast (FF);
Possui um prefixo temporário embutido (3);
Utiliza um escopo local organizacional (8);
Utiliza um prefixo com comprimento 48 (30);
Especifica o seu prefixo como sendo 3FFE:FFFF :0001::/48;
Utiliza um Group ID de 32 bits de 1234:5678;
Observe que o escopo destes endereços multicast não podem ser maiores que o escopo de seus prefixos
embutidos.
Diferenças entre o Multicast em Ambientes IPv4 e IPv6
Embora endereços multicast sejam comuns tanto em ambientes IPv4 e IPv6, existem algumas diferenças
importantes:
Diferentemente do IPv4, o IPv6 não possui endereço de broadcast. Ao invés de se utilizar obroadcast, o
IPv6 propõem otimizações como a criação de grupos multicast em nós solicitados e todos os
endereços multicast, o que garante melhor utilização dos recursos de rede (quando comparado
ao broadcast).
Endereços de multicast IPv6 possuem novas capacidades como escopo e prefixos unicastembarcados. De
forma geral, extensões IPv6 para multicast foram adicionadas a fim de fazer omulticast ser utilizado de
forma mais abrangente e otimizada na internet.
A utilização do Multicast gerencia por tipos de mensagens ICMPv6, chamados de MLD ao invés de
IGMP.
23
Redes IPv6: QoS em Ambientes IPv6
Vários recursos foram adicionados às especificações do IPv6 através do comitê IETF. Isto inclui, níveis
de serviço garantido, segurança hierárquica e maior nível de confiabilidade.
Qualidade de serviço (QoS), também conhecido como CoS em ambientes Cisco (Class of Services)
desempenha um papel crucial nas redes modernas, com o objetivo de classificação da banda através de
sua priorização, garantindo assim que aplicações sensíveis a atraso, como atividades em tempo real,
estejam protegidos.
A classificação de tráfego pode ser feita manualmente, onde pode-se dividir por aplicação, porta,
endereço IP ou até mesmo por equipamento conectado a rede. Tal flexibilidade de operação faz do QoS
hoje, uma ferramenta indispensável principalmente em meios corporativos.
Um sistema baseado puramente em IPv4 não possui capacidade de diferenciar os dados que são sensíveis
a atraso, tais como streaming de vídeo ou de áudio, e aqueles que não são sensíveis ao tempo, tais como
relatórios e transferência de arquivos. Streaming de áudio e aplicações de vídeo são muito sensíveis ao
atraso de alguns pacotes. Pode-se ilustrar este conceito com a movimentação de lábios sem a emissão de
som ou então a quebra da imagem. Problema este que não possui nenhuma forma de tratamento ou
prevenção desenvolvida para o protocolo IPv4.
Se, eventualmente, um pacote for perdido durante o transporte (não atingir seu objetivo), então o
protocolo TCP a partir de dispositivos de controle [31] reconhece a perda e solicita então, a retransmissão
deste pacote. Um único pacote TCP atrasado significa, provavelmente, parte de um pacote muito maior de
dados de áudio ou vídeo, para todo o pacote grande é atrasada e, provavelmente, jogados fora, porque a
menor parte não chegou a tempo.
Já em ambientes IPv6, o QoS atua de maneira diferenciada para que as aplicações façam suas solicitações
evitando uma demora desnecessária no link de WAN. O termo frequentemente utilizado para descrever
este fenômeno é baixa latência. Streaming de áudio e vídeo são ótimos exemplos de aplicações que
requerem baixa latência através de alta prioridade. A fim de evitar uma quebra do sistema, um aplicativo
pode compartilhar várias conexões a partir da utilização de níveis de prioridade.
A sua distribuição pode ser feita em até sete níveis, da seguinte forma:
Nível 0 - Sem prioridade de especificar;
Nível 1 - O tráfego secundário (notícias);
Nível 2 - de transferência de dados automática (email);
Nível 3 - Reservado;
Nível 4 - Com a presença de transferência em massa (FTP);
Nível 5 - Reservado;
Nível 6 - O tráfego Interativo (Telnet, janela);
Nível 7 - Controle de tráfego (roteamento, gerenciamento de rede).
A fragmentação de um pacote IP, é, ainda hoje, uma grande fonte de atrasos de pacotes, ou alta latência,
sob o protocolo IPv4. Cada dispositivo conectado a uma rede possui um limite de dados definido dentro
do pacote Ethernet. Se um dado programa estiver gerando um fluxo de dados, como vídeo ou áudio, o
24
fluxo de dados será dividido em uma série de pacotes, onde cada um transportando utilizando o
máximo payload disponível por protocolo (layer 2) [32].
O IPv6 utiliza uma abordagem mais sofisticada para lidar com dados de aplicações solicitando tratamento
prioritário. O dispositivo de origem fará uma consulta o destino, a fim de determinar o tamanho máximo
da carga que exige ser tratada através de todo o caminho determinado pela conexão, ou seja, é feita uma
análise ponto a ponto, para garantir que não haja pontos de congestionamento, o que pode aumentar o
tempo de resposta de um sistema ou eventualmente causar a perda de um pacote. Uma vez feita esta
checagem, o IPv6 ajusta os seus próprios parâmetros de modo a não gerar pacotes com um volume de
dados superior a menor célula por onde este pacote trafegará (com o cuidado de não sub utilizar os
recursos).
Esta abordagem trás como benefícios a redução da fragmentação e também a latência, mas também pode
resultar em uma utilização ineficiente. Este mecanismo garante que, com um menor envio de dados por
frame, ele irá conseguir uma maior largura de banda com redução de delay [33]. A funcionalidade QoS,
assim como o IPSec, terá de ser incluída em cada dispositivo de rede, a fim de ser implementada de forma
otimizada, garantindo assim uma melhor utilização dos recursos da rede como um todo. Sem a utilização
desta funcionalidade em determinados dispositivos, resultará em um tratamento de pacotes sem
priorização, ou seja, de uma forma padrão com apenas uma camada adicional para passar, aumento o
tempo de entrega, diminuindo a qualidade da rede.
25
Redes IPv6: Considerações Finais
O IPv6 chegou e hoje é uma realidade a ser implementada. Então por se tratar de uma inovação, deve-se
atentar às vulnerabilidades e aos riscos potencializados por agentes externos à rede.
Portanto, antes de implementar quaisquer mudanças que impactem o funcionamento de sua organização,
deve-se estruturá-la, baseando-se em casos de sucesso, respeitando as premissas do protocolo e se
possível com apoio de consultorias especializadas no assunto.
Na seção de referências deste tutorial são indicadas algumas sugestões de leituras e exemplos que
complementam o conteúdo apresentado neste documento.
Referências
[1] Disponível em:
http://lacnic.net/pt/eventos/lacnicxiv/index.html
Acessado em: 20 de Setembro de 2011.
[2] Disponível em:
www.ietf.org/rfc/rfc791.txt
Acessado em: 20 de Setembro de 2011.
[3] Disponível em:
http://wilson-redes.sites.uol.com.br/redes1.html
Acessado em: 20 de Setembro de 2011.
[4] Disponível em:
http://faqinformatica.com/o-que-e-o-endereco-ip/
Acessado em: 20 de Setembro de 2011.
[5] Disponível em:
http://wilson-redes.sites.uol.com.br/redes1.html
Acessado em: 20 de Setembro de 2011.
[6] Disponível em:
www.ceptro.br/CEPTRO/PalestrasPublicacoes
Acessado em: 20 de Setembro de 2011.
[7] Disponível em:
http://www.ceptro.br/pub/CEPTRO/PalestrasPublicacoes/FISL10- Seguranca-v6.pdf
26
Acessado em: 20 de Setembro de 2011.
[8] Disponível em
http://www.ipv6.br/pub/IPV6/ArtigoNovaGeracaoComunicacao/132- 530-2-PB.pdf
Acessado em: 20 de Setembro de 2011.
[9] Disponível em
http://www.ipnews.com.br/telefoniaip/index.php?option=com_content&view=article&id=21514:comipv6-cada-pessoa-podera-ter-trilhoes-de-enderecos-ip&catid=89:internet&Itemid=578
Acessado em: 20 de Setembro de 2011.
[10] Disponível em:
www.ietf.org/rfc/rfc2131.txt
Acessado em: 20 de Setembro de 2011.
[11] Adaptação de artigo disponível em:
http://academy.delmar.edu/Courses/ITNW2313/IPv6/
Acessado em: 20 de Setembro de 2011.
[12] Disponível em:
http://fengnet.com/book/CCIE%20Professional%20Development%20Routing%20TCPIP%20Volume%2
0I/ch01lev1sec2.html
Acessado em: 20 de Setembro de 2011.
[13] Disponível em:
http://pkutwak.sites.uol.com.br/ipv6-tutorial.htm
Acessado em: 20 de Setembro de 2011.
[14] Disponível em:
http://www.ipv6.br/IPV6/ArtigoMobilidadeIPv6Parte02
Acessado em: 20 de Setembro de 2011.
[15] Disponível em:
http://www.slideshare.net/redesinforma/redes3
Acessado em: 20 de Setembro de 2011.
[16] Disponível em:
http://csrc.nist.gov/publications/nistpubs/800-119/sp800-119.pdf
27
Acessado em: 20 de Setembro de 2011.
[17] Disponível em:
http://www.abusar.org.br/ftp/pitanga/Redes/ArtigoIP.pdf
Acessado em: 20 de Setembro de 2011.
[18] Disponível em:
http://pt.wikipedia.org/wiki/IPsec#Hist.C3.B3ria_e_desenvolvimento
Acessado em: 22 de Setembro de 2011.
[19] Disponível em:
www.ietf.org/rfc/rfc2411.txt
Acessado em: 22 de Setembro de 2011.
[20] Disponível em:
http://waltercunha.com/blog/wp-content/uploads/downloads/2011/03/Resumo_IPSEC.pdf
Acessado em: 22 de Setembro de 2011.
[21] Disponível em:
http://www.rnp.br/newsgen/9907/ipsec3.html
Acessado em: 22 de Setembro de 2011.
[22] Disponível em:
http://technet.microsoft.com/pt-br/library/dd637767%28WS.10%29.aspx
Acessado em: 22 de Setembro de 2011.
[23] Disponível em:
www.rnp.br/newsgen/9907/ipsec3.html
Acessado em: 22 de Setembro de 2011.
[24] Disponível em:
http://www.ipsec-howto.org/x202.html
Acessado em: 22 de Setembro de 2011.
[25] Disponível em:
http://www.ipsec-howto.org/x202.html
Acessado em: 25 de Setembro de 2011.
28
[26] Disponível em:
http://arneill-py.sacramento.ca.us/ipv6mh/
Acessado em: 25 de Setembro de 2011.
[27] Disponível em:
www.ietf.org/rfc/rfc2827.txt
Acessado em: 25 de Setembro de 2011.
[28] Disponível em
http://www.cisco.com/en/US/docs/ios/ipv6/configuration/guide/ip6- multicast.html
Acessado em: 25 de Setembro de 2011.
[29] Disponível em:
http://www.ipv6.br/pub/IPV6/MenuIPv6CursoPresencial/IPv6-apostila.pdf
Acessado em: 25 de Setembro de 2011.
[30] Disponível em:
http://www.iana.org/assignments/ipv6-multicast-addresses
Acessado em: 25 de Setembro de 2011.
[31] Disponível em:
www.rederio.br/downloads/pdf/nt00800.pdf
Acessado em: 28 de Setembro de 2011.
[32] Disponível em:
http://netcert.tripod.com/ccna/internetworking/layer2.html
Acessado em: 26 de Setembro de 2011.
[33] Disponível em:
www.muncinelli.com.br/Artigos/voz.pdf
Acessado em: 27 de setembro de 2011.
29
Redes IPv6: Teste seu entendimento
1. Quantos bytes possui um cabeçalho IPv6?
32
40
64
128
2. Qual o protocolo utilizado pelo IPv6 para endereçamento de pacotes?
ICMPv6
ICMPv5
ICMPv4
ICMPv10
3. Qual das seguintes informações abaixo não está contida em cabeçalho IPv6?
Versão
Endereço de Origem
Endereço de Destino
IHL
30
Download