특정 경로로 VPC 피어링 구성 - Amazon Virtual Private Cloud

특정 경로로 VPC 피어링 구성

서브넷 CIDR 블록, 특정 CIDR 블록(VPC에 여러 CIDR 블록이 있는 경우) 또는 피어 VPC의 특정 리소스에 대한 액세스를 제한하도록 VPC 피어링 연결에 대한 라우팅 테이블을 구성할 수 있습니다. 이 예시에서는 겹치는 CIDR 블록이 있는 최소 2개의 VPC로 중앙 VPC가 피어링됩니다.

특정 VPC 피어링 연결 구성이 필요한 시나리오의 예는 VPC 피어링 시나리오 단원을 참조하십시오. VPC 피어링 연결을 사용하는 방법에 대한 자세한 내용은 VPC 피어링 연결 작업 섹션을 참조하세요. 라우팅 테이블 업데이트에 대한 자세한 내용은 VPC 피어링 연결을 위한 라우팅 테이블 업데이트 단원을 참조하십시오.

1개의 VPC에서 특정 서브넷에 액세스하는 VPC 2개

이 구성에는 2개의 서브넷이 있는 중앙 VPC(VPC A), VPC A와 VPC B 사이의 피어링 연결(pcx-aaaabbbb) 및 VPC A와 VPC C 사이의 피어링 연결(pcx-aaaacccc)이 있습니다. 각 VPC는 VPC A의 서브넷 중 하나에 있는 리소스에만 액세스해야 합니다.


                    VPC 1개에 속한 서브넷 2개로 피어링되는 VPC 2개

서브넷 1의 라우팅 테이블은 VPC 피어링 연결 pcx-aaaabbbb를 사용하여 VPC B의 전체 CIDR 블록에 액세스합니다. VPC B의 라우팅 테이블은 pcx-aaaabbbb를 사용하여 VPC A에 있는 서브넷 1의 CIDR 블록에 액세스합니다. 서브넷 2의 라우팅 테이블은 VPC 피어링 연결 pcx-aaaacccc를 사용하여 VPC C의 전체 CIDR 블록에 액세스합니다. VPC C 테이블의 라우팅 테이블은 pcx-aaaacccc를 사용하여 VPC A에 있는 서브넷 2의 CIDR 블록에 액세스합니다.

라우팅 테이블 대상 주소 대상
서브넷 1(VPC A) VPC A CIDR 로컬
VPC B CIDR pcx-aaaabbbb
서브넷 2(VPC A) VPC A CIDR 로컬
VPC C CIDR pcx-aaaacccc
VPC B VPC B CIDR 로컬
서브넷 1 CIDR pcx-aaaabbbb
VPC C VPC C CIDR 로컬
서브넷 2 CIDR pcx-aaaacccc

이 구성을 여러 CIDR 블록으로 확장할 수 있습니다. VPC A와 VPC B에 IPv4 및 IPv6 CIDR 블록이 모두 있으며, 서브넷 1에는 연결된 IPv6 CIDR 블록이 있다고 가정하겠습니다. VPC 피어링 연결을 사용하여 IPv6를 통해 VPC A의 서브넷 1과 통신하도록 VPC B를 활성화할 수 있습니다. 이렇게 하려면 VPC B의 IPv6 CIDR 블록 대상이 있는 VPC A의 라우팅 테이블에 대한 경로와 VPC A에 있는 서브넷 1의 IPv6 CIDR 대상이 있는 VPC B의 라우팅 테이블에 대한 경로를 추가합니다.

