AWS VPC - İnternet Ağ Geçidi ve NAT [kapalı]


209

İnternet Ağ Geçidi nedir? NAT Örneği nedir? Hangi hizmetleri sunuyorlar?

AWS VPC belgelerini okuyarak, hem özel IP adreslerini, giden istekler için internet üzerinden yönlendirilebilen adreslerle eşleştiriyorum hem de gelen yanıtları internetten alt ağdaki istemciye yönlendiriyorum.

Peki aralarındaki farklar nelerdir? İnternet Ağ Geçidi yerine (veya yanısıra) bir NAT Örneği hangi senaryoları kullanırım? Temelde bazı ağ uygulamalarını çalıştıran EC2 örnekleri mi yoksa yönlendirici gibi özel bir donanım mı?

Yalnızca AWS dokümantasyon bağlantılarına işaret etmek yerine, bunları genel ve özel alt ağlar hakkında biraz arka plan ekleyerek açıklayabilir misiniz, böylece sınırlı ağ bilgisine sahip herhangi bir acemi bunları kolayca anlayabilir mi? Ayrıca ne zaman bir NAT örneği yerine bir NAT Ağ Geçidi kullanmalıyım?

PS AWS VPC'de yeniyim, bu yüzden elmaları portakallarla burada karşılaştırıyor olabilirim.

Yanıtlar:


230

İnternet Ağ Geçidi

İnternet Ağ Geçidi, bir Amazon VPC ve İnternet arasındaki mantıksal bir bağlantıdır . Öyle değil fiziksel bir cihazdır. Her VPC ile yalnızca bir tanesi ilişkilendirilebilir. Yapar not internet bağlantısının bant genişliğini sınırlamak. (Bant genişliğindeki tek sınırlama Amazon EC2 örneğinin boyutudur ve VPC'nin içinde ve Internet'te bulunan tüm trafik için geçerlidir.)

Bir VPC'de Internet Ağ Geçidi yoksa , VPC'deki kaynaklar Internet'ten erişilemez (trafik kurumsal bir ağ ve VPN / Direct Connect üzerinden akmazsa).

Trafiği İnternet Ağ Geçidine yönlendiren bir Rota Tablosu varsa, bir alt ağ Genel Alt Ağ olarak kabul edilir .

NAT Örneği

NAT Örneği, trafiği İnternet'e iletmek için yapılandırılmış bir Amazon EC2 örneğidir. Mevcut bir AMI'den başlatılabilir veya aşağıdaki gibi Kullanıcı Verileri aracılığıyla yapılandırılabilir:

#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 0.0.0.0/0 -j MASQUERADE
/sbin/iptables-save > /etc/sysconfig/iptables
mkdir -p /etc/sysctl.d/
cat <<EOF > /etc/sysctl.d/nat.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.eth0.send_redirects = 0
EOF

Özel bir alt ağdaki Internet'e erişmek isteyen örnekler, Internet'e bağlı trafiğinin bir Rota Tablosu yapılandırması aracılığıyla NAT Eşgörünümüne iletilmesini sağlayabilir. NAT Eşgörünümü daha sonra Internet'e istekte bulunacaktır (bir Genel Alt Ağda olduğu için) ve yanıt özel örneğe geri yönlendirilecektir.

