VPC B のインスタンスから VPC A のロードバランサーに接続したいと考えています。VPC ピアリングを使用して内部ロードバランサーにアクセスするにはどうすればよいですか?
簡単な説明
VPC B から VPC A の内部ロードバランサーにアクセスするには、次の手順に従ってください。
- VPC ピアリングを使用して VPC A と VPC B 間の接続を確立します。
- 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 のルートがロードバランサーのサブネットのルートテーブルに存在することを確認します。
- インスタンスからロードバランサーの DNS 名を解決し、nslookup を使用してそれを確認します。
- Classic Load Balancer または Application Load Balancer を使用している場合: セキュリティグループとネットワーク ACL が、インスタンスの完全なサブネット/VPC または特定のインスタンス IP からのトラフィックを許可していることを確認します。
ロードバランサーのセキュリティグループで、ロードバランサーのリスナーポートで受信トラフィックのみを許可します。
サブネットのネットワーク ACL では、ロードバランサーのリスナーポートのインスタンス IP またはサブネット/VPC からの入力トラフィックを許可します。Egress で、[Ephemeral port range] (エフェメラルポート範囲) (1024~65535) がロードバランサーノードからインスタンスへのリターントラフィックを許可していることを確認してください。
- または -
Network Load Balancer を使用している場合は、ターゲットインスタンスのセキュリティグループでトラフィックが許可されていることを確認します。
注: 必要に応じて、セキュリティグループまたはネットワーク ACL を変更します。ネットワーク ACL を変更していない場合、すべての (0.0.0.0/0) トラフィックを許可するデフォルトのルールがあります。この場合、ネットワーク ACL を変更する必要はありません。ただし、AWS のセキュリティのベストプラクティスは、特定の CIDR 範囲との間のトラフィックを許可することです。
- インスタンスのセキュリティグループが、サブネットまたはデフォルト (0.0.0.0/0) に関連付けられたロードバランサーへのアウトバウンドトラフィックを許可していることを確認します。
サブネットのネットワーク ACL について、ロードバランサーのリスナーポートでロードバランサーのサブネットのトラフィックを許可するルールが Egress にあることを確認します。Ingress で、応答トラフィック用に一時ポートのインスタンス IP/サブネットへのトラフィックを許可するルールがあることを確認します。
注: これらのデフォルト設定を変更していない場合は、セキュリティグループのデフォルトのアウトバウンドルール (0.0.0.0/0) や、インスタンスを持つサブネットのネットワーク ACL 用のデフォルトの ALLOW ALL ルールを変更する必要はありません。ただし、AWS のセキュリティのベストプラクティスは、特定の CIDR 範囲との間のトラフィックを許可することです。