Come posso rendere raggiungibile il mio server Web tramite IPv6 sulla piattaforma AWS?


15

Il sito Web della mia azienda utilizza la piattaforma AWS. Voglio che i visitatori del sito siano in grado di raggiungere i miei contenuti utilizzando il protocollo IPv6. Come posso aggiungere un indirizzo IPv6?

Risposte:


12

Sebbene le istanze EC2 non siano compatibili con IPv6 nativo al momento della stesura di questo documento, Amazon ha implementato IPv6 per i suoi bilanciatori di carico elastici negli Stati Uniti orientali (Virginia settentrionale), UE (Irlanda), Asia Pacifico (Tokyo) e Asia Pacifico (Singapore). Dimostrerò come rendere disponibili i contenuti IPv6 usando istanze EC2 e un bilanciamento del carico.

Impostazione Elastic Load Balancer (ELB)

Presumo che tu stia già utilizzando un bilanciamento del carico. (Se desideri configurarne uno, segui le istruzioni nella Guida per gli sviluppatori di Elastic Load Balancer all'indirizzo http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-dg.pdf ).

Posizionare un segno di spunta accanto alla voce ELB in modo che le informazioni dettagliate vengano visualizzate nel pannello inferiore. Scrivi il nome del tuo doppio stack per il tuo ELB. Assomiglierà a un nome come dualstack.new-balancer-751654286.us-east-1.elb.amazonaws.com.

Test DNS

Utilizzare dig o nslookup per verificare di ottenere record A (IPv4) e AAAA (IPv6) utilizzando il nome DNS ELB a doppio stack. Se non ti senti a tuo agio con questi strumenti da riga di comando, usa uno scavo basato sul web come quello su http://www.kloth.net/services/dig.php .

Crea CNAME per il tuo dominio

Raccomando i test su un dominio usa e getta per evitare potenziali interruzioni della produzione. Il CNAME per www.example.com dovrebbe puntare al nome ELB dual stack.

Verifica

Visita www.example.com da un host connesso IPv6. In alternativa, puoi utilizzare http://ipv6-test.com/validate.php per testare la connettività IPv6 al tuo sito.


8

IPv6 non è disponibile (da settembre 2013) per EC2; tuttavia è disponibile per ELB. Quindi puoi usare ELB come una sorta di gateway IPv4 , ma non puoi ancora assegnare indirizzi IPv6 alle istanze EC2.

Si dice che questo potrebbe cambiare nel "prossimo futuro" (qualunque cosa ciò significhi).


2
Purtroppo non è ancora disponibile direttamente su istanze EC2 o VPC. :(
Martijn Heemels,

Non è ancora disponibile! :( Dolore quando devi supportare il dispositivo Apple
Keerthivasan,

6

Puoi rendere il sito disponibile con IPv6 (e alcuni altri vantaggi) inviando un proxy al tuo sito tramite CloudFlare CDN.


Interessante. Non sapevo che Cloudflare avesse un gateway IPv6 automatico. Grazie per la punta, Marcus.
Jeff Loughridge,

1

È possibile ottenere un tunnel IPv6 gratuito da Tunnelbroker . Funziona bene con EC2. L'ho provato.


4
"funziona bene" è una frase piuttosto soggettiva.
Chris S,

Funziona, la comunicazione entra e esce, veloce, affidabile. Cos'altro ti aspetti di più?
Stone,

Dettagli sulle condizioni operative, ad es. Carico. Un VPS di tipo "lowendbox" potrebbe "funzionare bene" per alcune persone, ma non per altre. Anche la posizione geografica potrebbe essere rilevante. Molte, molte variabili che influenzano ciò che potrebbe o potrebbe non funzionare per te. (Posso immaginare che ci sia anche un po 'di disaccordo se "veloce" implica latenza o larghezza di banda o entrambi.)
Cornelius,

Ho creato il tunnel, ho ottenuto un indirizzo client ipv6 per ec2 che è collegato al broker .. Tuttavia, non sono riuscito ad accedervi da internet. Non sono sicuro che non stia facendo qualcosa di sbagliato. ma posso accedere all'applicazione all'interno di ec2. Un'altra cosa, vedo che la connettività ipv6 delle impostazioni della scheda di rete non è impostata su nessuna rete , IPv4 è solo connesso a Internet
Keerthivasan

1

IPv6 ora generalmente disponibile

Abbiamo lavorato per aggiungere il supporto IPv6 a molte parti diverse di AWS negli ultimi due anni, a partire da Elastic Load Balancing, AWS IoT, AWS Direct Connect, Amazon Route 53, Amazon CloudFront, AWS WAF e S3 Transfer Acceleration, tutto in costruzione fino all'annuncio del mese scorso del supporto IPv6 per le istanze EC2 in Virtual Private Clouds (inizialmente disponibile per l'uso nella regione degli Stati Uniti orientali (Ohio)).

Oggi sono felice di condividere la notizia che il supporto IPv6 per le istanze EC2 nei VPC è ora disponibile in un totale di quindici regioni, insieme al supporto di Application Load Balancer per IPv6 in nove di quelle regioni.

di Jeff Barr il 25 gennaio 2017


0

L'istanza AWS EC2 continua a ricevere lo spazio degli indirizzi IPv4 RFC1918 ma se si dispone del servizio Web dietro un ELB, esistono i nomi host dualstacke ipv6prefissati per l'istanza ELB che forniscono doppio IPv4 / IPv6 e solo accesso IPv6. La comunicazione tra ELB e l'istanza EC2 rimarrà comunque come IPv4 ma il client che si connette tramite IPv6 non vedrà nulla di diverso a meno che l'applicazione Web che stai ospitando non cerchi specificamente l'indirizzo IPv6.


Vorrei aggiungere che probabilmente vorresti configurare il tuo server web per guardare il valore X-Forwarded-For per vedere quali visitatori usano IPv6 per raggiungere il tuo sito.
Jeff Loughridge,

1
Sì, ci sono diversi moduli (mod_rpaf e mod_extract_forwarded) che li aiutano insieme alle modifiche nelle versioni più recenti di Apache2 (mod_remoteip) che in realtà lo renderanno molto più semplice. Non solo con IPv6 ma con AWS ELB in generale.
Jeremy Bouse,

0

L'ultima volta il nostro obiettivo era migrare l'applicazione Python Django dal server Linode su Amazon EC2-VPC. All'inizio ho letto molte informazioni su Internet relative alle istanze EC2 e noto che EC2 VPC non supporta IPv6 in questo momento.

Sì, sappiamo che forse è possibile con ELB ed EC2-Classic, ma non abbiamo la possibilità di configurare EC2-Classic, perché il nostro ultimo è quello richiesto da Amazon per EC2-Classic. È stato un grosso problema, perché ci piace l'infrastruttura AWS e lo stile del database RDS, ma dobbiamo ottenere IPv6 nella nostra applicazione.

Dopo un po 'di tempo decidiamo di creare un server Linode, che ha già il supporto IPv6, come proxy. Nella nostra configurazione nginx su Linode eseguiamo il proxy di tutto il traffico verso l'applicazione Django EC2-VPC sulla porta 9099 e otteniamo anche dati statici dall'EC2-VPC:

    location /static/ {
            proxy_pass http://--AWS_IP--/s6/;
    }

    location /media/ {
            proxy_pass http://--AWS_IP--/m6/;
    }

    location / {
            proxy_pass http://--AWS_IP--:9099/;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_read_timeout 4000;
    }

Nel nostro EC2-VPC realizziamo la nostra applicazione Django sulla porta 9099 e la rendiamo accessibile all'esterno, anche su Amazon Console consentiamo anche la porta 9099 accessibile all'esterno, perché abbiamo bisogno che il nostro Linode nginx sia in grado di inviare traffico qui. Inoltre, non dimenticare di inviare dati statici e multimediali da EC2-VPC a Linode, tramite nginx:

    location /s6/ {
            alias /home/django/static/;
    }
    location /m6/ {
            alias /home/django/media/;
    }

Infine puntiamo il record DNS AAAA al server Linode e un record DNS all'EC2-VPC, e tutto funziona bene. Tutto il traffico arriva a EC2-VPC, IP reale archiviato nell'intestazione X-Real-IP. In realtà penso che il server Linode possa essere costoso farlo come proxy se non ci sono altre applicazioni. Quindi è possibile utilizzare qualsiasi server che abbia funzionalità proxy e supporto IPv6 ovviamente.

Il mio post originale: Ricevi traffico Ipv6 su Amazon Ec2 Vpc


Questa sarà ad alta latenza ed è follemente complicata rispetto al semplice mettere un ELB davanti al server.
Ceejayoz,

1
@ceejayoz non c'è modo di ricevere traffico IPv6 da ELB su EC2-VPC, solo EC2-Classic, ma ora EC2-Classic ha restrizioni da creare e nessuna opzione per molte persone.
Anatolii Chmykhalo

Qualcuno che mette meno al mio post può spiegare perché l'hai fatto? Se è possibile con ELB, allegare la prova
Anatolii Chmykhalo

Ancora nessuno descrive o porta prove, sono molto deluso da questo comportamento ..
Anatolii Chmykhalo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.