인터넷을 사용하는 모든 호스트는 자신의 IP주소를 가지고 있어야 한다.
따라서 네트워크 관리자는 네트워크 상의 모든 호스트에게 적절히 IP주소를 할당해야 하는데,
네트워크마다 그 구성이 천차만별이기 때문에 상황에 맞게 네트워크를 분할해서 IP주소를 할당해야 한다.
사례를 보면서 네트워크를 분할해 보자.
할당할 수 있는 IP주소의 범위가 1.1.1.0 ~ 1.1.1.255라고 가정하자.
그런데 네트워크가 다음과 같이 구성되어 있다면 어떻게 해야할까?
기존 서브넷 마스크는 255.255.255.0, 즉 1이 24개였다. 이것은 32비트 IP주소 중 24비트를 네트워크 주소로,
나머지 8비트를 호스트 주소로 사용한다는 의미다.
다음은 서브넷 마스크가 255.255.255.0일 경우의 IP주소 구성이다.
네트워크 주소와 호스트 주소 범위의 경계를 '/'으로 구분해 놓았다. 표준 표기법은 아니다.
서브넷 마스크가 24일 경우
네트워크 주소
00000001 00000001 00000001 / 00000000
=> 1.1.1.0
호스트 주소 범위
(00000001 00000001 00000001 / 00000000) ~ (00000001 00000001 00000001 / 11111111)
=> 1.1.1.0 ~ 1.1.1.255
즉 서브넷마스크가 24라면 호스트에게 할당할 수 있는 IP주소는 00000000 ~ 11111111 -> 0~255까지 총 256개다.
이렇게 서브넷 마스크를 255.255.255.0으로 설정하면 사용할 수 있는 네트워크 주소는 하나 뿐이므로(1.1.1.0)
그림처럼 네트워크 A,B를 분리해서 구성할 수 없다.
이 32비트의 IP주소에서 네트워크 주소로 한 비트를 더 사용하면 어떨까? 라는 개념이 bitmasking의 핵심이다.
따라서 32비트 IP주소의 상위 24비트가 아닌 25비트를 네트워크 주소로 설정하면 다음과 같이 네트워크를 두개로 분할할 수 있다. 역시 네트워크 주소의 범위를 '/'로 구분하였다.
서브넷 마스크가 25일 경우
=> 서브넷 마스크는 11111111.11111111.11111111.10000000이므로 255.255.255.128
네트워크 A
네트워크 주소
00000001 00000001 00000001 0/0000000
=> 1.1.1.0
호스트 주소 범위
(00000001 00000001 00000001 0/0000000) ~ (00000001 00000001 00000001 0/1111111)
=> 1.1.1.0 ~ 1.1.1.127
브로드캐스트 주소
00000001 00000001 00000001 0/1111111
=> 1.1.1.127
네트워크 B
네트워크 주소
00000001 00000001 00000001 1/0000000
=> 1.1.1.128
호스트 주소 범위
(00000001 00000001 00000001 1/0000000) ~ (00000001 00000001 00000001 1/1111111)
=> 1.1.1.128 ~ 1.1.1.255
브로드캐스트 주소
00000001 00000001 00000001 0/1111111
=> 1.1.1.255
bitmasking을 이용해 네트워크 주소의 범위를 1비트 늘려 네트워크를 두 개로 나누고,
대신에 호스트 주소를 나타내는 비트는 1비트 줄었으므로,
각 네트워크가 가지는 IP주소의 개수는 기존 256개의 절반인 128개로 줄었다.
본래 256개 할당할 수 있었던 IP주소를 두 네트워크가 반반 나눠 가진 셈이다.
결과적으로 1.1.1.0 ~ 1.1.1.255의 IP주소를 1.1.1.0~1.1.1.127과 1.1.128~1.1.255의 두 네트워크로 분할하였다.
네트워크 주소와 브로드캐스트 주소는 각각 해당 주소 범위의 첫 번째 주소와 마지막 주소이므로 그에 맞게 설정된다.
그래서 네트워크 주소를 무작정 x.x.x.0.이라 외우면 안된다.
같은 방법으로 네트워크 범위에 1비트를 더 써서 서브넷마스크를 26으로 만들면 네트워크를 4개로 분할할 수 있다.
대신, 각 네트워크에 할당할 수 있는 IP는 64개로 줄어들 것이다.
반대로 네트워크 범위를 1비트 줄이고, 호스트 주소 범위에 1비트를 늘려서 (서브넷마스크 24 -> 23) 한 네트워크에 할당할 수 있는 IP주소 개수를 512개로 늘릴 수도 있다.
즉, 네트워크 주소의 범위를 변경해서 (서브넷 마스크를 변경해서) 네트워크를 분할하는 방법을 bitmasking이라 한다.
또한 같은 방법으로 네트워크 병합도 가능하다.
'Network > old' 카테고리의 다른 글
서킷 스위칭과 패킷 스위칭 (0) | 2023.01.05 |
---|---|
NAT (Network Address Translation) (0) | 2023.01.05 |
네트워크 분할법 2 - VLSM (Variable Length Subnet Masks) (0) | 2023.01.03 |
IP주소의 개념과 구성 (0) | 2023.01.01 |
IP Address, Subnet Mask, Gateway (0) | 2022.12.21 |