라우팅 테이블 대상 주소 대상 참고
VPA A의 서브넷 1 VPC A IPv4 CIDR 로컬
VPC A IPv6 CIDR 로컬 VPC 내부의 IPv6 통신에 자동으로 추가되는 로컬 경로.
VPC B IPv4 CIDR pcx-aaaabbbb
VPC B IPv6 CIDR pcx-aaaabbbb VPC B의 IPv6 CIDR 블록에 대한 경로.
VPA A의 서브넷 2 VPC A IPv4 CIDR 로컬
VPC A IPv6 CIDR 로컬 VPC 내부의 IPv6 통신에 자동으로 추가되는 로컬 경로.
VPC C IPv4 CIDR pcx-aaaacccc
VPC B VPC B IPv4 CIDR 로컬
VPC B IPv6 CIDR 로컬 VPC 내부의 IPv6 통신에 자동으로 추가되는 로컬 경로.
서브넷 1 IPv4 CIDR pcx-aaaabbbb
서브넷 2 IPv4 CIDR pcx-aaaabbbb VPC A의 IPv6 CIDR 블록에 대한 경로.
VPC C VPC C IPv4 CIDR 로컬
서브넷 2 IPv4 CIDR pcx-aaaacccc

1개의 VPC에서 특정 CIDR 블록에 액세스하는 VPC 2개

이 구성에는 중앙 VPC(VPC A), VPC A와 VPC B 사이의 피어링 연결(pcx-aaaabbbb) 및 VPC A와 VPC C 사이의 피어링 연결(pcx-aaaacccc)이 있습니다. VPC A에는 각 피어링 연결에 대해 하나의 CIDR 블록이 있습니다.

라우팅 테이블 대상 주소 대상
VPC A VPC A CIDR 1 로컬
VPC A CIDR 2 로컬
VPC B CIDR pcx-aaaabbbb
VPC C CIDR pcx-aaaacccc
VPC B VPC B CIDR 로컬
VPC A CIDR 1 pcx-aaaabbbb
VPC C VPC C CIDR 로컬
VPC A CIDR 2 pcx-aaaacccc

2개의 VPC에서 특정 서브넷에 액세스하는 VPC 1개

이 구성에는 1개의 서브넷이 있는 중앙 VPC(VPC A), VPC A와 VPC B 사이의 피어링 연결(pcx-aaaabbbb) 및 VPC A와 VPC C 사이의 피어링 연결(pcx-aaaacccc)이 있습니다. VPC B와 VPC C에는 각각 2개의 서브넷이 있습니다. VPC A와 VPC B 간의 피어링 연결은 VPC B의 서브넷 중 하나만 사용합니다. VPC A와 VPC C 간의 피어링 연결은 VPC C의 서브넷 중 하나만 사용합니다.


          서브넷 2개와 피어링되는 VPC 1개

다른 VPC에서 액세스해야 하는 단일 리소스 집합(예: Active Directory 서비스)이 있는 중앙 VPC가 있을 때 이 구성을 사용합니다. 중앙 VPC에는 피어링할 VPC에 대한 모든 액세스 권한이 필요하지 않습니다.

VPC A의 라우팅 테이블은 피어링 연결을 사용하여 피어링된 VPC의 특정 서브넷에만 액세스합니다. 서브넷 1의 라우팅 테이블은 VPC A와의 피어링 연결을 사용하여 VPC A의 서브넷에 액세스합니다. 서브넷 2의 라우팅 테이블은 VPC A와의 피어링 연결을 사용하여 VPC A의 서브넷에 액세스합니다.

라우팅 테이블 대상 주소 대상
VPC A VPC A CIDR 로컬
서브넷 1 CIDR pcx-aaaabbbb
서브넷 2 CIDR pcx-aaaacccc
서브넷 1(VPC B) VPC B CIDR 로컬
VPC A CIDR의 서브넷 pcx-aaaabbbb
서브넷 2(VPC C) VPC C CIDR 로컬
VPC A CIDR의 서브넷 pcx-aaaacccc

응답 트래픽을 위한 라우팅

