1. CIDR (Classless Inter-Domain Routing)
ㅇ 배경
- IPv4의 `IP 주소 고갈` 및 `라우팅 테이블 대형화`에 대한 해소책
ㅇ 개요
- IP 주소를 Class A,B,C 등과 같이 고정화/규격화된 구분없이,
- 비트 단위의 서브네트 마스크 정보도 네트워크 정보로써 함께 라우팅하는 것
. (IP 주소) / (프리픽스 길이) 표현으로,
. 정해진 블록 크기 없이 필요한 만큼씩 할당 가능
.. 例) 192.168.0.0/24, 172.16.0.0/20, 10.0.0.0/8 등
. 또한, 255 ~ 65,536 정도의 연속 주소 범위를 하나로 집합시켜 할당 가능케 하는 등
.. 例) 192.168.0.0/22 → 192.168.0.0 ~ 192.168.3.255 범위 포함
- 이를 통해, IP 주소의 라우팅에서, 세분화(Subnetting) 및 집합화(Supernetting) 모두 가능
ㅇ 특징
- 라우팅 테이블 축소 및 라우팅 처리 속도 향상
- 주소 낭비 감소 및 유연한 할당 가능
- 계층적 주소 설계 가능
ㅇ 표준 문서
- RFC 4632 : CIDR의 설명 및 적용 방식
- RFC 1519 : CIDR의 개념적 정의 및 라우팅 적용 가이드라인 제공
2. 서브네팅 (Subnetting), 슈퍼넷팅 (Supernetting) 비교
ㅇ 서브네팅
- 더 큰 네트워크 주소에서 여러 작은 네트워크 주소로 나누는 기법
. IP 네트워크를 더 작은 네트워크로 나누면서 주소를 Subnet Mask에 의해 나누는 기법
ㅇ 슈퍼넷팅
- 여러 주소들을 마치 하나의 큰 주소 (Supernet) 처럼 크게 그룹화
. 이런 그룹화하는 기법을 Address Aggregation/Supernetting 이라고 함.
3. Classful Routing, Classless Routing 비교
ㅇ Classful Routing ☞ 클래스 있는 라우팅 참조
- Class (A,B,C 등)별로 규격화된 IP 주소 구분에 따라 나누어진 네트워크 주소 정보를
토대로 라우팅을 하는 것
ㅇ Classless Routing ☞ 클래스 없는 라우팅 참조
- 고정길이가 아닌 가변길이로 주소를 묶어주는 슈퍼네트 마스크(슈퍼넷팅) 개념임
. 이 경우, 라우팅 테이블이나 라우팅 정보 교환시 데이터량을 절약할 수 있음
- 특히, CIDR은, 좌측부터 비트 단위(IP 프리픽스)로 넷 마스크(CIDR 마스크)를 취하는 방식 임
ㅇ 결국,
- 규격화된 C Class의 경우, 약 2백만개 이상의 주소 블록 범위가 있게됨
- 따라서, 라우터가 이를 처리하려면, 라우터의 라우팅 테이블은 엄청난 메모리가 필요하게 됨
- 이때, CIDR 처럼 프리픽스를 이용한 비트 단위의 주소 할당이 된다면,
. 계층적인 주소 할당 및 계층적 라우팅이 이루어지게 됨
4. CIDR 에 의한 프리픽스 표기 형식 例
※ [참고]
- IP 주소에서 (네트워크 ID)에 해당하는 선두 상위 비트들의 집합 ☞ IP 프리픽스 참조
- IP 패킷 라우팅시, 가장 긴 문자열을 우선 매칭하는 우선순위 규칙 ☞ 롱기스트 매치 룰 참조