Bagaimana saya bisa membuat server web saya dapat dijangkau melalui IPv6 pada platform AWS?

15

Situs web bisnis saya menggunakan platform AWS. Saya ingin pengunjung situs dapat menjangkau konten saya menggunakan protokol IPv6. Bagaimana saya bisa menambahkan alamat IPv6?

Jeff Loughridge
sumber

Jawaban:

12

Meskipun mesin EC2 tidak asli yang mampu IPv6 pada tulisan ini, Amazon telah menerapkan IPv6 untuk AS Timur (Virginia Utara), Uni Eropa (Irlandia), Asia Pasifik (Tokyo), dan Asia Pasifik (Singapura) Penambah Beban Elastis. Saya akan menunjukkan bagaimana membuat konten IPv6 tersedia menggunakan instance EC2 dan penyeimbang beban.

Pengaturan Elastic Load Balancer (ELB)

Saya akan berasumsi bahwa Anda sudah menggunakan load balancer. (Jika Anda ingin mengaturnya, ikuti petunjuk di Panduan Pengembang Penyeimbang Beban Elastis di http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-dg.pdf ).

Tempatkan cek di sebelah entri ELB sehingga informasi terperinci muncul di panel bawah. Tuliskan nama tumpukan ganda untuk ELB Anda. Ini akan menyerupai nama seperti dualstack.new-balancer-751654286.us-east-1.elb.amazonaws.com.

Menguji DNS

Gunakan menggali atau nslookup untuk memverifikasi bahwa Anda mendapatkan catatan A (IPv4) dan AAAA (IPv6) menggunakan nama stack ganda ELB DNS. Jika Anda tidak nyaman dengan alat-alat baris perintah ini, gunakan penggalian berbasis web seperti yang ada di http://www.kloth.net/services/dig.php .

Buat CNAME untuk domain Anda

Saya merekomendasikan pengujian pada domain yang dibuang untuk menghindari potensi pemadaman produksi. CNAME untuk www.example.com harus mengarah ke nama ELB tumpukan ganda.

Verifikasi

Kunjungi www.example.com dari host yang terhubung dengan IPv6. Atau, Anda dapat menggunakan http://ipv6-test.com/validate.php untuk menguji konektivitas IPv6 ke situs Anda.

Jeff Loughridge
sumber
8

IPv6 tidak tersedia (pada Sep 2013) untuk EC2; namun ini tersedia untuk ELB. Jadi Anda dapat menggunakan ELB sebagai semacam gateway IPv4 , tetapi Anda belum dapat menetapkan alamat IPv6 ke instance EC2.

Ada obrolan bahwa ini dapat berubah dalam "waktu dekat" (apa pun artinya).

