
본 포스트는 『AWS 교과서』(김원일, 서종호, 김석필 저)를 참고한 내용임.
Amazon VPC는 리전마다 독립적으로 구성되어 있다.
이때 리전이란 전 세계 주요 도시의 데이터 센터를 군집화하는 물리적인 위치를 의미한다. 예를 들어 서울 리전에 VPC를 생성했다면 생성한 VPC는 서울 리전에만 있으며, 다른 리전에는 없다. 또한 리전 내에는 다수의 VPC를 생성할 수 있으며, 각 VPC는 서로 독립적으로 분리된다.
서브넷은 VPC 내 별도로 나누어진 네트워크이다. 반드시 하나의 가용 영역에 종속적으로 위치한다.
퍼블릭 서브넷: 인터넷 구간과 연결되어 있어 외부 인터넷 통신이 가능한 네트워크 영역
프라이빗 서브넷: 인터넷 구간과 연결되지 않은 폐쇄적인 네트워크 영역
IP CIDR이란 네트워크에 할당할 수 있는 IP 주소 범위를 표현하는 방법이다.
VPC라는 큰 네트워크의 IP CIDR에서 서브넷이라는 작은 네트워크의 IP CIDR이 분할되어 있다. 서브넷에 생성되는 자원은 IP CIDR 범위 안에 있는 IP 주소를 할당받을 수 있다.

위의 그림에서 VPC는 10.1.0.0/16의 IP CIDR로 할당되어 있고, Subnet-001~003는 10.1.1.0/24, 10.1.2.0/24, 10.1.3.0/24의 IP CIDR로 분리되어 있다.
가상 라우터는 네트워크 경로를 확인하여 트래픽을 전달하는 역할을 한다. 라우터는 기본 라우팅 테이블을 보유하고 있으며, 라우팅 테이블을 통해 네트워크 경로를 식별할 수 있다.
사용자는 별도의 라우팅 테이블을 생성할 수 있고, 생성된 라우팅 테이블은 서브넷과 연결하여 서브넷마다 라우팅 테이블을 가질 수 있다.

Amazon VPC는 보안 그룹(security group)과 네트워크 ACL(Access Control LIst) 같은 가상의 방화벽 기능을 제공하여 서브넷과 생성된 자원에 대한 트래픽을 보호한다.
보안 규칙을 만들어 IP CIDR 블록, 프로토콜, 포트 번호 등을 정의하여 허용과 거부를 결정한다. 여기에는 가상의 방화벽을 기준으로 들어오는 인바운드(inbound) 규칙과 빠져나가는 아웃바운드(outbound) 규칙이 있다.
| 보안 그룹 | 네트워크 ACL |
|---|---|
| 자원 접근 제어(ex.인스턴스) | 서브넷 접근 제어 |
Amazon VPC는 프라이빗 클라우드 네트워크 환경으로, 외부 인터넷 구간과 연결되지 않은 독립적인 네트워크이다. 외부 인터넷 구간과 연결하기 위해서는 인터넷 게이트웨이라는 네트워킹 자원을 생성한 후에 VPC와 연결하여 외부 인터넷과 통신해야 한다.
퍼블릭 서브넷은 외부 인터넷 통신이 가능한 네트워크이며, VPC에서 퍼블릭 서브넷을 구성할 경우 다음의 단계를 수행해야 한다.
- 인터넷 게이트웨이를 생성하고 Amazon VPC에 연결한다.
- 서브넷의 라우팅 테이블에 타깃 대상을 인터넷 게이트웨이로 지정한다.
NAT 게이트웨이(Network Address Translation gateway)는 프라이빗 서브넷에서 외부 인터넷으로 통신하는 관문 역할을 한다.
NAT는 프라이빗 IP 주소를 퍼블릭 IP 주소로 변환하여 외부 인터넷 구간 통신 환경을 만드는 역할을 한다.
프라이빗 서브넷은 원래 외부 인터넷 구간과 단절된 네트워크지만, NAT 게이트웨이를 통해서 프라이빗 IP 주소를 퍼블릭 IP 주소로 변환하여 외부 인터넷 구간과 통신할 수 있게 된다.
글로벌소프트웨어캠퍼스와 교보DTS가 함께 진행하는 챌린지입니다.