본문 바로가기

Network

[Network] 서브넷 마스크(Subnet Mask)와 서브네팅(Subnetting) (에티버스러닝 교육)

어느새 에티버스러닝에서 K-Digital Training 멀티 클라우드 엔지니어 교육을 받기 시작한지 한달이 넘었다. 수업은 약 1주-2주 정도씩 나누어서 하나의 주제를 배운다. 현재 배운 주제들은 가상화(VMware vSpere), Linux, Python이다.

이번 주에는 Network를 배우게 되었다. 

 

 

 


 

네트워크에서 Subnet만 잘하면 된다고 한다. 왜냐하면 클라우드에서는 static routing까지만 가기 때문이다.  그래서 서브넷 마스크와 서브네팅 개념을 정리해보았다. 

 

 

 

1. 서브넷(Subnet)

: 하나의 네트워크를 여러 개의 작은 네트워크로 나누는 것

-> 이 과정에서 사용되는 것이 서브넷 마스크 

 

 

왜 네트워크를 나누는가? 기존에 사용하던 IPv4 주소의 고갈이 예상 되면서 이를 해결하기 위해 고안된 것

 

 

 

2. 서브넷 마스크(Subnet Mask)

: IP 주소를 네트워크 부분과 호스트 부분으로 나누는 역할

예를 들어 10.0.0.1/24 라는 IP 주소가 있을 때, /24는 Prefix로 서브넷 마스크를 이진수로 표현했을 때 1의 개수를 의미한다. 

24는 24개의 1비트가 있다는 의미이므로 이진법으로는 11111111.11111111.11111111.0이다.

십진법으로 255.255.255.0으로 표현할 수도 있다. 

(참고로 '.'으로 나뉘어 비트 8개로 묶인 것을 옥탯(Octet) 이라고 한다. )

 

서브넷 마스크는 하나의 규칙이 있다. 바로 0이 나오면 무조건 그 뒤는 전부 0이라는 것이다. 

11111111.00000000.00000000.11111111 처럼 0 뒤에 1이 나오면 안 된다. 

 

 

여기서 

네트워크 영역을 늘리면 -> 네트워크 개수가 증가

호스트 영역을 늘리면 -> 한 네트워크에서 사용 가능한 IP 개수가 증가

한다. 

따라서 VPC는 비교적 넓은 범위의 네트워크를 가지므로 10.0.0.0/16 의 CIDR 블록을 할당하는 경우가 많다. 

서브넷은 작은 범위의 10.0.1.0/24 등의 서브넷을 가진다. 

 

 

 

3. 서브네팅(Subnetting) 

서브네팅은 네트워크 IP를 분할한다는 것이다. 

 

서브넷 마스크 10진 표기 네트워크 개수
255.255.255.0 1 (2^0)
255.255.255. 128 2 (2^1)
255.255.255. 192 4 (2^2)
255.255.255. 224 8 (2^3)
255.255.255. 240 16 (2^4)
255.255.255. 248 32 (2^5)
255.255.255. 252 64 (2^6)
255.255.255. 254 128 (2^7)
255.255.255. 255 256 (2^8)

 

네트워크 개수: 2^N

ex) 224를 이진수로 표현하면, 11100000이다. 이때 1비트는 3개이기 때문에 네트워크 개수는 총 2^3=8개이다. 

 

 

다음 조건을 가진 네트워크를 서브네팅 해보자. 

IP 주소: 10.0.0.0

Subnet Mask: 255.255.255.224

 

위의 표를 참고하면, 255.255.255.224를 서브넷 마스크로 가진 네트워크는 총 8개임을 알 수 있다. 

따라서 네트워크가 다음처럼 쪼개진다. 

 

10.0.0.0~10.0.0.31  / 사용 가능 범위 10.0.0.1~10.0.0.30

10.0.0.32~10.0.0.63  / 사용 가능 범위 10.0.0.32~10.0.0.63

10.0.0.64~10.0.0.95  / 사용 가능 범위 10.0.0.64~10.0.0.95

10.0.0.96~10.0.0.127  / 사용 가능 범위 10.0.0.96~10.0.0.127 

10.0.0.128~10.0.0.159  / 사용 가능 범위 10.0.0.128~10.0.0.159

10.0.0.160~10.0.0.191  / 사용 가능 범위 10.0.0.160~10.0.0.191

10.0.0.192~10.0.0.223  / 사용 가능 범위 10.0.0.192~10.0.0.223

10.0.0.224~10.0.0.255  / 사용 가능 범위 10.0.0.224~10.0.0.255

 

 

 

 

 

더 많은 예제는 아래 블로그에 적어놓았다. 

 

[Network] 서브네팅(Subnetting) 연습 (tistory.com)