codingstairs
노트에듀라이프연락
⌕검색⌘K
koen

Navigation

  • Intro
  • Blog
  • Life

연락하기

로그인 없이도 보낼 수 있어요. 답변이 필요하면 이메일을 함께 적어 주세요.

  • 익명 폼으로 의견 남기기 →
  • ✉ warragon112@gmail.com
  • 카카오톡 오픈채팅 ↗

© 2026 codingstairs

  • 노트
  • 에듀
  • 검색
  • 라이프
  • 연락
  • 약관
  • RSS
  • GitHub
노트›cloud

VPC 와 서브넷

2026-04-28 게시· 2026-05-18 갱신·0회 조회

VPC 와 서브넷 — 가상 사설 네트워크의 형태

AWS 에서 컴퓨팅·DB·로드밸런서가 배치되는 가상 네트워크가 VPC (Virtual Private Cloud) 입니다. VPC 의 모양을 먼저 정의하지 않으면 그 안에서 일어나는 모든 결정이 흔들립니다.

1. VPC 에 대한 이야기

VPC 는 2009 년 AWS 가 도입한 가상 사설 네트워크 서비스입니다. 한 AWS 계정 안에서 여러 VPC 를 만들 수 있고, 각 VPC 는 IP 주소 범위 (CIDR) · 서브넷 · 라우트 테이블 · 게이트웨이 · 보안 그룹으로 구성됩니다.

기본 (default) VPC 가 계정 생성 시 자동 생성됩니다. 운영용으로는 보통 별도의 VPC 를 명시적으로 만듭니다.

2. CIDR 표기

CIDR (Classless Inter-Domain Routing) 는 RFC 4632 (1993, 2006 갱신) 로 표준화된 IP 주소 범위 표기법입니다.

표기 호스트 수 (이론)
10.0.0.0/8 약 1,677 만
10.0.0.0/16 65,536
10.0.0.0/24 256
10.0.0.0/28 16

/N 의 N 이 커질수록 범위가 좁아집니다. AWS VPC 의 IPv4 CIDR 는 /16 (최대) ~ /28 (최소) 사이의 사설 대역을 권장합니다 (RFC 1918 의 10.0.0.0/8 · 172.16.0.0/12 · 192.168.0.0/16).

각 서브넷에서 처음 4 개 IP 와 마지막 IP 는 AWS 가 예약합니다. /24 서브넷은 실제 251 개 IP 가 할당 가능합니다.

3. 서브넷 분류

서브넷은 한 가용 영역 (AZ) 에 묶입니다. 외부 도달 방식에 따라 분류가 갈립니다.

분류 설명
Public subnet 라우트 테이블이 IGW (Internet Gateway) 로 향함. 외부 도달 가능.
Private subnet IGW 로의 라우트 없음. 외부 발신은 NAT 통해.
Isolated subnet NAT 도 없음. 외부 통신 불가.

AWS 자체는 서브넷을 "public" / "private" 로 라벨링하지 않습니다. 라우트 테이블의 모양으로 결정됩니다.

4. 가용 영역 분산

운영 워크로드는 보통 두 개 이상의 AZ 에 같은 종류의 서브넷을 둡니다.

ap-northeast-2 (서울)
├── 2a: public-a (10.0.0.0/24), private-a (10.0.10.0/24)
├── 2b: public-b (10.0.1.0/24), private-b (10.0.11.0/24)
└── 2c: public-c (10.0.2.0/24), private-c (10.0.12.0/24)

ELB 는 여러 AZ 의 서브넷을 한 번에 받아 분산합니다. RDS Multi-AZ 도 같은 그림 위에서 동작합니다.

5. IPv6

VPC 는 IPv4 / IPv6 dual-stack 으로 구성 가능합니다. AWS 가 부여한 /56 IPv6 CIDR 또는 사용자 보유 범위를 씁니다. IPv6 는 NAT 가 필요 없는 모델 (공인 IPv6 가 충분) 이라 사설/공용 구분이 IPv4 와 다릅니다.