Chris S
sumber
2
Sayangnya, masih belum tersedia secara langsung pada instance EC2 atau VPC. :(
Martijn Heemels
Itu masih belum tersedia! :( Nyeri ketika Anda harus mendukung perangkat apel
Keerthivasan
6

Anda dapat membuat situs tersedia dengan IPv6 (dan beberapa manfaat lainnya) dengan mem-proksi situs Anda melalui CloudFlare CDN.

Marcus Downing
sumber
Menarik. Saya tidak menyadari bahwa Cloudflare memiliki gateway IPv6 otomatis. Terima kasih atas tipnya, Marcus.
Jeff Loughridge
1

Anda bisa mendapatkan terowongan IPv6 gratis dari Tunnelbroker . Ini bekerja dengan baik dengan EC2. Saya sudah mengujinya.

Batu
sumber
4
"berfungsi dengan baik" adalah ungkapan yang cukup subjektif.
Chris S
Ini bekerja, komunikasi masuk dan keluar, cepat, dapat diandalkan. Apa lagi yang Anda harapkan lebih?
Batu
Detail tentang kondisi pengoperasian, mis. Memuat. VPS gaya "kotak rendah" mungkin "berfungsi dengan baik" untuk beberapa orang, tetapi tidak untuk orang lain. Lokasi geografis mungkin relevan juga. Banyak, banyak variabel yang mempengaruhi apa yang mungkin atau tidak mungkin bekerja untuk Anda. (Saya bisa membayangkan ada juga beberapa ketidaksepakatan jika "cepat" menyiratkan latensi atau bandwidth atau keduanya.)
Cornelius
Saya telah membuat terowongan, saya mendapat alamat klien ipv6 untuk ec2 yang terhubung ke broker .. Namun, saya tidak dapat mengaksesnya dari internet. Saya tidak yakin apakah saya tidak melakukan kesalahan. tetapi, saya dapat mengakses aplikasi dalam EC2. Satu hal lagi, saya melihat bahwa pengaturan adaptor jaringan konektivitas ipv6 diatur ke jaringan tidak , IPv4 sendiri terhubung ke internet
Keerthivasan
1

IPv6 sekarang umumnya tersedia

Kami telah berupaya untuk menambahkan dukungan IPv6 ke berbagai bagian AWS selama beberapa tahun terakhir, mulai dengan Penyeimbangan Beban Elastis, AWS IoT, Sambungan Langsung AWS, Amazon Route 53, Amazon CloudFront, AWS WAF, dan Akselerasi Transfer S3, semua membangun hingga pengumuman bulan lalu dukungan IPv6 untuk instance EC2 di Virtual Private Clouds (awalnya tersedia untuk digunakan di Wilayah AS Timur (Ohio)).

Hari ini saya senang berbagi berita bahwa dukungan IPv6 untuk instance EC2 di VPC kini tersedia di total lima belas wilayah, bersama dengan dukungan Application Load Balancer untuk IPv6 di sembilan wilayah tersebut.

oleh Jeff Barr pada 25 JAN 2017

Felipe Alvarez
sumber
0

AWS EC2 instance masih menerima ruang alamat IPv4 RFC1918 tetapi jika Anda memiliki layanan web di belakang ELB maka ada dualstackdan ipv6nama host awalan untuk instance ELB yang menyediakan dual IPv4 / IPv6 dan hanya akses IPv6. Komunikasi antara instance ELB dan EC2 akan tetap sebagai IPv4 tetapi klien yang terhubung melalui IPv6 tidak akan melihat sesuatu yang berbeda kecuali aplikasi web yang Anda hosting khusus mencari alamat IPv6.

Jeremy Bouse
sumber
Saya akan menambahkan bahwa Anda mungkin ingin mengkonfigurasi server web Anda untuk melihat nilai X-Forwarded-For untuk melihat pengunjung mana yang menggunakan IPv6 untuk mencapai situs Anda.
Jeff Loughridge
1
Ya, ada beberapa modul (mod_rpaf & mod_extract_forwarded) untuk membantu dengan itu bersama dengan perubahan dalam versi terbaru dari Apache2 (mod_remoteip) yang sebenarnya akan membuat melakukan ini jauh lebih mudah. Tidak hanya dengan IPv6 tetapi dengan AWS ELB secara umum.
Jeremy Bouse
0

Terakhir kali tujuan kami adalah untuk memigrasikan aplikasi Python Django dari server Linode ke Amazon EC2-VPC. Pada awalnya saya membaca banyak informasi melalui Internet tentang instance EC2 dan perhatikan bahwa EC2 VPC tidak mendukung IPv6 saat ini.

Ya, kami tahu bahwa itu mungkin dengan ELB dan EC2-Classic, tetapi kami tidak memiliki kemampuan untuk mengatur EC2-Classic, karena akun kami lebih baru yang diperlukan oleh Amazon untuk EC2-Classic. Itu masalah besar, karena kami menyukai AWS infrustructure dan gaya database RDS, tetapi kami perlu mendapatkan IPv6 di aplikasi kami.

Setelah beberapa saat kami memutuskan untuk membuat Linode server, yang sudah memiliki dukungan IPv6, sebagai proxy. Dalam konfigurasi nginx kami di Linode kami proksi semua lalu lintas ke aplikasi Django EC2-VPC di port 9099 juga kami mendapatkan statis dari 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;
    }

Dalam EC2-VPC kami, kami membuat aplikasi Django kami pada port 9099 dan membuatnya dapat diakses eksternal, juga di Konsol Amazon kami juga mengizinkan port 9099 dapat diakses eksternal, karena kami membutuhkan agar Linode nginx kami dapat mengirimkan lalu lintas ke sini. Juga jangan lupa untuk mengirim statis dan media dari EC2-VPC ke Linode, oleh nginx:

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

Akhirnya kami mengarahkan AAAA DNS record ke Linode server dan A DNS record ke EC2-VPC, dan semua berfungsi dengan baik. Semua lalu lintas datang ke EC2-VPC, Real IP disimpan di header X-Real-IP. Sebenarnya saya pikir server Linode mungkin mahal untuk membuatnya hanya sebagai proxy jika Anda tidak memiliki aplikasi lain di dalamnya. Jadi dimungkinkan untuk menggunakan server apa saja yang memiliki fitur proxy dan dukungan IPv6 tentu saja.

Posting asli saya: Menerima Lalu Lintas Ipv6 Di Amazon Ec2 Vpc

Anatolii Chmykhalo
sumber
Ini akan menjadi latensi tinggi dan sangat rumit dibandingkan dengan hanya menempatkan ELB di depan server.
ceejayoz
1
@ceejayoz tidak ada cara untuk menerima lalu lintas IPv6 dari ELB di EC2-VPC, hanya EC2-Classic, tetapi sekarang EC2-Classic memiliki batasan untuk membuat dan tidak ada pilihan bagi banyak orang.
Anatolii Chmykhalo
Adakah yang bisa memberi minus pada posting saya untuk menjelaskan mengapa Anda melakukannya? Jika memungkinkan dengan ELB, silakan lampirkan bukti
Anatolii Chmykhalo
Masih tidak ada yang menggambarkan atau membawa bukti, saya sangat kecewa dengan perilaku ini ..
Anatolii Chmykhalo