겹치거나 일치하는 CIDR 블록을 가진 여러 VPC와 피어링된 VPC가 있는 경우, 라우팅 테이블이 자신의 VPC에서 잘못된 VPC로 응답 트래픽을 전송하지 못하도록 구성되어 있는지 확인하세요. AWS에서는 패킷의 소스 IP를 확인하고 응답 패킷을 다시 소스로 라우팅하는 VPC 피어링 연결에서 유니캐스트 역경로 전달을 지원하지 않습니다.

예를 들어, VPC A는 VPC B 및 VPC C와 피어링됩니다. VPC B 및 VPC C에는 일치하는 CIDR 블록이 있으며, 해당 서브넷에는 일치하는 CIDR 블록이 있습니다. VPC B의 서브넷 2에 대한 라우팅 테이블은 VPC A 서브넷에 액세스하는 VPC 피어링 연결 pcx-aaaabbbb를 가리킵니다. VPC A 라우팅 테이블은 VPC CIDR로 향하는 트래픽을 피어링 연결 pcx-aaaaccccc에 보내도록 구성됩니다.

라우팅 테이블 대상 주소 대상
서브넷 2(VPC B) VPC B CIDR 로컬
VPC A CIDR의 서브넷 pcx-aaaabbbb
VPC A VPC A CIDR 로컬
VPC C CIDR pcx-aaaacccc

VPC B에 있는 서브넷 2의 인스턴스에서 VPC 피어링 연결 pcx-aaaabbbb를 사용하여 VPC A에 있는 Active Directory 서버에 트래픽을 보낸다고 가정하겠습니다. VPC A에서는 Active Directory 서버에 응답 트래픽을 보냅니다. 그러나 VPC A 라우팅 테이블은 VPC CIDR 범위 내의 모든 트래픽을 VPC 피어링 연결 pcx-aaaacccc에 보내도록 구성됩니다. VPC C의 서브넷 2의 경우 VPC B의 서브넷 2에 있는 인스턴스와 동일한 IP 주소가 있으면 VPC A의 응답 트래픽을 받습니다. VPC B의 서브넷 2에 있는 인스턴스에서는 VPC A에 대한 요청의 응답을 받지 않습니다.

이를 방지하기 위해 VPC B에 있는 서브넷 2의 CIDR로 VPC A 라우팅 테이블에 대한 특정 경로를 대상 겸 pcx-aaaabbbb의 대상으로 추가할 수 있습니다. 새 경로가 더 구체적이므로 서브넷 2 CIDR로 향하는 트래픽이 VPC 피어링 연결 pcx-aaaabbbb로 라우팅됩니다.

또는, 다음 예에서는 VPC A 라우팅 테이블에는 각 VPC 피어링 연결의 각 서브넷에 대한 경로가 있습니다. VPC A에서는 VPC B의 서브넷 B 및 VPC C의 서브넷 C와 통신할 수 있습니다. 이 시나리오는 VPC B 및 VPC C와 동일한 IP 주소 범위 내에 속하는 다른 서브넷으로 다른 VPC 피어링 연결을 추가해야 하는 경우에 유용합니다. 해당 특정 서브넷에 대한 다른 경로를 단하게 추가할 수 있습니다.

대상 주소 대상
VPC A CIDR 로컬
서브넷 2 CIDR pcx-aaaabbbb
서브넷 1 CIDR pcx-aaaacccc

그 대신, 사용 사례에 따라 다음과 같이 트래픽이 올바른 서버로 다시 라우팅되도록 VPC B에서 특정 IP 주소에 대한 경로를 생성할 수 있습니다(라우팅 테이블은 가장 긴 접두사 일치 항목을 사용하여 경로의 우선 순위를 지정함).

대상 주소 대상
VPC A CIDR 로컬
서브넷 2의 특정 IP 주소 pcx-aaaabbbb
VPC B CIDR pcx-aaaacccc

VPC 2개의 특정 인스턴스에 액세스하는 VPC 1개의 인스턴스

