본문 바로가기

네트워크

CIDR란?

CIDR(Classless Inter-Domain Routing)이란?

클래스 없는 도메인간 라우팅 기법이라는 뜻으로 Inter-Domain간 라우팅 형태이다.

* 여기서 클래스가 없다는 것은 네트워크 구분을 Class로 하지 않는다는 것

 

장점:

Class 체계보다 더 유연하게 IP주소를 여러 네트워크 영역으로 나눌 수 있다.

 

형태 :

192.168.10.0/24

이 숫자는 비트 단위이며 0~32 까지 표현이 가능하다.

 
 

 

추가) IP의 옥텟이란?

IP는 옥텟이라는 단위로 나눈다.

 

아래 그림과 같이 하나의 옥텟은 8비트로 이루어져 있으며 일반적으로 사용하는 IPv4 주소는 4개의 옥텟으로 이루어져 있다.

 

따라서 사이더는 0~32 까지 총 32비트까지 사용이 가능하다.

 
 
 

CIDR 계산하기

ex) 143.7.65.203/24

CIDR이 "/24" 라면 아래 그림과 같이 앞에서부터 24비트 이후에 오는 4번째 옥텟(파란색 부분)을 전부 사용할 수 있다는 표현이다.

 

 

하나의 옥텟은 8비트로 2의8승 인 256개 이기 때문에, 143.7.65.203/24 일때 143.7.65.0 ~ 143.7.65.255 까지 사용이 가능한 것이다.

 

이렇게 CIDR값이 각 자리의 옥텟을 전체를 포함하는 /8, /16, /24, /32 일 경우는 계산하기 쉽다. 0부터 그자리에 해당하는 255 까지 라고 보면되기 때문이다.

 

간단한 예로 143.7.65.203/16 이라면 143.7.0.0 ~ 143.7.255.255 가 된다.

 

 
 

ex) 143.7.65.203/23

그런데, 사이더 값이 23일경우 아래와 같이 노란색과 파란색 두개의 옥텟에 걸치게 되므로 바로 계산하기가 애매해진다. 이 경우 애매하게 걸친 옥텟을 2진수로 표현하고 최소 값과 최대값을 찾아 내야 한다.

 

예를들어 143.7.65.203/23 일때, 4번째 옥텟(파란색 부분) 전체와 3번째 옥텟(노란색 부분)영역의 1비트가 포함된다.

 

애매하게 걸친 3번째 옥텟을 2진수로 표현해 보면 65로 01000001 이다.

 

사이더에 의해 마지막 자리 1비트, 0 또는 1을 사용할 수 있게 되면 01000000, 01000001 이기 때문에 64, 65가 된다. 여기서 64가 3번째 옥텟에서 사용할 수 있는 최소값이 되며 최대값은 65가 된다.

 

나머지 4번째 옥텟(파란색 부분)은 전체를 사용할 수 있기 때문에 최소값 0, 최대값 255이다.

따라서 143.7.65.203/23 는 143.7.64.0 ~ 143.7.65.255 대역을 사용할 수 있는 것이다.

 

 

 

ex) 143.7.65.203/22

01000000, 01000001, 01000010, 01000011 총 4개를 사용할 수 가 있겠죠 10진수로 표현하면 최소값인 64부터, 65, 66, 최대값인 67 입니다.

즉 143.7.65.203/22 는 143.7.64.0 ~ 143.7.67.255 이다.

 

 

 

ex) 143.7.65.203/25

파란색 부분이 애매하게 걸쳐있을 때는 2진수로 고쳐서 표현할 수 있는 최소값 최대값을 찾아 내야 한다.

 

10진수 203은 2진수로 11001011 이다. 여기서 최소 값은 10000000 인 128이고, 최대값은 11111111인 255 이다.

 

따라서 143.7.65.128 ~ 143.7.65.255 이다.

 
 
 
 

참고

https://kim-dragon.tistory.com/154

https://kim-dragon.tistory.com/9