AWS VPC-インターネットゲートウェイとNATの比較[終了]


209

インターネットゲートウェイとは NATインスタンスとは何ですか?彼らはどのようなサービスを提供していますか?

AWS VPCのドキュメントを読んで、私はそれらの両方がプライベートIPアドレスを発信要求のインターネットルート可能アドレスにマップし、着信応答をインターネットからサブネット上のリクエスターにルーティングすることを収集します。

では、それらの違いは何ですか?インターネットゲートウェイの代わりに(またはそれ以外に)NATインスタンスを使用するのはどのようなシナリオですか?それらは基本的にいくつかのネットワークアプリケーションを実行するEC2インスタンスですか、それともルーターのような特別なハードウェアですか?

AWSのドキュメントリンクを単に指すのではなく、パブリックサブネットとプライベートサブネットの背景を追加して説明し、ネットワーキングの知識が限られた初心者でも簡単に理解できるようにしてください。また、NATインスタンスの代わりにNATゲートウェイを使用する必要があるのはいつですか?

PS私はAWS VPCを初めて使用するので、ここでリンゴをオレンジと比較している可能性があります。

回答:


230

インターネットゲートウェイ

インターネットゲートウェイは、Amazon VPCとインターネット間の論理接続です。物理デバイスではありません。各VPCに関連付けることができるのは1つだけです。インターネット接続の帯域幅を制限しませ。(帯域幅の唯一の制限は、Amazon EC2インスタンスのサイズであり、それはすべてのトラフィックに適用されます-VPCの内部およびインターネットへの送信)。

VPCにインターネットゲートウェイがない場合、VPC 内のリソースにインターネットからアクセスできません(企業ネットワークとVPN / Direct Connectを介してトラフィックが流れる場合を除く)。

トラフィックをインターネットゲートウェイに転送するルートテーブルがある場合、サブネットはパブリックサブネットと見なされます。

NATインスタンス

NATインスタンスは、トラフィックをインターネットに転送するように構成されたAmazon EC2インスタンスです。既存のAMIから起動するか、次のようなユーザーデータを使用して設定できます。

#!/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

インターネットにアクセスするプライベートサブネット内のインスタンスは、ルートテーブル構成を介して、インターネットに向かうトラフィックをNATインスタンスに転送できます。次に、NATインスタンスはインターネットに要求を出し(パブリックサブネットにあるため)、応答はプライベートインスタンスに転送されます。

NATインスタンスに送信されるトラフィックは、通常、NATインスタンス自体に関連付けられていないIPアドレスに送信されます(インターネット上のサーバーに送信されます)。したがって、NATインスタンスの送信元/送信先チェックオプションをオフにすることが重要です。オフにしないと、トラフィックがブロックされます。

NATゲートウェイ

AWS は、NATインスタンスの代わりになることができるNATゲートウェイサービスを導入しました。NATゲートウェイサービスを使用する利点は次のとおりです。

  • これは完全に管理されたサービスです-作成するだけで、フェイルオーバーを含めて自動的に機能します
  • 最大10 Gbpsでバーストできます(NATインスタンスはEC2インスタンスタイプに関連付けられた帯域幅に制限されます)

しかしながら:

  • セキュリティグループ NATゲートウェイに関連付けることはできません
  • それらは単一のAZでのみ動作するため、各AZに1つ必要です。

4
メモにもう1つポイントを追加できますか?パブリックサブネットにIGWがある場合、NATインスタンスは機能します。また、インターネットからサブネット内のインスタンスへの逆ルックアップも制限します。
アメヤ

1
2019年、NAT gwをVPCでのみ使用できるようになり、「パブリック」サブネットまたは「インターネットゲートウェイ」を持つサブネットと内部サブネットでEIPを割り当て、NAT gwにルーティングするだけです。
フェリペブッチョーニ

この答えはまだ正確ですか?AWSのドキュメント、私は以下を参照してください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.。説明から、実際のハードウェアデバイスであるが、AWSによって管理されているという印象を受けます。理解が外れている場合は訂正してください。
Abhishek Divekar

