Public / Private Subnet이란?
Public Subnet과 Private Subnet은 VPC 내부에서 리소스를 외부 인터넷에 노출할지 여부를 구분하는 네트워크 개념이다.
AWS 네트워크 설계의 가장 기본이자 가장 중요한 기준이다.
1) Subnet이란?
Subnet은 VPC의 IP 대역을 더 작게 나눈 네트워크 구간이다.
예:
VPC: 10.0.0.0/16
├─ Public Subnet : 10.0.1.0/24
└─ Private Subnet: 10.0.2.0/24
Subnet은:
- 하나의 AZ에 속함
- 라우팅 테이블로 동작 방식이 결정됨
2) Public Subnet이란?
정의
Internet Gateway(IGW)로 향하는 라우팅 경로가 존재하는 Subnet
특징
- 외부 인터넷과 직접 통신 가능
- 퍼블릭 IP(EIP) 할당 가능
라우팅 테이블 예시
0.0.0.0/0 → Internet Gateway
대표 배치 리소스
- ALB
- Bastion Host
- NAT Gateway
3) Private Subnet이란?
정의
Internet Gateway로 직접 나가는 경로가 없는 Subnet
특징
- 외부에서 직접 접근 ❌
- 보안성이 높음
- 필요 시 NAT Gateway 통해 외부 통신
라우팅 테이블 예시
0.0.0.0/0 → NAT Gateway
대표 배치 리소스
- EC2 (WAS)
- RDS
- 내부 시스템
4) Public vs Private 핵심 차이
| 구분 | Public Subnet | Private Subnet |
| IGW 연결 | ⭕ | ❌ |
| 외부 접근 | 가능 | 불가 |
| 퍼블릭 IP | ⭕ | ❌ |
| 보안 수준 | 낮음 | 높음 |
| 주요 용도 | 진입 지점 | 핵심 자원 |
5) Public / Private Subnet 동작 구조
기본 웹 서비스 아키텍처
[Internet]
↓
[ALB] (Public Subnet)
↓
[EC2] (Private Subnet)
↓
[RDS] (Private Subnet)
- 외부 노출 최소화
- 내부 자원 보호
6) NAT Gateway의 역할 (중요)
Private Subnet의 리소스가:
- 패키지 다운로드
- 외부 API 호출
을 해야 할 경우 필요함.
[Private Subnet]
↓
[NAT Gateway] (Public Subnet)
↓
[Internet]
❗ NAT Gateway는 Inbound는 막고 Outbound만 허용
7) Subnet 설계 실무 원칙 ⭐
✅ 외부 진입점만 Public
- ALB, Bastion만 Public
✅ 애플리케이션/DB는 Private
- EC2, RDS는 Private
✅ AZ별 Subnet 분리
- 고가용성 확보
Public-AZ-a / Public-AZ-b
Private-AZ-a / Private-AZ-b
8) 자주 하는 오해
❌ Public Subnet = 보안이 없음
→ 보안은 SG/NACL로 제어
❌ Private Subnet = 인터넷 완전 차단
→ NAT Gateway 있으면 Outbound 가능다.
'Infra&Cloud > AWS' 카테고리의 다른 글
| AWS-SG(Security Group) (0) | 2026.02.08 |
|---|---|
| AWS-NACL(Network Access Control List) (0) | 2026.02.08 |
| AWS-VPC(Virtual Private Cloud) (0) | 2026.02.08 |
| AWS-NAT Gateway (0) | 2026.02.08 |
| AWS-ELB(Elastic Load Balancing) (0) | 2026.02.08 |