O Protocolo Ipv6
Prof.Eraldo Silveira e Silva
Curso de Telecomunicações
CEFET-SC-Unidade São José
[email protected]
IP version 6 (IPv6)
A “não” tão nova versão do “Internet
Protocol”
●
●
●
●
Especificado pela RFC 2460 de 1998
Deve substituir o IPv4 [RFC-791] de 1981
NÃO É UM NOVO PARADIGMA DE REDE
Incrementado por várias outras RFCs, por exemplo:
–
–
RFC 2463: "ICMP for the Internet Protocol Version 6
(IPv6)"
RFC 3775: “Mobility Support in IPv6”
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Revendo o “velho” e eficiente IPv4
●
O protocolo IP (“Internet Protocol”)é integrante da
chamada arquitetura TCP/IP e fornece um serviço
com as seguintes características:
–
–
–
encaminhamento de pacotes (comutação de pacotes)
com melhor esforço (“best-effort”);
não confiável: entrega de pacotes não é garantida;
sem conexão: cada pacote é independente do outro –
não existem circuitos virtuais;
O que o IP define
●
●
●
O formato dos pacotes incluindo definição do
formato de endereços;
O roteamento, ou seja a determinação do caminho
dos dados através das redes;
As regras que hospedeiros e roteadores devem
seguir para a entrega não confiável de dados;
A Camada IP vista do seu Interior
Camada de Aplicação
Camada de Transporte: TCP,UDP,SCTP
Protocolo IP
Protocolos de Roteamento
- seleção de caminho:
RIP, OSPF , BGP
tabelas
de
Roteamento Protocolo ICMP: erros e
avisos
Camada de Enlace e Física: ethernet, ATM, token ring etc
Camada
de
Rede
O formato do datagrama IPv4
0
4
Versão
16
8
Tamanho
Cabeçalho
Tipo de Serviço
(atual DSCP | ECN)
31
Comprimento Total
Offset de Fragmento
Flags
(O,DF,MF)
Identificação
Time to Live (TTL)
24
19
Protocol
Header Checksum
Endereço Fonte - Source IP Address
Endereço Destino - Destination IP Address
IP Options (se tiver)
Dados
Padding
Cenário de Comunicação IPv4
Animação do Funcionamento do IP
Aplicação
Transporte
tudo bem
porta
dest=1000
porta
porta
tudo bem
fonte=2000
fonte=10
IP DEST
205.200.100.1
IP FONTE
200.135.233.1
porta
dest=1000
porta
porta
tudo bem
fonte=2000
fonte=10
MAC ADDRESS
MAC FONTE
IP DEST
FF:00:55:01:02:03 FA:28:51:00:33:12 205.200.100.1
IP FONTE
200.135.233.1
porta
dest=1000
porta
porta
tudo bem
fonte=2000
fonte=10
Rede (IP)
Enlace/Física
Cenário de Comunicação IPv4
ARP broadcast: quem é
200.135.233.3
ARP: Sou eu
FF:00:55:01:02:03
Pacote IP de Tx1 para Rx1
ARP broadcast: quem é
205.200.100.1
ARP: Sou eu
F5:41:00:00:02:03
Pacote IP de Tx1 para Rx1
Segredos do Sucesso do Ipv4 /
Arquitetura TCP/IP
●
●
●
●
●
Simplicidade: administração, sistemas
embarcados;
Resiliência: a capacidade de um material voltar ao
seu estado normal depois de ter sofrido uma
pressão – ex: congestão, falta de memória;
Escalabilidade: partes do sistema administrados
independententemente (ASs);
Flexibilidade e Extensibilidade: soluções para
novos problemas – NAT, CIDR, novos serviços;
Autoconfiguração: DHCP, PPP
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Principais Melhorias do IPv6
●
●
●
●
●
●
●
Ampliação do Espaço de Endereçamento de 32
bits para 128 bits;
Melhoria na estrutura (formato) do pacote IP;
Melhoria no processo de autoconfiguração;
Inserção de mecanismos para tratamento de
mobilidade: MIPv6;
Inserção de mecanismos de segurança: IPsec
Inserção de mecanismos para facilitar o
gerenciamento do QoS
O ICMPv6 assume um papel de grande
importância;
História do IPv6
●
No início era IPv4...
–
–
–
–
criado no início da década de 70
substituiu o NCP na Internet em 1983
uma fórmula que deu certo: “best effort”
não se esperava um crescimento do uso:
●
●
●
84: 1000 hosts
87: 10000 hosts
92: 1000000 hosts
História do IPv6
●
●
Endereços IP do IPv4 possuem 32 bits: em torno
de 4.3 bilhões de endereços. Não existe um para
cada habitante!!!
O IPv4 não inclui em seu projeto original:
–
–
–
Mobilidade: (IP regional é uma estensão);
Segurança (Ipsec é um “remendo”);
Qualidade de serviço (não sejamos injustos: TOS)
História do IPv6
●
●
●
1993: Internet Protocol Next Generation (IPng)
area, criado pela IETF
1994. RFC 1883 – Primeira especificação
1998: RFC 2460 – Especificação atual
Precisamos realmente do IPv6?
●
●
●
EUA, com 5 % da população mundial, possui 60
% dos endereços Internet;
Os outros 40 % ficam para o resto! A Ásia
possui mais de 50 % da população mundial: são
os maiores interessados no IPv6;
O uso de classes no IPv4 atribuiu faixas
gigantescas de endereços para algumas poucas
empresas/instituições;
Precisamos realmente do IPv6?
●
●
●
O NAT pode ser usado para contornar a falta de
endereços, mas traz com eles problemas de
gerenciamento;
A Ásia, Europa e EUA se movimentam no sentido de
construir backbones e produtos IPv6;
Pode-se migrar sem traumas, de forma gradual para o
IPv6.
Precisamos realmente do IPv6?
●
●
Ver artigo (junho/2007):
www.ipv6tf.org/pdf/the_choice_ipv4_exhaustion_
or_transition_to_ipv6_v4.4.pdf
Transcrevo aqui uma parte:
Onde existe IPv6?
●
e:
O “Office of Management and Budget” (OMB),
ligado a presidência dos EUA, anunciou em
julho de 2005 que todas as agências federais
deveriam estar prontas para o IPv6 a partir de
2008.(www.whitehouse.gov/omb/memoranda/fy
2005/m05-22.pdf)
Onde existe IPv6?
●
●
●
●
Backbone qbone ligando 50 países e 1000 hosts (
http://www.6bone.net); o mais antigo
O IPv6 Forum (http://www.ipv6forum.com)
coordena as ações mundiais.
A International Task Force (http://www.ipv6tf.org
) coordena ações regionais, usando forças tarefas
localizadas nos EUA e na Europa;
Nos linux's, freebsd's etc...
Onde existe IPv6?
●
●
●
●
O Japão, desde 2001 investe pesado em
backbones IPv6;
A China e Coréia também desenvolvem seus
backbones;
O IMS do 3G é baseado no IPv6
(http://www.reuters.com/article/pressRelease/id
US213525+05-Mar-2008+MW20080305)
O MIPL está nas mãos dos orientais (ver
http://www.linux-ipv6.org/)
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
A Estrutura do pacote IPv6
●
●
Nosso estudo do Ipv6 será baseado inicialmente
nos cabeçalhos do protocolo.
O pacote Ipv6 sempre possui seu cabeçalho de
40 bytes:
Cabeçalho Ipv6
Dados Transportados
O que saiu do cabeçalho do IPv4
Header Length (o header Ipv6 possui tamanho fixo)
● Identification (Path MTU Discovery)
● Flags(Path MTU Discovery)
● Fragment Offset(Path MTU Discovery)
● Header Checksum (processamento + leve)
●
Estrutura Geral do Pacote
1
40
bytes
16
32
Alguns Valores do Next Header
field
Extensões do Cabeçalho IPv6
(RFC 2460)
●
●
●
●
●
●
Hop-by-Hop Options header
Routing header
Fragment header
Destination Options header
Authentication header
Encrypted Security Payload header
Extensões de headers
●
●
●
São colocados entre o cabeçalho IPv6 e o pacote
de nível superior;
Identificados pelo Next Header Field;
São examinados unicamente pelo nó
identificado no endereço de destino, a não ser o
cabeçalho hop-by-hop
Exemplo de extensões
Cabeçalhos de Opções Hop-byHop
●
●
●
Carrega informações que devem ser processadas
por todos nós ao longo do caminho;
As informações poderão ser utilizadas para
reserva de recursos (exemplo RSVP), para
encontrar destinos de multicast entre outras;
Deve seguir necessariamente o cabeçalho IPv6;
Opção Jumbogram da extensão
hop-by-hop
●
●
Permite que pacotes maiores que 64K sejam
transmitidos.
O campo Option Data Lenght, de 32 bits
informa o tamanho dos dados, que devem se
seguir ao mesmo;
Opção Router Alert do hop-by-hop
●
Informa ao roteador que a informação que se
segue deve ser utilizada para fins de roteamento,
tal como o RSVP(Resource Reservation
Protocol) e MLD (Multicast Listener
Discovery).
Extensão Cabeçalho de
Roteamento
●
●
Permite informar um conjunto de roteadores que
devem ser visitados até o seu destino final.
Aplicações na qualidade de serviço
Cabeçalho de Fragmentação
●
●
●
O IPv6 usa o “PATH MTU Discovery” para
determinar a máxima MTU na trajetória do
pacote;
Se o pacote for maior que esta MTU então ele é
fragmentado na fonte; roteadores ao longo da
rota não fragmentam o pacote;
O destino remonta o pacote fragmentado;
Destination Options Header
●
●
Carrega informações a serem examinadas
apenas pelo destino final do pacote;
Pode aparecer antes ou depois do Router
Header; se aparece antes é processado por cada
um dos roteadores no caminho;
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Endereçamento IPv6
Notação
●
●
Endereçamento de 128 bits: espaço de 2exp(128)
endereços!!
Notação hexadecimal da forma:
–
–
●
2001:0DB8:5002:2019:1111:76ff:FEAC:E8A6
agrupamento de 16 bits separados por “dois pontos”;
Regras para simplificar a representação de zeros:
–
0237:0000:ABCD:0000:0000:0000:0000:0010 pode ser
transformado em:
●
237::ABCD:0:0:0:0:10 ou, melhor ainda, 237:0:ABCD::10
Endereçamento IPv6
Tipos de Endereços
●
●
●
Unicast: identifica um hospedeiro (interface);
Multicast: identifica um conjunto de hospedeiros.
O Ipv6 eliminou o broadcast e enriqueceu o
processo de multicast;
Anycast: uma novidade no Ipv6. É um endereço
que pode ser atribuído a múltiplos hospedeiros. O
roteamento da Internet permite encaminhar pacotes
ao endereço anycast mais próximo;
Endereçamento IPv6
Arquitetura do Endereço Unicast
●
●
●
Endereço global: endereços roteáveis na Internet.
Apresentam uma estrutura hierárquica. Interfaces
configuradas com máscaras de 64 bits;
Endereço link-local: traz a noção de endereços
privados dentro de uma rede. Não são roteáveis e
começam com 1111111010: exemplo:
FE80:A0000::1
Outros: site-local , IPv4-compatible IPv6
Endereços Notáveis
●
●
●
Endereço Loopback
Endereço não especificado
Endereços Multicast:
–
–
::1
::
FF02::1 – todos os nós do enlace
FF02::2 – todos os roteadores do enlace
Um cenário de Redes Ipv6 com
seus endereços
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
ICMPv6
●
●
Reporta erros se pacotes não podem ser processados
apropriadamente e envia informações sobre o status da
rede;
Apresenta várias melhorias em relação ao ICMPv4, por
exemplo:
–
–
–
–
IGMP que trata multicast foi incorporado no icmpv6;
ARP/RARP foi incorporado;
Neighbour Discovery (descoberta de informações da
vizinhança);
IP Móvel: mensagens de registro de localização
Formato geral
Tipos de Mensagens
●
●
De erro: high-order bit do campo type =0
De informação: high-order bit do campo type =1
Next Header para ICMP = 58H
Exemplo de Mensagem de Erro
●
Destination Unreachable (message type 1):
–
–
–
–
–
–
–
0 = no route to destination,
1 = communication with destination administratively
prohibited,
2 = beyond scope of source address,
3 = address unreachable,
4 = port unreachable,
5 = Source address failed ingress/egress policy,
6 = reject route to destination
Tipos de Mensagem de
Informação
●
●
●
Echo request
Echo Reply
Neighbor Discovery:
–
–
–
–
–
–
Router Solicitation
Router Advertisement
Neighbor Solicitation
Neighbor Advertisement
The ICMP Redirect Message
Inverse Neighbor Discovery
Neighbor Discovery (ND)
●
Neighbor Solicitation and Neighbor
Advertisement:
–
–
–
equivalente ao ARP.
Pode ser usado para Duplicate IP Address Detection
(DAD);
Apóia a construção do “neighbor cache”
Cenário de Descoberta de
Duplicação de Endereço
Router Solicitation and Router
Advertisement
●
●
●
Roteadores da rede (local) divulgam a sua
presença através de envios periódicos de
“Router Advertisements”
Um host Ipv6 pode solicitar roteadores através
de Router Solicitation
Múltiplos routers possíveis com alternativas
para determinadas redes;
Router Solicitation and Router
Advertisement
Autoconfiguração
●
●
É um dos pontos fortes do IPv6
Pode ser:
–
–
Stateful: com DHCPv6
Stateless: com apoio do ICMPv6 -> combinando
prefixos divulgados pelos roteadores com o MAC
(ou número randômico); na ausência de roteadores
usa-se o FE80 para gerar “link-local address”
Passos para autoconfiguração
●
●
●
●
●
1-Um endereço tentativa é formado com o prefixo
FE80 (link-local address) e associado a interface;
2-O nó se junta aos grupos multicasting;
3-Uma mensagem “Neighbor Solicitation” é enviado
com o endereço tentativa como target address. Se
detectado IP duplicado o nó deverá ser configurado
manualmente;
O nó realiza um “Router Solicitation” para o endereço
FF02::2. (grupo multicast dos roteadores);
Todos roteadores do grupo multicast respondem e o nó
se autoconfigura para cada um deles;
Formação do Endereço a partir do
MAC
●
●
Os 64 bits do identificador de hospedeiro são
formados pela inserção de FFFE entre o terceiro e
quarto byte do MAC e complementando-se o
segundo bit menos significativo do primeiro
Supondo que o hospedeiro possui endereço MAC
de 11:AA:BB:2A:EF:35 e o prefixo recebido do
Roteador (via Advertência) é 2001:10:/64 então o
endereço formado é:
2001:10::11A8:BBFF:FE2A:EF35
PATH MTU Discovery
●
●
●
●
O nó assume a MTU do seu link e envia o pacote para
destino;
Caso algum roteador da rota detecte que o pacote é
muito grande para o MTU então ele avisa o nó fonte
com ICMPv6 Packet Too Big (que inclui o tamanho da
MTU do enlace problema);
O nó usa esta nova MTU para encaminhar o pacote
novamente ao seu destino;
O processo todo pode se repetir;
Cenário de Descoberta de PATH
MTU
Multicast Listener Discovery
(MLD)
●
●
●
●
●
Endereça um grupo de hosts ao mesmo tempo: lembre
que broadcastings não podem ser roteados e são
processados por cada nó da rede...
Pacote multicast é processado somente por nós que
fazem parte do grupo;
Pacotes multicast podem ser roteados;
Roteadores usam o MLD para descobrir nós que
escutam nos endereços multicast (em cada link).
Nós que escutam usam mensagens “Multicast Listener
Reporttype” para se registrar nos roteadores;
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Segurança no IPv6
●
●
●
●
IPv4 não tem aspectos de segurança no projeto;
Alguns mecanismos rudimentares eram usados
na aplicação: ftp e telnet com senhas
IPsec foi introduzido mais tarde: tem problemas
de interoperabilidade
IPv6 foi pensado com mecanismos de segurança
logo no início;
CIA e AAA
●
●
●
●
●
●
Confidentiality -> encryption
Integrity -> checksum
Availability
Authentication: assegurar que as pessoas são o
que dizem que são...
Authorization: assegurar determinados direitos
de acesso a usuários autenticados;
Accounting: coleta de informações;
O IPsec
●
●
IPsec: definido na RFC 2401 e atualizado na
RFC 4301;
Descreve uma arquitetura de segurança para o
IPv4 e IPv6;
IPsec Framework
●
Conjunto de mecanismos para colocar segurança
na camada de rede IP;
−
−
−
−
−
Protocolo para criptografar (Encapsulating Security
Payload, ESP);
Protocolo para autenticação (Authentication Header,
AH );
Política de segurança entre pares comunicantes;
Gerenciamento de Chaves;
Politica de Uso de algoritmos;
Security Associations (SAs)
●
●
Acordo entre pares: define a forma de
autenticação, criptografia e chaves a serem
utilizadas;
SAs são unidirecionais;
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
QoS na Internet
●
●
●
Originalmente pacotes são tratados na lei do
melhor esforço: primeiro a chegar / primeiro a sair;
Como dar tratamento diferenciado a fluxos de
aplicações de tempo real?
IETF propõe dois modelos:
–
–
serviços integrados e
serviços diferenciados;
Serviços Integrados
●
●
●
Os roteadores são configurados no caminho (entre
os pontos finais) de um determinado fluxo a fim de
proporcionar um tratamento especial ao pacotes
deste fluxo;
Necessita de um protocolo para configurar os
estados ao longo da rota: RSVP e mais
recentemente o NSIS;
Problemas: escalabilidade. Minimizada se reserva
for apenas nas bordas da rede;
Serviços Diferenciados
●
●
●
●
Fluxos são agregados na entrada de um domínio,
através de uma marcação nos seus pacotes: código
DSCP;
Roteadores dentro do domínio são configurados
para um comportamento específico em relação ao
código do agregado: PHB;
Prós: modelo escalável;
Contras: não se consegue a mesma precisão fim-afim do modelo Intserv;
É possível combinar os modelos
QoS e IPv6
●
●
●
O IPv6 possue mecanismos flexíveis para suportar o
diffserv e o intserv;
Código DSCP no cabeçalho IPv6: permite a
agregação de fluxos para tratamento único pelos
roteadores;
Flow Label: facilita a identificação de um fluxo no
modelo intserv: viabiliza reconhecimento do fluxo
com o pacote de transporte criptografado por ESP;
QoS e cabeçalhos do IPv6
●
●
Cabeçalhos Hop-by-Hop: facilitam a visita de
protocolos de reserva em roteadores ao longo do
caminho entre dois pontos finais. A opção Router
Alert do Hop-by-hop obriga o processamento do
pacote em cada roteador;
Cabeçalhos de Extensão de Roteamento: força a
passagem do pacote (fluxo) por um determinado
caminho;
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Roteamento e IPv6
●
Roteamento dentro de um sistema autônomo:
Protocolo OSPF para o IPv6 (RFC 2740) e RIPng;
–
●
Lembre-se que o OSPF calcula rotas baseado em
decisões técnicas usando o « link state »;
Roteamento entre domínios: BGP-4
–
–
O BGP-4 não foi modificado para o IPv6. No entanto, ele
é flexível suficiente para transportar suas informações;
Lembre que o BGP-4 permite configurar políticas para
roteamento entre domínios.
Roteamento Multicast
●
●
●
●
Permite o encaminhamento de pacotes a partir de um
emissor até um grupo de receptores;
O grupo é identificado por um endereço de grupo
multicast (o fluxo também é identificado pelo
endereço fonte);
Os receptores podem estar em diferentes redes.
Lembre: o multicast em um enlace não necessita de
todo este suporte aqui descrito;
O roteamento deve minimizar a multiplicação dos
pacotes ao longo do caminho.
O que é necessário para o Multicast
funcionar
●
●
●
●
O roteamento multicast deve estar habilitado em
todos os roteadores dos caminhos;
O roteador recebe um pacote multicast e o
encaminha para todas as interfaces onde existem
receptores registrados;
Como um receptor se registra? Através do protocolo
MLD (lembrar do ICMPv6);
Como os roteadores trocam informações de registro?
Protocolo PIM (Protocol Independent Multicast);
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Impacto do IPv6 em protocolos de
Aplicação
●
●
●
●
O impacto é mínimo nestes protocolos mas
modificações são necessárias onde existir
referências aos endereçamentos IP;
Foram acrescentados registros novos no DNS mas
os clientes DNS devem se adaptar;
O DHCP foi adaptado ao ipv6 (DHCPv6);
E o SIP? Ver “Migrating SIP-Based
Conversational Services to IPv6: Complications
and Interworking with Ipv4” no site da
www.ieee.org
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <ctype.h>
/* cliente UDP ipv6 - ver RFC 3496 - Basic Socket Interface Extensions for IPv6 */
int main()
{
struct sockaddr_in6 addr;
char line[100];
int sd, portnum = 9999;
char enderecoIPv6[40]= "2000::1"
bzero(&addr, sizeof(addr));
if ( (sd = socket(AF_INET6, SOCK_STREAM, 0)) < 0 )
panic("socket");
addr.sin6_family = AF_INET6;
addr.sin6_port = htons(portnum);
if ( inet_pton(AF_INET6, enderecoIPv6, &addr.sin6_addr) == 0 )
abort();
if ( connect(sd, (struct sockaddr*)&addr, sizeof(addr)) != 0 )
abort();
fgets(line, sizeof(line), stdin);
send(sd, line, strlen(line)+1, 0);
close(sd);
}
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Interoperabilidade
●
●
●
Técnicas Dual-Stack: Pilhas ipv4 e ipv6 convivem
nas mesmas máquinas. Distribuição de serviços
possível, por exemplo, com DNS;
Técnicas de Tunelamento: O tráfego Ipv6 é
tunelado em Redes Ipv4. Permite ligar nuvens
Ipv6 com uma nuvem Ipv4;
Técnicas de conversão de protocolos: cabeçalhos
Ipv4 e Ipv5 são convertidos (RFCs 2765 e 2766);
Roteiro da Apresentação
●
●
●
●
●
●
●
●
●
●
●
Revisão da Arquitetura Internet e do IPv4
A motivação do projeto Ipv6
A estrutura de cabeçalhos
O endereçamento Ipv6
ICMPv6
Segurança no Ipv6
Mecanismos para a Qualidade de Serviço
Protocolos de Roteamento
Impacto nas camadas superiores
Interoperabilidade com Ipv4
Aspectos de Mobilidade
Mobilidade no IPv6
O problema
●
●
●
Na prática, um endereço IP identifica a posição de
um hospedeiro em uma rede.
O roteamento da Internet leva todos os pacotes
endereçados a este IP para a mesma posição na
rede;
E o que acontece se um terminal móvel (MN)
muda de posição na rede?
Canário 1 – Terminal Móvel na
Home Network
Cenário 2 – Terminal Móvel se
desloca
Home
Agent
CN
Roteador
Rede Visitada
MN
RADV
Dados
RADV
BU
BAck
Dados
túnel
RADV
configura CoA
Considerações sobre o MIPv6
●
●
●
Na rede domiciliar o nó móvel (MN) é sempre
endereçavel pelo seu endereço domiciliar (“Home
Address – Haddr);
Na rede visitada, o MN forma um novo endereço,
chamado de CoA (Care-of-Address);
A detecção de mudança de rede é realizada pelo
recebimento de um RADV (Router
Advertisement) do roteador de acesso da rede
visitada – esta mensagem é do ICMP e conduz o
prefixo da rede visitada;
Considerações sobre o MIPv6
●
●
●
●
O MN, ao obter um CoA, se registra com o seu
“Home Agent” através de uma mensagem BU
(“Binding Update”);
O “Home Agent” responde com um "Binding
Acknowledgement";
As mensagens BU e Back são implementadas
através do “mobility header” do Ipv6;
O Home Agent passa a interceptar as mensagens
destinadas a HAddr e encaminhá-las via túnel para
o MN;
Considerações sobre o MIPv6
●
Dois modos de funcionamento possíveis:
–
–
Comunicação via túnel bidirecional com o “home
Agent”;
Comunicação direta do MN com o nó correspondente:
o MN se registra (BU) diretamente com o
correspondente;
Considerações Finais (e pessoais)
●
●
●
O Ipv6 através da estruturação de cabeçalhos abre
caminho para novas soluções, por exemplo, na
área de mobilidade;
Já em 2000 falava-se da urgência do Ipv6. Me
parece que o Ipv4 ainda tem alguns bons anos de
vida;
Mas vale a pena arriscar? Pensar em tornar
produtos Ipv6 e preparar a transição parece ser
estratégico;
Bibliografia
●
●
●
●
●
Ipv6 Essentials. Silvia Hagen. Pub.O'Reilly. Maio
2006.
RFCs 2460 – Internet Protocol Version 6.
RFC 2463: "ICMP for the Internet Protocol
Version 6 (Ipv6)".
RFC 3775: “Mobility Support in Ipv6”.
Ipv6 Howto http://tldp.org/HOWTO/Linux+IPv6-HOWTO/
Download

O Protocolo Ipv6