VPC 와 서브넷 구축해보기 예제
개요
AWS VPC 를 이용해 서브넷을 구축해보자.
서브넷이란?
VPC 의 부분집합 개념이라고 생각하면 된다.
- VPC 단계에서는 CIDR 대역을 설정해 사용할 사설 아이피 대역을 지정한다.
- ex) 
192.168.92.0/24->192.168.92.0 ~ 192.168.92.255까지의 대역이 사용 가능하다. 
 - ex) 
 - 서브넷 단계에서는 위에서 지정한 대역을 용도별로 나눌 수 있다.
subnet-public-01:192.168.92.0/26subnet-public-02:192.168.92.64/26subnet-private-01:192.168.92.128/27subnet-management-01:192.168.92.160/27
 
인터넷이 되는 망, 인터넷이 되지 않는 망, 외부 접근이 가능한 망, 외부 접근이 불가능한 망 등으로 나눌 수 있다.
VPC (Virtual Private Cloud) CIDR 대역 설정하기
VPC 의 CIDR 블록을 설정할 때의 주의점은 사설 아이피 대역 내에서 설정해야 한다는 것이다.
사설 아이피 대역은 아래와 같다.
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)
각각 8 비트, 12 비트, 16 비트를 고정하기 때문에 용도에 맞게 사용하면 된다. 서브넷을 아주 많이 나눌 것이라면, 8개의 비트만 픽스된 첫번째 사설 아이피 대역(10.0.0.0~)이 가장 유리할 것이다. 적게 필요하다면 16 비트가 픽스된 192.168.0.0~ 를 선택하는 것이 미래를 대비할 수 있다.
여기서는 매우 작은 규모의 VPC 를 구성한다고 가정하여 C 클래스의 IP 대역을 이용하고 24 개의 비트를 고정(/24)한다고 가정해보자.

A, B, C, D, E 클래스는 각각 맨 앞의 비트가 무엇인지를 의미한다.
이를테면 A 는 0 으로 시작, B 는 10 으로 시작, C 는 110 으로 시작과 같은 것이다.
여기서는 C 클래스를 이용하기로 하였으니, 110 즉, 최소 192.000.000.000 으로 시작하는 아이피여야 하고, 이에 해당하는 사설 아이피는 192.168.0.0 부터 시작해서 192.168.255.255 로 끝날 것이다.
24개의 비트를 고정할 것이기 때문에 192.168.xxx 까지가 네트워크 대역이 된다. 즉, 앞의 xxx 에 해당하는 부분도 고정된다는 이야기이다.
임의로 192.168.92.0/24 로 VPC 의 CIDR 블록을 설정한다면, 나머지 8비트를 통해 서브넷을 구성할 수 있다.
VPC 에 대한 서브넷 구성하기
서브넷은 이전에 배웠듯, VPC 의 CIDR 대역 내에서 설정할 수 있다. 그리고 단 하나의 Availability Zone 을 갖는다.
아래와 같은 조건이 있다고 가정하자.
- 외부망으로 Subnet 을 64개씩 2개 구성해야 한다. (단, AZ를 다르게 구성)
 - 내부망으로 Subnet 을 32개씩 1개 구성해야 한다.
 - 관리용으로 Subnet 을 32개씩 1개 구성해야 한다.
 
64개의 Subnet 을 구성하려면 CIDR 을 /26 으로 끝내면 될 것이다. 그러면 나머지 6비트로 64개의 IP 를 표현할 수 있다. 2의 6승이 64임을 생각해보면 매우 쉽게 알 수 있다. 아니면 1개의 비트로 2개씩 2개의 비트로 4개씩 이렇게 차근차근 생각해보아도 좋다.
그래서 첫번째 외부망은 192.168.92.0/26 그리고 마지막 8비트 중 앞의 2비트를 이용하면 되니까 64, 128, 192, 등 맘에 드는 숫자를 골라서 끝에 /26 을 붙여주면 되는데, 굳이 헷갈리게 높은 숫자를 사용하지 말고, 그냥 다음 숫자인 64 를 사용하는 것이 좋겠다.
그러면 192.168.92.0/26 과 192.168.92.64/26 이 외부망 Subnet 의 CIDR 블록이 될 수 있다.
내부망과 관리용은 스스로 한번 생각해보자.
AWS 에서 서브넷을 구성할 때의 주의점
AWS 에서 서브넷을 구성할 때는 CIDR 블록을 통해 서브넷을 나누는데, 첫 4개 IP 주소와 마지막 1개 IP 주소는 사용할 수 없다.
이를테면, 10.0.0.0/24 CIDR 블록을 서브넷으로 지정했다면,
10.0.0.0: 네트워크 주소로 사용된다.10.0.0.1: AWS 에서 VPC 라우터용으로 예약된다.10.0.0.2: DNS 서버의 IP 주소로 사용된다. (VPC 네트워크 범위 +2)10.0.0.3: AWS 에서 나중에 사용하기 위해 예약된다.10.0.0.255: 네트워크 브로드캐스트 주소로 사용된다.
그래서 위에 64개의 IP 를 기대하고 만든 서브넷은 실제로 59개의 IP 만 사용할 수 있게 될 것이다.