Web sunucuma AWS platformunda IPv6 aracılığıyla nasıl ulaşılabilir hale getirebilirim?


15

İşletmemin web sitesi AWS platformunu kullanıyor. Site ziyaretçilerinin içeriğime IPv6 protokolünü kullanarak erişmesini istiyorum. IPv6 adresini nasıl ekleyebilirim?

Yanıtlar:


12

EC2 bulut sunucuları bu yazı itibariyle IPv6 özellikli olmasa da, Amazon ABD Doğu (Kuzey Virginia), AB (İrlanda), Asya Pasifik (Tokyo) ve Asya Pasifik (Singapur) Elastik Yük Dengeleyicileri için IPv6 uyguladı. EC2 örnekleri ve bir yük dengeleyici kullanarak IPv6 içeriğinin nasıl kullanılabilir hale getirileceğini göstereceğim.

Elastik Yük Dengeleyici (ELB) Kurulumu

Zaten bir yük dengeleyici kullandığınızı varsayacağım. (Bir tane ayarlamak istiyorsanız, http://awsdocs.s3.amazonaws.com/ElasticLoadBalancing/latest/elb-dg.pdf adresindeki Elastik Yük Dengeleyici Geliştirici Kılavuzu'ndaki talimatları izleyin ).

Alt panelde ayrıntılı bilgilerin görünmesi için ELB girişinin yanına bir onay işareti koyun. ELB'niz için çift yığın adınızı yazın. Dualstack.new-balancer-751654286.us-east-1.elb.amazonaws.com gibi bir ada benzeyecektir.

DNS'yi test etme

Çift yığın ELB DNS adını kullanarak A (IPv4) ve AAAA (IPv6) kayıtlarını aldığınızdan emin olmak için dig veya nslookup komutunu kullanın. Bu komut satırı araçlarından memnun değilseniz, http://www.kloth.net/services/dig.php adresindeki gibi web tabanlı bir kazı kullanın .

Alan adınız için CNAME'ler oluşturun

Potansiyel üretim kesintilerinden kaçınmak için bir oyun alanı üzerinde test yapmanızı öneririm. Www.example.com için CNAME, çift yığın ELB adını işaret etmelidir.

Doğrulama

IPv6 bağlantılı bir ana bilgisayardan www.example.com adresini ziyaret edin. Alternatif olarak, sitenize IPv6 bağlantısını test etmek için http://ipv6-test.com/validate.php adresini kullanabilirsiniz.


8

IPv6, EC2 için mevcut değildir (Eylül 2013 itibariyle); ancak ELB için mevcuttur. Bu nedenle ELB'yi bir tür IPv4 ağ geçidi olarak kullanabilirsiniz , ancak henüz EC2 bulut sunucularına IPv6 adresleri atayamazsınız.

Bunun "yakın gelecekte" (ne anlama gelirse değişsin) değişebileceği söyleniyor.


2
Maalesef hala EC2 veya VPC örneklerinde doğrudan mevcut değildir. :(
Martijn Heemels

Hala mevcut değil! :( Elma cihazını desteklemeniz gerektiğinde ağrı
Keerthivasan

6

Sitenizi CloudFlare CDN aracılığıyla proxy yaparak IPv6 (ve diğer bazı avantajlar) ile kullanılabilir hale getirebilirsiniz.


İlginç. Cloudflare'nin otomatik bir IPv6 ağ geçidi olduğunu bilmiyordum. Bahşiş için teşekkürler Marcus.
Jeff Loughridge

1

Tunnelbroker'dan ücretsiz bir IPv6 tüneli alabilirsiniz . EC2 ile iyi çalışır. Test ettim.


4
"iyi çalışıyor" oldukça öznel bir ifadedir.
Chris S

İşe yarıyor, iletişim içeri girip çıkıyor, hızlı, güvenilir. Başka ne bekliyorsunuz?
Taş

Çalışma koşulları ile ilgili detaylar, örneğin yük. "Lowendbox" tarzı bir VPS, bazı insanlar için "iyi çalışır", ancak diğerleri için uygun olmayabilir. Coğrafi konum da alakalı olabilir. Sizin için neyin işe yarayıp neyin yaramayacağını etkileyen birçok değişken. ("Hızlı" gecikme veya bant genişliği veya her ikisini birden içeriyorsa bazı anlaşmazlıklar olduğunu da hayal edebiliyorum.)
Cornelius

Tüneli oluşturdum, broker bağlamak ec2 için bir ipv6 istemci adresi var .. Ancak, ben internetten erişemedi. Yanlış bir şey yapmadığımdan emin değilim. ancak, ec2 içindeki uygulamaya erişebilirim. Bir şey daha, ben ağ bağdaştırıcısı ayarları ipv6 bağlantısı hiçbir ağa ayarlandığını görüyorum , IPv4 tek başına internete bağlı
Keerthivasan

1

IPv6 artık genel kullanıma sunuldu

Elastik Yük Dengeleme, AWS IoT, AWS Direct Connect, Amazon Route 53, Amazon CloudFront, AWS WAF ve S3 Transfer Acceleration'dan başlayarak son birkaç yıldır AWS'nin birçok farklı bölümüne IPv6 desteği eklemek için çalışıyoruz. bunların tümü, geçen ay Sanal Özel Bulutlardaki EC2 bulut sunucuları için IPv6 desteği duyurusuna kadar (başlangıçta ABD Doğu (Ohio) Bölgesi'nde kullanılabilir).

Bugün, VPC'lerde EC2 örnekleri için IPv6 desteğinin şu anda toplam onbeş bölgede kullanılabildiği haberi ve bu bölgelerin dokuzunda IPv6 için Uygulama Yük Dengeleyici desteğini paylaşmaktan mutluluk duyuyorum.

25 Ocak 2017


0

AWS EC2 örneği hala RFC1918 IPv4 adres alanı alır, ancak bir ELB'nin arkasında web hizmetiniz varsa, çift ​​IPv4 / IPv6 ve yalnızca IPv6 erişimi sağlayan ELB örneği için dualstackve ipv6ön ekli ana bilgisayar adları vardır. ELB ve EC2 örneği arasındaki iletişim hala IPv4 olarak kalacaktır, ancak IPv6 üzerinden bağlanan istemci, barındırdığınız web uygulaması özellikle IPv6 adresini aramadıkça farklı bir şey görmez.


Web sunucunuzu, X-Forwarded-For değerine bakacak şekilde yapılandırmak isteyeceğinizi ve ziyaretçilerin sitenize ulaşmak için hangi IPv6'yı kullandığını görmek istediğinizi de ekliyorum.
Jeff Loughridge

1
Evet, Apache2'nin (mod_remoteip) en yeni sürümlerindeki değişikliklerle birlikte bunu yapmayı çok daha kolay hale getirecek birkaç modül (mod_rpaf & mod_extract_forwarded) var. Sadece IPv6 ile değil genel olarak AWS ELB ile.
Jeremy Bouse

0

Son hedefimiz Python Django uygulamasını Linode sunucusundan Amazon EC2-VPC'ye taşımaktı. İlk başta EC2 örnekleri hakkında çok fazla bilgi okudum ve EC2 VPC'nin şu anda IPv6'yı desteklemediğini fark ettim.

Evet, ELB ve EC2-Classic ile mümkün olabileceğini biliyoruz, ancak EC2-Classic'i kurma yeteneğimiz yok, çünkü EC2-Classic için Amazon'un gerektirdiği yeni hesaplarımız. Bu büyük bir sorundu, çünkü AWS altyapısını ve RDS veritabanı stilini seviyoruz, ancak uygulamamızda IPv6 almamız gerekiyor.

Düşündükten sonra, IPv6 desteği olan Linode sunucusunu proxy olarak yapmaya karar veriyoruz. Linode üzerindeki nginx yapılandırmamızda, 9099 numaralı bağlantı noktasındaki EC2-VPC Django uygulamasına gelen tüm trafiği de EC2-VPC'den statik olarak alıyoruz:

    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;
    }

EC2-VPC'mizde Django uygulamamızı 9099 numaralı bağlantı noktasında ve harici olarak erişilebilir hale getiriyoruz, ayrıca Amazon Konsolu'nda 9099 numaralı bağlantı noktasına da harici olarak erişime izin veriyoruz, çünkü Linode nginx'imizin buraya trafik gönderebilmesi gerekiyor. Ayrıca nginx ile EC2-VPC'den Linode'a statik ve medya göndermeyi unutmayın:

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

Son olarak AAAA DNS kaydını Linode sunucusuna ve A DNS kaydını EC2-VPC'ye yönlendiriyoruz ve hepsi iyi çalışıyor. Tüm trafik EC2-VPC, X-Real-IP üstbilgisinde depolanan Gerçek IP'ye gelir. Aslında Linode sunucusu üzerinde başka uygulama yoksa sadece proxy olarak yapmak pahalı olabilir düşünüyorum. Böylece proxy özelliği ve IPv6 desteği olan herhangi bir sunucuyu kullanmak elbette mümkündür.

Orijinal yazım : Amazon Ec2 Vpc'de Ipv6 Trafiği Alın


Bu, yüksek gecikme süresine sahip olacak ve sadece bir ELB'yi sunucunun önüne koymakla karşılaştırıldığında inanılmaz derecede karmaşık olacak.
ceejayoz

1
@ceejayoz EC2-VPC'de ELB'den IPv6 trafiği almanın bir yolu yok, sadece EC2-Classic, ancak şimdi EC2-Classic'in oluşturma kısıtlamaları var ve birçok insan için seçenek yok.
Anatolii Chmykhalo

Gönderiye eksi koyan herkes neden yaptığını açıklayabilir mi? ELB ile mümkünse, lütfen kanıt ekleyin
Anatolii Chmykhalo

Hala kimse tarif veya kanıt getirmiyor, ben bu davranış çok hayal kırıklığına uğrattı ..
Anatolii Chmykhalo
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.