Considerações sobre IPv6 para AWS Client VPN - AWS Client VPN

Considerações sobre IPv6 para AWS Client VPN

O Client VPN agora permite conectividade IPv6 nativa com os recursos IPv4 existentes. É possível criar endpoints somente IPv6, somente IPv4 ou de pilha dupla (IPv4 e IPv6) para atender aos requisitos de rede.

Componentes principais do suporte a IPv6

Ao trabalhar com IPv6 no Client VPN, há dois parâmetros principais de configuração:

Tipo de endereço IP do endpoint

Esse parâmetro define o tipo de IP de gerenciamento de endpoint, que determina o tipo de instância do EC2 provisionada para o endpoint. Esse tipo de IP é usado para gerenciar o tráfego externo do túnel VPN (o tráfego criptografado que flui entre o cliente e o servidor OpenVPN pela internet pública).

Tipo de endereço IP de tráfego

Esse parâmetro define o tipo de tráfego que flui pelo túnel VPN. Esse tipo de IP é usado para gerenciar tráfego criptografado interno (a carga útil real), intervalos CIDR do cliente, associação de sub-rede, rotas e regras por endpoint.

Atribuição de CIDR de cliente IPv6

Para CIDR de cliente IPv6, você não precisa especificar um bloco CIDR. A Amazon atribui automaticamente intervalos CIDR para clientes IPv6. Com essa atribuição automática, não é necessário usar conversão de endereços de rede de origem para tráfego de túnel IPv6, oferecendo maior visibilidade do endereço IPv6 do usuário conectado.

Requisitos de compatibilidade

Os endpoints IPv6 e de pilha dupla dependem dos dispositivos do usuário e dos provedores de serviços de Internet (ISPs):

  • Os dispositivos do usuário que executam o cliente CVPN devem permitir a configuração de IP necessária, conforme mostrado na tabela de compatibilidade abaixo.

  • Os ISPs devem permitir a configuração de IP necessária para que a conexão funcione corretamente.

  • Para tráfego IPv6 ou de pilha dupla, as sub-redes correspondentes da VPC devem ter intervalos IPv6 ou CIDR de pilha dupla.

Suporte a DNS

É possível usar DNS em todos os tipos de endpoint: IPv4, IPv6 e de pilha dupla. Para endpoints IPv6, você pode configurar servidores de DNS IPv6 usando o parâmetro --dns-server-ipv6. É possível usar registros de DNS AAAA tanto no serviço quanto no cliente.

Limitações

Veja abaixo algumas limitações do IPv6:

  • Os clientes IPv6 não podem usar a comunicação de cliente para cliente (C2C). Se um cliente IPv6 tentar se comunicar com outro cliente IPv6, o tráfego será encerrado.

Aplicação de rotas do cliente para IPv6

O Client VPN agora oferece a aplicação de rotas do cliente para tráfego IPv6. Esse recurso ajuda a garantir que o tráfego de rede IPv6 dos clientes conectados siga as rotas definidas pelo administrador e não seja enviado inadvertidamente para fora do túnel VPN.

Principais aspectos do suporte da aplicação de rotas de cliente a IPv6:

  • O sinalizador ClientRouteEnforcementOptions.enforced existente habilita a CRE para pilhas IPv4 e IPv6.

  • A aplicação de rotas do cliente para IPv6 exclui determinados intervalos IPv6 para manter as funcionalidades essenciais do IPv6:

    • ::1/128: reservado para loopback.

    • fe80::/10: reservada para endereços locais de link.

    • ff00::/8: reservada para multicast.

  • A aplicação de rotas do cliente para IPv6 está disponível no AWS VPN Client versão 5.3.0 e posterior no Windows, macOS e Ubuntu.

Para ter mais informações sobre a CRE, inclusive sobre como habilitá-la e configurá-la, consulte Aplicação de rotas do cliente do AWS Client VPN.

Prevenção de vazamento de IPv6 (informações legadas)

Para configurações mais antigas que não usam o suporte nativo ao IPv6, talvez você ainda precise impedir o vazamento de IPv6. O vazamento de IPv6 pode ocorrer quando o IPv4 e o IPv6 estão habilitados e conectados à VPN, mas a VPN não roteia o tráfego IPv6 para o respectivo túnel. Nesse caso, ao se conectar a um destino habilitado para IPv6, você ainda está se conectando com seu endereço IPv6 fornecido pelo ISP. Isso causará o vazamento do seu endereço IPv6 real. As instruções abaixo explicam como rotear o tráfego IPv6 para o túnel VPN.

As seguintes diretivas relacionadas ao IPv6 devem ser adicionadas ao arquivo de configuração do cliente VPN a fim de evitar vazamento de IPv6:

ifconfig-ipv6 arg0 arg1
route-ipv6 arg0

Um exemplo pode ser:

ifconfig-ipv6 fd15:53b6:dead::2 fd15:53b6:dead::1
route-ipv6 2000::/4

Nesse exemplo,ifconfig-ipv6 fd15:53b6:dead::2 fd15:53b6:dead::1 definirá o endereço IPv6 do dispositivo de túnel local como fd15:53b6:dead::2 e o endereço IPv6 do endpoint da VPN remota como fd15:53b6:dead::1.

O próximo comando, route-ipv6 2000::/4, roteará os endereços IPv6 de 2000:0000:0000:0000:0000:0000:0000:0000para 2fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff na conexão VPN.

nota

Para roteamento de dispositivo “TAP” no Windows, por exemplo, o segundo parâmetro de ifconfig-ipv6 será usado como destino de rota para --route-ipv6.

As próprias organizações devem configurar os dois parâmetros de ifconfig-ipv6 e podem usar endereços em 100::/64 (de0100:0000:0000:0000:0000:0000:0000:0000 a 0100:0000:0000:0000:ffff:ffff:ffff:ffff) ou fc00::/7 (de fc00:0000:0000:0000:0000:0000:0000:0000 a fdff:ffff:ffff:ffff:ffff:ffff:ffff:ffff). 100::/64 é um bloco de endereços somente para descarte e fc00::/7 é exclusivo no local.

Outro exemplo:

ifconfig-ipv6 fd15:53b6:dead::2 fd15:53b6:dead::1
route-ipv6 2000::/3
route-ipv6 fc00::/7

Neste exemplo, a configuração roteará todo o tráfego IPv6 alocado atualmente para a conexão VPN.

Verificação

Provavelmente, sua organização terá os próprios testes. Uma verificação básica é configurar uma conexão VPN de túnel completo e, em seguida, executar ping6 para um servidor IPv6 usando o endereço IPv6. O endereço IPv6 do servidor deve estar no intervalo especificado pelo comando route-ipv6. Esse teste de ping deve falhar. No entanto, isso pode mudar se a compatibilidade com IPv6 for adicionado ao serviço cliente VPN no futuro. Se o ping for bem-sucedido e você conseguir acessar sites públicos quando conectado no modo de túnel completo, talvez seja necessário fazer mais uma solução de problemas. Também existem algumas ferramentas disponíveis publicamente.