서브넷 마스크

IP 주소에 대해서는 아이피 문서를 참조하십시오.

1 개요

IP 주소는 32자리의 2진수로 이루어져 있다. 예를 들어서 192.168.0.1은 1100 0000.1010 1000.0000 0000.0000 0001 로 표현된다.
이것은 네트워크 부분과 호스트 부분으로 나누어진다.
여기서 하나의 네트워크란 하나의 브로드캐스트 영역이라고 생각하면 된다.
즉, 어떤 네트워크에서 한 노드가 브로드캐스트를 했을 때 그 네트워크의 모든 노드가 신호를 받았다면 그 네트워크는 하나의 네트워크라고 볼 수 있다. 한마디로 라우터를 거치지 않고도 통신이 가능한 영역이다.
호스트 부분의 호스트란 그냥 각각의 노드(PC등)들이다.

정리해서, 하나의 네트워크에서는 IP 주소의 네트워크 부분은 같아야 하고, 호스트 부분은 달라야 한다는 것이다.

2 표시 방법

IP 주소에서 192.168.0.1/24 혹은 192.168.0.1 서브넷 마스크:255.255.255.0 과 같은 것을 본 적이 있을 것이다.
여기서 /24 와 /255.255.255.0 은 같은 것을 나타내는데, 255.255.255.0 을 2진수로 쓰면 1111 1111.1111 1111.1111 1111.0000 0000이다.
여기서 앞에서부터 연속된 1의 개수만 나타낸 것이 /24 이다.

3 계산 방법

서브넷 마스크를 계산할 때는 논리곱을 사용한다.

예:
192.168.0.1/24

여기서 1을 논리곱하는 부분이 네트워크 부분, 0을 논리곱하는 부분이 호스트 부분이다.

1100 0000.1010 1000.0000 0000.0000 0001 - IP 주소
1111 1111.1111 1111.1111 1111.0000 0000 - 서브넷 마스크
1100 0000 1010 1000 0000 0000 0000 0000 - 서브넷 네트워크

호스트 개수 : 네트워크 주소와 브로드캐스트 주소를 제외한 253개
네트워크 개수 : 1개

4 활용

IPv4 주소는 제한되어 있기 때문에, 할당 받은 주소를 그대로 쓰지 않고 서브넷 마스크를 변경하여 네트워크/호스트 부분의 개수를 조정하는 것을 서브넷팅이라고 한다. NAT도 이러한 용도로 사용될 수 있다.