@AbhishekDivekar何も変更されていません。AWSを使用する場合は、基盤となるハードウェアについて考えるのではなく、達成したいことに集中してください。
John Rotenstein

1
@Sandeep NATインスタンスとNATゲートウェイはVPC内に存在します。したがって、そこから出てインターネットに移動するトラフィックは、引き続きインターネットゲートウェイを通過する必要があります。インターネットゲートウェイがない場合は、インターネットにアクセスできません。
John Rotenstein

127

NATゲートウェイとNATインスタンスのどちらでも、どちらでも機能します。NATインスタンスは少し安くなりますが、NATゲートウェイはAWSによって完全に管理されるため、NAT処理のためだけにEC2インスタンスを維持する必要がないという利点があります。

ただし、インターネットで利用できるようにする必要があるインスタンスの場合、NATゲートウェイ/インスタンスは探しているものではありません。NATは、プライベートインスタンス(パブリックIPなし)がインターネットにアクセスできるようにしますが、その逆はできません。そのため、インターネットで利用できる必要があるEC2インスタンスの場合、パブリックIPを割り当てる必要があります。EC2インスタンスをプライベートに保つ必要がある場合の回避策があります。エラスティックロードバランサーを使用してリクエストをプロキシできます。

インターネットゲートウェイ

インターネットゲートウェイは、VPCがインターネットに接続する方法です。インターネットゲートウェイをルートテーブルとともに使用して、インターネットトラフィックがインターネットに到達する方法をVPCに伝えます。

インターネットゲートウェイはVPCに単なる名前として表示されます。Amazonがゲートウェイを管理し、実際に発言権を持っているものはありません(それを使用するかどうかを除いて、インターネットにまったくアクセスできない完全にセグメント化されたサブネットが必要になる場合があることに注意してください)。

パブリックサブネットとは、AWSのインターネットゲートウェイを介してルーティングされるインターネットトラフィックを持つサブネットを意味します。パブリックサブネット内のインスタンスには、パブリックIPを割り当てることができます(たとえば、「関連付けられたパブリックIPアドレス」が有効なEC2インスタンス)。

プライベートサブネットは、インスタンスがインターネットから公的にアクセスできないことを意味します。パブリックIPアドレスはありません。たとえば、SSH経由で直接アクセスすることはできません。プライベートサブネット上のインスタンスは、それでもインターネットにアクセスできます(つまり、NATゲートウェイを使用して)。


23
NATとインターネットゲートウェイの点でベストアンサー。
Tagar

すばらしい答えです。補足情報:パブリックサブネットのEC2インスタンスにパブリックIPがある場合、論理的には、IPがルーティング可能で到達可能であるため、インターネットからインバウンドリクエストを受信するか、インターネットへのアウトバウンドリクエストを行うだけで十分です。では、インターネットゲートウェイはここでどのような追加の仕事をするのでしょうか。
Sandeep

@Sandeep EC2インスタンスには実際のパブリックIPはありませんが、舞台裏ではプライベートIPアドレスにマッピングされています。インターネットゲートウェイは、インターネットルーティング可能なトラフィックのVPCルートテーブルにターゲットを提供することと、パブリックIPv4アドレスが割り当てられているインスタンスのネットワークアドレス変換(NAT)を実行することの2つの目的を果たします
e

11

インターネットゲートウェイは、vpcをインターネットに接続するために使用され、NATゲートウェイは、プライベートサブネットをインターネットに接続するために使用されます(これは、NATゲートウェイに転送されるプライベートサブネットインスタンスにトラフィックが送信されることを意味します)。ルートテーブルのトラフィックをNATに転送する必要がある

ルートテーブル0.0.0.0/0


例をありがとう-束縛から解放されました!
Chris

このページには、NATゲートウェイとIGWの目的を明確にするdocs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.htmlの図があります。どちらも、インターネットへのアクセスを取得できるようにするプライベートサブネットのために必要とされる
マルティ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.