- AWS VPC 설정 중 이해가 어려운 부분이 많았던 경험을 바탕으로, 이번 포스트에서는 AWS VPC를 아파트에 비유하여 쉽게 설명해보겠습니다.
1. VPC 개념 아파트에 빗대어 쉽게 이해하기

- VPC 개념을 아파트 단지에 비유하여 쉽게 설명해보겠습니다.
- 예를 들어 택배 주소를 적을 때 아파트명, 동, 호수 를 기입하듯, AWS 시스템에도 VPC, 서브넷 등으로 구성된 계층적 주소 체계가 있어 서비스 간 접근을 관리할 수 있습니다.
1) VPC == 아파트단지
- VPC는 AWS 내의 가상 네트워크 공간을 말하며, 쉽게 말해 아파트 단지라고 할 수 있습니다.
- 예를 들어, ‘강남아파트 101동’과 ‘강북아파트 101동’이 각각 독립된 객체이듯, VPC는 서로 다른 네트워크 단지로 구분되어 내부 네트워크를 구성합니다.

2) Subent == 동
- Subnet은 아파트 동으로 비유할 수 있습니다.
- 각 Subnet 내부 리소스가 위치할 네트워크 단위이며, 리소스는 고유한 IP 주소(호수)를 할당받아 통신하게 됩니다.
3) Subnet에 할당된 IP == 호수
- 서브넷의 IP 주소는 각 리소스가 위치하는 호수와 같습니다.
- IP를 통해 특정 리소스(EC2 인스턴스 등)가 위치한 서브넷 내부의 통신이 가능해집니다.
4) Internet GateWay == 아파트 출입구
- Internet Gateway는 아파트 단지의 출입구와 같습니다.
- 특정 Subnet을 외부 네트워크와 연결하여(Publci Subent) 외부로 나가는 아웃바운드 및 들어오는 인바운드 트래픽을 지원합니다.
2. VPC 란?
1) VPC 개념
- VPC(Virtual Private Cloud)는 사용자의 전용 가상 네트워크를 의미합니다.
- AWS에서 VPC 를 통해사용자 전용의 아파트 단지를 제공합니다. 이를 통해 서로 다른 서비스가 구분되고, 필요한 경우 연결할 수 있습니다.
2) VPC의 역할
- 가상 데이터 센터 : AWS 사용자만의 가상 데이터 클라우드 센터 역할을 합니다. 각 서비스를 네트워크로 연결합니다.
- 서브넷 분할 : VPC 내의 여러 서브넷(아파트 동)을 만들어 각 시스템을 분리하는 역할으 합니다.
- 보안 제어 : 보안그룹, 네트워크 ACL 을 통해 인바운드/아웃바운드 트래픽의 포트, 대상(IP, 보안그룹 등) 을 제한하여 각 서비스의 접근을 설정합니다.
3) Subnet
- 서브넷은 네트워크를 더 작은 단위로 나누는 방법으로, 독립적인 네트워크를 운영할 수 있는 단위입니다.
- IP 주소 범위 제한: 서브넷은 CIDR을 통해 IP 수를 제한하여(아파트의 호수) IP 충돌을 방지합니다.
- 트래픽 제어 : 각 서브넷은 보안 그룹(Security Group) 과 네트워크 ACL(Network ACL) 설정을 통해 인바운드와 아웃바운드 트래픽을 제어할 수 있습니다.
4) Public Subnet, Private Subnet
- Public Subnet : Internet Gateway와 연결된 서브넷으로, 외부와 통신이 필요한 서비스(예: 프론트엔드 서버)를 배치합니다.
- Private Subnet : 인터넷과 연결되지 않으며, 내부 통신만 허용하여 DB와 같은 민감한 데이터를 처리하는 서비스를 배치합니다.
5) 라우팅 테이블
- 라우팅 테이블은 트래픽의 목적지에 따라 서브넷 간 혹은 외부 네트워크로 트래픽을 전달하는 경로를 정의합니다.
- 이를 통해 서브넷의 통신 경로를 지정하고, 외부와의 연결을 제어할 수 있습니다.
6) Internet Gateway
- Internet Gateway는 VPC 내부 리소스가 인터넷과 통신할 수 있도록 돕는 아파트 단지의 출입구입니다.
- Internet Gateway가 연결된 서브넷은 Public Subnet이 되며, 인바운드/아웃바운드 트래픽을 양방향으로 지원합니다.
- InBound Traffic: 외부에서 VPC 내부의 리소스로 접근하는 경우입니다.
- OutBound Traffic:VPC 내부 리소스에서 외부 리소스와 통신하는 경우입니다. Docker Hub에서 이미지를 받거나, 애플리케이션 업데이트, 인증 등 경우입니다.
7) NAT Gateway
- 아파트 내부에서 외부로만 나갈수 있는 출입구 입니다.
- NAT Gateway는 반드시 Publci Subnet 과 연결하여 인터넷과 통신할수 있도록 설정해야합니다.
- Private Subnet 인터넷 접근 :Private Subnet에 연결된 리소스는 기본적으로 인터넷과 연결되지 않으나, NAT Gateway를 통해 외부로만 나가는 아웃바운드 트래픽을 허용할 수 있습니다.
- InBound 트래픽 차단 :Internet Gateway와 다르게 OutBound 트래픽만 허용 하고, 외부에서 들어오는 InBound 트래픽은 모두 차단 합니다.
3. 결론
- AWS의 VPC를 아파트에 비유해 살펴보았습니다.
- 아파트 단지(VPC) 안의 동(Subnet), 호수(IP 주소), 그리고 출입구 역할을 하는 Internet Gateway와 NAT Gateway의 개념을 통해, VPC 내의 리소스가 어떻게 관리되고 통신하는지 한눈에 쉽게 기술해 보았습니다.
- 다음 포스트에서는 VPC를 만드는 과정을 설명하겠습니다.
'AWS' 카테고리의 다른 글
[RDS] SSH 터널링과 포트 포워딩으로 로컬 Spring RDS 연결 (0) | 2025.02.10 |
---|---|
[VPC] AWS VPC 생성 (2) - VPC, 서브넷, 라우팅 테이블, 게이트웨이 설정 (0) | 2024.11.15 |
[RDS] EC2 인스턴스 SSH 터널링을 통한 AWS RDS 접속(DBeaver 사용) (0) | 2024.11.14 |
[Lambda] Lambda와 S3를 사용한 이미지 리사이징 (4)- 이미지 리사이징 구현 테스트 (3) | 2024.11.05 |
[Lambda] Lambda와 S3를 사용한 이미지 리사이징 (3)- Spring 코드 구현 (1) | 2024.11.05 |