AWS의 구조
- VPC의 경우 AWS 내의 서비스라고 하더라도, Internet gateway를 통해 public internet을 접근하고 나서 서비스에 접근해야 한다.
Virtual Private Cloud (VPC)
Virtual Private Cloud (VPC)는 사용자의 AWS 계정 전용 가상 네트워크 입니다.
VPC는 AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리되어 있습니다. Amazon EC2 인스턴스와 같은 AWS 리소스를 VPC에서 실행할 수 있습니다. IP 주소 범위와 VPC 범위를 설정하고 서브넷을 추가하고 보안 그룹을 연결한 다음 라우팅 테이블을 구성합니다.
VPC = 가상으로 존재하는 데이터센터
Virtual Private Cloud(VPC) 구조
- VPC
- 가상의 데이터센터
- 외부에 격리된 네트워크 컨테이너 구성 가능
- 원하는 대로 사설망을 구축 가능
- 부여된 IP 대역을 분할하여 사용 가능
- 리전 단위
- VPC의 사용 사례
- EC2, RDS, Lambda 등의 AWS의 컴퓨팅 서비스 실행
- 다양한 서브넷 구성
- 보안 설정(IP Block, 인터넷에 노출되지 않는 EC2등 구성)
VPC의 구성요소
- VPC의 구성요소
- 서브넷
- 인터넷 게이트웨이
- NACL/보안그룹
- 라우트 테이블
- NAT Instance / NAT Gateway
- Bastion Host
- VPC Endpoint
서브넷(subnet)
- 서브넷이란?
- VPC의 하위 단위로 VPC에 할당된 IP를 더 작은 단위로 분할한 개념
- 하나의 서브넷은 하나의 가용영역(AZ)안에 위치
- CIDR block range로 IP 주소 지정
AWS 서브넷의 IP 갯수
- AWS 서브넷의 IP 갯수
- AWS의 사용가능 IP 숫자는 5개를 제외하고 계산
- 예: 10.0.0.0/24라면,
- 10.0.0.0: 네트워크 어드레스
- 10.0.0.1: VPC Router
- 10.0.0.2: DNS Server
- 10.0.0.3: 미래에 사용을 위해 남겨 둠
- 10.0.0.255(마지막 번호): 네트워크 브로드캐스트 어드레스 (단, 브로드캐스트는 지원하지 않음)
라우트 테이블(Route Table)
- 라우트 테이블
- 트래픽이 어디로 가야 할지 알려주는 이정표
- VPC 생성시에 기본으로 하나 제공
서브넷의 종류
- 퍼블릭 서브넷: 외부에서 인터넷을 통해 연결할 수 있는 서브넷
- 인터넷 게이트웨이(IGW)를 통해 외부의 인터넷과 연결되어 있음
- 안에 위치한 인스턴스에 퍼블릭 IP 부여 가능
- 웹서버, 어플리케이션 서버 등 유저에게 노출되어야 하는 인프라
- 프라이빗 서브넷: 외부에서 인터넷을 통해 연결할 수 없는 서브넷
- 외부 인터넷으로 경로가 없음
- 퍼블릭 IP 부여 불가능
- 데이터베이스, 로직 서버 등 외부에 노출 될 필요가 없는 인프라
인터넷 게이트웨이
- VPC가 외부의 인터넷과 통신할 수 있도록 경로를 만들어주는 리소스
- 기본적으로 확장성과 고가용성이 확보되어 있음
- IPv4, IPv6 지원
- IPv4의 경우 NAT 역할
- Route Table에서 경로 설정 후에 접근 가능
- 무료