네트워크 클래스
위키백과 ― 우리 모두의 백과사전.
네트워크 클래스는 IPv4에서 IP 주소의 첫번째 구조 변화를 나타낸다.
목차 |
[편집] 클래스 도입 이전
원래 32비트 IPv4 주소는 호스트가 연결되어있는 특정 네트워크를 가리키는 단순히 8비트의 네트워크 영역과 해당 네트워크 내에서 호스트의 주소를 가리키는 나머지 영역으로 단순하게 구분되어 있었다. 참고로 이 형태는 랜 도입 이전에 정해졌는데, 이때는 ARPANET과 같은 적은 수의 대규모 네트워크밖에 없었다.
결과는 256개라는 매우 적은 수의 네트워크만이 가능했고, 랜이 도입됨에 따라 충분치 않다는 것이 판명되었다.
[편집] 클래스
덕분에, IP 주소의 정의가 바뀌었으며, 3개의 다른 크기의 네트워크 영역이 다음 표와 같이 정의되었다.(비트단위)
클래스 | 앞선 비트 | 네트워크 영역 | 나머지 영역 |
---|---|---|---|
클래스 A | 0 | 7 | 24 |
클래스 B | 10 | 14 | 16 |
클래스 C | 110 | 21 | 8 |
클래스 D (멀티캐스트) | 1110 | ||
클래스 E (예약됨) | 1111 |
이는 각 클래스당 다음과 같은 수의 네트워크 및 주소를 가능하게 한다. 단, 실제 개수가 예상보다 작다는 것을 유념하기 바란다. 이는 몇몇 값들, 예를 들어 0만으로 이루어진 값등은 허용되지 않기 때문이다.
클래스 | 앞선 비트 | 총 네트워크 수 | 네트워크당 주소 수 |
---|---|---|---|
클래스 A | 0 | 128 | 16,777,214 |
클래스 B | 10 | 16,384 | 65,534 |
클래스 C | 110 | 2,097,152 | 256 |
기존에 비해 더욱 커진 네트워크 표시 영역은 더 많은 수의 네트워크를 가능하게 해주었고, 이로인해 임시적이나마 인터넷의 지속적인 성장을 유지할 수 있었다.
오늘날 IP 주소와 함께 널리 사용되는IP 주소 넷마스크는 필요없었는데, 이는 마스크의 길이가 순전히 IP 주소로부터 판별 가능했기 때문이다. 즉, 누구라도 IP의 첫 몇 비트만 보면 어떠한 클래스에 속하는지 알 수 있었기 때문이다.
어떤 주소가 다른 주소와 동일한 물리 네트워크에 속해있는지를 판단하는 이러한 간단한 방법은 효율적으로 동작했다(서브넷참조). 각각의 주소에 대해 네트워크의 번호를 추출해내고, 주소의 나머지 부분은 무시되었다. 네트워크 번호가 동일한다면, 두 주소는 동일한 네트워크로 보내어지게 되는 것이다.
[편집] 클래스의 변경
하지만, 이러한 첫번째의 변화는 오래가지 못했다. IP 주소 부족은 여전히 계속되었다. 가장 큰 문제는 대부분의 사이트들은 "클래스 C"에 들어가기에는 너무 컸고, 대신 "클래스 B"를 할당받았다. 인터넷의 빠른 발전과 함께, 클래스 B의 가능한 주소는(기본적으로 214 즉 약 16,000개) 급속도로 소진되어 갔다. 이러한 문제 및 다른 여러 문제를 해결하기 위해 1993년경부터 네트워크 클래스는 사이더에 의해 대체되게 되었다.
IANA에 의한 초기 IP 주소의 할당은 효율적으로 이루어지지 못하였으며, 이는 문제를 악화시켰다. (하지만, 몇몇 기관이 불공평하게, 그리고 부적절하게 클래스 A를 가져갔다는 널리 퍼진 생각은 허위이다. 대부분의 그런 할당은 클래스의 도입 이전으로 거슬러 올라간다. 즉, 그때 할당한 주소들이 훗날 클래스 A라 불리게 되었을 뿐이었다.)
[편집] 유용한 표
[편집] 클래스 범위
각 클래스에 사용되는 주소 범위는 다음 표에 일반적인 점과 10진법의 표기로 나타나 있다.
클래스 | 앞선 비트 | 시작주소 | 끝주소 | 해당 사이더 블럭 |
---|---|---|---|---|
클래스 A | 0 | 0.0.0.0 | 127.255.255.255 | /8 |
클래스 B | 10 | 128.0.0.0 | 191.255.255.255 | /16 |
클래스 C | 110 | 192.0.0.0 | 223.255.255.255 | /24 |
클래스 D (멀티캐스트) | 1110 | 224.0.0.0 | 239.255.255.255 | NA |
클래스 E (예약됨) | 1111 | 240.0.0.0 | 255.255.255.255 | NA |
[편집] 특수범위
몇몇 주소들은 특별한 사용처를 위해 예약되어 있다(RFC 3330).
주소 | 해당 사이더 | 목적 | RFC | 클래스 | 전체 주소 개수 |
---|---|---|---|---|---|
0.0.0.0 - 0.255.255.255 | 0.0.0.0/8 | Zero 주소 | RFC 1700 | A | 16,777,216 |
10.0.0.0 - 10.255.255.255 | 10.0.0.0/8 | Private IP address | RFC 1918 | A | 16,777,216 |
127.0.0.0 - 127.255.255.255 | 127.0.0.0/8 | 로컬호스트 Loopback 주소 | RFC 1700 | A | 16,777,216 |
169.254.0.0 - 169.254.255.255 | 169.254.0.0/16 | Zeroconf | RFC 3330 | B | 65,536 |
172.16.0.0 - 172.31.255.255 | 172.16.0.0/12 | Private IP address | RFC 1918 | B | 1,048,576 |
192.0.2.0 - 192.0.2.255 | 192.0.2.0/24 | 문서와 예제 | RFC 3330 | C | 256 |
192.88.99.0 - 192.88.99.255 | 192.88.99.0/24 | IPv6에서 IPv4로의 애니캐스트 릴레이 | RFC 3068 | C | 256 |
192.168.0.0 - 192.168.255.255 | 192.168.0.0/16 | Private IP address | RFC 1918 | C | 65,536 |
198.18.0.0 - 198.19.255.255 | 198.18.0.0/15 | 네트워크 장치 벤치마크 | RFC 2544 | C | 131,072 |
224.0.0.0 - 239.255.255.255 | 224.0.0.0/4 | 멀티캐스트 | RFC 3171 | D | 268,435,456 |
240.0.0.0 - 255.255.255.255 | 240.0.0.0/4 | 예약됨 | RFC 1700 | E | 268,435,456 |
[편집] 비트단위 표기
아래 표에서 모든 자리는 이진수이며,
- n는 네트워크 주소를 나타낸다.
- h는 호스트 주소를 나타낸다.
- X는 특별한 목적이 없는 자리를 나타낸다.
클래스 A 0. 0. 0. 0 = 00000000.00000000.00000000.00000000 127.255.255.255 = 01111111.11111111.11111111.11111111 0nnnnnnn.hhhhhhhh.hhhhhhhh.hhhhhhhh 클래스 B 128. 0. 0. 0 = 10000000.00000000.00000000.00000000 191.255.255.255 = 10111111.11111111.11111111.11111111 10nnnnnn.nnnnnnnn.hhhhhhhh.hhhhhhhh 클래스 C 192. 0. 0. 0 = 11000000.00000000.00000000.00000000 223.255.255.225 = 11011111.11111111.11111111.11111111 110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh 클래스 D 224. 0. 0. 0 = 11100000.00000000.00000000.00000000 239.255.255.255 = 11101111.11111111.11111111.11111111 1110XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX 클래스 E 240. 0. 0. 0 = 11110000.00000000.00000000.00000000 255.255.255.255 = 11111111.11111111.11111111.11111111 1111XXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX
[편집] 같이 보기
[편집] 외부 고리
- RFC 791 — 네트워크 클래스 정의