
VPC (Virtual Private Cloud)
- 외부와 격리되어 있는 가상의 네트워크 단위
- 원하는 대로 사설망 구축 가능
- 부여된 IP 대역을 분할해서 사용 가능
- 가상으로 존재하는 데이터 센터
- 리전 단위

VPC는 사용자의 AWS 계정 전용 가상 네트워크.
VPC는 AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리.
EC2 인스턴스와 같은 AWS 리소스를 VPC에서 실행할 수 있음.
IP 주소 범위와 VPC 범위를 설정하고 서브넷을 추가하고 보안 그룹을 연결한 다음 라우팅 테이블을 구성
VPC의 기본적인 구성요소
- 서브넷
- 인터넷 게이트웨이
- NACL/보안그룹
- 라우트 테이블
- NAT Instance/NAT Gateway
- Bastion Host
- VPC Endpoint
Subnet

- VPC의 하위 단위로 VPC에 할당된 IP를 더 작은 단위로 분할한 개념
- 하나의 서브넷은 하나의 가용영역(AZ)안에 위치
- CIDR Block Range로 IP 주소 지정
AWS Subnet의 IP 갯수
- AWS의 사용가능 IP 숫자는 5개를 제외하고 계산
- 예: 10.0.0.0/24 = 2^8 - 5 = 251
- 10.0.0.0: 네트워크 어드레스
- 10.0.0.1: VPC Router
- 10.0.0.2: DNS Server
- 10.0.0.3: 공석 - 미래를 위해 남겨둠
- 10.0.0.255: Network BroadCast Address
Public Subnet
외부에서 인터넷을 통해 연결할 수 있는 서브넷
- IGW (인터넷 게이트웨이)를 통해 외부의 인터넷과 연결되어 있음
- 안에 위치한 인스턴스에 Public IP 부여 가능
- 웹서버, Application 서버 등 유저에게 노출되어야 하는 인프라
Private Subnet
외부에서 인터넷을 통해 연결할 수 없는 서브넷
- 외부 인터넷으로 경로가 없음
- Public IP 부여 불가능
- 데이터베이스, 로직 서버 등 외부에 노출될 필요가 없는 인프라
Route Table
- 트래픽이 어디로 가야할지 알려주는 이정표
- VPC 생성 시 기본으로 하나 제공

가장 구체적인 Destination으로 라우팅함
IGW (인터넷 게이트웨이)
- VPC가 외부의 인터넷과 통신할 수 있도록 경로를 만들어주는 리소스
- Route Table에서 경로 설정 후에 접근 가능
reference:
- 쉽게 설명하는 AWS 기초 강좌 16:VPC 와 Subnet - AWS 강의실