외부 발신만 허용하고 인바운드는 막으려면 Egress-only Internet Gateway 를 사용합니다.

6. VPC 간 연결

방법 메모
VPC Peering 두 VPC 직접 연결. 라우팅·보안 그룹 명시. CIDR 겹침 불가.
Transit Gateway 여러 VPC·온프레미스 허브-스포크. 운영 단순화.
AWS PrivateLink 다른 VPC/계정의 서비스를 엔드포인트로 노출.
Site-to-Site VPN · Direct Connect 온프레미스와 연결.

7. 다른 클라우드의 대응

사업자 명칭
GCP VPC (전역 리소스 — 한 VPC 가 여러 리전 서브넷 포함)
Azure Virtual Network (VNet)
Hetzner Networks

GCP VPC 가 전역인 점이 AWS · Azure 와 다릅니다. 같은 어휘라도 모델이 다르다는 점은 이전 시 주의 사항입니다.

8. 작은 운영 환경 예시

VPC: 10.0.0.0/16
├── public-2a: 10.0.0.0/24
├── public-2b: 10.0.1.0/24
├── private-2a: 10.0.10.0/24
├── private-2b: 10.0.11.0/24
├── db-2a: 10.0.20.0/24       # isolated
└── db-2b: 10.0.21.0/24       # isolated

ALB 는 public, EC2/ECS 는 private, RDS 는 db 서브넷에 둡니다.

VPC 를 콘솔에서 한 번 만들면 똑같이 다시 만들기 어렵습니다. 운영용은 IaC (Terraform · CloudFormation · CDK) 로 정의하는 편이 일반적입니다.

9. 자주 걸리는 자리

CIDR 충돌 — 향후 Peering · Transit Gateway 를 위해 다른 VPC · 온프레미스와 겹치지 않게 미리 큰 그림을 그립니다.

AZ 한 곳에만 서브넷 — 단일 AZ 장애 시 서비스 전체 중단. 처음부터 2 AZ 분산.

공용 IP 자동 할당 — 서브넷 설정의 "Auto-assign public IPv4" 가 켜져 있으면 의도치 않게 공인 IP 가 붙습니다.

DNS 호스트네임 옵션 — enableDnsHostnames 가 꺼져 있으면 EC2 의 사설 DNS 가 동작하지 않아 디버깅이 어려워집니다.

서브넷 IP 고갈 — /28 같은 작은 서브넷은 16 개 중 5 개 예약을 빼면 11 개. ECS · Lambda VPC 같이 ENI 를 많이 쓰는 워크로드에서 빠르게 차오릅니다.

하고픈 말

VPC 는 한 번 만들면 IP 대역 변경이 어려워 처음에 큰 그림이 중요합니다. CIDR 의 사설 대역을 겹치지 않게 정해 두면 향후 Peering · Transit Gateway 가 자유롭습니다. 작은 워크로드는 default VPC 로 시작해도 충분하지만 운영 단계에서는 IaC 로 정의된 별도 VPC 가 표준입니다.

Next

  • internet-gateway-route-table
  • security-group

AWS VPC 문서 · VPC CIDR 가이드 · RFC 4632 CIDR · RFC 1918 사설 IP · Transit Gateway · GCP VPC 를 참고합니다.

cloud 카테고리의 다른 글

카테고리 전체 보기 →
  • title 템플릿 단일 소스 — 자식 페이지가 박지 않게 한다
  • GitHub Pages — 저장소를 정적 사이트로
  • Replit — 브라우저 기반 개발·배포 통합 플랫폼
  • HTTP API Mocking — WireMock · MockServer · Prism · MSW
  • Firebase Local Emulator Suite — Firebase 한 묶음을 노트북에
  • Supabase Self-Hosted — Postgres 한 통에 BaaS 를 담는 방법