1. ホーム
  2. amazon-web-services

[解決済み】AWS VPC - インターネットゲートウェイ vs. NAT【終了しました

2022-04-06 04:15:14

質問

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

AWS VPCのドキュメントを読むと、プライベートIPアドレスをインターネットに接続可能なアドレスにマッピングしてリクエストを送信し、インターネットからのレスポンスをサブネット上のリクエスト送信者にルーティングしているようです。

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

単純にAWSドキュメントのリンクを紹介するのではなく、パブリックサブネットとプライベートサブネットについて、ネットワークの知識が乏しい初心者が理解しやすいように、背景を補足しながら説明していただけないでしょうか。 また、NATインスタンスの代わりにNATゲートウェイを使用する必要があるのはどのような場合ですか?

P.S. 私はAWS VPCの初心者なので、ここでリンゴとオレンジを比べるかもしれません。

解決方法は?

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

インターネットゲートウェイは 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ゲートウェイ

AWSが導入した NATゲートウェイ・サービス NATインスタンスの代わりとなるものです。NAT Gatewayサービスを利用するメリットは、以下の通りです。

  • フルマネージドサービスであり、作成するだけでフェイルオーバーを含め自動的に動作します。
  • 最大10Gbpsのバーストが可能(NATインスタンスはEC2インスタンスタイプに関連する帯域幅に制限される)。

しかし

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