Suporte IPv6 ou alternativa para instâncias do aws vpc

14

Recentemente, a Apple impôs o suporte ao IPv6 como obrigatório para todos os seus fornecedores que usam sua mobile-api e o aws vpc não oferece suporte ao IPv6. Como posso conseguir isso. Eu verifiquei, https://aws.amazon.com/blogs/aws/elastic-load-balancing-ipv6-zone-apex-support-additional-security/no entanto, não tenho certeza do que fazer.

Eu precisaria de aconselhamento especializado aqui.

Shailesh Sutar
fonte
Você usa o AWS ELB na frente de suas instâncias da AWS? Nesse caso, você já deve ter o encaminhamento de IPv6 através do ELB. dig -t aaaa your-elb-assigned-name.amazonaws.com
user4556274
2
@ user4556274 v6 está disponível apenas em ELBs que não são da VPC. O OP está usando uma VPC, portanto, isso não está disponível.
EEAA
Sim, eu uso o AWS ELB em instâncias aws anteriores, no entanto, estou usando a VPC aws não padrão. Instâncias são hospedados no VPC e quero rotear o tráfego lá que não é possível usar dentro VPC do ELB
Shailesh Sutar
3
Eu pensei que a Apple impôs o suporte a NAT64 / DNS64 como obrigatório, e você ainda pode acessar servidores IPv4 em uma rede NAT64 / DNS64 (embora subótimamente)?
user253751
1
Por favor, veja minha edição abaixo. Sim, ELBs fazer ter um endereço v6, mas não é utilizável para o tráfego.
EEAA

Respostas:

16

Infelizmente, a AWS negligenciou gravemente o suporte significativo ao IPv6. A "solução" deles, se você pode chamar assim, é lançar um ELB não-VPC na frente do seu aplicativo. Por muitas razões, essa é uma solução não sustentável para muitos casos de uso.

Como uma solução paliativa, a tática que eu já vi usada por várias organizações é levantar um VPS compatível com IPv6 com outro provedor, apontar o AAAAregistro para lá e usar haproxy ou outro pacote de software semelhante para proxy de solicitações à sua infraestrutura IPv4. Sim, essa é uma maneira realmente complicada e reconhecidamente interrompida de fazer as coisas, mas até que a AWS libere suporte significativo ao IPv6, não existem muitas outras opções.

Editar:

Em relação à afirmação de Craig de que todos os ELBs (VPC ou outros) têm endereços IPv6. Sim, isso está correto, mas nos meus testes e nas discussões com outros especialistas da AWS, os ELBs na verdade não escutam esses IPs em busca de tráfego. Meu palpite é que ativar o IPv6 nos ELBs como eles fizeram é o primeiro passo para oferecer suporte completo ao IPv6 em algum momento. Suspeito que eles façam um anúncio sobre isso durante ou logo antes da conferência re: Invent na primeira semana de dezembro de 2016.

EEAA
fonte
Os ELBs da VPC são de pilha dupla. Veja minha resposta.
Craig Watson
@CraigWatson Eles não parecem ouvir o endereço AAAA.
ceejayoz
1
@EEAA Entendo que não é possível usar os IPv6 atribuídos ao endpoint ELB que estamos obtendo quando o cavamos. E, portanto, não pode rotear o tráfego através de endereços IPv6. Portanto, voltamos à solução que você propôs que usasse um VPS de terceiros com suporte para IPv6. Corrija-me se eu estiver errada.
precisa saber é o seguinte
@ ShaileshSutar Sim, de volta à minha sugestão original, infelizmente.
EEAA
1
Suporte do EC2 para IPv6 disponível: aws.amazon.com/blogs/aws/…
dsadinoff
7

Você pode criar registros IPv6 para o seu ELB ipv6.anexando o nome do host público do seu ELB.

Nomes de host e IPs redigidos por ser um ambiente de cliente - isso é na região eu-west-1 em uma VPC não padrão.

craig@zeus:~$ dig AAAA ipv6.blah-0000000000.eu-west-1.elb.amazonaws.com +short
2a01:xxx:3::xxx:3314
2a01:xxx:3::xxx:ff14
2a01:xxx:3::xxx:7f20

craig@zeus:~$ dig A blah-0000000000.eu-west-1.elb.amazonaws.com +short
54.xxx.xxx.xxx
52.xxx.xxx.xxx
54.xxx.xxx.xxx

Observe que você também pode usar o dualstackprefixo para retornar os registros Ae AAAApara o seu ELB.

Craig Watson
fonte
Interessante. Esse é um novo comportamento? Independentemente disso, os ELBs não são uma solução sustentável para muitos casos de uso.
EEAA
2
O dualstackprefixo existe há um bom ano, mas não tenho certeza se a Amazon se preocupou em atualizar seus documentos - a KB ainda diz que o IPv6 é apenas para o EC2-Classic, que foi descontinuado por anos e desativado ativamente em todas as contas criadas depois de 04 de dezembro de 2013.
Craig Watson
1
Dito isto, concordo que a AWS ainda está atrasada em não oferecer EIPs IPv6 - espero que em breve, mas até então, a única opção é usar um ELB.
Craig Watson
2
Então, eu realmente examinei isso, e mesmo que os ELBs tenham um endereço v6, ele não está realmente ouvindo esse endereço, pelo menos não no meu caso.
EEAA
Não tenho certeza disso, mas é possível ter uma instância clássica do EC2 ELB ==> Ec2. E configure o HAProxy ou o nginx como balanceador de carga na instância do ec2-classic para rotear o tráfego para o VPC ELB ou instâncias?
Shailesh Sutar
3

No leste dos EUA, uso um broker de encapsulamento IPv6 para fornecer um encapsulamento IPv6 que permite que a instância seja endereçada diretamente usando um endereço IPv6. Como o ponto de presença do intermediário de túnel é conectado cruzadamente à Amazon localmente, isso adiciona apenas cerca de 1ms de latência.

O lado negativo é que, para obter o IPv6 para outras instâncias na sub-rede, você deve rotear você mesmo (por exemplo, com radvd).

Michael Hampton
fonte
ou seja seu próprio broker de túneis com um VPS compatível com v6. eu uso dois deles para aumentar a redundância.
Skaperen
@ Skaperen Você pode fazer isso sozinho, até certo ponto. Ainda não encontrei o provedor VPS que me dará um / 48.
Michael Hampton
Não tenho certeza disso, mas é possível ter uma instância clássica do EC2 ELB ==> Ec2. E configure o HAProxy ou o nginx como balanceador de carga na instância do ec2-classic para rotear o tráfego para o VPC ELB ou instâncias?
Shailesh Sutar
2

Coloque o CloudFlare na frente do seu aplicativo. Eles aceitarão solicitações no IP6, mas direcionarão o tráfego para o seu IP4 ELB.

Tim
fonte