한눈에 보기
IPv4 주소는 32비트 숫자이고, 초기에는 맨 앞 비트 패턴으로 어디까지가 네트워크 번호인지를 정했습니다. 그 구분이 클래스 A·B·C(·D·E)입니다. 지금 인터넷 라우팅은 클래스가 아니라 접두사 길이(/24 등)로 움직이지만, 사설 IP 대역이나 "첫 숫자가 몇이면 어느 클래스"라는 규칙은 기초 교육과 문서에서 아직 자주 등장합니다. 이 글은 비트 규칙, 범위 표, CIDR로 넘어간 배경, 계산 예시를 다룹니다.
- 클래스는 첫 옥텟의 앞 비트로 결정됩니다. A는 0, B는 10, C는 110, D는 1110, E는 1111.
- RFC 791(1981년 9월)이 A·B·C를 정의했고, 111로 시작하는 구간은 미래용으로 남겨 두었습니다.
- 중간 규모 조직에 맞는 크기가 없던 점과 라우팅 테이블 증가가 CIDR(RFC 1519, 1993년 9월)의 배경입니다.
- 지금의 기준 문서는 RFC 1519를 대체한 RFC 4632(2006년 8월)입니다.
비트로 보는 클래스 구분표
| 클래스 | 앞 비트 | 첫 옥텟 범위 | 네트워크 비트 | 호스트 비트 | 네트워크 수 / 호스트 수(주소 2^n-2) |
|---|---|---|---|---|---|
| A | 0 | 0~127 | 7 (기본 /8) | 24 | 128개 / 16,777,214 |
| B | 10 | 128~191 | 14 (기본 /16) | 16 | 16,384개 / 65,534 |
| C | 110 | 192~223 | 21 (기본 /24) | 8 | 2,097,152개 / 254 |
| D | 1110 | 224~239 | 멀티캐스트 그룹 | - | 224.0.0.0/4 |
| E | 1111 | 240~255 | 미래 사용 예약 | - | 240.0.0.0/4 |
표의 네트워크 비트 수(7·14·21)는 RFC 791 2.3절에서, 호스트 수와 "너무 작거나 크다"는 설명은 RFC 4632에서 확인했습니다. IANA의 IPv4 주소 공간 등록부는 224/4를 멀티캐스트(과거의 Class D), 240/4를 미래 사용 예약(과거의 Class E)으로 적고 있으며, 127/8은 루프백, 0/8은 자기 식별용으로 예약되어 있습니다. 그래서 클래스 A에서 실제로 쓸 수 있는 네트워크는 0과 127을 뺀 1~126, 즉 126개입니다. 255.255.255.255는 제한된 브로드캐스트 주소로 별도 등록되어 있습니다.
직접 분류해 보기 (node로 검산한 예시)
첫 옥텟을 이진수로 바꿔 앞 비트를 보면 됩니다. 아래 값은 모두 계산으로 확인했습니다.
| 주소 | 첫 옥텟(2진수) | 클래스 | 비고 |
|---|---|---|---|
| 10.1.2.3 | 00001010 | A | 10.0.0.0/8 사설 대역 |
| 127.0.0.1 | 01111111 | A 범위 | 루프백 예약 |
| 150.100.1.1 | 10010110 | B | - |
| 172.16.5.9 | 10101100 | B | 172.16.0.0/12 사설 대역(172.16~172.31) |
| 172.32.0.1 | 10101100 | B | 사설 대역이 아님(172.31 초과) |
| 192.168.0.1 | 11000000 | C | 192.168.0.0/16 사설 대역 |
| 224.0.0.251 | 11100000 | D | 멀티캐스트 범위 |
| 240.0.0.1 | 11110000 | E | 미래 사용 예약 |
참고로 172.16.5.9와 172.32.0.1은 첫 옥텟이 같은 172이므로 클래스는 같지만, 사설 대역 여부는 두 번째 옥텟까지 봐야 합니다. RFC 1918(1996년 2월)은 세 사설 블록을 각각 "클래스 A 네트워크 1개", "클래스 B 네트워크 연속 16개", "클래스 C 네트워크 연속 256개"에 해당한다고 설명합니다.
왜 클래스가 사라졌나: 낭비와 라우팅 테이블
RFC 4632는 1992년 1월 IETF의 ROAD 그룹이 지적한 세 문제를 언급합니다. 첫째 클래스 B 고갈, 둘째 인터넷 라우터의 라우팅 테이블 증가, 셋째 장기적인 IPv4 전체 고갈입니다. CIDR은 앞의 둘을 중단기적으로 해결하려는 설계이고 셋째 문제는 해결 대상이 아니라고 이 문서는 밝힙니다. 핵심은 경계가 /8·/16·/24 셋으로 고정되지 않고, 접두사 길이를 비트 단위로 정해 필요한 만큼만 쓰며 인접한 블록을 하나의 경로로 묶어(aggregation) 라우팅 테이블을 줄인다는 것입니다.
가상 예시: 호스트 2,000대 조직에 주소를 준다면
이것은 계산을 보여 주기 위한 가상 예시이며 실제 조직이 아닙니다. 호스트가 2,000대 필요한 조직이 있다고 합시다. 클래스풀 방식에서는 클래스 C(254개)로는 부족하므로 클래스 B(65,534개)를 받아야 하고, 사용률은 2,000 / 65,534 ≈ 3.05%입니다. CIDR에서는 /21(호스트 2,046개)을 받을 수 있고 사용률은 약 97.8%입니다. 이 숫자는 node로 계산했습니다. 또 연속된 클래스 C 4개(예: 200.10.4.0~200.10.7.0)는 200.10.4.0/22 하나로 묶을 수 있어(주소 1,024개) 라우팅 항목 4개가 1개가 됩니다. 이처럼 낭비와 경로 수를 동시에 줄이는 것이 CIDR의 취지입니다.
흔한 오해와 정정
- 오해: 192.168.x.x는 /24이므로 항상 255.255.255.0이다. 실제: 192.168.0.0/16 전체가 사설 블록이며, 서브넷 크기는 설정하기 나름입니다. 클래스 C는 "기본" 마스크일 뿐입니다.
- 오해: 지금도 인터넷이 클래스로 라우팅한다. 실제: CIDR(RFC 1519, 이후 RFC 4632)이 접두사 길이 기반 방식을 규정했습니다.
- 오해: 클래스 D·E는 일반 기기에 부여된다. 실제: D는 멀티캐스트 그룹용, E는 미래 사용 예약으로 일반 호스트 주소가 아닙니다.
- 오해: 127.x.x.x는 클래스 A니까 인터넷에서 쓸 수 있다. 실제: 127/8은 루프백으로 예약되어 있습니다.
한계와 더 알아볼 점
"클래스"는 현재 표준 용어가 아니라 역사적 개념입니다. IANA 등록부도 D·E를 "과거의(formerly)" 이름으로 표기합니다. 교육 자료마다 클래스 D의 호스트 수나 E 구간 처리를 다르게 쓰는 경우가 있으니 실무에서는 항상 접두사 길이를 함께 확인하세요. 이 글은 RFC 791·1519·1918·4632와 IANA 등록부를 확인해 썼고, 각 지역 인터넷 레지스트리의 실제 할당 정책 변화는 다루지 않았습니다.
CIDR 표기를 더 알고 싶다면
/24, /21 같은 접두사 표기의 읽는 법은 CIDR 표기 가이드에서 이어서 볼 수 있습니다.
서브넷을 직접 계산해보고 싶다면
CIDR 표기로 서브넷 마스크와 네트워크·브로드캐스트 주소, 사용 가능한 호스트 범위까지 계산해보고 싶다면서브넷 마스크 계산기를 이용해보세요.
사설 IP 대역이 정확히 궁금하다면
10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16처럼 각 클래스 안에서 사설 용도로 예약된 구체적인 범위는사설 IP 대역 완전정복에서 확인해보세요.
자주 묻는 질문
지금도 인터넷 라우팅에 클래스 개념을 쓰나요?
아니요, 1993년 이후 CIDR 방식이 표준으로 자리 잡으면서 실제 라우팅에서는 클래스 경계를 따지지 않습니다. 다만 사설 IP 대역을 설명하거나 네트워크 기초를 가르칠 때는 여전히 클래스라는 용어가 편의상 자주 쓰입니다.
클래스 A의 네트워크 수가 126개인가요, 128개인가요?
RFC 791의 비트 정의로는 7비트라 128개입니다. 그중 0/8(자기 식별)과 127/8(루프백)이 IANA 등록부에서 예약이라 일반 할당 가능한 것은 126개로 세는 경우가 많습니다.
호스트 수는 왜 2를 빼나요?
호스트 부분이 전부 0인 주소는 네트워크 자체를, 전부 1인 주소는 브로드캐스트를 나타내므로 일반 호스트에 쓸 수 없습니다. 클래스 C는 2^8-2=254입니다. (/31 등 특수 사용은 여기서 다루지 않습니다.)
CIDR 표기 /24는 클래스 C와 같은 건가요?
크기는 같지만 개념이 다릅니다. /24는 접두사 길이일 뿐이어서 어느 대역에서나 쓸 수 있고, 클래스 C는 192~223 범위에서 /24를 기본으로 보던 옛 규칙입니다.
CIDR 문서는 어떤 걸 보면 되나요?
RFC 1519(1993년 9월)는 RFC 4632(2006년 8월)로 대체되었으므로 현재는 RFC 4632를 보면 됩니다.
내 IP 주소가 몇 번 클래스인지 어떻게 알 수 있나요?
IP 주소의 첫 옥텟(맨 앞 숫자) 값만 확인하면 됩니다. 0~127이면 클래스 A, 128~191이면 클래스 B, 192~223이면 클래스 C, 224~239면 클래스 D, 240~255면 클래스 E입니다.