서브넷
서브넷은 VPC 내에서 IP 주소를 부분적으로 분할하여 세분화한 네트워크 영역입니다. 각 서브넷은 특정 네트워크 영역을 대표하며, 이를 통해 VPC를 여러 개의 서브넷으로 분할하여 용도와 목적에 맞게 관리할 수 있습니다. 카카오클라우드의 VPC 서비스에서는 서브넷을 지정하여 BCS 인스턴스 등의 리소스를 생성할 수 있습니다. 다만, 서브넷은 특정한 단일 가용 영역(Availability Zone)에 종속되며, 여러 가용 영역에 동시에 속하는 단일 서브넷을 구성할 수 없습니다.
VPC의 IP 주소 범위 내에서는 IPv4 CIDR 블록을 설정할 수 있습니다. 여러 가용 영역에 걸쳐 서브넷을 구성함으로써 애플리케이션을 분산 배치할 수 있습니다. 이렇게 함으로써 특정 가용 영역에서 장애가 발생하더라도 애플리케이션의 지속적인 가용성을 보장할 수 있습니다.
서브넷 다이어그램
다음 다이어그램에서는 한 리전에 있는 2개의 VPC를 보여줍니다. 각 VPC에는 퍼블릭 및 프라이빗 서브넷과 인터넷 게이트웨이가 있습니다.
서브넷 다이어그램(kr-central-2 기준)
서브넷 유형
서브넷의 라우팅 구성 방법에 따라 퍼블릭 서브넷 또는 프라이빗 서브넷으로 구성할 수 있습니다.
-
퍼블릭 서브넷: 퍼블릭 서브넷은 연결된 라우팅 테이블에 인터넷 게이트웨이로의 라우팅(Route) 설정이 있는 서브넷을 의미합니다. 이 경로를 통해 퍼블릭 서브넷 상의 리소스는 인터넷에 접근할 수 있습니다.
-
프라이빗 서브넷: 프라이빗 서브넷은 연결된 라우팅 테이블에 인터넷 게이트웨이로의 라우팅(Route) 설정이 없는 서브넷을 의미합니다. 프라이빗 서브넷의 리소스에는 퍼블릭 인터넷에 액세스하기 위해 NAT 인스턴스가 필요합니다.
서브넷 생성 시, VPC 구성에 따라 다음을 참고하여 IP 주소를 지정합니다.
- 서브넷의 리소스는 IPv4를 통해 통신해야 합니다.
- 서브넷의 유형과 관계없이 서브넷의 IPv4 주소 범위는 항상 프라이빗 IP입니다.
서브넷 IP CIDR 블록
인스턴스가 특정 서브넷에 배포되면 IP 주소 범위 중에서 하나의 IP가 무작위로 할당됩니다. 서브넷의 IP 주소 범위는 Classless Inter-Domain Routing(CIDR) 표기법을 사용하여 지정할 수 있습니다. 하나의 VPC 내에서 여러 개의 서브넷을 구성할 수 있으며, 각 서브넷의 허용 가능한 CIDR 블록 크기는 /20 넷마스크에서부터 /26 넷마스크까지입니다. 여러 개의 서브넷을 VPC 내에 생성할 경우, 버스의 CIDR 블록이 서로 겹치지 않도록 주의해야 합니다.
예를 들어 CIDR 블록이 10.0.0.0/16인 VPC에서 서브넷을 생성 후, 다음과 같이 이 CIDR 블록을 각각 4,096개의 IP 주소를 지원하는 2개의 서브넷으로 나눌 수 있습니다.
- VPC CIDR 블록: 10.0.0.0/16
- 서브넷 #1: 10.0.0.0/20 CIDR 블록 (10.0.0.0~10.0.15.255 사이의 주소)
- 서브넷 #2: 10.0.16.0/20 CIDR 블록 (10.0.16.0~10.0.31.255 사이의 주소)
효과적인 VPC 활용을 위해 서브넷 CIDR 블록 설계가 중요합니다. 인터넷에서 IPv4 서브넷 CIDR 블록을 계산하고 생성하는 데 도움이 되는 도구로 '서브넷 계산기' 또는 'CIDR 계산기'와 같은 용어를 검색하여 필요에 맞는 도구를 선택하여 계산할 수 있습니다.