of 38/38
2010, Edgard Jamhour IPv6 IPv6 (Parte 2: Mecanismos de (Parte 2: Mecanismos de Transição) Transição) Edgard Jamhour

2010, Edgard Jamhour IPv6 (Parte 2: Mecanismos de Transição) Edgard Jamhour

  • View
    218

  • Download
    0

Embed Size (px)

Text of 2010, Edgard Jamhour IPv6 (Parte 2: Mecanismos de Transição) Edgard Jamhour

IP, Frame-Relay e ATMEdgard Jamhour
Como permitir um cliente IPv4 conectar-se com um servidor IPv6?
Como permitir um cliente IPv6 conectar-se com um servidor IPv4?
Como permitir um cliente IPv6 alcançar um roteador IPv6 através de uma rede IPv4?
Como permitir a um host IPv6 se conectar a outro host IPv6 através da Internet?
2010, Edgard Jamhour
Por que as aplicações precisam ser reescritas?
No sistema operacional, a aplicação escolhe a pilha de protocolos quando abre um socket.
O socket IPv6 é definido pela RFC 2133 (April 1997).
Basic Socket Interface Extensions for IPv6
Aplicação
TCP
Porta
IPv4
IPv6
socketIPv6
Porta
socketIPv4
Estrutura de Endereços IPv6
Ao abrir um socket IPv6 , o “endpoint” é especificado pela seguinte estrutura:
struct sockaddr_in6 {
u_char sin6_family; /* AF_INET6 */
u_int32m_t sin6_flowinfo; /* Flow Label + prioridade */
struct in6_addr sin6_addr; /* Endereço IPv6 */
};
}
API´s para tradução de nomes:
gethostbyname()
Retorna o endereço do host
O comportamento da função gethostbyname() pode ser modificado pela variável de ambiente:
RES_OPTIONS=inet6
::FFFF: <IPv4 address>
2010, Edgard Jamhour
Dual Stack
A forma mais simples de integração entre IPv4 e IPv6 é utilizar S.O. dual stack.
Aplicação
Aplicação
TCP
TCP
IPv4
IPv6
Enlace
Aplicação
TCP
IPv4
Enlace
Aplicação
TCP
IPv6
Enlace
BIS – Bump in the Stack
Mecanismo interno no host que traduz cabeçalhos IPv4 em IPv6 e vice-versa (RFC 2767).
IPv4 Application
Dual Stack
Aplicação IPv4
Name Resolver
Address Mapper
IPv4 Application
Dual Stack
IPv4 Application
BIA - Bump-In-The-API
Similar ao BIS mas traduz API em vez de cabeçalhos IP.
Name Resolver
Address Mapper
REDE IPv6
2010, Edgard Jamhour
NAT-PT e NAPT-PT
Similar ao NAT
Similar ao NAPT
SIIT: Stateless IP/ICMP Translation Algorithm (SIIT)
2010, Edgard Jamhour
NAT-PT
Similar ao NAT convencional. Trabalha através do mapeamento entre endereços IPv4 e IPv6.
IPv4
Host
IPv4
IPv6
IPv6
Host
O NAT-PT bidirecional é implementado utilizando-se um DNS-ALG (definido pela RFC 2694).
DNS ALG
NAPT-PT
Similar ao NAPT, necessita de apenas um endereço IPv4 público, mas não é bidirecional.
IPv4 Host
IPv6b:1030 IPv4:1040
IPv6a:1030 IPv4:1030
IPv6c:1050 IPv4:1050
Definido pela RFC 3089 (april 2001)
SOCKS64 é similar ao SOCKS. Redes que já utilizam SOCKS podem ser facilmente adaptadas para IPv6.
IPv4 Application
IPv4 Host
Um cliente IPv6 envia um pacote para um servidor IPv4.
IPv4 Host
2010, Edgard Jamhour
Técnicas de Tunelamento
Permite que hosts ou redes IPv6 isoladas se comunique pela Internet.
Pacotes IPv6 são encapsulados como dados de pacotes IPv4.
SRC IPv4
ISATAP
ISATAP é um mecanismo para atribuição automática de endereço e configuração automática de túneis que permite que hosts IPv6 se comuniquem através da Internet.
FE80::5EFE:192.168.1.2
FE80::5EFE:10.32.1.2
IPv4
192.168.1.2
10.32.1.2
IPv6
Endereços 6to4
Classe de endereços especiais definidas para o tunelamento 6to4 (RFC 2529)
2002::/16
Interface externa do roteador que se conecta com a Internet.
2010, Edgard Jamhour
2010, Edgard Jamhour
Roteadores 6to4 Relay
Roteadores Relay são utilizados para permitir a comunicação entre Hosts 6to4 através de backbones puramente IPv6. Os roteadores Relay são vistos como o verdadeiro “gateway default” para acessar redes puramente IPv6.
Muitas instituições que participam dos projetos de backbones IPv6, como Microsoft e Cisco, oferecem roteadores relay.
2010, Edgard Jamhour
O endereço Anycast mágico
A RFC 3068 definiu que o prefixo 192.88.99.0/24 é utilizado para anunciar o roteador relay mais próximo de uma rede utilizando BGP.
O endereço IPv6 equivalente é 2002:c058:6301::".
BACKBONE
IPv4
Exemplo
A tabela abaixo ilustra as rotas criadas automaticamente pelo Windows XP para acessar redes IPv6.
::/0 -> 3/2002:c058:6301::1741 pref 1331
::/96 -> 2 pref 1000
2002::/16 -> 3 pref 1000
6over4 Tunneling
(Virtual Ethernet)
Permite que hosts IPv6 isolados se comunique com roteadores IPv6 através de uma rede IPv4.
RFC 2529: Transmission of IPv6 over IPv4 Domains without Explicit Tunnels
IPv6 Host
Host IPv6
2010, Edgard Jamhour
Formato dos Pacotes
Pacotes IPv6 são encapsulados no interior de pacotes IPv4 utilizando o tipo de protocolo 41.
Pelo menos um roteador da rede deve suportar o serviço IPv6over4.
SRC IPv4
Neighbor Discovering, Router Discovering and Prefix Discovering
IPv6over4 define um mapeamento entre mensagens multicast IPv4 e IPv6:
Pv4 multicast base address: 239.192.0.0/16
239 .192.< 2 bytes menos significativos do endereço multicast IPv6>
2010, Edgard Jamhour
Mapeamento de Endereços
all-routers multicast address: 239.192.0.2
solicited-node multicast address: 239.192.Y.Z
xx:xxxx 24 less significant bits of the host unicast address.
2010, Edgard Jamhour
Conclusão
O IPv6 é necessidade real para permitir a continuidade do crescimento dos serviços Internet devido:
Ao esgotamento de endereços IPv4 públicos
Ao grande número de rotas dos roteadores de borda.
A transição para IPv6 ocorrerá gradualmente.
Redes IPv4 e IPv6 podem e irão coexistir.
Atualmente, já é possível utilizar endereços IPv6 e mecanismos de transição.
Internet