목차
- 서브넷 마스크의 기본 성질
- 서브넷을 직접 만들어 보기
지난 시간에 이어 서브넷 마스크의 학습을 계속한다.
서브넷 마스크로 만들어진 네트워크, 즉 서브넷은 각각 하나의 네트워크이기 때문에 서로 나뉜 서브넷끼리는 라우터를 통해서만 통신이 가능하다.
서브넷 마스크는 이진수로 썼을 때 '1'이 연속적으로 나와야 한다.
이진수로 바꿨을때 1이 연속으로 나와도 중간에 0이 오면 안된다.
문제
ㅤ
공인 IP주소: 210.100.1.0
디폴트 서브넷 마스크: 255.255.255.0
ㅤ
인 네트워크를 받았다. 이 공인 주소를 이용해서 PC가 30대인 네트워크를 최소 4개 이상 만든 후 이들 네트워크를 라우터를 이용해서 서로 통신하게 하려고 한다.
ㅤ
어떻게 해야 할까?
먼저 우리가 받은 네트워크, 즉 210.100.1.0(255.255.255.0)은 클래스 C 이다. 이는 뒤에 디폴트 서브넷 마스크를 보고도 알 수 있다.
이 주소로 네트워크를 최소 4개 이상 만들려면 지금 주어진 디폴트 서브넷 마스크의 주소를 변경해야 한다.
이때 중요하게 볼 것은 한 네트워크가 포함하는 PC의 개수('클라이언트 수', '호스트 수')이다. 여기서는 30대의 호스트를 가져야 한다고 했으니 호스트 부분이 30대를 포함할 수 있어야 한다는 뜻이다.
호스트 부분이 30개가 되려면 이진수 몇 자리가 필요할까?
우선 호스트 부분이 모두 '0'이거나 호스트 부분이 모두 '1'인 주소는
사용할 수 없다. 이미 각각의 역할이 있기 때문이다.
그래서 서브넷 마스크의 호스트 부분에서
이진수 한자리의 경우 -> 1과 0임으로 사용할 수 없다.
이진수 두자리의 경우
00, 01, 10, 11이 있다. 그러나 이 중 01과 10 총 2개만 사용할 수 있다.
이진수 세자리의 경우
000, 001, 010, 011, 100, 101, 110, 111이 있다. 그러나 이 중 001, 010, 011, 100, 101, 110 총 6개만 사용할 수 있다.
이를 통해 사용 가능한 호스트 수를 다음 공식으로 알아 낼 수 있다.
사용 가능한 호스트 수 = 2 ^ (호스트 비트 수) -2
이 공식을 통해 사용가능한 호스트 수가 30개가 되기 위한 호스트 비트 수를 구하면 5임을 알 수 있다. (2 ^ 5 - 2 = 30)
그래서 호스트 자리가 이진수 다섯 개는 되어야 한다는 뜻이다.
즉 210.100.1.0 -> 1101 0010.0110 0100.0000 0001.0000 0000에서 호스트 30개를 포함하기 위한 호스트의 자릿수는 5개니까 1101 0010.0110 0100.0000 0001.sssh hhhh가 되어야 한다.
(여기서 s는 서브넷이 되는 부분, h는 호스트 부분이다. 호스트의 자리는 맨 오른쪽부터 왼쪽으로 늘어난다.)
결론은 위의 서브넷을 만들기 위한 서브넷 마스크는 1111 1111.1111 1111.1111 1111.1110 0000 -> 255.255.255.224가 된다.
다시 말해 210.100.1.0인 클래스 C 주소를 받아서 최소 30개의 호스트를 가지는 최소 4개 이상의 서브넷을 만들려면 서브넷 마스크는 255.255.255.224를 사용해야 한다.