[Daily morning study] VPC (Virtual Private Cloud)의 개념과 서브넷, 라우팅
in Daily morning study / -cloud
#daily morning study
VPC (Virtual Private Cloud) 개념과 서브넷, 라우팅
1. VPC (Virtual Private Cloud) 개념
VPC는 클라우드 서비스 제공자가 제공하는 가상 네트워크입니다. 사용자는 자신의 애플리케이션과 리소스를 안전하게 실행할 수 있는 격리된 환경을 설정할 수 있습니다. 따라서 온프레미스 데이터 센터와 유사하게 격리된 네트워크를 생성할 수 있습니다.
VPC는 다음과 같은 주요 특징을 갖고 있습니다:
- 격리된 환경: 다른 고객과의 리소스 공유 없이 개인적으로 사용할 수 있는 네트워크 공간
- 보안: AWS, GCP, Azure와 같은 클라우드 제공자는 방화벽, 네트워크 ACL 등을 통해 추가 보안을 제공합니다.
- 유연한 리소스 배치: 필요에 따라 인스턴스를 만든다거나 제거할 수 있습니다.
2. 서브넷 (Subnet)
서브넷은 VPC 내에서 IP 주소 범위를 나누어 구성한 것입니다. VPC의 IP 주소 공간을 여러 개의 작은 네트워크로 나누어 관리할 수 있습니다. 서브넷을 통해 리소스의 접근성을 세분화하고 보안을 강화할 수 있습니다.
서브넷의 주요 특징:
- 퍼블릭 서브넷: 인터넷과 연결된 서브넷입니다. 일반적으로 웹 서버와 같은 외부에서 접근해야 하는 리소스가 위치합니다.
- 프라이빗 서브넷: 외부에서 직접 접근할 수 없는 서브넷입니다. 주로 데이터베이스와 같은 보안이 필요한 리소스가 위치합니다.
+-------------------------+
| VPC |
| +---------------------+ |
| | 퍼블릭 서브넷 | |
| +---------------------+ |
| +---------------------+ |
| | 프라이빗 서브넷 | |
| +---------------------+ |
+-------------------------+
서브넷 생성 예시 (AWS CLI)
aws ec2 create-subnet --vpc-id vpc-12345678 --cidr-block 10.0.1.0/24 --availability-zone us-east-1a
3. 라우팅 (Routing)
라우팅은 패킷이 네트워크를 통해 올바른 경로로 전달되는 방법을 정의합니다. VPC와 서브넷 간의 라우팅은 VPC의 라우팅 테이블을 통해 관리됩니다.
라우팅 테이블 구성
각 VPC는 하나 이상의 라우팅 테이블을 가질 수 있으며, 서브넷은 해당 라우팅 테이블의 특정 엔트리를 참조합니다. 기본적으로 라우팅 테이블에는 목표 CIDR 블록, 타겟(대상)을 설정할 수 있습니다.
기본 라우팅 테이블 구조
| 목적지(CIDR 블록) | 대상 | 설명 |
|---|---|---|
| 10.0.0.0/16 | local | VPC 내의 다른 서브넷으로의 허용 |
| 0.0.0.0/0 | igw-abcdefgh | 인터넷 접근을 위한 게이트웨이 |
라우팅 테이블 생성 예시 (AWS CLI)
aws ec2 create-route-table --vpc-id vpc-12345678
라우팅 추가 예시
aws ec2 create-route --route-table-id rtb-12345678 --destination-cidr-block 0.0.0.0/0 --gateway-id igw-abcdefgh
4. 요약
- VPC: 개인적인 가상 네트워크 공간으로, 여러 서브넷을 포함
- 서브넷: VPC의 IP 주소 범위를 나누며, 퍼블릭과 프라이빗으로 나눌 수 있음
- 라우팅: 패킷이 올바른 경로로 전달되는 방법을 정의하며, 라우팅 테이블에 의해 관리됨
이러한 VPC와 서브넷, 라우팅 개념을 잘 이해하면 클라우드 환경에서 보다 효율적으로 자원을 배치하고 관리할 수 있습니다.