[이론] VPC 기본 개념

Amazon VPC는 Amazon에서 제공하는 Private한 네크워크 망입니다. VPC는 AWS 인프라의 가장 기본이 되는 구조이기 때문에 초기에 구성해야하는 서비스 중 하나이며, 한 번 구성하게되면 이후에 변경하기 힘듭니다. 따라서 올바른 개념을 가지고 상황에 맞는 VPC 구성을 잘 하는 것이 중요합니다.

다음은 VPC의 핵심 구성요소입니다.

Virtual Private Cloud(VPC) — 사용자의 AWS 계정 전용 가상 네트워크입니다.

Subnet — VPC의 IP 주소 범위입니다.

Route table — 네트워크 트래픽을 전달할 위치를 결정하는 데 사용되는 라우팅이라는 규칙 집합입니다.

Internet Gateway — VPC의 리소스와 인터넷 간의 통신을 활성화하기 위해 VPC에 연결하는 게이트웨이입니다.

NAT Gateway — 네트워크 주소 변환을 통해 프라이빗 서브넷에서 인터넷 또는 기타 AWS 서비스에 연결하는 게이트웨이입니다.

Security Group — 보안 그룹은 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 하는 규칙 집합입니다..

VPC Endpoint — 인터넷 게이트웨이, NAT 디바이스, VPN 연결 또는 AWS Direct Connect 연결을 필요로 하지 않고 PrivateLink 구동 지원 AWS 서비스 및 VPC 엔드포인트 서비스에 VPC를 비공개로 연결할 수 있습니다. VPC의 인스턴스는 서비스의 리소스와 통신하는 데 퍼블릭 IP 주소를 필요로 하지 않습니다. VPC와 기타 서비스 간의 트래픽은 Amazon 네트워크를 벗어나지 않습니다.

Public Subnet vs Private Subnet

Subnet이란 VPC IP 주소 범위를 구간별로 나눈 리소스하고 생각하시면 편합니다. 전체 사용 가능한 IP 주소 pool에서 범위를 나눠서 구역별로 지정해주는 것입니다. Subnet은 기본적으로 AZ(가용 영역)에 종속적이기 때문에 AZ를 여러개 사용하시는 경우에는 AZ 별로 하나씩 생성해주셔야 합니다.

여기서 중요한 것은 Public과 Private Subnet을 구분하는 것입니다. 실제로 public / private subnet을 나누는 설정값은 존재하지 않습니다. 다 같은 subnet의 일종일 뿐입니다. 다만, 해당 서브넷에서 외부와 통신할 수 있는 routing rule을 어떻게 설정하느냐에 따라 Public과 Private을 나눠서 지칭할 뿐입니다.

Subnet에 붙어 있는 Gateway가 인터넷 게이트웨이(IGW)라면 이는 public subnet이라고 부르고, NAT 혹은 아무것도 없는 경우에는 private subnet이라고 부릅니다. DB 레이어와 같이 인터넷 밖과 통신할 일이 거의 없는 서비스들은 NAT 설정 자체도 없는 서브넷에 두는 것이 보안상 좋습니다.

공식 문서 What is Amazon VPC

https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/what-is-amazon-vpc.html

Last updated