IP 주소 클래스(A~E) 완전정복

192.168로 시작하는 주소가 왜 유독 익숙한지, 클래스 개념의 비트 규칙과 CIDR로 넘어간 이유를 RFC 근거로 정리했습니다.

📜

클래스풀(Classful) 주소 체계란?

IPv4 주소를 앞자리 비트 패턴에 따라 A부터 E까지 5개 클래스로 나누던 초창기 주소 할당 방식으로, 지금은 CIDR 방식으로 대체된 역사적인 개념입니다.

인터넷 초창기인 1980년대에는 IP 주소를 네트워크 규모에 맞춰 A·B·C·D·E 클래스로 나누고, 클래스마다 네트워크 부분과 호스트 부분의 경계를 고정해 할당했습니다. 이 방식은 중간 규모 조직에 클래스 B(65,534개 호스트)를 통째로 배정하는 등 주소 낭비가 심해, 1993년 이후로는 네트워크 부분의 길이를 자유롭게 정하는 CIDR(Classless Inter-Domain Routing) 표기법(예: /24)이 실질적인 표준이 되었습니다. 다만 클래스라는 용어와 개념은 사설 IP 대역을 설명하거나 네트워크 기초를 배울 때 지금도 자주 언급됩니다.

🅰️

클래스 A: 0~127로 시작, 초대형 네트워크용

첫 옥텟이 0~127이며 기본 서브넷 마스크는 255.0.0.0(/8)으로, 네트워크 하나당 1,600만 개가 넘는 호스트를 수용할 수 있는 가장 큰 단위입니다.

클래스 A는 IP 주소의 첫 비트가 0으로 시작하는 대역으로, 첫 옥텟 값이 0부터 127까지입니다(다만 0은 특수 용도, 127은 루프백 주소용으로 예약되어 실제로는 1~126이 할당 가능). 기본 서브넷 마스크가 255.0.0.0(/8)이라 남은 24비트를 모두 호스트 식별에 쓸 수 있어, 네트워크 하나당 최대 16,777,214개의 호스트를 수용합니다. RFC 791(1981년)의 정의상 네트워크 번호가 7비트라 클래스 A 네트워크는 128개뿐이고, 그만큼 한 덩어리가 매우 큽니다.

🅱️

클래스 B: 128~191로 시작, 중간 규모 네트워크용

첫 옥텟이 128~191이며 기본 서브넷 마스크는 255.255.0.0(/16)으로, 네트워크 하나당 약 6만 5천 개의 호스트를 수용합니다.

클래스 B는 첫 비트가 10으로 시작하는 대역으로, 첫 옥텟 값이 128부터 191까지입니다. 기본 서브넷 마스크 255.255.0.0(/16) 기준으로 네트워크 하나당 최대 65,534개의 호스트를 수용할 수 있습니다. 클래스 C(254개)는 너무 작고 클래스 B는 너무 큰 중간 규모 조직이 많아, 클래스 B가 먼저 고갈될 위험이 있다는 점이 CIDR 도입의 배경 중 하나였습니다(RFC 4632).

🇨

클래스 C: 192~223로 시작, 소규모 네트워크용

첫 옥텟이 192~223이며 기본 서브넷 마스크는 255.255.255.0(/24)으로, 네트워크 하나당 254개의 호스트를 수용하는 가장 흔한 규모입니다.

클래스 C는 첫 비트가 110으로 시작하는 대역으로, 첫 옥텟 값이 192부터 223까지입니다. 기본 서브넷 마스크 255.255.255.0(/24) 기준으로 네트워크 하나당 254개의 호스트만 수용할 수 있는 대신 네트워크 개수 자체는 매우 많아, 소규모 사무실이나 가정용 네트워크 대역 설명에 가장 자주 인용됩니다. 흔히 보는 사설 IP 대역인 192.168.0.0~192.168.255.255도 바로 이 클래스 C 범위 안에 있습니다.

📡

클래스 D: 224~239로 시작, 멀티캐스트 전용

