ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CIDR(Classless Inter Domain Routing) 이란?
    네트워크 2022. 4. 2. 19:05

    CIDR

    • Classless Inter Domain Routing

    사전지식

    • IPv4 는 총 32비트의 숫자로 구성되어있다.(4,294,967,296개)
      • 588,514,304 개는 특정한 목적으로 선점되어 있다.
      • 따라서 가용한 IP 는 3,706,452,992개이다.
      • 이미 충분하지 않다는 것을 알 수 있는데 이를 해결하기 위해 사설 네트워크(Private Network) 를 사용한다.
    • 사설망
      • 하나의 Public IP 를 여러 기기가 공유할 수 있는 방법
      • 하나의 망에는 Private ip 를 부여받은 기기들과 gateway로 구성
        • 각 기기는 인터넷과 통신시 Gateway 를 통해 통신
      • Private IP 는 지정된 대역의 IP만 사용가능
      • 즉 해당 범위의 IP 를 부여받은 다면 이는 무조건 사설망이다. (ex. 내 IP 를 확인해봤는데 10.0.0.1이다. => 사설망이다)
      • 사용 가능한 사설망 대역폭
      • 그렇다면 정확히는 어떻게 통신을 하는 것일까?
        • 192.168.0.261.123.44.1 에 통신을 하고 싶다면 NAT 에 기록을 하고 통신을 하는것이다.

    CIDR 이란?

    • 주소의 영역을 여러 네트워크 영역으로 나누기 위해 IP 를 묶는 방식. 즉, IP 주소 범위를 정의하는 방식
      • 여러개의 사설망을 구축하기 위해 망을 나누는 방법
      • Classless <-> Classful(예전에 A,B,C,D 클래스 나눴던거 생각)
    • IP 주소를 작은 그룹으로 분할 하는 것을 서브네팅이라고 한다.
    • CIDR 표기법
      • 여기서 10.88.135.144/28 의 의미는 아래와 같다. 즉 10.88.135.144 는 사설망의 범위의 시작점을 얘기한다.
        • 따라서 10.88.135.144 부터 10.88.135.159 까지 의 대역을 의미하는 것이다
        • 즉, /28 이 커지면 커질 수록 해당 사설망에서 사용할 수 있는 호스트 수는 작아짐
      • 첫번째/ 마지막 IP 는 예약이 되어있기 때문에 사용이 불가능하다.
        • 첫번째 IP 는 네트워크 자체를 가르키는 IP
        • 마지막 IP 는 Broadcast IP
        • 따라서 사용할 수 있는 주소는 총 가용한 사설망 갯수 -2 를 해야함
          • 예를 들어 10.0.0.0/28 에서 사용할 수 있는 사설망 갯수는? 이라는 문제가 나오면 마지막 4비트를 사용할 수 있으니 2^4 해서 16개가 아닌 IP 네트워크 자체를 가르키는 10.0.0.0 을 가르키는 IP 와 10.0.0.15 를 가르키는 IP는 빼야해서 14개가 된다.
      • 192.168.32.1/24 라는 CIDR notation 이 있다면 이것의 의미는
        • 192.168.32.1 은 기준 IP 를 의미하고 /24는 서브넷 마스크를 의미한다.
        • 따라서 256(2^8) 개의 IP 를 사용할 수 있다. (192.168.32.0 ~ 192.168.32.255)
        • 다른 예
          • 192.168.32.1/16 (65534(2^16) 개의 IP 사용 가능, 192.168.0.0~ 192.168.255.255)
          • 192.168.32.1/25(128(2^7) 개의 IP 사용 가능, 192.168.32.0 ~ 192.168.32.127)
      • AWS 에서는 총 5개의 Address 를 예약
        • 0: 네트워크 자체 어드레스
        • 1: VPC Router
        • 2: DNS
        • 3: 나중에 사용할 요소(Future use)
        • 마지막 : Broadcast

    그림을 참고해서 설명하도록 하겠습니다. 지금 네트워크의 CIDR notation 을 보면 192.168.0.0/16 인 것을 알 수 있습니다. 그렇다면 0.0 부분은 host 를 나타내는 부분이라는 것을 알 수 있고 이 중 네트워크 자체를 가르키는 192.168.0.0 과 broadcast를 나타내는 192.168.255.255 을 제외하고 총 65,534 개를 사설망 host로 사용할 수 있습니다.

    참고

    • NAT가 무엇인가요?
      • Network Address Translation 은 IP 패킷의 TCP/UDP 포트 숫자와 소스 및 목적지의 IP 주소 등을 재기록하면서 라우터를 통해 네트워크 트래픽을 주고 받는 기술
      • 사설 네트워크에 속한 여러개의 호스트가 하나의 공인 IP 주소를 사용하여 인터넷에 접속하기 위해 사용됩니다.

    cidr.xyz 로 실습 해 보면 더욱 폭 넓게 이해할 수 있다.

    http://www.subnet-calculator.com/cidr.php 를 사용하면 cidr 계산을 더 편하게 할 수 있습니다.

    댓글