AWS

Transit Gateway 이용해 중앙집중형 VPC에서 인터넷 이용하기

2026. 1. 9. 17:56
728x90

Transit Gateway는 클라우드용 중앙 집중식 라우터(Hub)이다

예전에는 VPC Peering을 통해서 VPC 간에 하나하나 연결을 다 했어야 했는데 이제는 Transit Gateway를 이용해서 전이적 통신이 가능해졌다.

 

암튼 Transit Gateway 설명은 그렇고, 얘는 VPC와 VPN, Peering, Direct Connect와 연결 가능하다.

 

 

내가 얘기하고 싶은 건 하나의 리전 안에 VPC가 두 개가 있을 때 A VPC에만 인터넷 게이트웨이와 NAT 게이트웨이가 있고 B VPC는 외부와 통신 가능한 망이 하~나도 없을 때 Transit Gateway를 이용해 어떻게 할 수 있는지다.

 

A VPC

- Internet Gateway 있음

- NAT Gateway 있음

- Public Subnet 있음

 

 

B VPC

- Internet Gateway 없음

- NAT Gateway 없음

- Private Subnet만 존재

 

 


이런 상황이라면 B VPC의 인스턴스에는 접근도 외부에서 뭔가 다운로드 하는 것조차도 불가능하다.

근데 상식적으로 그럴 순 없으니까 우리는 외부와 연결 가능한 A VPC를 이용해서 인터넷을 사용할 거다.

그렇게 하기 위해선 VPC Peering도 할 수 있겠지만, 여기에선 Transit Gateway를 사용하고자 한다.

Transit Gateway 아키텍처

 

 

Transit Gateway 생성하기

- VPC > Transit Gateway 페이지에서 tgw를 생성한다.

- 기본 라우팅 테이블 연결과 전파는 체크 해도 되고 체크 안 해도 된다. 자동으로 라우팅테이블을 만들 것이냐 아니냐의 차이여서 크게 상관없다. 어차피 우리는 라우팅만 잘 잡아주면 됨

 

 

Transit Gateway Attachment 생성하기

1. A VPC의 Transit Gateway Attachment 생성하기

  1. 1번에서 생성한 TGW 선택
  2. VPC에서 A VPC 선택하기
  3. Private Subnet 둘 다 선택해주기. 아무 서브넷이나 상관 없다고는 함. 나는 Private2 서브넷 선택했음

 

 

2. B VPC의 Transit Gateway Attachment 생성하기

  1. 1번에서 생성한 TGW 선택
  2. VPC에서 B VPC 선택하기
  3. Private Subnet 둘 다 선택해주기. 어차피 Private Subnet 뿐이라 선택의 폭이 없음

 

 

 

Transit Gateway Route Table 생성하기

- Transit Gateway 라우팅 테이블 생성할 때는 간단히 Transit Gateway만 지정해주면 된다.

- 만약 Transit Gateway 생성할 때 기본 라우팅 테이블을 지정했다면 자동으로 만들어져있을 것이고, 아니라면 수동으로 만들면 된다.

 

 

라우팅 테이블의 <연결>과 <전파>에 Transit Gateway Attachment를 각각 생성해준다.

 

 

그러면 자동으로 <경로>에 A와 B VPC CIDR 대역으로 향하는 TGW ID가 지정되어 있을텐데 여기에 추가로 0.0.0.0/0 인터넷으로 향하는 경우에 A VPC로의 TGW ID가 잡히도록 넣어주면 된다.

- 0.0.0.0/0 CIDR의 연결이 TGW가 되도록 설정하기

 

 

 

라우팅 테이블 제어하기

이젠 VPC 서브넷의 라우팅 테이블을 수정하면 된다.

 

1. A VPC의 Public Subnet의 라우팅테이블

  • 0.0.0.0/0 → IGW
  • 10.1.0.0/16(B VPC대역) → TGW
  • 10.10.0.0/16 → local

 

 

2. B VPC의 Private Subnet의 라우팅테이블

  1. 0.0.0.0/0 → TGW
  2. 10.1.0.0/16 → local

 

 

결론

  • B VPC에 NAT, IGW가 없어도 A VPC의 NAT를 이용해서 B VPC의 EC2에서 인터넷이 가능하게 할 수 있다.
  • 사진은 B VPC의 EC2 인스턴스에서 인터넷으로 ping 날린 것

  • Regional NAT는 왜인지 되지 않았다 왜 ? 안되는지 이유는 모르겠으나 Zonal NAT를 사용하니까 잘 됨

 

참고 문서

 

728x90