VPC ピアリングを使用して内部ロードバランサーにアクセスする方法を教えてください。
最終更新日: 2021 年 1 月 26 日
VPC B のインスタンスから VPC A のロードバランサーに接続したいと考えています。VPC ピアリングを使用して内部ロードバランサーにアクセスする方法を教えてください。
簡単な説明
VPC B から VPC A の内部ロードバランサーにアクセスするには、次の手順に従ってください。
- VPC ピアリングを使用して VPC A と VPC B 間の接続を確立します。
- VPC ピアリングのソース VPC から DNS 解決を有効にします。
- VPC 間のトラフィックを許可するために、必要なルート、セキュリティグループルール、ネットワークアクセスコントロールリスト (ACL) ルールを確立します。
解決方法
VPC ピアリングを使用すると、別の VPC から内部ロードバランサー (Classic Load Balancer、Application Load Balancer、Network Load Balancer など) にアクセスできます。
- VPC ピアリングを使用して VPC 間の接続を確立します。
注: VPC ピアリングは、ローカルまたはクロスアカウント VPC のリージョン内およびリージョン間接続に使用できます。 - ロードバランサーのサブネット CIDR (または VPC CIDR) のルートがクライアントサブネットのルートテーブルに存在することを確認します。ルートは、VPC の VPC ピアリング ID に向けられる必要があります。同様に、クライアントサブネット/VPC CIDR のルートがロードバランサーのサブネットのルートテーブルに存在することを確認します。
- ロードバランサーをホストする VPC から VPC ピアリングの DNS 解決が有効になっていることを確認します。これを確認するには、次の手順に従ってください。
Amazon Virtual Private Cloud (Amazon VPC) コンソールを開きます。
それぞれの VPC ピアリングを選択します。
[Edit DNS Settings] (DNS 設定の編集) を選択します。
[DNS resolution] (DNS 解決) が有効になっていることを確認します。ロードバランサーがホストする VPC からクライアントがホストする VPC への DNS 解決を必ず有効にしてください。必要に応じて、[Requester DNS resolution] (リクエスタ DNS 解決) または [Accepter DNS resolution] (アクセプタ DNS 解決) を選択します。 - インスタンスからロードバランサーの DNS 名を解決し、nslookup <load-balancer DNS name> を使用してそれを確認します。
- セキュリティグループとネットワーク ACL が、インスタンスの完全なサブネット/VPC または特定のインスタンス IP からのトラフィックを許可していることを確認します。
ロードバランサーのセキュリティグループで、ロードバランサーのリスナーポートで受信トラフィックのみを許可します。
サブネットのネットワーク ACL では、ロードバランサーのリスナーポートのインスタンス IP またはサブネット/VPC からの入力トラフィックを許可します。出力では、Ephemeral port range (1024~65535) がロードバランサーノードからインスタンスへのリターントラフィックを許可していることを確認してください。
注: 必要に応じて、security groups または network ACLs を変更します。ネットワーク ACL を変更していない場合、すべての (0.0.0.0/0) トラフィックを許可するデフォルトのルールがあります。この場合、ネットワーク ACL を変更する必要はありません。 - クライアントインスタンスからのトラフィックがソース VPC から出ることができることを確認します。
インスタンスのセキュリティグループが、サブネットまたはデフォルト (0.0.0.0/0) に関連付けられたロードバランサーへのアウトバウンドトラフィックを許可していることを確認します。
サブネットのネットワーク ACL について、ロードバランサーのリスナーポートでロードバランサーのサブネットのトラフィックを許可するルールが Egress にあることを確認します。Ingress で、応答トラフィック用に一時ポートのインスタンス IP/サブネットへのトラフィックを許可するルールがあることを確認します。
注: これらのデフォルト設定を変更していない場合は、変更する必要はありません。
セキュリティグループのデフォルトのアウトバウンドルール (0.0.0.0/0)
インスタンスを持つサブネットのネットワーク ACL のデフォルトの ALLOW ALL ルール