Transit Gateway
Transit VPC(전이적 연결)가 지원되지 않는 여러 VPC를 연결
- VPC 피어링 연결은 전이되지 않기 때문에 1:1 Peering으로만 구성 가능
- 온-프레미스 전송을 위해 각 VPC에 VN, DX 연결을 만들어야 한다.
- Transit VPC 지원 불가 (예, VPC A는 VPC C, VPC D, 온-프레미스 통신 불가)
Transit Gateway (TGW)
- Transit Gateway를 통해 각 VPC 또는 VPN 간의 모든 트래픽을 라우팅
- 복잡한 피어링 관계를 제거하여 네트워크를 간소화
- 동일 리전에 있는 VPC 연결 가능 - 다중 리전 구성 위해 TGW Peering 활용
Transit Gateway 생성
ASN
- BGP (Border Gateway Protocol) 사용을 위한 ASN
DNS 지원
- 전송 게이트웨이에 연결된 다른 VPC의 인스턴스에서 쿼리할 때 퍼블릭 IPv4 DNS 호스트 이름을 프라이빗 IPv4 주소로 확인하기 위해 VPC가 필요한 경우 DNS 지원에서 활성화를 선택
VPN ECMP
- VPN 터널 간에 ECMP(Equal Cost Multipath) 라우팅 지원이 필요한 경우 VPN ECMP 지원에서 활성화를 선택
- 연결에서 동일한 CIDR을 광고하는 경우 해당 트래픽은 이러한 CIDR 간에 균등하게 분산
- 두 개의 터널이 있다고 가정하면 50:50으로 동등하게 트래픽이 분산돼서 전송됩니다.
기본 라우팅 테이블 연결
- Transit Gateway에 연결되는 VPC 등의 라우팅 테이블을 Transit Gateway의 기본 연결 라우팅 테이블에 자동으로 연결
기본 라우팅 테이블 전파
- Transit Gateway의 기본 라우팅 테이블로 자동으로 전파
교차 계정 공유
- AWS Resource Access Manager를 사용하여 전송 게이트웨이를 다른 계정과 공유
Transit Gateway Attachment 생성
VPC
- 동일 리전의 VPC를 Transit Gateway에 연결
VPN
- VPN의 Customer Gateway와 연결
Peering Connection
- 서로 다른 AWS 리전에 있는 전송 게이트웨이 간에 피어링 연결을 생성
- 여러 리전의 전송 게이트웨이 연결 간에 트래픽을 라우팅
Connect
- 타사 가상 어플라이언스(예: SD-WAN 어플라이언스) 간에 연결을 설정
Direct Connect 서비스에서 Transit VIF 또는 Direct Connect Gateway와 연결 생성 가능
Transit Gateway Routing Table
- Transit Gateway 연결이 생성되면 Transit Gateway 라우팅 테이블에 라우팅이 추가됨
- 동적 및 정적 라우팅을 지원
- 각 연결에 대해 라우팅 전파를 활성화하거나 비활성화 가능
- VPC 연결의 경우 VPC의 CIDR 블록이 전송 게이트웨이 라우팅 테이블로 전파
- 전송 게이트웨이 피어링 연결은 정적 라우팅만 지원
- VPN, Direct Connect 연결의 경우 BGP 전송 게이트웨이 라우팅 테이블의 라우팅이 전파
경로 평가 순서
- VPC 로컬 경로(Local Route)는 우선 순위가 가장 높음
- 대상 주소의 가장 구체적인 경로(Longest Prefix)를 선택
- 경로가 다른 대상과 동일한 경우 정적 라우팅(Static Routing)은 전파된 경로(Routing Propagation)보다 먼저 선택
- 경로가 다른 대상과 동일한 겨웅 전파된 라우팅 순으로 VPC -> Direct Connect Gateway -> Transit Gateway Connect -> Site-to-Site VPN 우선 순위가 적용
멀티캐스트
-
멀티캐스트 도메인: 멀티캐스트 네트워크를 여러 도멩니으로 분할할 수 있으며 Transit Gateway를 여러 멀티캐스트 라우터로 사용할 수 있습니다. 서브넷 수준에서 멀티캐스트 도메인 멤버십을 정의합니다.
-
멀티캐스트 그룹: 동일한 멀티캐스트 트래픽을 보내고 받을 호스트 집합을 식별합니다. 멀티캐스트 그룹은 그룹 IP 주소로 식별됩니다. 멀티캐스트 그룹 멤버십은 EC2 인스턴스에 연결된 개별 탄력적 네트워크 인터페이스에 의해 정의됩니다.
-
인터넷 그룹 관리 프로토콜(IGMP): 호스트와 라우터가 멀티캐스트 그룹 멤버십을 동적으로 관리할 수 있도록 하는 인터넷 프로토콜입니다. IGMP 멀티캐스트 도메인에는 IGMP 프로토콜을 사용하여 메시지를 조인, 종료 및 보내는 호스트가 포함됩니다. AWS는 IGMPv2 프로토콜과 IGMP 및 정적(API 기반) 그룹 멤버십 멀티캐스트 도메인을 모두 지원합니다.
-
멀티캐스트 소스: 멀티캐스트 트래픽을 전송하도록 정적으로 구성되며 지원되는 EC2 인스턴스와 연결된 탄력적 네트워크 인터페이스입니다. 멀티캐스트 소스는 정적 소스 구성에만 적용됩니다. 동적 소스 구성에는 멀티캐스트 멤버만 포함됩니다.
정적 소스 멀티캐스트 도메인에는 메시지의 가입, 종료 및 전송을 처리하는 데 IGMP 프로토콜을 사용하지 않는 호스트가 포함됩니다. AWS CLI를 사용하여 소스 및 그룹 멤버를 추가합니다. 정적으로 추가된 소스는 멀티캐스트 트래픽을 전송하고 멤버는 멀티캐스트 트래픽을 수신합니다.
-
멀티캐스트 그룹 멤버: 멀티캐스트 트래픽을 수신하는, 지원되는 EC2 인스턴스와 연결된 탄력적 네트워크 인터페이스입니다. 멀티캐스트 그룹에는 여러 그룹 멤버가 있습니다. 정적 소스 그룹 멤버십 구성에서 멀티캐스트 그룹 멤버는 트래픽을 수신할 수만 있습니다. IGMP 그룹 구성에서 멤버는 트래픽을 보내고 받을 수 있습니다.
-
클라우드 멀티캐스트 라우터로서 Transit Gateway는 2분마다 IGMPv2 QUERY 메시지를 모든 멤버에게 보냅니다. 각 멤버는 응답으로 IGMPv2 JOIN 메시지를 전송하고, 이 메시지는 멤버가 해당 멤버십을 갱신하는 방법을 나타냅니다. 멤버가 연속 세 번 쿼리에 응답하지 못하면 Transit Gateway가 조인된 모든 그룹에서 이 멤버십 을 제거합니다. 그러나 쿼리할 목록에서 멤버를 영구적으로 제거하기 전에 12시간 동안 이 멤버에게 쿼리를 계속 보냅니다. 명시적 IGMPv2 LEAVE 메시지는 이후의 모든 멀티캐스트 처리에서 호스트를 즉시 영구적으로 제거합니다.
-
Transit Gateway는 그룹에 성공적으로 조인한 호스트를 추적합니다. Transit Gateway는 중단이 발생한 경우 IGMP JOIN 메시지가 마지막으로 성공한 시점부터 7분(420)초 동안 호스트로 멀티캐스트 데이터를 보냅니다. 전송 게이트웨이는 최대 12시간 동안 또는 호스트에서 IGMP LEAVE 메시지를 받을 때까지 호스트에 멤버십 쿼리를 계속 보냅니다.
-
Nitro 인스턴스가 아닌 인스턴스는 멀티캐스트 발신자가 될 수 없습니다.
-
Transit Gateway는 멀티캐스트 그룹 멤버십을 추적할 수 있도록 모든 IGMP 멤버에게 멤버십 쿼리 패킷을 보냅니다. 이러한 IGMP 쿼리 패킷의 소스 IP는
0.0.0.0/32
이고 대상 IP는224.0.0.1/32
이며 프로토콜은 2입니다. IGMP 호스트(인스턴스)의 보안 그룹 구성과 호스트 서브넷의 모든 ACL 구성은 이러한 IGMP 메시지를 허용해야 합니다. -
멀티캐스트 소스와 대상이 동일한 VPC에 있는 경우 보안 그룹 참조를 사용하여 소스 보안 그룹의 트래픽을 허용하도록 대상 보안 그룹을 설정할 수 있습니다.
멤버쉽 쿼리
IGMP(2) 0.0.0.0/32
-> 224.0.0.1/32
멤버쉽 응답
IGMP(2) HOST IP
-> 224.0.0.2/32
멀티캐스트 라우팅
- Transit Gateway에서 멀티캐스트를 활성화하면 Transit Gateway는 멀티캐스트 라우터 역할을 합니다. 서브넷을 멀티캐스트 도메인에 추가하면 해당 멀티캐스트 도메인과 연결된 Transit Gateway로 모든 멀티캐스트 트래픽을 보냅니다.
- 네트워크 ACL 규칙은 서브넷 수준에서 작동하며 Transit Gateway는 서브넷 외부에 있기 때문에 이는 멀티캐스트 트래픽에 적용됩니다.
- 인터넷 그룹 관리 프로토콜(IGMP) 멀티캐스트 트래픽의 경우 최소한 다음과 같은 인바운드 규칙이 있어야 하며 원격 호스트는 멀티캐스트 트래픽을 보내는 호스트입니다.
NACL
인바운드
유형 | 프로토콜 | 소스 | 대상 주소 | 설명 |
---|---|---|---|---|
사용자 지정 프로토콜 | IGMP(2) | 0.0.0.0/32 | 224.0.0.1/32 | IGMP 쿼리 |
사용자 지정 UDP 프로토콜 | UDP | 원격 호스트 IP 주소 (트래픽 발신) | 멀티캐스트 그룹 IP 주소 | 인바운드 멀티캐스트 트래픽 |
아웃바운드
유형 | 프로토콜 | 소스 | 대상 주소 | 설명 |
---|---|---|---|---|
사용자 지정 프로토콜 | IGMP(2) | 호스트 IP 주소 | 224.0.0.2/32 | IGMP 나가기 |
사용자 지정 프로토콜 | IGMP(2) | 호스트 IP 주소 | 멀티캐스트 그룹 IP 주소 | IGMP 가입 |
사용자 지정 UDP 프로토콜 | UDP | 호스트 IP 주소 | 멀티캐스트 그룹 IP 주소 | 아웃바운드 멀티캐스트 트래픽 |
로깅
전송 게이트웨이 흐 름 로그
- 전송 게이트웨이 흐름 로그는 전송 게이트웨이로 들어오고 나가는 IP 트래픽에 대한 정보를 캡처할 수 있는 기능입니다. 플로우 로그 데이터는 Amazon CloudWatch Logs 또는 Amazon S3에 게시될 수 있습니다.
- 플로우 로그를 생성한 다음 선택된 대상의 데이터를 가져와 확인할 수 있습니다. 흐름 로그 데이터는 네트워크 트래픽 경로 외부에서 수집되므로 네트워크 처리량이나 지연 시간에 영향을 주지 않습니다.
- 네트워크 성능에 영향을 주지 않고 흐름 로그를 생성하거나 삭제할 수 있습니다. 전송 게이트웨이 흐름 로그는 VPC 흐름 로그와 별도로 액세스 됩니다.
- 전송 게이트웨이 흐름 로그를 만들려면 전송 게이트웨이 또는 Transit Gateway Attachment의 소유자이거나 전송 게이트웨이를 공유해야 합니다.
- 흐름 로그를 생성한 후에는 데이터를 수집하여 선택된 대상에 게시하는 데 몇 분의 시간이 소요될 수 있습니다. 흐름 로그는 전송 게이트웨이에 대한 실시간 로그 스트림을 캡처하지 않습니다.
- Amazon Athena를 사용한 전송 게이트웨이 흐름 로그 쿼리는 지원되지 않습니다.
SD-WAN
Transit Gateway Connect
SD-WAN 또는 소프트웨어 정의 광역 네트워크는 공공 인터넷을 통해 데이터 센터와 지사를 연결하는 데 오랫동안 사용되어 왔습니다. 오늘날 이러한 네트워크는 클라우드로도 확장되어야 합니다. 그러나 기존 SD-WAN 인프라가 이 작업에 항상 적합한 것은 아니므로 복잡성과 운영 부담이 크게 증가합니다. 동시에 많은 AWS 고객이 네트워크 엣지에서 AWS Transit Gateway를 사용하여 글로벌 네트워크를 AWS 백본에 연결하고 있습니다. AWS Transit Gateway Connect 출시와 함께 이제 SD-WAN 인프라를 AWS와 연결하는 기본 방법이 생겼습니다. 따라서 SD-WAN 네트워크 가상 어플라이언스와 Transit Gateway 간에 IPsec VPN을 설정하지 않고도 SD-WAN을 AWS로 쉽게 확장할 수 있습니다.
Transit Gateway Connect는 VPN 연결에 비해 더 높은 대역폭 성능을 위해 GRE(Generic Routing Encapsulation)를 지원하는 새로운 연결 유형입니다. Transit Gateway Connect는 동적 라우팅을 위한 BGP(Border Gateway Protocol)를 지원하며 고정 경로를 구성할 필요가 없습니다. 이는 네트워크 설계를 단순화하고 관련 운영 비용을 줄입니다. 또한 Transit Gateawy Network Manager와의 통합은 글로벌 네트워크 토폴로지, 연결 수준 성능 메트릭 및 원격 측정 데이터를 통해 고급 가시성을 제공합니다.
- 더 높은 대역폭 성능을 위해 GRE 지원
- 동적 라우팅을 위한 BGP(Border Gateway Protocol)를 지원
- 네트워크 설계 단순화, 운영 비용 감소
- Transit Gateway Network Manager을 통해 고급 가시성 제공
이 기능이 어떻게 작동하는지 이해하기 위해 Transit Gateway Connect에 도입된 몇 가지 새로운 용어와 개념을 살펴보겠습니다.
Connect attachment
: 타사 어플라이언스가 Transit Gateway에 연결할 수 있도록 전송 Transit Gateway 연결(기존 VPC 또는 AWS Direct Connect 연결)을 사용하는 새로운 Transit Gateway 연결 유형입니다. GRE(Generic Routing Encapsulation) 터널링 프로토콜과 BGP(Border Gateway Protocol)는 Connect 연결을 통해 사용됩니다.
VPC 연결
: 타사 가상 어플라이언스를 실행하는 EC2 인스턴스가 포함된 중앙 VPC입니다. 이러한 인스턴스는 연결 연결 유형을 사용하여 Transit Gateway에 연결됩니다.
전송 연결
: Connect 연결에서 기본 전송으로 사용되는 기존 Transit Gateway 연결 유형(VPC 또는 AWS Direct Connect 연결)입니다.
타사 어플라이언스
: VPC 연결을 전송으로 사용하는 Connect VPC의 EC2 인스턴스에서 실행되는 타사 가상 라우터/게이트웨이 어플라이언스.
Transit Gateway Connect의 이점
기본 통합
: 이제 복잡한 IPsec VPN 연결을 구성할 필요 없이 기본적으로 네트워크를 AWS Transit Gateway에 연결할 수 있습니다. 동적 라우팅 기능은 하이브리드 클라우드 환경 전반에서 경로 관리를 더욱 간소화합니다.
SD-WAN과 AWS 클라우드 간의 더 높은 대역폭 상호 연결
: 더 이상 더 높은 대역폭을 지원하기 위해 타사 어플라이언스와 Transit Gateway 간의 여러 IPsec VPN 연결을 관리하고 운영할 필요가 없습니다. Transit Gateway Connect는 단일 Connect 연결 내에서 더 높은 대역폭을 제공하기 위해 수평으로 확장되는 GRE 터널을 사용하여 이를 수행합니다. 이렇게 하면 Connect 연결당 총 대역폭이 20Gbps로 증가합니다.
가시성 향상
: Transit Gateway Network Manager와 통합하면 네트워크 상태에 대한 가시성을 높일 수 있습니다. AWS의 가상 어플라이언스 인스턴스뿐만 아니라 그 뒤에 있는 브랜치 어플라이언스의 성능 지표 및 원격 측정 데이터를 보여줍니다. 이제 AWS와 온프레미스에서 종단 간 네트워크를 진정으로 모니터링할 수 있습니다.
종단 간 관리
: 단일 오케스트레이션 플랫폼으로 글로벌 네트워크의 종단 간 관리를 수행할 수 있습니다. Transit Gateway Connect는 APN 파트너 SD-WAN 오케스트레이션 플랫폼과의 긴밀한 통합을 통해 이를 수행하고 Transit Gateway 라우팅 테이블을 업데이트할 수 있는 기능을 제공하여 보다 지능적인 라우팅 결정을 가능하게 합니다.
보안 및 규정 준수
: Transit Gateway Connect를 사용하여 타사 가상 어플라이언스에서 프라이빗 IP 주소를 사용하여 AWS Virtual Private Cloud(VPC)에 있는 리소스에 대한 연결 및 도달 가능성을 설정함으로써 인터넷 라우팅 가능한 퍼블릭 IP의 필요성을 줄일 수 있습니다.
Transit Gateway Connect를 사용하면 타사 어플라이언스의 GRE 패킷이 Connect 연결의 연결된 라우팅 테이블을 기반으로 라우팅됩니다. Transit Gateway와 타사 어플라이언스 간에 GRE 터널이 설정됩니다. 그런 다음 GRE 터널 내에서 Transit Gateway와 BGP 피어링을 설정하여 라우팅 정보를 안전하게 교환할 수 있습니다.
- 기존 Transit Gateway에서 새 Connect 첨부 파일을 만들 수 있습니다.
- 타사 어플라이언스는 온프레미스에 위치하거나 VPC 에서 가상 어플라이언스로 실행할 수 있습니다. Connect attachment을 사용하여 Transit Gateway에서 트래픽을 보내고 받으려면 어플라이언스를 GRE 터널로 구성해야 합니다. 동적 경로 업데이트 및 상태 확인을 위해 어플라이언스를 BGP로 구성해야 합니다. 어플라이언스가 온프레미스에 있는 경우 AWS Direct Connect 연결이 필요합니다.
- 연결 첨부 파일은 고정 경로를 지원하지 않습니다. BGP는 Transit Gateway Connect의 최소 요구 사항입니다.
- Transit Gateway Connect는 GRE 터널당 최대 5Gbps 대역폭을 지원합니다. 5Gbps 이상의 대역폭은 동일한 Connect 연결에 대해 여러 Connect 피어(GRE 터널)에 동일한 접두사를 광고함으로써 달성됩니다.
- 실행 시 각 Connect 연결에 대해 최대 4개의 Connect 피어가 지원됩니다.
- Transit Gateway Connect는 BGP(MBGP 또는 MP-BGP)용 Multiprotocol Extensions를 통해 IPv6 및 동적 경로 광고를 지원합니다.
- 각 Connect 첨부 파일에 대해 시간당 첨부 파일 요금이 있습니다.
TGW User Guide 정리
👨🏻💻 Transit Gateway는 가상 사설 클라우드(VPC)와 온프레미스 네트워크를 상호 연결하는 데 사용할 수 있는 네트워크 전송 허브입니다. 클라우드 인프라가 전 세계적으로 확장됨에 따라 리전 간 피어링은 AWS 글로벌 인프라를 사용하여 Transit Gateway를 함께 연결합니다. 데이터는 자동으로 암호화되며 퍼블릭 인터넷을 통해 전송되지 않습니다.
- 연결 — 다음을 연결할 수 있습니다.
- 하나 이상의 VPC
- Connect SD-WAN/서드 파티 네트워크 어플라이언스
- AWS Direct Connect 게이트웨이
- 다른 Transit Gateway와의 피어링 연결
- Transit Gateway에 대한 VPN 연결
- Transit Gateway는 VPC, AWS Direct Connect, Transit Gateway Connect 및 피어링 연결 간의 트래픽에 대해 8,500바이트의 MTU를 지원합니다.
- VPN 연결을 통한 트래픽은 1,500바이트의 MTU를 가질 수 있습니다.
라우팅 테이블
Transit Gateway는 기본 라우팅 테이블을 가지며 선택적으로 추가 라우팅 테이블을 가질 수 있습니다. 라우팅 테이블에는 패킷의 대상 IP 주소를 기반으로 다음 홉을 결정하는 동적 및 정적 라우팅이 포함됩니다.
이러한 경로의 대상은 모든 Transit Gateway 연결일 수 있습니다. 기본 적으로 Transit Gateway 연결은 기본 Transit Gateway 라우팅 테이블과 연결됩니다.
라우팅 전파
VPC
, VPN
연결 또는 **Direct Connect 게이트웨이
**는 Transit Gateway 라우팅 테이블에 라우팅을 동적으로 전파할 수 있습니다. Connect 연결을 사용하면 라우팅이 기본적으로 Transit Gateway 라우팅 테이블에 전파됩니다. VPN 연결 또는 Direct Connect 게이트웨이를 사용하면 BGP(Border Gateway Protocol)를 사용하여 Transit Gateway에서 온프레미스 라우터로 라우팅이 전파됩니다.
정적 라우팅
- VPC를 사용하는 경우 트래픽을 전송 게이트웨이로 보내려면 정적 라우팅을 생성해야 합니다.
- 피어링 연결을 사용하는 경우 피어링 연결을 가리키도록 Transit Gateway 라우팅 테이블에서 정적 라우팅을 만들어야 합니다.
- Transit Gateway는 Virtual Private Cloud(VPC)와 온프레미스 네트워크 간의 트래픽에 대한 리전별 가상 라우터 역할을 합니다.
- Transit Gateway는 네트워크 트래픽의 볼륨에 따라 탄력적으로 조정됩니다.
- Transit Gateway를 통한 라우팅은 패킷이 대상 IP 주소를 기반으로 특정 다음 홉 연결로 전송되는 계층 3에서 작동합니다.
- 하나 이상의 VPC, AWS Transit Gateway는 VPC 서브넷 내에 탄력적 네 트워크 인터페이스를 배포합니다. 이 인터페이스는 Transit Gateway에서 선택된 서브넷 간에 트래픽을 라우팅하는 데 사용됩니다.
- 각 가용 영역에 하나 이상의 서브넷이 있어야 합니다. 그러면 트래픽이 해당 영역의 모든 서브넷에 있는 리소스에 도달할 수 있습니다.
- 연결을 생성하는 동안 특정 가용 영역 내의 리소스는 동일한 영역 내에 서브넷이 활성화된 경우에만 Transit Gateway에 도달할 수 있습니다.
- 서브넷 라우팅 테이블은 Transit Gateway에 대한 경로를 포함합니다. 트래픽은 동일한 가용 영역의 서브넷에 연결이 있는 경우에만 Transit Gateway에 전달됩니다.
Transit Gateway에 VPC를 연결할 때는 Transit Gateway에서 하나 이상의 가용 영역을 사용하여 트래픽을 VPC 서브넷의 리소스로 라우팅해야 합니다. 각 가용 영역을 활성화하려면 정확히 하나의 서브넷을 지정해야 합니다. Transit Gateway는 서브넷의 IP 주소 하나를 사용하여 해당 서브넷에 네트워크 인터페이스를 배치합니다. 가용 영역을 활성화하면 지정된 서브넷이 아닌 해당 영역의 모든 서브넷으로 트래픽을 라우팅할 수 있습니다.
Transit Gateway 연결이 없는 가용 영역에 상주하는 리소스는 Transit Gateway에 도달할 수 없습니다.
📖 가용성을 위해 여러 개의 가용 영역을 활성화하는 것이 좋습니다.
- Transit Gateway는 Transit Gateway 라우팅 테이블을 사용하여 연결 간에 IPv4 및 IPv6 패킷을 라우팅합니다. Transit Gateway 피어링 연결의 경우 정적 경로만 지원됩니다.
- Transit Gateway는 자동으로 기본 라우팅 테이블과 함께 제공됩니다. 기본적으로 이 라우팅 테이블은 기본 연결 라우팅 테이블과 기본 전파 라우팅 테이블입니다. 경로 전파 및 라우팅 테이블 연결을 비활성화한 경우 AWS는 Transit Gateway에 대한 기본 라우팅 테이블을 생성하지 않습니다.
- Transit Gateway 라우팅 테이블에 경로와 일치하는 트래픽을 삭제하는 블랙홀 경로를 만들 수 있습니다.
Transit Gateway 경로는 다음과 같은 순서로 평가됩니다.
- 대상 주소의 가장 구체적인 경로입니다.
- 경로의 대상 IP 주소는 같지만 대상이 다른 경우 경로 우선순위는 다음과 같습니다.
- 정적 경로(예: Site-to-Site VPN 정적 경로)
- 참조된 경로 접두사 목록
- VPC 전파 경로
- Direct Connect 게이트웨이 전파 경로
- Transit Gateway Connect 전파 경로
- Site-to-Site VPN 전파 경로
👨🏻💻 Transit Gateway가 선호하는 경로만 표시합니다. 백업 경로는 해당 경로가 더 이상 알려지지 않는 경우에만 Transit Gateway 라우팅 테이블에 나타납니다.
예를 들어, Direct Connect 게이트웨이와 Site-to-Site VPN VPN을 통해 동일한 경로를 알리는 경우가 있습니다. AWS Transit Gateway는 기본 경로인 Direct Connect 게이트웨이 경로에서 수신한 경로만 표시합니다. 백업 경로인 Site-to-Site VPN은 Direct Connect 게이트웨이가 더 이상 광고되지 않는 경우에만 표시됩니다.
- 각 Transit Gateway VPC 첨부 파일에 대해 별도의 서브넷을 사용합니다. 서브넷별로 작은 CIDR을 사용하여 EC2 리소스를 위한 주소를 더 많이 확보하세요.
👨🏻💻 별도의 서브넷을 사용하는 경우 다음을 구성할 수 있습니다.
- Transit Gateway 서브넷과 연결된 인바운드 및 아웃바운드 네트워크 ACL을 계속 열어 둡니다.
- 트래픽 흐름에 따라 네트워크 ACL을 워크로드 서브넷에 적용할 수 있습니다.
- 네트워크 ACL 하나를 만들어 Transit Gateway에 연결된 모든 서브넷과 연결합니다. 인바운드 및 아웃바운드 방향 모두에서 네트워크 ACL을 열어 둡니다.
- 네트워크 설계에 여러 VPC 라우팅 테이블(예: 여러 NAT 게이트웨이를 통해 트래픽을 라우팅하는 중간 상자 VPC)이 필요한 경우를 제외하고 동일한 VPC 라우팅 테이블을 Transit Gateway에 연결된 모든 서브넷과 연결합니다.
- BGP(Border Gateway Protocol) Site-to-Site VPN 연결을 사용합니다. 연결을 위한 고객 게이트웨이 디바이스 또는 방화벽이 다중 경로를 지원하는 경우 이 기능을 활성화합니다.
- AWS Direct Connect 게이트웨이 연결 및 BGP Site-to-Site VPN 연결에 대한 라우팅 전파를 활성화합니다.
👨🏻💻 AWS Transit Gateway를 사용하기 위해 VPC 피어링에서 마이그레이션할 때 주의해야 할 점
Transit Gateway는 보안 그룹 참조를 지원하지 않습니다.
VPC 피어링과 Transit Gateway 간에 MTU 크기가 일치하지 않으면 비대칭 트래픽에 대해 일부 패킷이 삭제될 수 있습니다. 크기 불일치로 인해 점보 패킷이 삭제되지 않도록 두 VPC를 동시에 업데이트합니다.
- Transit Gateway는 기본적으로 고가용성이므로 고가용 성을 위해 추가 Transit Gateway가 필요하지는 않습니다.
- 설계상 여러 Transit Gateway 라우팅 테이블이 필요할 때를 제외하면 Transit Gateway 라우팅 테이블 수를 제한해야 합니다.
- 중복성을 위해 재해 복구를 위한 각 리전에 단일 Transit Gateway를 사용합니다.
- Transit Gateway 여러 개가 있는 배포의 경우 각 Transit Gateway에 대해 고유한 자율 시스템 번호(ASN)를 사용하는 것이 좋습니다.
- Transit Gateway는 리전 내의 피어링도 지원합니다.
TGW <—> (peering) <—> TGW
- 두 Transit Gateway를 피어링하고, 둘 사이에서 IPv4와 IPv6 트래픽을 포함한 트래픽을 라우팅할 수 있습니다. 이렇게 하려면 Transit Gateway에서 피어링 연결을 생성하고 Transit Gateway를 지정해야 합니다. 피어 Transit Gateway는 사용자 계정 또는 다른 AWS 계정에 있을 수 있습니다.
- 피어링 연결 요청을 생성한 후에는 피어 Transit Gateway의 소유자(수락자 Transit Gateway라고도 함)가 요청을 수락해야 합니다. Transit Gateway 간에 트래픽을 라우팅하려면 Transit Gateway 피어링 연결을 가리키는 Transit Gateway 라우팅 테이블에 정적 경로를 추가합니다.
- 향후 경로 전파 기능을 활용하려면 피어링된 Transit Gateway에 고유한 ASN을 사용하는 것이 좋습니다.
- 리전 간 게이트웨이 피어링은 VPC 피어링과 동일한 네트워크 인프라를 사용합니다. 따라서 트래픽은 리전 간에 이동할 때 가상 네트워크 계층에서 AES-256 암호화를 사용하여 암호화됩니다. 트래픽은 AWS의 물리적 제어 범위를 벗어나는 네트워크 링크를 통과할 때에도 물리적 계층에서 AES-256 암호화를 사용하여 암호화됩니다. 결과적으로 트래픽은 AWS의 물리적 제어 범위를 벗어나는 네트워크 링크에서 이중 암호화됩니다. 동일한 리전 내에서 트래픽은 AWS의 물리적 제어 범위를 벗어나는 네트워크 링크를 통과할 때에만 물리적 계층에서 암호화됩니다.
- Transit Gateway Connect 피어는 AWS-관리형 인프라에서 종료되는 두 개의 BGP 피어링 세션으로 구성됩니다. 두 개의 BGP 피어링 세션은 라우팅 플레인 중복성을 제공하여 하나의 BGP 피어링 세션이 손실되어도 라우팅 작업에 영향을 미치지 않도록 합니다.
- 두 BGP 세션에서 수신된 라우팅 정보는 지정된 Connect 피어에 대해 누적됩니다. 2개의 BGP 피어링 세션은 또한 일상적인 유지 관리, 패치 적용, 하드웨어 업그레이드 및 교체와 같은 모든 AWS 인프라 작업으로부터 보호합니다. Connect 피어가 이중화에 대해 구성된 권장 이중 BGP 피어링 세션 없이 작동하는 경우 AWS 인프라 작업 중에 연결이 일시적으로 끊길 수 있습니다.
- Connect 피어에서 두 BGP 피어링 세션을 모두 구성하는 것이 좋습니다. 어플라이언스 측에서 고가 용성을 지원하도록 여러 Connect 피어를 구성한 경우 각 Connect 피어에서 두 BGP 피어링 세션을 모두 구성하는 것이 좋습니다.
- Connect 연결에서는 기존 VPC 또는 AWS Direct Connect 연결을 기본 전송 메커니즘으로 사용합니다. 이를 전송 연결이라고 합니다. Transit Gateway는 서드 파티 어플라이언스에서 일치하는 GRE 패킷을 Connect 연결의 트래픽으로 식별합니다. 또한 소스 또는 대상 정보가 잘못된 GRE 패킷을 포함하여 다른 모든 패킷을 전송 연결의 트래픽으로 처리합니다.
- 멀티캐스트는 데이터의 단일 스트림을 여러 수신 컴퓨터에 동시에 전달하는 데 사용되는 통신 프로토콜입니다. Transit Gateway는 연결된 VPC의 서브넷 간에 멀티캐스트 트래픽 라우팅을 지원하며 여러 수신 인스턴스로 향하는 트래픽을 보내는 인스턴스에 대한 멀티캐스트 라우터 역할을 합니다.
Architecture Example
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-centralized-router.html
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-isolated.html
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-isolated-shared.html
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-peering-scenario.html
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-nat-igw.html
- https://docs.aws.amazon.com/ko_kr/vpc/latest/tgw/transit-gateway-appliance-scenario.html