Bir NAT Eşgörünümüne gönderilen trafik genellikle NAT Eşgörünümü ile ilişkili olmayan bir IP adresine gönderilir (Internet'teki bir sunucu için yönlendirilir). Bu nedenle, Kaynak / Hedef Kontrolünü kapatmak önemlidir NAT Örneği üzerindeki seçeneğini aksi takdirde trafik engellenir.

NAT Ağ Geçidi

AWS, bir NAT Örneği'nin yerini alabilecek bir NAT Ağ Geçidi Hizmeti başlattı . NAT Ağ Geçidi hizmetini kullanmanın avantajları şunlardır:

  • Tam olarak yönetilen bir hizmettir - sadece oluşturun ve başarısızlık da dahil olmak üzere otomatik olarak çalışır
  • 10 Gbps'ye kadar patlayabilir (NAT Örneği, EC2 bulut sunucusu türüyle ilişkili bant genişliği ile sınırlıdır)

Ancak:

  • Güvenlik Grupları olamaz bir NAT Geçidi ile ilişkili
  • Yalnızca tek bir AZ'de çalıştıkları için her AZ'da bir tane gerekir

4
Notunuza bir puan daha ekleyebilir misiniz? Ortak alt ağda IGW'niz varsa NAT örnekleri çalışır. Ayrıca, geriye doğru aramayı internetten alt ağdaki örneğinizle sınırlarlar.
Ameya

1
Şimdi 2019'da NAT gw sadece VPC'de kullanılabilir, "genel" alt ağda veya "internet ağ geçidi" ile alt ağda bir EIP tahsis edilir ve dahili alt ağlarda sadece NAT gw'ye yönlendirilir.
Felipe Buccioni

Bu cevap hala doğru mu? Gönderen AWS docs , görüyorum: An internet gateway is a horizontally scaled, redundant, and highly available VPC component that allows communication between instances in your VPC and the internet. It therefore imposes no availability risks or bandwidth constraints on your network traffic.. Açıklamasından, gerçek bir donanım cihazı olduğu, ancak AWS tarafından yönetildiği izlenimini edindim. Anlayışım kapalıysa lütfen beni düzeltin.
Abhishek Divekar

@AbhishekDivekar Hiçbir şey değişmedi. AWS ile çalışırken, altta yatan donanımı düşünmek yerine, elde etmek istediğiniz şeye odaklanın.
John Rotenstein

1
@Sandeep NAT Bulut Sunucuları ve NAT Ağ Geçitleri bir VPC içinde bulunur. Bu nedenle, bundan çıkan ve İnternet'e seyahat eden trafiklerin İnternet Ağ Geçidi'nden geçmesi gerekecektir. İnternet Ağ Geçidi yoksa, İnternet erişimi olmayacaktır.
John Rotenstein

127

NAT ağ geçidine karşı NAT örneğine kadar, her ikisi de çalışır. Bir NAT örneği biraz daha ucuz olabilir, ancak NAT ağ geçidi AWS tarafından tamamen yönetilir, bu nedenle sadece NATing için bir EC2 örneğini korumaya gerek duymama avantajına sahiptir.

Ancak, Internet için kullanılabilir olması gereken örnekler için NAT ağ geçidi / örnekleri aradığınız şey değildir. NAT, özel örneklerin (ortak IP olmadan) İnternet'e erişmesine izin verir, ancak bunun tersi olmaz. Bu nedenle, İnternet'te bulunması gereken EC2 bulut sunucuları için genel bir IP atamanız gerekir. EC2 bulut sunucularını özel tutmanız gerekirse geçici bir çözüm vardır - istekleri proxy yapmak için elastik bir yük dengeleyici kullanabilirsiniz.

İnternet Ağ Geçitleri

İnternet Ağ Geçidi, VPC'nizin internete nasıl bağlandığıdır. VPC'ye internet trafiğinin internete nasıl ulaştığını bildirmek için bir rota tablosu içeren bir Internet Ağ Geçidi kullanırsınız.

VPC'de bir İnternet Ağ Geçidi sadece bir ad olarak görünür. Amazon ağ geçidini yönetir ve gerçekten söyleyeceğiniz hiçbir şey yoktur (kullanmaktan ya da kullanmamaktan başka; internete hiç erişemeyen tamamen bölümlenmiş bir alt ağ isteyebileceğinizi unutmayın).

Genel bir alt ağ, AWS'nin Internet Ağ Geçidi üzerinden yönlendirilen internet trafiğine sahip bir alt ağ anlamına gelir. Genel bir alt ağdaki herhangi bir örnekte kendisine atanmış bir genel IP olabilir (örneğin "ortak ip adresini ilişkilendir" etkinleştirilmiş bir EC2 örneği).

Özel bir alt ağ, örneklerin internetten herkesin erişemeyeceği anlamına gelir. Genel bir IP adresleri YOKTUR. Örneğin, bunlara doğrudan SSH üzerinden erişemezsiniz. Özel alt ağlardaki örnekler yine de internete kendileri erişebilir (yani bir NAT Ağ Geçidi kullanarak).


23
NAT vs Internet ağ geçidi açısından en iyi cevap.
Tagar

Mükemmel cevap. Sadece bir takip sorusu: Genel bir alt ağdaki bir EC2 örneğinin Genel IP'si varsa, mantıksal olarak internetten gelen istekleri almak veya IP'si yönlendirilebilir ve erişilebilir olduğundan internete giden istekleri yapmak kendi başına yeterlidir. İnternet Ağ Geçidi burada ne gibi ek işler yapıyor?
Sandeep

@Sandeep EC2 örneğinin gerçek bir genel IP'si yok, ancak sahne arkasında özel bir IP adresine eşlendi. Bir internet ağ geçidi iki amaca hizmet eder: İnternet yönlendirilebilir trafik için VPC yol tablolarınızda bir hedef sağlamak ve genel IPv4 adresleri atanmış örnekler için ağ adresi çevirisi (NAT) yapmak
Omar Faroque Anik

11

İnternet ağ geçidi, bir vpc'yi internete bağlamak için kullanılır ve NAT ağ geçidi, Özel alt ağı internete bağlamak için kullanılır (bu, NAT ağ geçidine yönlendirecek özel alt ağ örneğine ne kadar trafik geldiği anlamına gelir). rota tablosundaki trafiği NAT'a yönlendirmeniz gerekir

Rota tablosu 0.0.0.0/0


Örnek için teşekkürler - bana bir bağdan yardım etti!
Chris

Bu sayfada , NAT ağ geçidi ve IGW'nin amacını açıklayan docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html bir diyagram vardır . Her ikisi de özel alt ağların internet erişimi elde etmek için gereklidir
Maruthi
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.