본문 바로가기

Networking

[실습] Amazon TGW (Transit Gateway) 구성하기 (2개 이상의 AWS 계정+동일 Region, non-Split)-5편

반응형

안녕하세요 서후아빠입니다. ^_^

이번 세션은 Amazon TGW에서 가장 보편적으로 사용하는 TGW 공유 상황에 대해서 실습을 해보겠습니다. TGW를 소유하는 계정(A계정)과 TGW를 공유받아 연결하는 계정(B계정)으로 구성되며, 모든 인터넷 트래픽은 TGW를 소유하는 계정(A계정)을 통해 이루어집니다.


구성도

TGW 1개(tgw)를 생성하여 VPC를 연결하면 TGW는 연결된 VPC(vpcA, vpcB)의 대역 정보를 모두 등록됩니다.

vpcB의 priB-ec2가 인터넷으로 통신하는 순서는 아래와 같습니다. 
  ① vpcB의 priB-ec2는 연결된 라우팅(priB-sn-1_2-rt)을 참조하여 tgw-vpcB(tgw-eni : tgw-vpcB의 인터페이스)로 패킷 전송
  ② tgw-vpcB로부터 패킷을 수신한 tgw는 라우팅 테이블(tgw-rt)을 참조하여 tgw-vpcA로 패킷 전송
  ③ tgw로부터 패킷을 수신한 tgw-vpcA(tgw-eni : tgw-vpcA의 인터페이스)는 라우팅 테이블(tgwA-sn-1-2-rt)을 참조하여 natA로 패킷 전송
  ④ natA는 수신 패킷을 라우팅 테이블(pubA-sn-rt)를 참조하여 igwA로 패킷 전송하여 인터넷 통신

사전 작업

인프라 생성 : vpc, subnet, igw, routing table, ec2  등은 설명 생략합니다. 

2022.07.02 - [Networking] - [실습] Amazon VPC 구성요소 생성하기

 

[실습] Amazon VPC 구성요소 생성하기

안녕하세요 서후아빠입니다. ^_^ 이번 세션은 VPC 관련 구성요소에 대해서 실습을 해보겠습니다. 구성도 1단계 : VPC 생성 VPC > Your VPCs > Create VPC 구분 VPC settings (VPC Only 방식) VPC settings (VPC a..

sh-t.tistory.com

1단계 (A계정) : TGW 생성 

VPC > Transit gateways > Create transit gateway

구분 Name ASN Configure the transit gateway (체크 항목)
내용 tgw Auto Check (DNS & VPN ECMP supportInfo, Default route table association & propagationInfo)
Check (Auto accept shared attachments)
Default route table association & propagationInfo 활성화 시 VPC(vpcA, vpcB)가 연결되면 tgw-rt에 자동으로 라우팅 테이블이 등록됩니다. 

2단계 (A계정) : TGW에 VPC 연결

VPC > Transit gateway route tables : 기본 생성 라우팅 테이블 이름 변경 “tgw-rt
VPC > Transit gateway attachments > Create transit gateway attachment

구분 Name Transit gateway ID Attachment type VPC attachment
1 tgw-vpcA tgw VPC DNS support : check
VPD ID : vpcA
Subnet IDs : tgwA-sn-1, tgwA-sn-2
지정되는 Subnet IDs에 tgw-eni (인터페이스)가 생성됩니다. 

VPC > Transit gateway route tables > tgw-rt > Routes (tab) : Route state “활성“ 확인

3단계 (A계정) : TGW를 다른 계정 (B계정) 으로 공유

Resource Access Manager > Shared by me > Resource shares > Create resource share 

구분 Specify resource share details Associate permissions Grant access to principals
내용 Resource share name : tgw-share 
Select resource type, ID : Transit Gateways, tgw 선택
Permission for ec2:TransitGateway 확인만 Principals : Allow sharing with anyone 
AWS account : B계정 번호 입력 > Add

4단계 (B계정) : 공유 수락, TGW에 VPC 연결

Resource Access Manager > Shared with me > tgw-share 선택 > Accept resource share > Status “Associated” 확인

VPC > Transit gateway attachments > Create transit gateway attachment

구분 Name Transit gateway ID Attachment type VPC attachment
내용 tgw-vpcB tgw-share VPC DNS support : check
VPD ID : vpcB
Subnet IDs : tgwB-sn-1, tgwB-sn-2
지정되는 Subnet IDs에 tgw-eni (인터페이스) 가 생성됩니다. 
B계정에서는 권한이 없기 때문에 Transit gateway route tables를 볼 수 없습니다. 즉 TGW에 대한 Static route table 설정은 A계정에서만 가능하다는 의미입니다.

5단계 (A계정) : TGW에 라우팅 테이블 설정 

VPC > Transit gateway route tables > tgw-rt > Routes (tab) > Create static route

구분 CIDR Type Choose attachment
내용 0.0.0.0/0 Active tgw-vpcA

VPC > Transit gateway route tables > tgw-rt > Routes (tab) : Route state “활성“ 확인

6단계 : VPC의 라우팅 테이블 설정

구성도의 라우팅 테이블 참조하여 라우팅 설정 : 설명 SKIP

7단계 : vpcB에서 인터넷 통신 확인

priB-ec2에서 인터넷으로 ping 통신 요청 : sucess 확인

반응형