IT/개발 지식네트워크
4

서브네팅(Subnetting)

서브네팅(Subnetting)

나중에 나 자신이 봤을 때 "아 맞다!" 할 수 있도록 정리한 복습 노트


📌 핵심 용어 먼저 정리

용어예시의미
IP 주소192.168.1.100개별 컴퓨터 한 대의 주소
서브넷 마스크255.255.255.0네트워크/호스트 구분 도구
CIDR 표기/24네트워크 비트 수를 /숫자로 표현
CIDR 표기법192.168.1.0/24IP + 서브넷 마스크를 한번에 표현
네트워크 주소192.168.1.0서브넷의 첫 주소 (사용 불가)
브로드캐스트 주소192.168.1.255서브넷의 끝 주소 (사용 불가)
호스트 주소192.168.1.1 ~ .254실제 장치에 할당 가능한 주소

🏘️ 네트워크 vs 호스트

쉽게 말하면:

네트워크  =  동네 (서울시 강남구 테헤란로)
호스트    =  그 동네의 집 (123호)

IP 주소에서 보면:

192.168.1.100 / 24

192.168.1  →  네트워크 부분 (어느 동네?)
      .100  →  호스트 부분 (몇 번 집?)

같은 네트워크(동네)에 있으면 직접 통신 가능
다른 네트워크(동네)면 라우터(출입문)를 거쳐야 함


🔢 /24 의 의미 (CIDR)

IP 주소는 총 32비트로 구성됨

192    .  168   .   1   .  100
11000000.10101000.00000001.01100100

/24 라면 → 앞 24비트가 네트워크, 나머지 8비트가 호스트

[네트워크: 24비트][호스트: 8비트]
  192.168.1          .0~255
CIDR네트워크 비트호스트 비트호스트 수
/2424비트8비트254개
/2525비트7비트126개
/2626비트6비트62개
/2727비트5비트30개

호스트 수 공식

2^(32 - /숫자) - 2

-2 하는 이유: 네트워크 주소 + 브로드캐스트 주소 제외

🍕 서브넷 & 서브네팅이란?

서브넷(Subnet)    = 큰 네트워크를 잘게 나눈 작은 네트워크
서브네팅(Subnetting) = 나누는 작업 자체

피자에 비유하면:

피자 한 판 = 192.168.1.0/24 (하나의 큰 네트워크)
        ↓ 서브네팅 (자르는 작업)
조각 1 = 192.168.1.0/26   (서브넷 1)
조각 2 = 192.168.1.64/26  (서브넷 2)
조각 3 = 192.168.1.128/26 (서브넷 3)

왜 나누나?

  • IP 낭비 방지 → 254개를 한 부서에 주기엔 너무 많음
  • 보안 → 서브넷 간 트래픽을 라우터로 통제
  • 성능 → 브로드캐스트 범위를 줄여 네트워크 혼잡 감소

📐 서브넷 마스크란?

"어디서 자를지" 알려주는 도구

1이 연속된 부분 → 네트워크
0이 연속된 부분 → 호스트

/26 → 1이 26개
11111111.11111111.11111111.11000000
= 255    . 255   . 255    . 192

마지막 옥텟 변환표 (자주 나옴!)

CIDR2진수10진수
/24000000000
/2510000000128
/2611000000192
/2711100000224
/2811110000240
/2911111000248
/3011111100252

📏 FLSM이란?

Fixed Length Subnet Mask
= 모든 서브넷을 똑같은 크기로 자르는 방식
  • FLSM → 피자를 똑같이 자르기
  • VLSM → 피자를 필요한 만큼 자르기

FLSM의 핵심 규칙

무조건 2의 제곱수로만 나눌 수 있음

3개 필요 → 2² = 4개짜리로 나누고 3개 사용
           (1개는 여분으로 낭비됨 → FLSM의 단점)

🧮 103번 문제 풀이

문제: 192.168.1.0/24 네트워크를 FLSM 방식으로 3개의 서브넷으로 나눴을 때, 두 번째 네트워크의 브로드캐스트 IP 주소를 10진수로 쓰시오.

Step 1. 몇 비트 빌릴까?

3개의 서브넷 필요 → 2ⁿ ≥ 3

2¹ = 2  ❌
2² = 4  ✅ → 2비트 차용

Step 2. 새 CIDR

기존: /24
빌린 비트: +2
새 CIDR: /26

Step 3. 서브넷당 IP 개수

2^(32-26) = 2⁶ = 64개
호스트 수 = 64 - 2 = 62개

Step 4. 서브넷 목록

순번네트워크 주소호스트 범위브로드캐스트
1번192.168.1.0/26.1 ~ .62192.168.1.63
2번192.168.1.64/26.65 ~ .126192.168.1.127
3번192.168.1.128/26.129 ~ .190192.168.1.191
(여분)192.168.1.192/26.193 ~ .254192.168.1.255
시작: 0
+64 → 64   (2번째 서브넷 시작)
+64 → 128  (3번째 서브넷 시작)

2번째 브로드캐스트 = 3번째 시작 - 1 = 128 - 1 = 127

✅ 정답: 192.168.1.127


💡 핵심 공식 모음

1. 호스트 수       = 2^(32 - /숫자) - 2
2. 새 CIDR        = 기존 /숫자 + 빌린 비트 수
3. 브로드캐스트    = 다음 서브넷 시작주소 - 1
4. 서브넷당 크기   = 2^(32 - 새 CIDR)

🔄 FLSM 풀이 흐름 요약

① 필요한 서브넷 수 확인
② 2ⁿ ≥ 서브넷 수 → n비트 차용
③ 새 CIDR = 기존 /숫자 + n
④ 서브넷당 IP = 2^(32 - 새 CIDR)
⑤ 0부터 서브넷 크기만큼 증가하며 목록 작성
⑥ 브로드캐스트 = 다음 서브넷 시작 - 1

댓글

(0)
서브네팅(Subnetting) | 강민석의 개발블로그