NAT Gateway란? (Network Address Translation Gateway)
NAT Gateway는 Private Subnet에 있는 리소스가 외부 인터넷으로 나갈 수 있게 해주되,
외부에서는 해당 리소스로 직접 접근하지 못하게 하는 AWS 관리형 서비스다.
1) NAT Gateway가 왜 필요한가 (배경)
Private Subnet의 EC2는:
- 보안상 Public IP ❌
- Internet Gateway 직접 연결 ❌
하지만 현실에서는:
- OS 패키지 다운로드
- 외부 API 호출
- 라이선스 서버 통신
같은 Outbound 통신이 반드시 필요하다.
👉 이때 사용하는 게 NAT Gateway
2) NAT Gateway 한 줄 정의
NAT Gateway는 Private Subnet의 인스턴스가 인터넷으로 Outbound 통신만 가능하도록 해주는 서비스이다.
3) NAT Gateway의 핵심 특징 ⭐⭐⭐
(1) Outbound Only
- 내부 → 외부 ⭕
- 외부 → 내부 ❌
(2) Public Subnet에 위치
- 반드시 Public Subnet + Elastic IP 필요
(3) 관리형 서비스
- 고가용성 내장
- 패치/운영 신경 쓸 필요 없음
4) NAT Gateway 동작 구조
[Private Subnet EC2]
↓
[Route Table: 0.0.0.0/0 → NAT Gateway]
↓
[NAT Gateway (Public Subnet)]
↓
[Internet Gateway]
↓
[Internet]
5) NAT Gateway 구성 조건 (중요)
1️⃣ VPC에 Internet Gateway 연결
2️⃣ Public Subnet 존재
3️⃣ NAT Gateway 생성 + EIP 할당
4️⃣ Private Subnet 라우팅 테이블 수정
6) NAT Gateway vs NAT Instance (차이)
| 구분 | NAT Gateway | NAT Instance |
| 관리 | AWS | 사용자 |
| 가용성 | 내장 | 직접 구성 |
| 성능 | 자동 확장 | 인스턴스 스펙 의존 |
| 비용 | 사용량 기반 | EC2 비용 |
실무에서는 NAT Gateway가 표준
7) 실무 아키텍처 예시
웹 서비스 구조
[Internet]
↓
[ALB] (Public)
↓
[EC2] (Private)
↓
[NAT Gateway] → 외부 API
- EC2는 외부에서 접근 불가
- 업데이트/통신은 가능
8) 비용 관점 (중요 포인트)
NAT Gateway는:
- 시간당 요금 + 트래픽 요금
- 트래픽 많으면 비용 급증
비용 절감 팁
- 필요 없는 트래픽 줄이기
- VPC Endpoint(S3/DynamoDB) 활용
9) NAT Gateway에서 자주 하는 실수 ❌
❌ NAT Gateway를 Private Subnet에 생성
❌ Private Subnet 라우팅 테이블 미설정
❌ AZ 하나에만 NAT Gateway 생성 (장애 시 전체 Outbound 불가)
10) AZ 기준 NAT Gateway 설계 ⭐
AZ-a: NAT Gateway-a
AZ-b: NAT Gateway-b'Infra&Cloud > AWS' 카테고리의 다른 글
| AWS-Public/Private Subnet (0) | 2026.02.08 |
|---|---|
| AWS-VPC(Virtual Private Cloud) (0) | 2026.02.08 |
| AWS-ELB(Elastic Load Balancing) (0) | 2026.02.08 |
| AWS-Systems Manager(SSM) (0) | 2026.02.08 |
| AWS-ROUTE 53 (0) | 2026.02.08 |