スキップしてコンテンツを表示

プライベートサブネット内の EC2 インスタンスが、NAT を使用してインターネットに接続できない原因を教えてください。

所要時間1分
0

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスからインターネットに接続するために NAT ゲートウェイを作成しました。このインスタンスはプライベートサブネットで HTTP または HTTPS ポートを使用していますが、インターネットに到達できません。

解決策

宛先への到達可能性と NAT ゲートウェイのステータスを確認する

パブリック IP アドレスを経由する別のソースから、宛先に到達できるかどうかを確認します。NAT ゲートウェイの状態が Available であることを確認します。NAT ゲートウェイが Failed 状態の場合は、「NAT ゲートウェイを作成できない場合」を参照してください。

注: 状態が Failed となっている NAT ゲートウェイは、約 1 時間経過後に自動削除されます。

サブネットとルートテーブルの設定を確認する

NAT ゲートウェイをパブリックサブネットに作成したかどうかを確認します。パブリックルートテーブルには、トラフィックをインターネットゲートウェイに転送するデフォルトルートがあることを確認します。さらに、プライベートサブネットのルートテーブルには、トラフィックを NAT ゲートウェイに転送するデフォルトルートがあることを確認します。

重要: プライベートサブネットとパブリックサブネットの両方において、同じルートテーブルを使用することはできません。同じルートテーブルを使用した場合、トラフィックはインターネットにルーティングされません。

DNS 解決の失敗を防ぐには、仮想プライベートクラウド (VPC) で enableDnsSupport 属性を true に設定します。詳細については、「VPC の DNS 属性を確認、更新する」を参照してください。

ファイアウォールとポートの設定を確認する

ファイアウォールは、送信元ホストと宛先ホストのトラフィックを HTTP ではポート 80、HTTPS ではポート 443 で許可していることを確認します。接続を確認するには、次のコマンドを実行します。

telnet PUBLIC_IP TCP_PORT

セキュリティグループの設定を確認する

インスタンスの Elastic ネットワークインターフェイスにアタッチされたセキュリティグループは、ポート 80 とポート 443 へのアウトバウンドトラフィックを許可する必要があります。詳細については、「EC2 インスタンスの Amazon EC2 セキュリティグループ」を参照してください。

NAT ゲートウェイサブネットに関連付けられたネットワークアクセスコントロールリスト (ACL) を確認します。EC2 インスタンスが HTTPS ウェブサイトにアクセスできるようにするには、NAT ゲートウェイサブネットに関連付けられたネットワーク ACL には次のルールが必要です。

インバウンドルール

ソースプロトコルポート範囲Allow/Deny
VPC CIDRTCP443ALLOW
PUBLIC_IPTCP1024-65535ALLOW

アウトバウンドルール

宛先プロトコルポート範囲Allow/Deny
PUBLIC_IPTCP443ALLOW
VPC CIDRTCP1024-65535ALLOW

ネットワーク ACL の設定に関する詳細については、「ネットワークアクセスコントロールリストを使用してサブネットトラフィックを制御する」を参照してください。

関連情報

NAT

Configure route tables

AWS公式更新しました 7ヶ月前
コメントはありません

関連するコンテンツ