서브넷 마스크와 서브네팅
쉽게 말하면
서브넷 마스크는 IP 주소에서 '어디까지가 동네 이름인지' 긋는 선이에요. /24라고 쓰면 앞 24비트가 동네, 나머지 8비트가 집 번호예요. 큰 동네를 작은 동네 여러 개로 나누는 게 서브네팅인데, 집 번호 비트를 몇 개 빌려 동네 번호로 쓰는 거예요. 각 동네의 첫 주소(동네 이름)와 끝 주소(전체 방송용)는 집에 줄 수 없어서 집 수는 2ⁿ - 2예요.
시험용 정의
서브넷 마스크는 IP 주소의 네트워크 부분을 1, 호스트 부분을 0으로 표시한 32비트 값이다(255.255.255.192 = /26). 서브네팅은 호스트 비트를 빌려 네트워크를 더 작게 나누는 것으로, 서브넷 수는 2^(빌린 비트), 서브넷당 호스트 수는 2^(남은 호스트 비트) - 2다. IP와 마스크를 AND 하면 네트워크 주소, 호스트 비트를 모두 1로 하면 브로드캐스트 주소다.
비유로 이해하기
아파트 단지를 동으로 나누는 것이다. /24 단지(254세대)를 /26으로 나누면 64세대짜리 동 4개가 생기고, 동마다 관리실 번호(네트워크 주소)와 단체 방송 번호(브로드캐스트)는 세대에 줄 수 없다.
자세히
그림으로 보기: /26 으로 나누기
먼저 알아 둘 말
| 말 | 뜻 |
|---|---|
| 프리픽스(/n) | 마스크에서 앞쪽 1의 개수. /26 = 1이 26개 |
| 블록 크기 | 한 서브넷이 차지하는 주소 개수. 256 - (마지막으로 쪼개진 옥텟의 마스크 값) |
| AND 연산 | 두 비트가 모두 1일 때만 1. IP AND 마스크 = 네트워크 주소 |
| CIDR | 클래스 대신 /n으로 네트워크 크기를 자유롭게 정하는 방식 |
마스크 표 (마지막 옥텟)
| 프리픽스 | 마스크 | 블록 크기 | 호스트 수 |
|---|---|---|---|
| /24 | 255.255.255.0 | 256 | 254 |
| /25 | 255.255.255.128 | 128 | 126 |
| /26 | 255.255.255.192 | 64 | 62 |
| /27 | 255.255.255.224 | 32 | 30 |
| /28 | 255.255.255.240 | 16 | 14 |
| /29 | 255.255.255.248 | 8 | 6 |
| /30 | 255.255.255.252 | 4 | 2 (라우터끼리 연결) |
빠르게 계산하는 법
- 마스크가 쪼개는 옥텟을 찾는다(/26이면 4번째 옥텟)
- 블록 크기 = 256 - 마스크 값 (256 - 192 = 64)
- 블록 크기의 배수 중 IP 값 이하에서 가장 큰 것이 네트워크 주소(77 → 64)
- 다음 배수 - 1이 브로드캐스트(128 - 1 = 127)
- 그 사이가 호스트 범위(65 ~ 126)
예: 172.16.5.4/20 → 세 번째 옥텟에서 블록 16(256 - 240) → 5는 0~15 구간 → 네트워크 172.16.0.0, 브로드캐스트 172.16.15.255.
필요한 서브넷·호스트 수로 마스크 고르기
- 서브넷이 6개 필요: 2² = 4 < 6 ≤ 2³ = 8 → 3비트 빌림. C 클래스면 /27
- 서브넷마다 호스트 50대: 2⁶ - 2 = 62 ≥ 50 → 호스트 비트 6개 → /26
- VLSM: 서브넷마다 다른 마스크를 써서 주소 낭비를 줄인다. 슈퍼네팅(경로 요약)은 반대로 여러 네트워크를 하나로 묶는다(192.168.0.0/24 ~ 192.168.3.0/24 → 192.168.0.0/22)
시험에 이렇게 나와요
- 필요한 서브넷·호스트 수로 마스크 고르기 → 서브넷 2ⁿ개, 호스트 2ⁿ−2개
- /28(255.255.255.240) → 서브넷당 사용 가능한 호스트 14개
- 브로드캐스트 주소 → 서브넷의 마지막 주소 (예: .0/27이면 .31)
- 서브넷 마스크 → 네트워크 부분과 호스트 부분을 나눈다. 클래스마다 기본 마스크가 다르다 (A는 255.0.0.0)
확인 문제
Q1. 192.168.10.77/26이 속한 네트워크의 브로드캐스트 주소는?
- 192.168.10.127
- 192.168.10.64
- 192.168.10.63
- 192.168.10.255
정답 보기
1번 192.168.10.127
/26은 마지막 옥텟에서 2비트를 네트워크로 써서 64개씩 나눈다(0, 64, 128, 192). 77은 64~127 구간이므로 네트워크 주소 192.168.10.64, 브로드캐스트 192.168.10.127.
Q2. 200.10.20.0/24를 서브넷 8개로 나눌 때 알맞은 마스크는?
- 255.255.255.240
- 255.255.255.248
- 255.255.255.192
- 255.255.255.224
정답 보기
4번 255.255.255.224
2³ = 8 → 3비트 빌림 → /27 = 255.255.255.224.
Q3. 192.168.1.130/27과 같은 서브넷에 속하는 주소는?
- 192.168.1.150
- 192.168.1.127
- 192.168.1.160
- 192.168.1.100
정답 보기
1번 192.168.1.150
블록 32: 128~159 구간. 150이 같은 구간.
Q4. 255.255.255.240 마스크에서 서브넷당 사용 가능한 호스트 수는?
- 6
- 14
- 16
- 30
정답 보기
2번 14
/28 → 호스트 비트 4 → 2⁴ - 2 = 14.
Q5. 192.168.0.0/24 ~ 192.168.3.0/24 네 네트워크를 하나로 요약한 주소는?
- 192.168.0.0/21
- 192.168.0.0/16
- 192.168.0.0/23
- 192.168.0.0/22
정답 보기
4번 192.168.0.0/22
4개 = 2² → 24 - 2 = /22.
헷갈리기 쉬운 O·X
/26 서브넷의 블록 크기는 64다.
정답 보기
O 256 - 192 = 64.
서브넷의 네트워크 주소는 호스트에 할당할 수 있다.
정답 보기
X 네트워크 주소와 브로드캐스트 주소는 호스트에 못 쓴다.
VLSM은 모든 서브넷에 같은 마스크를 쓰는 방식이다.
정답 보기
X 서브넷마다 다른 길이의 마스크를 쓴다.