AWS/실습

서로 다른 두 VPC간 피어링 연결

이덩우 2022. 11. 13. 21:26

아래는 기본 CloudFormation 환경이다.

위와 같은 환경에서는 아직 피어링 연결이 안됐기 때문에, 두 VPC는 기본적으로 서로 통신이 불가능하다.

SSH 접근을 통해 각 EC2의 퍼블릭 IP로 접속 후 프라이빗 IP로 통신이 되는지 확인해보자.

VPC1에서 VPC2로 프라이빗 통신확인

위와 같이 통신 불가임을 알 수 있다.(반대도 마찬가지)


피어링을 생성해보자.

피어링 이름, 피어링 요청자, 수락자 설정

이후 수락자에서 수락을 해야 피어링 생성이 완료된다.

작업 칸에서 요청수락을 누르면 된다.

현재까지 진행된 내용은 다음과 같다.

이제 각 VPC에서 반대편 VPC의 서브넷과 프라이빗 통신을 하기위한 라우팅 테이블을 작성하자.

VPC1에서 라우팅 테이블 추가

위처럼 상대 대역을 설정하고, 대상으로 VPC 피어링을 지정해준다.

마찬가지로 VPC2에서도 동일하게 라우팅 테이블을 추가해준다.

그럼 위와같이 연결이 완료된다.


마지막으로, 인스턴스 간 프라이빗 IP로 웹 서버 접속이 가능하게 하기 위해 인스턴스의 보안그룹에 HTTP 허용을 추가해준다.

위와같이 VPC1 보안그룹에서 인바운드 규칙을 추가해주고 동일하게 VPC2 보안그룹에서도 적용을 해준다.

위와 같이 최종 모든 설정이 완료됐다.


마지막으로 다시 통신 확인을 해보자.

ping명령어(ICMP) 와 curl명령어(HTTP)로 접속을 확인한다.

VPC1에서 VPC2로의 접근
VPC2에서 VPC1으로의 접근

모든 통신이 정상적으로 이루어지고 있다.

추가로, VPC 피어링 연결 속성에 '요청자 & 수락자 DNS 확인'이 미허용으로 설정되어 있으면,

서로다른 VPC 인스턴스 간에 VPC DNS와 통신 시 퍼블릭 IP로 접근한다.

반대의 경우 반대이다.

 

 

출처 : 따라하며 배우는 AWS 네트워크 입문