963. 서브넷 마스크 (Subnet Mask) / CIDR - IP 네트워크 대역 호스트 분리망 가변 길이 마스킹 라우팅 효율 주소 고갈 방어 수학적 비트 쪼개기 체계
핵심 인사이트: 인터넷이 처음 생겼을 때 IP 주소는
A, B, C 클래스라는 무식한 옷 사이즈(S, M, L) 딱 3개밖에 없었다. 회사에 컴퓨터가 300대뿐인데 C클래스(254개)는 너무 짝아서, 억지로 B클래스(65,000개)를 샀더니 64,700개의 아까운 IP 주소가 허공에 낭비되어 버려졌다(IPv4 고갈의 주범). "야! 옷 사이즈를 딱 3개로 무식하게 자르지 말고, 옷감을 바늘과 실(서브넷 마스크)로 한 땀 한 땀 내가 원하는 크기만큼 딱 맞춤 재단(CIDR)해서 잘라 입자!" 43억 개의 IP 주소를 구두쇠처럼 쥐어 짜내어 통신망의 수명을 30년 연장시킨 수학의 가위, 서브넷 마스크와 CIDR이다.
Ⅰ. IP 주소의 2가지 뼈대 (네트워크 vs 호스트)
- IP 주소(
192.168.1.10)는 32비트짜리 긴 숫자입니다. 이 숫자는 항상 두 동강으로 나뉩니다.- 네트워크 ID (동네 주소): "우리는 서초구 삼성동이야" (라우터가 길을 찾을 때 보는 주소)
- 호스트 ID (집 주소): "나는 삼성동 10번지 컴퓨터야"
- 이 긴 숫자 중 도대체 **"어디서부터 어디까지가 동네 주소이고, 어디부터가 집 주소냐?"**를 끊어주는(가위질) 도구가 바로 **서브넷 마스크(Subnet Mask)**입니다.
Ⅱ. 클래스풀(Classful)의 무식함 ➜ 서브넷 마스크의 탄생 🌟
- 구형 클래스 방식: 첫 8자리 자르면 A클래스, 16자리 자르면 B, 24자리 자르면 C클래스. 무조건 이 3개로만 잘랐습니다. (주소 낭비 폭발)
- 서브넷 마스크의 등판: IP 주소 밑에
255.255.255.0같은 숫자를 깔아둡니다.- 마스크를 이진수로 풀면
11111111.11111111.11111111.00000000입니다. - 규칙: 마스크의
1이 덮여있는 부분은 "건드리지 마! 동네 주소(Network)야!" 이고, **0이 덮여있는 부분은 "내 맘대로 컴퓨터 꽂아서 쓰는 집 주소(Host)야!"**라는 선 긋기 룰입니다. - 이를 통해 큰 덩어리의 네트워크를 작은 부서별(영업팀, 인사팀) 네트워크(Subnet)로 잘게 쪼개어 브로드캐스트 스톰(소음)을 완벽히 차단합니다.
- 마스크를 이진수로 풀면
Ⅲ. 궁극의 진화: CIDR (Classless Inter-Domain Routing) 🌟 핵심 🌟
서브넷 마스크가 A,B,C 클래스의 틀 안에서 쪼개는 짓이었다면, **CIDR(사이더)**는 아예 A,B,C 클래스라는 개념 자체를 폭파(Classless)해 버린 현대 인터넷 주소의 헌법입니다.
1. 가변 길이 슬래시(/) 표기법 (VLSM의 응용)
- 무식한
255.255.255.0대신,192.168.1.10/24처럼 뒤에 슬래시(/)를 긋고 숫자를 씁니다. /24의 의미: "앞에서부터 딱 24개의 비트만 동네 주소(Network ID)로 묶어버려라!"는 뜻입니다. 나머지는 8비트($32-24=8$)니까, $2^8 = 256$개의 컴퓨터를 꽂을 수 있는 네트워크가 탄생합니다.
2. 칼 같은 맞춤 재단 (주소 낭비 제로) 🌟
- 컴퓨터 100대만 있는 부서가 IP를 달라고 합니다.
- 옛날엔 256개짜리(C클래스)를 줘서 156개를 낭비했습니다.
- CIDR 시대: 관리자가 펜을 들고 **
/25**로 자릅니다. 앞에서 25칸을 막아버렸으니, 뒤에 남은 공간은 7칸($32-25=7$). 즉, $2^7 = 128$개의 IP가 담긴 초미니 맞춤형 네트워크를 잘라서 줍니다! 주소 낭비가 156개에서 28개로 극단적으로 줄어듭니다.
3. 슈퍼네팅 (Supernetting / Route Summarization) - 라우터 숨통 트이기
- CIDR은 쪼개는 것만 하는 게 아니라, 자잘한 부서 주소들을 큰 거 하나로 뭉치는(병합) 짓도 기가 막히게 합니다.
- 강남지사 밑에
/24짜리 잘게 쪼개진 자잘한 네트워크 장부가 100개 있습니다. 이걸 본사 코어 라우터에 다 올리면 라우터 뇌가 터집니다. - CIDR은 이 자잘한 100개의 주소를 수학적으로 공통된 앞자리로 딱 묶어서, **
10.0.0.0/16이라는 단 하나의 거대한 뭉칫덩어리 주소(요약본)**로 덮어버린 뒤 위로 올려보냅니다. 글로벌 라우팅 테이블 사이즈를 1/100로 줄여 인터넷 코어망 폭파를 막아낸 일등 공신입니다.
📢 섹션 요약 비유: 옛날 IP 주소 배분(클래스풀)은 아파트 계약할 때 평수가 '10평(C), 100평(B), 1만 평(A)' 딱 세 가지밖에 없는 부동산이었습니다. 나는 15평만 필요한데 억지로 100평을 계약해서 빈방 85평의 월세(IP 주소 고갈)를 낭비해야 했습니다. **CIDR과 서브넷 마스크(/24)**는 건물주가 '이동식 가벽(파티션)'을 마음대로 세울 수 있는 맞춤형 조립 아파트를 지은 것입니다. 내가 건물주에게 "나 15평만 쓸게!" 하면, 건물주가 줄자로 거리를 잰 뒤, 15평 크기 딱 맞는 위치에 슬래시 가벽(
/28서브넷 마스크)을 콱 세워버립니다. 주소의 낭비 공간이 0으로 수렴하게 되며, 건물(네트워크) 전체를 수백 개의 자잘하고 효율적인 부서별 벌집 모양(Subnetting)으로 완벽하게 통제하고 쪼개 쓸 수 있는 극강의 재단 기술입니다.