VPC (Virtual Private Cloud)란??
독립적인 가상의 네트워크 공간으로 사용자의 설정에 따라 자유롭게 구성할 수 있는 공간을 의미합니다.
우리가 AWS의 EC2 인스턴스를 생성할 때를 다시한번 생각해볼까요? 아무렇지 않게 아래 그림과 같이 VPC가 default 설정 되어있는 채로 인스턴스를 생성합니다.
하지만, 우리는 VPC와 서브넷을 선택하여 EC2 인스턴스를 생성할 수 있습니다. 그렇다면 왜 VPC 구성을 해야할까요??
Vitual Private Cloud(VPC)
위 그림과 같이 VPC가 없다면 EC2 인스턴스들이 서로 거미줄처럼 연결되고 인터넷과 연결됩니다.
VPC를 적용하면 위 그림과 같이 VPC별로 네트워크를 구성할 수 있고 각각의 VPC에 따라 다르게 네트워크 설정을 줄 수 있습니다. 또한 각각의 VPC는 완전히 독립된 네트워크처럼 동작합니다.
AWS 사용자는 자기가 원하는대로 IP 주소 범위 선택, 서브넷 생성, 라우팅 테이블 및 네트워크 게이트웨이 구성등 가상 네트워크 환경을 구성해 VPC를 생성할 수 있습니다.
VPC 구축하기
VPC는 각 Region에 종속되며 RFC1918이라는 사설 아이피 대역에 맞추어 구축해야 합니다.
VPC에서 사용하는 사설 IP 대역은 아래와 같습니다.
10.0.0.0 ~ 10.255.255.255 (10/8 prefix)
172.16.0.0 ~ 172.31.255.255 (172.16/12 prefix)
192.168.0.0 ~ 192.168.255.255 (192.168/16 prefix)
AWS VPC는 On-premise와 동일한 대역의 사설 IP를 이용해 범위 내에서 VPC의 ipv4 CIDR 영역을 설정합니다.
각각의 VPC는 완전히 독립적이기 때문에 만약 VPC간 통신을 원한다면 VPC 피어링 서비스를 고려해볼 수 있습니다.
서브넷
VPC의 IP 주소 범위
서브넷은 단일 가용 영역에 상주해야 합니다. VPC가 논리적인 범위를 의미한다면, 서브넷은 VPC안에서 실제로 리소스가 생성될 수 있는 네트워크 영역입니다.서브넷을 추가한 후 VPC 안에 AWS 리소스를 배포할 수 있습니다.
서브넷은 VPC를 잘개 쪼개는 과정입니다. 서브넷은 VPC 안에 존재하기 때문에 더 작은 단위입니다. 즉, 서브넷마스크가 더 높게 되고 IP범위가 더 작은 값을 갖게 됩니다.
서브넷을 나누는 이유??
그렇다면, VPC안에서 서브넷으로 나누는 이유는 무엇일까요?? 그 이유는 더 많은 네트워크 망을 만들기 위해서입니다.
172.31.0.0/16의 VPC 안에 VPC를 쪼개서 서브넷을 만든다면 아래와 같습니다.
서브넷 A | 172.31.0.0/20 |
서브넷 B | 172.31.16.0/20 |
서브넷 C | 172.31.32.0/20 |
서브넷 D | 172.31.48.0/20 |
주의
AWS는 관리용으로 사용하는 IP가 존재합니다. 아래는 AWS의 관리 IP로서 사용자가 사용할 수 없는 AWS의 예약 주소이니 참고하면 좋을 것 같습니다.
172.31.0.0 | 네트워크 주소 |
172.31.0.1 | AWS에서 VPC 라우터용으로 예약 (Default Gateway) |
172.31.0.2 | DNS 서버 주소 (기본 VPC 네트워크 범위에 2를 더한 주소) |
172.31.0.3 | AWS에서 앞으로 사용하려고 예약한 주소 |
172.31.0.255 | 네트워크 BroadCast 주소 |
마치며
AWS 서비스는 VPC를 구성함으로써 이러한 기능을 활용하여 AWS 인프라 내에서 실행되는 리소스에 대한 네트워크 격리, 보안 및 유연성을 보장합니다. VPC는 일반적으로 보안을 위해 AWS 리소스를 위한 가상 네트워크 공간을 제공하여 다른 고객의 리소스와 공용 인터넷과 분리합니다. 또한 VPC를 통해 그룹별로 네트워크를 구성하기 위해 많이 사용합니다.
'CS > 인프라' 카테고리의 다른 글
가상화와 하이퍼 바이저 (0) | 2023.08.19 |
---|---|
IaaS VS PaaS VS SaaS (2) | 2023.03.30 |
컨테이너와 가상머신의 차이점 with Docker (2) | 2023.01.26 |
JenKins 개념 및 기능 (0) | 2023.01.12 |