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 CIDR | TCP | 443 | ALLOW |
| PUBLIC_IP | TCP | 1024-65535 | ALLOW |
アウトバウンドルール
| | | |
|---|
| 宛先 | プロトコル | ポート範囲 | Allow/Deny |
| PUBLIC_IP | TCP | 443 | ALLOW |
| VPC CIDR | TCP | 1024-65535 | ALLOW |
ネットワーク ACL の設定に関する詳細については、「ネットワークアクセスコントロールリストを使用してサブネットトラフィックを制御する」を参照してください。
関連情報
NAT
Configure route tables