이 구성에는 1개의 서브넷이 있는 중앙 VPC(VPC A), VPC A와 VPC B 사이의 피어링 연결(pcx-aaaabbbb) 및 VPC A와 VPC C 사이의 피어링 연결(pcx-aaaacccc)이 있습니다. VPC A에는 각 피어링 연결에 대해 하나의 인스턴스가 있는 서브넷이 있습니다. 이 구성을 사용하여 특정 인스턴스에 대한 피어링 트래픽을 제한할 수 있습니다.


                    VPC 2개의 인스턴스로 피어링되는 VPC의 인스턴스

각 VPC 라우팅 테이블은 피어 VPC의 단일 IP 주소(더불어 특정 인스턴스)에 액세스하기 위해 관련 VPC 피어링 연결을 가리킵니다.

라우팅 테이블 대상 주소 대상
VPC A VPC A CIDR 로컬
인스턴스 3 IP 주소 pcx-aaaabbbb
인스턴스 4 IP 주소 pcx-aaaacccc
VPC B VPC B CIDR 로컬
인스턴스 1 IP 주소 pcx-aaaabbbb
VPC C VPC C CIDR 로컬
인스턴스 2 IP 주소 pcx-aaaacccc

가장 긴 접두사 일치를 사용하여 VPC 2개에 액세스하는 VPC 1개

이 구성에는 1개의 서브넷이 있는 중앙 VPC(VPC A), VPC A와 VPC B 사이의 피어링 연결(pcx-aaaabbbb) 및 VPC A와 VPC C 사이의 피어링 연결(pcx-aaaacccc)이 있습니다. VPC B와 VPC C에 일치하는 CIDR 블록이 있습니다. VPC 피어링 연결 pcx-aaaabbbb를 사용하여 VPC A와 VPC B의 특정 인스턴스 사이에 트래픽을 라우팅합니다. VPC B와 VPC C에서 공유하는 CIDR IP 주소 범위로 향하는 다른 모든 트래픽은 pcx-aaaacccc를 통해 VPC C로 라우팅됩니다.


                    가장 긴 접두사 일치 항목을 사용하여 피어링

VPC 라우팅 테이블은 가장 긴 접두사 일치 항목을 사용하여 의도하는 VPC 피어링 연결에서 가장 구체적인 경로를 선택합니다. 다른 모든 트래픽은 그 다음 일치하는 경로를 통해 라우팅되며 여기서는 VPC 피어링 연결 pcx-aaaacccc입니다.

라우팅 테이블 대상 주소 대상
VPC A VPC A CIDR 블록 로컬
인스턴스 X IP 주소 pcx-aaaabbbb
VPC C CIDR 블록 pcx-aaaacccc
VPC B VPC B CIDR 블록 로컬
VPC A CIDR 블록 pcx-aaaabbbb
VPC C VPC C CIDR 블록 로컬
VPC A CIDR 블록 pcx-aaaacccc
중요

VPC B의 인스턴스 X가 아닌 인스턴스에서 VPC A에 트래픽을 보내는 경우 응답 트래픽이 VPC B 대신에 VPC C로 라우팅될 수 있습니다. 자세한 내용은 응답 트래픽을 위한 라우팅 섹션을 참조하세요.

여러 VPC 구성

이 구성에서는 중앙 VPC(VPC A)가 스포크 구성에서 여러 VPC와 피어링됩니다. 또한 풀 메시 구성에서 피어링된 VPC 3개(VPC X, Y, Z)도 있습니다.

VPC D에도 VPC X(pcx-ddddxxxx)와 VPC 피어링 연결이 있습니다. VPC A와 VPC X에 겹치는 CIDR 블록이 있습니다. 즉, VPC A와 VPC D 사이의 피어링 트래픽이 VPC D의 특정 서브넷(서브넷 1)으로 제한됩니다. 따라서 VPC D에서는 VPC A 또는 VPC X에서 요청을 받으면 올바른 VPC로 응답 트래픽을 보낼 수 있습니다. AWS에서는 패킷의 소스 IP를 확인하고 회신 패킷을 소스로 다시 라우팅하는 VPC 피어링 연결의 유니캐스트 역경로 전달이 지원되지 않습니다. 자세한 내용은 응답 트래픽을 위한 라우팅 단원을 참조하십시오.

