Endereçamento no IPv6

Propaganda
IPv6 (IPng)
IP de próxima geração
Material do curso
- Endereço da sala virtual
http://salasvirtuaisibta.universia.com.br/cursos/aplic/index.php?cod_curso=1028
Perspectiva
-
As redes IP “tradicionais” preenchem as
necessidades das novas redes?
- Grande abrangência: muito maior do que a existente
- Suporte a vários tipos de serviço, incluindo
- Serviços de tempo real
- Qualidade de serviço
- Segurança intrínsica
Histórico
A versão 4 do protocolo IP (a que usamos hoje) foi a primeira versão que
permaneceu quase inalterada desde o seu surgimento no final da década de
1970. A longevidade da versão 4 mostra que o projeto é flexível e poderoso.
A versão número 5 do protocolo foi descartada para evitar posteriores
confusões e ambigüidade e pulada depois de uma série de erros e
implementações mal-sucedidas.
•
Foram necessários vários anos para que o IETF pudesse projetar uma nova
versão desse protocolo: a versão 6. No fim de um primeiro momento, o
projeto ficou conhecido como SIP (Simple IP), porém hoje essa
nomenclatura é usada para Session Initial Protocol, não mais se
referenciando ao Simple IP. O Simple IP tornou-se base para uma proposta
estendida, que incluía idéias de outras propostas que ficou conhecida como
SIPP (Simple IP Plus).
•
Ao final dessa fase do projeto, o IETF decidiu atribuir à revisão do IP o nome
de IPv6 (ele também é conhecido como IPng – IP The Next Generation).
Histórico
•
Embora a força motriz por trás desse fenômeno de crescimento esteja
relacionada a aplicações de computadores, estamos verificando a demanda
cada vez maior de vários outros mercados, como:
–
–
–
•
•
Dispositivos Pessoais de comunicação: PDAs, telefones celulares, e outros dispositivos
de comunicação sem fio endereçáveis na rede. Todos esses dispositivos requerem um
endereço único e devem ser capazes de reconfigurar-se automaticamente com um endereço
correto quando passam de uma localidade remota para outra.
Entretenimento em rede: Vídeo sob demanda, som estéreo de alta qualidade e televisão
interativa serão acessíveis via Internet. Por exemplo, no universo de televisão conectada à
rede, toda TV torna-se uma máquina da Internet e precisa de um endereço IP.
Dispositivos controlados por rede: Uma gama de dispositivos de aplicações simples, tais
como dispositivos eletrônicos de segurança, etc. controlados por chaveamento analógico
atualmente, serão controlados via rede de pacotes e necessitam de endereçamento para
acesso à rede.
Cada um desses por si só já representa um considerável número de
terminais.
Além disso, outras necessidades estão surgindo: necessidade de roteamento
em larga escala, configuração e reconfiguração automática, autenticação e
encriptação de dados.
Histórico
Com a demanda de crescimento exponencial ininterrupto do
uso da Internet, temos enfrentado cada vez mais:
1. Problema de endereçamento IP: já vimos que “todos” os aparelhos
eletrônicos vão se ligar à rede
2. Falta de suporte para as novas aplicações, que exigem:
-
Reserva de recursos
Atrasos controlados
Variação de atraso (jitter) dentro de parâmetros específicos
O IPv4 foi criado em uma situação muito diferente... Assim, surgiu o
IPv6
Histórico
O que é IPv6 ?
•
IPv6 é uma nova geração do protocolo IP
•
Tem como principais objetivos:
1. Aumentar o número de endereços de rede e
2. Prover uma melhor eficiência na transmissão de pacotes nas
redes de computadores, além de suprir deficiências do IPv4.
• Características principais:
• Capacidade de endereçamento expandida: de 32 bits para 128 bits;
• Maior suporte para campos opcionais e extensões;
• Capacidade para identificação de fluxo (QoS nativo no protocolo);
• Autenticação e Privacidade baseada no IPSec;
http://www.tcpipguide.com/free/t_InternetProtocolVersion6IPv6IPNextGenerationIPng.htm
IPv4 x IPv6
1 - Formato do cabeçalho:
IPv4 x IPv6
2 – Espaço do Endereçamento:
• O novo espaço do endereço é a mudança mais evidente
–
O IPv6 representa um endereço usando 128 bits, contra os 32
bits usados no IPv4.
–
Assim, o espaço disponível, ou seja, o nro de endereços
disponíveis, agora é proporcional a 2128
IPv4 x IPv6
3 – Fragmentação
•
•
A fragmentação de pacotes IPv4 é realizada, usualmente, pelos gateways.
No caso do IPv6, isso é feito pela estação origem.
Vamos voltar a falar disso daqui a pouco
IPv4 x IPv6
4 – Outras diferenças
–
Três tipos de endereço (unicast, multicast e anycast)
–
Hierarquia de endereço estendida
–
Formato de cabeçalho flexível
–
Suporte para auto-reconfiguração e auto-endereçamento
–
Suporte para alocação de recursos
–
Segurança
Datagrama
A figura abaixo mostra o conteúdo e o formato de um cabeçalho IPv6
básico (40 bytes)
•
•
•
•
•
•
•
•
V (Version)
TF (Traffic Class)
FL (Flow Label)
PL (Payload Length)
NH (Next Header)
HL (Hop Limit)
SA (Source Address)
DA (Destination Address)
Formato e conteúdos de um cabeçalho básico IPv6. O tamanho de cada campo é dado em bits.
Fonte: RFC 1752, RFC 1883, RFC 2373.
Datagrama – campos do cabeçalho
• FL (Flow Label) – 24 bits
– Implementa um mecanismo de reserva de recurso
através da definição de “fluxos”
– Um fluxo é um “grupo” de datagramas associados
(por exemplo, os vários pacotes que pertencem a um
vídeo)
– O campo FL define um rótulo (um número) que é
usado pelos roteadores, em conjunto com o endereço
de origem, para associar o datagrama a um particular
fluxo.
Datagrama – alguns campos do cabeçalho
•
TF (Traffic Class) – 4 bits
–
–
Especifica a prioridade do pacote de dados.
Define dois grupos de pacotes:
– No primeiro (prioridade de 0 a 7), pacotes podem responder a
controle de congestionamento, a exemplo das redes Frame Relay.
Usado para pacotes que não sofrem com variações de tempo
– O segundo (prioridade de 8 a 15) corresponde a pacotes que não
podem sofrer controle de congestionamento ou seja, dados críticos
como voz e vídeo.
• NH (Next header)- 8 bits: indica o tipo do próximo
cabeçalho do datagrama (protocolo de camada mais alta
ou cabeçalho de extensão IP)
Datagrama – campos do cabeçalho
Valores do Campo Next Header
Cabeçalhos de extensão
•
Na versão IPv4, as várias opções do protocolo estão disponíveis no
cabeçalho padrão, tornando o processamento complexo (sempre)
•
O IPv6 usa um esquema mais flexível
–
–
Existe um cabeçalho obrigatório, presente em todos os datagramas
Opções são definidas através de cabeçalhos de EXTENSÃO, opcionais
Formato geral do datagrama IPv6 - Fonte: RFC 1752, RFC 1883, RFC 2373.
Cabeçalhos de extensão
Cada um dos cabeçalhos básico e de extensão contém um campo
PRÓXIMO CABEÇALHO (NEXT HEADER) que os roteadores
intermediários e o destino final utilizam para desmembrar o datagrama. O
processamento é seqüencial – o campo PRÓXIMO CABEÇALHO em cada
cabeçalho diz o que aparece em seguida.
Fonte: http://www.tcpipguide.com
Os cabeçalhos de extensão
• Os cabeçalhos de extensão podem ser
–
–
“salto-a-salto”: examinados em todos os saltos
ou “fim-a-fim”: significativo apenas para o último salto.
• Existe uma ordem para a montagem dos cabeçalhos:
–
Para diminuir o tempo de processamento, o IPv6 exige que os
cabeçalhos de extensão utilizados por roteadores intermediários
sejam colocados antes dos cabeçalhos de extensão usados pelo
destino final.
Os cabeçalhos de extensão: formato geral
TIPO
TAMANHO
VALOR
Cada opção é descrita por um conjunto de três informações:
• Tipo
• Tamanho do campo de dados (o valor)
• Valor (os dados em si)
Os cabeçalhos de extensão: formato geral
Fonte: http://www.tcpipguide.com
Cabeçalho de Fragmentação
•
•
•
No IPv6, a fragmentação é fim-a-fim, sendo que nenhuma
fragmentação ocorre nos roteadores intermediários.
A origem, que é responsável pela fragmentação, tem duas escolhas:
ela pode usar a MTU (*) mínima garantida de 1280 octetos ou
realizar a descoberta de MTU do caminho (Path MTU Discovery)
para identificar a menor MTU ao longo do caminho até o destino.
De qualquer forma, a origem fragmenta o datagrama de modo que
cada fragmento seja menor que a MTU esperada do caminho.
CONSEQUENCIA: o IPv6 não suporta alterações de rota.
(*)MTU – Maximum Transmit Unit
Cabeçalho de Roteamento
•
O cabeçalho de roteamento contém uma lista de um ou mais nodos
que devem ser "visitados" no caminho para o destino. Os cabeçalhos
de roteamento sempre começam com um bloco de 32 bits divididos
em 4 campos de 8 bits cada
< ENDEREÇO 1 >
< ENDEREÇO 2>
Cabeçalho de Roteamento
• Campos do cabeçalho de roteamento:
–
–
–
Next Header (8 bits): identifica o próximo cabeçalho;
Header extension length (8 bits): tamanho do header em
unidades de 64 bits;
Routing type (8 bits): identifica um tipo de roteamento;
– O único tipo definido até o momento é o “roteamento de origem não
estrito” (Routing type = 0)
–
Segments left: (8 bits): número de nodos intermediários (listados
explicitamente) que devem ainda ser visitados antes do destino.
Cabeçalho de Roteamento
•
O cabeçalho para o roteamento de
origem não estrito tem mais 8 bits
reservados e 24 bits de “strict/loose bit
map”. Esses bits são numerados da
esquerda para a direita, cada um
correspondendo a um hop, indicando
se o próximo destino deve ser um
vizinho deste (1 = strict) ou não (0 =
loose)
Endereçamento no IPv6
1030 endereços IP por habitante da Terra!
Endereçamento no IPv6
• Para fazer com que esse diagrama fique na escala correta, o retângulo do
espaço de endereçamento do IPv6 deveria ser representado por um quadrado
do tamanho do sistema solar!!
Fonte: http://www.tcpipguide.com
Endereçamento - Notação
Os endereços IPv6 possuem 128 bits (16 bytes) que são divididos em 8
blocos separados por ":” (dois pontos). Cada bloco possui 16 bits em
notação hexadecimal.
Forma Padrão: X:X:X:X:X:X:X:X, onde cada X representa um valor
hexadecimal. Ex.: FE80:0000:0000:0000:0202:B3FF:FE1E:8329
Forma Abreviada: quando um endereço possui uma seqüência de zeros,
existem duas possíveis formas de abreviação.
 A primeira simplificação é possível quando uma das divisões do endereço
