CIDR (Classess Inter Domain Routing, 사이더)

Big0·2023년 7월 14일
0
post-thumbnail

1. IPv4

  • IPv4는 총 32bit의 숫자로 구성 → 4,294,967,296(약 42억 9천만개)
  • 사실 이중에 6억개 가량은 특정한 목적으로 이미 선점되어 있음
  • 이전에 컴퓨터가 널리 보급되지 않았을 때에는 IPv4로 충분했으나, 시간이 지날 수록 스마트IoT기기, 공공 wi-fi 등 IP를 할당받는 기기들이 기하급수적으로 증가 → 고갈되기 시작함
  • 결론적으로, 충분하지 않다

고대의 선배 개발자들은..

IPv4의 클래스를 나누어 IP를 사용했었다. 흔히 A클래스, B클래스, C클래스로 들어본 적이 있을 것이다.

image

  • A Class의 경우 처음 8bit(1byte)가 Network ID이며, 나머지 24bit(3byte)가 Host ID로 사용됩니다. 비트가 0으로 시작하기에 네트워크 할당은 0~127입니다 . 즉, 128 곳에 가능하며, 최대 호스트 수는 16,777,214개입니다.
  • B Class의 경우 네트워크 할당은 16,384 곳에 가능하며, 최대 호스트 수는 65,534개
  • C Class의 경우 네트워크 할당은 2,097,152 곳에 가능하며, 최대 호스트 수는 254개
  • 이 방식이 문제가 있던 것은, 회사의 규모에 따라 사용할 수 있는 호스트의 수가 일정하게 정해져있다는 것이다.

예를 들어 A회사에서 500개의 Host가 필요하다고 하자.
그렇다면 C클래스의 호스트 수(254개) < A회사에서 필요한 Host 수(500개) < B클래스의 호스트 수 (65,534개)이니, B클래스의 대역을 사용해야 한다.

하지만.. 고작 500개의 Host가 필요한 건데 65,534개를 할당 받는 건 너무 낭비가 심하다. 무려 65,000개의 IP가 낭비되는 것이다.

2. CIDR란?

  • CIDR는 Classless Inter-Domain-Routing의 약자로, 직역하면 클래스 없는 도메인간 라우팅 기법이라는 뜻이다.
  • 즉, 이전에 살펴본 IPv4의 클래스를 나눠 관리하던 제약에서 벗어나 좀 더 유동적으로 IP를 사용하기 위해 나온 방식이다.

image

  • 엄밀히 말하면 CIDR는 서브넷으로 네트워크를 나눌 때 사용하는 일종의 도구다.
  • 위 예시에서는 CIDR값이 ‘24’지만, 0~32까지의 정수로 표현이 가능하다.
  • 예를들어 103.9.32.146/22 라고 한다면, 앞에서 22bit는 고정이고, 나머지 부분은 변경이 될 수 있는 주소다.

image

Private Network(사설망)

image

  • 하지만, CIDR를 사용하여 IP주소를 세분화하여 분배하더라도 42억개의 IP주소로는 턱없이 부족하다. 이를 해결하기 위해 나온 방식이 private Network(사설망)다.
  • Private Network는 하나의 Public IP를 여러 기기가 공유할 수 있는 방법
  • 하나의 망에는 private IP를 부여받은 기기들과 Gateway로 구성
    • 각 기기는 인터넷과 통신하기 위해 Gateway를 통해 통신

일종의 반장을 뽑는다고 생각하면 이해하기 쉽다!
학교에서 어떤 회의가 있어 학생들이 이에 참여한다고 했을 때, 모든 학생이 참여할 수는 없다. 그러므로 일종의 반장을 뽑아서 의견을 반장이 학교에 전달하는 형식

여기서,
학급의 학생들 → private IP
학생들이 뽑은 반장 → public IP

image

  • 그렇다고 해서 0.0.0.0부터 255.255.255.255까지 모두 private IP로 사용할 수 있는 것은 아니다. 위 표와 같은 범위의 주소 안에서만 가능하다.
  • 그래서 보통 집에서 사용하는 wi-fi의 IP주소를 확인해보면 192.168.xxx.xxx로 되어있던 게 위와 같은 이유다.

image

0개의 댓글