마찬가지로, VPC D와 VPC Z에 겹치는 CIDR 블록이 있습니다. VPC D와 VPC X 사이의 피어링 트래픽이 VPC D의 서브넷 2로 제한되며 VPC X와 VPC Z 사이의 피어링 트래픽이 VPC Z의 서브넷 1로 제한됩니다. 따라서 VPC X에서 VPC D 또는 VPC Z의 피어링 트래픽을 받으면 올바른 VPC로 응답 트래픽을 다시 보낼 수 있습니다.


                    여러 피어링 구성

VPC B, C, E, F 및 G의 라우팅 테이블에서는 VPC A의 전체 CIDR 블록에 액세스하는 관련 피어링 연결을 가리키고, VPC A 라우팅 테이블에서는 전체 CIDR 블록에 액세스하는 VPC B, C, E, F 및 G의 관련 피어링 연결을 가리킵니다. 피어링 연결 pcx-aaaadddd의 경우, VPC A 라우팅 테이블에서는 VPC D의 서브넷 1로만 트래픽을 라우팅하고 VPC D의 서브넷 1 라우팅 테이블에서는 VPC A의 전체 CIDR 블록을 가리킵니다.

VPC Y 라우팅 테이블에서는 VPC 와 VPC Z의 전체 CIDR 블록에 액세스하는 과련 피어링 연결을 가리키고, VPC Z 라우팅 테이블에서는 VPC Y의 전체 CIDR 블록에 액세스하는 관련 피어링 연결을 가리킵니다. VPC Z의 서브넷 1 라우팅 테이블에서는 VPC Y의 전체 CIDR 블록에 액세스하는 관련 피어링 연결을 가리킵니다. VPC X 라우팅 테이블에서는 VPC D의 서브넷 2와 VPC Z의 서브넷 1에 액세스하는 관련 피어링 연결을 가리킵니다.

라우팅 테이블 대상 주소 대상
VPC A VPC A CIDR 로컬
VPC B CIDR pcx-aaaabbbb
VPC C CIDR pcx-aaaacccc
VPC D의 서브넷 1 CIDR pcx-aaaadddd
VPC E CIDR pcx-aaaaeeee
VPC F CIDR pcx-aaaaffff
VPC G CIDR pcx-aaaagggg
VPC B VPC B CIDR 로컬
VPC A CIDR pcx-aaaabbbb
VPC C VPC C CIDR 로컬
VPC A CIDR pcx-aaaacccc
VPA D의 서브넷 1 VPC D CIDR 로컬
VPC A CIDR pcx-aaaadddd
VPA D의 서브넷 2 VPC D CIDR 로컬
VPC X CIDR pcx-ddddxxxx
VPC E VPC E CIDR 로컬
VPC A CIDR pcx-aaaaeeee
VPC F VPC F CIDR 로컬
VPC A CIDR pcx-aaaaaffff
VPC G VPC G CIDR 로컬
VPC A CIDR pcx-aaaagggg
VPC X VPC X CIDR 로컬
VPC D의 서브넷 2 CIDR pcx-ddddxxxx
VPC Y CIDR pcx-xxxxyyyy
VPC Z의 서브넷 1 CIDR pcx-xxxxzzzz
VPC Y VPC Y CIDR 로컬
VPC X CIDR pcx-xxxxyyyy
VPC Z CIDR pcx-yyyyzzzz
VPC Z VPC Z CIDR 로컬
VPC Y CIDR pcx-yyyyzzzz
VPC X CIDR pcx-xxxxzzzz