(16 bits) possui apenas zeros, neste caso não é necessário escrever todos
os zeros apenas um:
Endereçamento - Notação
 A segunda é possível quando várias divisões consecutivas do endereço
possuem apenas zeros, nestes casos usa-se o operador "::" para indicar
grupos de 16 bits (divisões) contendo apenas zeros. Esta notação só pode
ser utilizada uma vez no endereço para substituir uma seqüência de zeros
iniciais e/ou finais deste:
Endereçamento - Notação
Combinação IPv4/IPv6: Combinação de Endereços IPv4 e IPv6, em
ambientes que utilizam simultaneamente endereços IPv4 e IPv6 pode-se
utilizar uma notação onde os formatos dos endereços das duas versões são
representados no mesmo endereço. O formato do endereço segue a
seguinte sintaxe: X:X:X:X:X:X:d.d.d.d
Ex.: 0000:0000:0000:0000:0000:0000:87.100.68.3
0000:0000:0000:0000:0000:FFFF:129.144.52.38
Endereçamento
Tipos de Endereços:
• Unicast: endereço utilizado para identificar uma interface IPv6.
• Multicast: endereço utilizado para especificar um grupo de interfaces
• Anycast: especifica um conjunto de computadores com o mesmo prefixo;
o datagrama é encaminhado pelo caminho mais curto para um
deles.
• Observação: não existe endereço de broadcast em IPv6.
Alocação de espaços
•
•
•
Definida na RFC 3513 (substitui a 2373)
Diferentes “categorias” de endereço são codificadas nos primeiros bits do
prefixo (do terceiro ao décimo)
Exemplos de alguns espaços já atribuídos pelo IETF:
Bits iniciais
0000 0000
001
Fração do espaço total
1/256
1/8
Alocação
Endereços especiais
(loopback e outros)
Endereços Unicast (com
agregação)
1111 1110 10
1/1024
Endereço Link local Unicast
1111 1111
1/256
Endereços Multicast
http://www.tcpipguide.com/free/t_IPv6AddressSpaceAllocation-2.htm
Alocação de espaços
•
•
Uma maneira mais simples de entender a alocação dos endereços IPv6 é
considerar que o espaço de endereçamento foi dividido em oito partes
(oitavas):
–
A que tem endereços que começam com “001” foi reservada para
endereços Unicast
–
A que tem endereços que começam com “000” foi reservada para gerar
blocos especiais menores (nem todos estão definidos)
–
A que tem endereços que começam com “111” foi reservada para subblocos de endereços locais e multicast (também, nem todos estão
definidos)
–
Todos as outras cinco “oitavas” do espaço de endereçamento não
foram ainda atribuídas (e não estão em uso).
RESULTADO: apenas 14% do espaço total de endereços está
atualmente em uso!! 86% dos endereços ainda estão reservados
para “uso futuro”.
Formato geral do endereço Unicast
•
•
Os endereços Unicast (a oitava que começa com “001”) são os endereços
destinados às interfaces de sistemas como computadores e dispositivos
genéricos
Como são os mais comuns, esses endereços têm uma estrutura bem
definida, chamada de “Global Unicast Address Format”
Nome do
campo
Prefix
Tamanho
(em bits)
“n”
Descrição
Global Routing Prefix: o identificador da rede
ou prefixo do endereço, usado para roteamento
- Definido pelos organismos gestores da Internet
Subnet ID
“m”
Subnet Identifiier: número que indica uma subrede dentro da rede (local)
- Definido internamente, pelos administradores de
rede (ISP ou empresas)
Interface ID
128-(n+m)
Interface ID: identificador único dentro de uma
rede e sub-rede (não pode ter outro igual)
- Definido pelo administrador da rede
Formato geral do endereço Unicast
•
•
Em teoria: “n” e “m” podem ter qualquer valor
Mas, na prática, adotou-se:
–
–
•
Prefixos têm 48 bits, ou seja, “n” = 48
Subnet IDs têm 16 bits, ou seja, “m” = 16
O formato geral de um endereço Unicast então fica
001
Os três primeiros bits são iguais a “001”
Fonte: http://www.tcpipguide.com/free/t_IPv6GlobalUnicastAddressFormat-2.htm
Formato geral do endereço Unicast
•
Dada essa formatação, empresas “normais” receberão um bloco de
endereços definido por um prefixo de 48 bits
– O campo Subnet ID pode ser usado para segmentar suas subredes
internas (casa haja necessidade)
•
O campo de Prefixo tem apenas uma restrição: os três primeiros bits
são “001”. Houve muita discussão, inclusive com a publicação de
uma RFC já obsoleta, sobre a estruturação dos 45 bits restantes.
Atualmente, não há um formato para o campo do Prefixo. Ele foi
deixado em aberto para que organizações de distribuição nacional
(como a Fapesp) e ISPs distribuam suas redes a seus clientes da
maneira mais eficiente possível.
O mais importante é considerar que não há estruturas fixas (classes
como no IPv4) para manter o esquema de endereçamento flexível.
•
•
Formato geral do endereço Unicast
•
•
•
•
Relembrando: usando 64 bits para o prefixo e o identificador de subrede,
ainda “sobram” 64 bits para o identificador da interface.
No padrão IPv4, endereços IP não tinham nenhuma relação com os
endereços de nível 2 (MAC).
Agora, no padrão IPv6, há espaço suficiente para se fazer um mapeamento
direto entre esses dois endereços.
O formato EUI-64, ligeiramente modificado, (definido para endereços MAC
pelo IEEE) está sendo sugerido como base para o identificador da
interface.
– Problema desse esquema: toda vez que o hardware mudar, o
endereço IP da interface também mudará.
Endereços Unicast especiais
• Além dos endereços padrão descritos até agora,
foram definidos também endereços especiais para
necessidades específicas.
• Existem dois tipos de endereços especiais
–
Reservados e privados
• Endereços Reservados:
–
–
prefixo iniciado por “0000 0000”
Usados para integração com endereços IPv4, para
endereço de loopback e para definir um endereço “não
especificado”
Endereços UNICAST reservados
Endereços IPv6 compatíveis com IPv4: este tipo de endereço é utilizado
para fazer tunelamento de pacotes IPv6 dinamicamente sobre uma
infra-estrutura IPv4.
Exemplo: ::200.1.10.25
Endereços IPv6 mapeados em endereços IPv4: este tipo de endereço é utilizado
para representar endereços de host que somente possuam endereçamento IPv4 e
também quando um host IPv6 envia um pacote para um nó que só suporta IPv4.
Exemplo: ::FFFF:200.1.10.25
Endereços Unicast reservados
• Endereço de loopback:
–
O endereço “0:0:0:0:0:0:0:1” ou “::1” foi reservado para
testes de interface
–
Nenhuma interface pode ter esse endereço
• Endereço “não especificado”
–
O endereço “0:0:0:0:0:0:0:0” ou “::” foi reservado para
funções específicas nos protocolos de auto-endereçamento
–
Nenhuma interface pode ter esse endereço
Endereços UNICAST privados
•
Esses endereços não podem ser roteados fora da rede e
portanto, são usados exclusivamente dentro dessa mesma rede
O endereço de link local é utilizado em um único link para configuração de
auto-endereçamento, descoberta de vizinhança ou quando nenhum roteador
está presente. Os endereços deste tipo seguem a seguinte estrutura:
O endereço de site local foi projetado para ser utilizado em um único site sem
a necessidade de um prefixo global (similar aos endereços privados do IPv4).
Este endereço possui a seguinte estrutura:
Endereços MULTICAST
• Os endereços multicast são utilizados para identificar um conjunto de nós.
• Um endereço multicast é identificado através do prefixo FF (1111 1111) nos bits
mais significativos do endereço.
• O protocolo IPv4 já suportava o endereçamento multicast,
mas este foi redefinido e melhorado no IPv6. O formato de um endereço
multicast no IPv6 segue o formato:
Endereços MULTICAST
• Os bits do campo “escopo” definem o alcance do endereço, que pode ir
de um segmento de rede à toda a Internet.
Tabela dos bits do campo ESCOPO
Fonte:http://www.tcpipguide.com/free/t_IPv6MulticastandAnycastAddressing.htm
Endereços MULTICAST
Fonte:http://www.tcpipguide.com/free/t_IPv6MulticastandAnycastAddressing.htm
Endereços ANYCAST
• Os endereços anycast são endereços atribuídos a um grupo interfaces de rede.
• Definida pela RFC 1546
• A princípio, os endereços anycast possuem dois usos:
• identificar um grupo de roteadores que provê acesso a um determinado
domínio;
• identificar todos os roteadores da empresa que provêem acesso à Internet.
• A diferença em relação ao Multicast é que o datagrama é entregue para apenas
uma interface (não todas)
Endereços ANYCAST
• Os endereços Anycast não tem nenhum formato especial
• Basta “atribuir” o mesmo endereço Unicast a mais de uma interface.
• Os endereços anycast têm as seguintes restrições:
- Um endereço anycast não pode ser utilizado como endereço
de origem
- Um endereço anycast não pode ser assinalado a um host,
mas somente a um roteador IPv6 (pelo menos por enquanto)
Endereçamento - Autoconfiguração
• A autoconfiguração de endereços permite uma operação plug-and-play de hosts
na Internet. Quando a máquina for ligada, ela deve automaticamente associar um
endereço IP à sua interface de rede.
• Existem duas formas de autoconfiguração no IPv6:
• configuração stateful: onde há um servidor de configuração, com o qual o host se
comunica.
• configuração stateless: onde o host constrói seu endereço IP a partir do seu endereço
de interface de rede. Esse endereço é único, aplicado apenas para hosts e não para
roteadores. Não necessita de configuração manual, mas não especifica os servidores de
DNS, o prefixo, lifetime e default route. Assume que a interface tem um único interface
ID.
• Com base no seu endereço de placa de rede, resta, portanto, saber o prefixo ao
qual o host pertencerá. Uma forma é se usar o prefixo de uso local, que atende essa
necessidade. Para redes que não estão conectadas, é uma ótima solução. Para
redes conectadas, o roteador dessa rede deve informar aos hosts o devido prefixo
da rede.
Maiores informações, consulte a RFC 2462
Conclusão
• Aumento no número de endereços (de 232 a 2128)
• Simplificação do header aumentando a eficiência
• Arquitetura hierárquica de rede aumentando eficiência de roteamento
• Suporte para a maioria dos protocolos de roteamento
• Suporte para autoconfiguração e plug-and-play
• Eliminação da necessidade de NAT
• Implementação de IPSec e QoS embutida no protocolo
• Suporte avançado para Mobile IP e dispositivos móveis
• Aumento no número de endereços multicast
Fim
Download