Amazon VPC のルートテーブルに関する問題をトラブルシューティングする方法を教えてください。
Amazon Virtual Private Cloud (Amazon VPC) のルートテーブルに関する問題をトラブルシューティングしたいと考えています。
簡単な説明
Amazon VPC 内の各サブネットは、サブネットのルーティングを制御するルートテーブルに関連付けられています。Amazon VPC のルーティングオプションは、使用するゲートウェイまたは接続の種類によって異なります。パブリックサブネットには、インターネットゲートウェイへの直接ルートがあります。パブリックサブネット内のリソースは、パブリックインターネットにアクセスします。プライベートサブネットには、インターネットゲートウェイへの直接ルートはありません。プライベートサブネット内のリソースには、パブリックインターネットにアクセスするための NAT デバイスが必要です。
次のようなサブネットのゲートウェイまたは接続の種類に基づいて、サブネットとルートテーブルのトラブルシューティングを行います:
- デフォルトルートのターゲットとしてインターネットゲートウェイを使用するパブリックサブネット (IPv4 の場合は 0.0.0.0/0、IPv6 の場合は ::/0)
- NAT インスタンスまたは NAT ゲートウェイを使用するプライベートサブネット
- VPC ピアリング接続を使用するプライベートサブネット
- AWS 仮想プライベートネットワーク (AWS VPN) を使用するプライベートサブネット
- AWS Direct Connect を使用するプライベートサブネット
- Amazon VPC ゲートウェイエンドポイントを使用するプライベートサブネット
- Amazon VPC 仮想インターフェイスエンドポイントを使用するプライベートサブネット
- AWS Transit Gateway を使用するプライベートサブネット
また、Amazon VPC リソースを理解し、サブネットからゲートウェイや接続へのトラフィックフローを理解するには、リソースマップを使用してください。リソースマップには以下のリソースが表示されます:
- VPC
- サブネット
- ルートテーブル
- インターネットゲートウェイ
- Egress-only インターネットゲートウェイ
- NAT ゲートウェイ
- ゲートウェイエンドポイント
解決策
パブリックサブネット
デフォルトルートのターゲットとしてインターネットゲートウェイを使用するパブリックサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインの [サブネット] で、パブリックサブネットを選択します。
- [ルートテーブル] ビューを選択します。
- ルートテーブルの宛先に、インターネットゲートウェイを指すデフォルトルート (IPv4 の場合は 0.0.0.0/0、IPv6 の場合は ::/0) が設定されていることを確認します。
詳細については、「インターネットから VPC 内の Amazon EC2 インスタンスへの接続に関する問題をトラブルシューティングする方法を教えてください。」を参照してください。
プライベートサブネット
NAT インスタンスまたは NAT ゲートウェイを使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインの [サブネット] で、プライベートサブネットを選択します。
- [ルートテーブル] ビューを選択します。ルートテーブルに、NAT インスタンスまたは NAT ゲートウェイを指すデフォルトルート (0.0.0.0/0) があることを確認します。
- NAT デバイスがパブリックサブネットで作成されていることを確認します。次に、前述の「パブリックサブネット」セクションの、パブリックサブネットに必要なチェックを実行します。
注: NAT インスタンスを使用している場合は、ソース/宛先チェックがオフになっていることを確認してください。 - インターネットトラフィックがプライベートサブネットのインスタンスにルーティングされないように Amazon VPC を IPv6 で設定するには、Egress-Only インターネットゲートウェイを使用します。詳細については、「Turn on outbound IPv6 traffic using an egress-only internet gateway」を参照してください。
VPC ピアリング接続を使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインで [ピアリング接続] を選択してから、使用するピアリング接続を選択します。
- ステータスが [アクティブ] であることを確認します。
- ナビゲーションペインから [サブネット] を選択し、Amazon VPC のサブネットを選択します。
- [ルートテーブル] ビューを選択し、ルートテーブルに次のいずれかのルートがあることを確認します:
ピアリングされた特定の Amazon VPC サブネットを持つ CIDR へのルート。
ピアリングされた Amazon VPC の CIDR 全体へのルート。これには、手順 2 で選択したピアリング接続が含まれます。 - ルートテーブルに、ピアリング接続された Amazon VPC のサブネットがすべて含まれていることを確認します。
- ピアリングされた Amazon VPC でも同じチェックを実行します。
注: VPC ピアリング接続の設定が有効であることを確認してください。
詳細については、「How do I troubleshoot problems establishing communication over VPC peering?」を参照してください。
AWS VPN を使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインで [VPN 接続] を選択してから、該当する VPN 接続を選択します。
- VPN のステータスが [使用可能] であることと、トンネルのステータスの 1 つ以上が [アップ] であることを確認します。
注: 動的 VPN を使用している場合は、AWS VPN が BGP ルートを受信することを確認してください。BGP ルートが仮想プライベートゲートウェイに伝播されていることを確認するには、ルート伝達を有効にします。 - この VPN 接続用の仮想プライベートゲートウェイを書き留めておきます。
- ナビゲーションペインで [サブネット] を選択し、Amazon VPC のサブネットを選択します。
- [ルートテーブル] ビューを選択し、以下を確認します:
使用するネットワークがルートの宛先であること。
手順 4 の仮想プライベートゲートウェイがターゲットであること。
詳細については、「AWS VPN エンドポイントとポリシーベースの VPN の間の接続の問題をトラブルシューティングするにはどうすればよいですか?」を参照してください。
AWS Direct Connect を使用するプライベートサブネット
- AWS Direct Connect コンソールを開きます。
- ナビゲーションペインで **[仮想インターフェイス] ** を選択してから、[プライベート仮想インターフェイス] を選択します。
- BGP のステータスが [アップ] であることを確認します。
- プライベート仮想インターフェイス用の仮想プライベートゲートウェイを書き留めておきます。
- Amazon VPC コンソールを開きます。
- ナビゲーションペインの [サブネット] で、Amazon VPC のサブネットを選択します。
- [ルートテーブル] ビューを選択し、以下を確認します:
使用するネットワークがルートの宛先であること。
手順 4 の仮想プライベートゲートウェイがターゲットであること。
注: BGP を使用する場合は、AWS がルートを受信することを確認してください。BGP ルートが仮想プライベートゲートウェイに伝播されていることを確認するには、ルート伝達を有効にします。
詳細については、「AWS Direct Connect のトラブルシューティング」を参照してください。
Amazon VPC ゲートウェイエンドポイントを使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインで [エンドポイント] を選択してから、該当するエンドポイントを選択します。
- ステータスが [使用可能] であることを確認し、エンドポイント ID を書き留めます。
- ナビゲーションペインの [サブネット] で、Amazon VPC のサブネットを選択します。
- [ルートテーブル] ビューを選択し、以下を確認します:
Amazon VPC エンドポイントポリシーで、Amazon VPC のサブネットリソースと AWS サービスの通信が許可されていること。詳細については、「New – VPC Endpoint for Amazon S3」を参照してください。
サービスの AWS プレフィックスリスト ID を指定する宛先を持つルートテーブルに、ルートが追加されていること。
手順 3 のエンドポイント ID がターゲットであること。
注: サブネットのルートテーブルに AWS サービスプレフィックスリストのエントリとターゲットエンドポイント ID が表示されない場合は、ルートテーブルを追加してください。ルートテーブルを手動で追加するには、[エンドポイント] に移動してエンドポイントを選択し、[ルートテーブル]、[ルートテーブルを管理] の順に選択します。次に、Amazon VPC の不足しているルートテーブルを選択します。
詳細については、「ゲートウェイ VPC エンドポイントを使用して S3 バケットに接続できないのはなぜですか?」を参照してください。
Amazon VPC 仮想インターフェイスエンドポイントを使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインで [エンドポイント] を選択してから、該当するエンドポイントを選択します。
- [サブネット] 列を選択し、エンドポイントネットワークインターフェイスが、接続するサービスに関連付けられたサブネットで作成されていることを確認します。
- ナビゲーションペインの [エンドポイント] で、[ポリシー] ビューを選択します。
- セキュリティグループによって、AWS のサービスへのアクセスが許可されていることを確認します。
注: Amazon VPC リソースは、ローカルルートを使用してインターフェイスエンドポイント経由でトラフィックを送信します。
詳細については、「インターフェイス VPC エンドポイントを使用して AWS サービスにアクセスする」を参照してください。
Amazon Transit ゲートウェイを使用するプライベートサブネット
- Amazon VPC コンソールを開きます。
- ナビゲーションペインの [サブネット] で、プライベートサブネットを選択します。
- [ルートテーブル] ビューを選択します。ルートテーブルに目的の宛先 CIDR と正しい Transit Gateway ID があることを確認します。
- Transit Gateway ルートのトラブルシューティングをさらに進めるには、次のリソースを参照してください:
Amazon VPC 間の接続については、「How do I troubleshoot VPC-to-VPC connectivity through a transit gateway? 」を参照してください。 サイト間または直接接続 VPN 経由の Amazon VPC とオンプレミスの接続については、「How do I troubleshoot on-premises to VPC connectivity through Transit Gateway?」を参照してください。
リソースマップを使用して Amazon VPC 内のリソースを視覚化する
- Amazon VPC コンソールを開きます。
- ナビゲーションペインで [VPC] を選択し、Amazon VPC を選択します。
- [リソースマップ] タブを選択して、視覚化されたリソースを表示します。
- [詳細を表示] を選択して、リソース ID や表示されるデフォルトのゾーンなどの詳細を表示します:
VPC: VPC に割り当てられている IPv4 と IPv6 の CIDR 範囲。
サブネット: 各サブネットに割り当てられている IPv4 および IPv6 CIDR 範囲。
ルートテーブル: サブネットの関連付けとルートテーブル内のルート数。
ネットワーク接続: Amazon VPC 内のパブリックサブネットには、ルート数とソースサブネットおよび宛先サブネットを含むインターネットゲートウェイリソースがあります。Egress-Only インターネットゲートウェイには、ルート数とソースサブネットおよび宛先サブネットを含む Egress-Only インターネットゲートウェイリソースがあります。NAT ゲートウェイには、ネットワークインターフェイス数と Elastic IP アドレスを含む NAT ゲートウェイリソースがあります。ゲートウェイエンドポイントには、接続可能な AWS サービスの名前を持つゲートウェイエンドポイントリソースがあります。 - リソース間の関係を表示するには、リソースにカーソルを合わせます。実線はリソース間の関係を表します。点線は、ネットワーク接続へのネットワークトラフィックを表します。
関連するコンテンツ
- 質問済み 7年前lg...
- 質問済み 8年前lg...
- AWS公式更新しました 1年前
- AWS公式更新しました 2年前
- AWS公式更新しました 2年前
- AWS公式更新しました 2年前