VPC / Subnet
VPC (Virtual Private Cloud)
- 클라우드 환경에서 논리적으로 격리된 가상 네트워크
- 사용자가 직접 IP 대역, 서브넷, 라우팅, 게이트웨이 등을 구성
- 같은 클라우드 계정 내에서도 VPC 간에는 기본적으로 통신 불가 (격리됨)
- AWS, GCP, Azure 등 주요 클라우드에서 모두 지원
주요 구성 요소
| 구성 요소 |
설명 |
| CIDR 블록 |
VPC 전체 IP 대역 (예: 10.0.0.0/16) |
| 서브넷 |
VPC를 더 작게 나눈 네트워크 단위 |
| 라우팅 테이블 |
트래픽 경로 지정 |
| 인터넷 게이트웨이 |
공인 인터넷 연결 |
| NAT 게이트웨이 |
사설 서브넷 → 인터넷 단방향 연결 |
| 보안 그룹 |
인스턴스 단위 방화벽 |
| 네트워크 ACL |
서브넷 단위 방화벽 |
Subnet (서브넷)
- VPC의 IP 대역을 더 작게 분할한 단위
- 인스턴스(서버)는 서브넷 안에 위치함
- 가용 영역(AZ, Availability Zone) 단위로 생성
퍼블릭 서브넷 vs 프라이빗 서브넷
| 항목 |
퍼블릭 서브넷 |
프라이빗 서브넷 |
| 인터넷 연결 |
인터넷 게이트웨이를 통해 직접 가능 |
직접 불가, NAT 게이트웨이 필요 |
| 공인 IP 할당 |
가능 |
불가 (사설 IP만) |
| 주요 용도 |
웹 서버, 로드밸런서 등 |
DB, 내부 API 서버 등 |
예시 구성
VPC: 10.0.0.0/16
├── 퍼블릭 서브넷: 10.0.1.0/24 (웹 서버, 로드밸런서)
└── 프라이빗 서브넷: 10.0.2.0/24 (DB, 백엔드 서버)
VPC Peering
- 서로 다른 VPC 간 트래픽을 내부 네트워크로 연결하는 기능
- 같은 계정 또는 다른 계정의 VPC 간에도 설정 가능
- 퍼블릭 인터넷을 거치지 않아 빠르고 안전함