서브넷 마스크 블록 크기(Block Size)
선수학습(1개)
요약
2진수 AND/OR 연산 대신 블록 크기(block size)로 네트워크 주소와 브로드캐스트 주소를 빠르게 구하는 단축 기법을 설명합니다. 블록 크기 = 256 - 서브넷 마스크의 마지막 자리 공식과, 호스트 주소가 속한 블록의 시작값·끝값을 읽는 방법을 정보처리기사 실기 대비 문제와 함께 다룹니다.
헷갈리기 쉬운 용어 요약
| 용어 | 설명 |
|---|---|
| 블록 크기 | 256 - 서브넷 마스크의 마지막 자리 |
| 블록 | 주소를 블록 크기만큼 끊은 한 구간 |
| 시작값 | 그 블록의 네트워크 주소 마지막 자리 |
| 끝값 | 그 블록의 브로드캐스트 주소 마지막 자리 |
블록 크기란 기초
2진수 AND/OR 연산 대신 블록 크기(block size) 방법으로 네트워크 주소와 브로드캐스트 주소를 빠르게 구할 수 있습니다. 서브넷 마스크의 앞 세 자리가 모두 255인 경우(/25 ~ /30)에 주로 쓰는 단축 기법입니다.1
왜 크기 하나만 알면 두 주소가 다 나올까요? 우리가 구하려는 두 주소가 사실 무엇인지 보면 분명해집니다.
| 구하려는 것 | 정체 |
|---|---|
| 네트워크 주소 | 내가 속한 구간의 시작값 |
| 브로드캐스트 주소 | 같은 구간의 끝값 |
즉 두 주소를 구하는 일은 "내가 속한 구간이 어디서 시작해서 어디서 끝나는가" 를 찾는 일과 같습니다. 그러려면 구간의 경계가 어디인지 알아야 합니다.
여기서 결정적인 성질이 하나 있습니다. 같은 서브넷 마스크를 쓰는 구간들은 0부터 같은 크기로 규칙적으로 끊깁니다. 구간 크기가 32라면 경계는 0, 32, 64, 96 ... 처럼 32의 배수에서만 생깁니다. 중간에 어중간하게 끊기는 일이 없습니다.
블록 크기 공식
블록 크기 = 256 − 서브넷 마스크의 마지막 자리
예를 들어 서브넷 마스크가 255.255.255.224라면 블록 크기는 가 됩니다.
왜 256에서 빼면 될까
255.255.255.224를 예로 두 가지 방법이 같은 곳에 도착하는지 봅시다.

호스트 비트가 5개이므로 주소 개수는 개입니다. 그런데 2진수로 바꾸지 않고 만 해도 똑같이 32가 나옵니다. 256에서 빼는 것은 그 개수를 2진수 변환 없이 구하는 지름길인 셈입니다.
왜 항상 같을까요? 서브넷 마스크의 마지막 자리는 앞쪽이 1, 뒤쪽이 0인 8비트입니다. 뒤쪽 0의 개수를 n이라고 하면, 그 값은 8비트 전체()에서 뒤쪽 n비트만큼()을 덜어낸 값입니다.
| 마스크 마지막 자리 | 2진수 | 호스트 비트 | 256 − 마스크 | |
|---|---|---|---|---|
| 128 | 10000000 | 7 | 128 | 128 |
| 192 | 11000000 | 6 | 64 | 64 |
| 224 | 11100000 | 5 | 32 | 32 |
| 240 | 11110000 | 4 | 16 | 16 |
| 248 | 11111000 | 3 | 8 | 8 |
블록으로 끊어 호스트가 속한 구간 찾기
블록 크기만큼 0 ~ 255 구간을 쪼개어, 호스트 주소의 마지막 자리가 어느 블록에 속하는지 찾습니다.
블록 크기가 32일 때 구간은 다음과 같이 나뉩니다.

호스트 주소가 속한 블록에서:
- 블록의 시작값이 네트워크 주소의 마지막 자리
- 블록의 끝값이 브로드캐스트 주소의 마지막 자리
블록의 시작값은 블록 크기의 배수이고, 끝값은 다음 시작값보다 1 작은 수입니다. 블록 크기가 32면 0 ~ 31, 32 ~ 63, 64 ~ 95 처럼 끊깁니다.
시험장에서 빠르게 구간 찾기
블록을 0부터 하나씩 나열할 필요는 없습니다. 호스트 주소의 마지막 자리만 있으면 시작값이 바로 나옵니다.
방법 1 - 나눗셈
마지막 자리를 블록 크기로 나눈 몫에 다시 블록 크기를 곱합니다.
- 마지막 자리
144, 블록 크기32 - 의 몫은 4
- 시작값 , 끝값
방법 2 - 더해 올라가기
블록 크기를 0부터 계속 더하다가 호스트 주소를 넘어서면 직전 값이 시작값입니다. 나눗셈이 번거로운 숫자일 때 편합니다.
0 → 32 → 64 → 96 → 128 → 160160이144를 넘었으므로 직전 값128이 시작값, 끝값은159
예시 - 호스트 주소 255.14.234.144, 서브넷 마스크 255.255.255.224 기초
- 블록 크기:
- 마지막 자리
144가 속한 블록:128 ~ 159 - 네트워크 주소:
255.14.234.128/ 브로드캐스트 주소:255.14.234.159

2진수 AND/OR 연산 결과와 동일합니다. 원리 이해는 B기업이 사용하는 네트워크 주소 구하기와 같이 AND/OR 연산으로 하되, 시험장에서 빠르게 풀 때는 블록 크기 방법을 사용해도 됩니다.
정보처리기사 실기 대비 문제
Footnotes
-
서브넷 마스크에
255가 아닌 자리가 둘 이상인 경우(예:255.255.128.0)에는 블록 크기를 적용할 자리를 먼저 찾아야 해서 조금 더 까다로워집니다. 다만 정보처리기사 실기 출제 범위에서는 마지막 자리가255가 아닌 경우가 대부분이라 이 방법이 잘 통합니다. ↩