그룹마다 다른 프리픽스 길이로 주소를 나누는 방식(Variable Length Subnet Mask).
왜 필요한가
고정 길이로 나누면 가장 큰 그룹에 맞춰야 한다
- 영업 50대 · 개발 25대 · 운영 10대 · 링크 2대
- 전부 /26(62개) 으로 주면 링크에 60개가 낭비된다
VLSM 은 그룹마다 크기를 달리해 낭비를 없앤다
큰 것부터 자른다
- 192.168.10.0/24 를 나눈다
① 영업 50대 → 2^h-2 ≥ 50 → h=6 → /26, 블록 64
192.168.10.0/26 사용 .1 ~ .62, 브로드캐스트 .63
② 개발 25대 → h=5 → /27, 블록 32
192.168.10.64/27 사용 .65 ~ .94, 브로드캐스트 .95
③ 운영 10대 → h=4 → /28, 블록 16
192.168.10.96/28 사용 .97 ~ .110, 브로드캐스트 .111
④ 링크 2대 → h=2 → /30, 블록 4
192.168.10.112/30 사용 .113 ~ .114, 브로드캐스트 .115
작은 것부터 자르면 안 된다 — 큰 블록이 연속으로 남지 않아 조각이 나고, 나중에 큰 그룹을 배치할 자리가 없어진다.
프리픽스 고르는 법
2^h - 2 ≥ 필요 대수 를 만족하는 '가장 작은 h'
50대 → h=5 는 30개로 부족, h=6 은 62개로 충분 → /26 200대 → h=7 은 126개로 부족, h=8 은 254개 → /24 500대 → h=8 은 254개로 부족, h=9 는 510개 → /23
블록은 경계에 정렬돼야 한다
-
192.168.10.50/27 은 성립하지 않는다
- /27 의 경계는 0, 32, 64, 96 … 이고 50 은 경계가 아니다
-
네트워크 주소는 반드시 블록 크기의 배수여야 한다
면접 함정
- ❌ 작은 그룹부터 할당 → 단편화로 큰 그룹을 못 넣는다.
- ❌ 여유를 안 두고 딱 맞춤 → 30대에 /27(30개)은 확장 여지가 0이다.
확장 여지를 남긴다
30대에 /27(30개) 을 주면 딱 맞지만 한 대도 더 못 붙인다
- 보통 한 단계 여유를 둔다 (/26, 62개)
반대로 지나치게 크게 잡으면
- 나중에 다른 그룹에 줄 대역이 없어진다
"현재 × 1.5~2" 정도가 실무 감각이다
집약 가능성을 고려한 배치
부서를 연속 배치하면 나중에 상위 프리픽스로 광고할 수 있다
본사 10.1.0.0/16 ─┐
지사A 10.2.0.0/16 ├→ 10.0.0.0/8 로 집약 광고
지사B 10.3.0.0/16 ─┘
띄엄띄엄 배정하면 각각을 따로 광고해야 한다
요구 조건에서 프리픽스로
필요 대수 → h → 프리픽스
2 → 2 → /30
6 → 3 → /29
14 → 4 → /28
30 → 5 → /27
62 → 6 → /26
126 → 7 → /25
254 → 8 → /24
510 → 9 → /23
1022 → 10 → /22
이 표를 외워 두면 설계가 빨라진다.
고정 길이와의 비교
-
고정 길이(FLSM) — 모든 서브넷이 같은 크기 — 구성이 단순하고 자동 요약이 쉽다
- 규모 편차가 크면 낭비가 극심하다
-
VLSM — 필요한 만큼만 — 주소 효율이 높다
- 서브넷 마스크를 함께 광고하는 라우팅 프로토콜이 필요하다
- (RIPv1 같은 클래스풀 프로토콜은 VLSM 을 못 쓴다)