첫 옥텟이 224~239인 대역으로 특정 호스트가 아닌 멀티캐스트 그룹 주소로만 예약되어 있어, 일반 기기에는 할당되지 않습니다.

클래스 D는 첫 비트가 1110으로 시작하는 224.0.0.0~239.255.255.255 대역으로, 하나의 송신자가 여러 수신자에게 동시에 데이터를 보내는 멀티캐스트 통신에만 예약되어 있습니다. 라우팅 프로토콜 간 정보 교환이나 스트리밍 그룹 전송 등에 쓰이며, PC나 스마트폰 같은 일반 호스트에 개별 주소로 할당되는 일은 없습니다.

🧪

클래스 E: 240~255로 시작, 예약·실험용

첫 옥텟이 240~255인 대역으로 미래 용도와 연구·실험을 위해 예약되어 있어 일반적인 인터넷 통신에는 쓰이지 않습니다.

클래스 E는 240.0.0.0~255.255.255.255 대역으로, IANA 등록부에는 "미래 사용(Future use)"으로 예약된 구역(240/4)으로 적혀 있으며 일반 인터넷 트래픽에는 사용되지 않습니다. 대역의 끝에 있는 255.255.255.255는 네트워크 전체로 뿌리는 브로드캐스트 주소로 별도로 쓰입니다.

🔀

오늘날은 클래스 대신 CIDR 표기를 씁니다

지금의 라우터와 네트워크 장비는 A·B·C 같은 고정된 경계 대신, /24나 /27처럼 자유롭게 네트워크 길이를 지정하는 CIDR 방식으로 주소를 나눕니다.

클래스풀 방식은 네트워크 크기가 딱 세 가지(/8, /16, /24)로만 고정되어 있어 실제 필요한 호스트 수와 큰 차이가 나는 낭비가 흔했습니다. 이 문제를 해결하기 위해 등장한 CIDR은 서브넷 마스크의 길이를 원하는 만큼 자유롭게 정할 수 있게 해, 필요한 만큼만 정확히 주소를 나눠 쓸 수 있게 합니다. 각 클래스 대역 안에서 사설 용도로 예약된 구체적인 IP 범위는 별도로 정리되어 있습니다.

한눈에 보기

IPv4 주소는 32비트 숫자이고, 초기에는 맨 앞 비트 패턴으로 어디까지가 네트워크 번호인지를 정했습니다. 그 구분이 클래스 A·B·C(·D·E)입니다. 지금 인터넷 라우팅은 클래스가 아니라 접두사 길이(/24 등)로 움직이지만, 사설 IP 대역이나 "첫 숫자가 몇이면 어느 클래스"라는 규칙은 기초 교육과 문서에서 아직 자주 등장합니다. 이 글은 비트 규칙, 범위 표, CIDR로 넘어간 배경, 계산 예시를 다룹니다.

비트로 보는 클래스 구분표

클래스앞 비트첫 옥텟 범위네트워크 비트호스트 비트네트워크 수 / 호스트 수(주소 2^n-2)
A00~1277 (기본 /8)24128개 / 16,777,214
B10128~19114 (기본 /16)1616,384개 / 65,534
C110192~22321 (기본 /24)82,097,152개 / 254
D1110224~239멀티캐스트 그룹-224.0.0.0/4
E1111240~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.300001010A10.0.0.0/8 사설 대역
127.0.0.101111111A 범위루프백 예약
150.100.1.110010110B-
172.16.5.910101100B172.16.0.0/12 사설 대역(172.16~172.31)
172.32.0.110101100B사설 대역이 아님(172.31 초과)
192.168.0.111000000C192.168.0.0/16 사설 대역
224.0.0.25111100000D멀티캐스트 범위
240.0.0.111110000E미래 사용 예약

참고로 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의 취지입니다.

흔한 오해와 정정

한계와 더 알아볼 점

"클래스"는 현재 표준 용어가 아니라 역사적 개념입니다. 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입니다.