network

[network] 혼자 공부하는 네트워크 03-2 IP 주소의 구조와 클래스풀 주소 체계 (240809)

hail2y 2024. 8. 9. 17:56
  • 주소 지정은 IP 주소로 이루어짐
  • IP 주소의 구조: 크게 네트워크 주소와 호스트 주소로 구성
  • 네트워크 주소 (= 네트워크 ID, 네트워크 식별자)
    - 네트워크를 표현하는 부분
    - 호스트가 속한 특정 네트워크를 식별
    - 네트워크 간 통신 시 활용
  • 호스트 주소 (= 호스트 ID, 호스트 식별자)
    - 호스트를 표현하는 부분
    - 특정 호스트를 식별

IPv4에서 네트워크 주소와 호스트 주소당 할당하는 비트 수

    • 옥텟(=점으로 구분된 8비트) 단위로 끊어서 구분
    • 한 네트워크당 할당해야 할 호스트(주소)의 수에 따라 달라짐

ex. 네트워크 주소: 1옥텟, 호스트 주소: 3옥텟

→ 한 네트워크 당 호스트 주소 할당에 24비트 사용할 수 있음(2^24개)

https://www.youtube.com/watch?v=WEUQ559AWEw&t=31s

 

ex. 네트워크 주소: 3옥텟, 호스트 주소: 1옥텟

→ 한 네트워크 당 호스트 주소 할당에 8비트 사용할 수 있음(2^8개)

https://www.youtube.com/watch?v=WEUQ559AWEw&t=31s

위 사례를 통해 알 수 있는 사실을 정리하면 다음과 같다. 

  • 호스트 주소 공간을 크게 할당하면, 호스트가 할당되지 않은 다수의 IP 주소가 낭비된다.
  • 호스트 주소 공간을 작게 할당하면, 호스트가 사용할 IP 주소가 부족해진다.
  • 이런 고민을 해결하기 위해 생겨난 개념 ⇒ IP 주소의 클래스(class)

클래스풀 주소 체계(Classful IP Addressing)

- 클래스(Class)

  • 네트워크 크기에 따라 IP 주소를 분류하는 기준
  • 클래스풀 주소 체계(Classful Addressing): 클래스 기반으로 IP 주소를 관리하는 주소체계
  • 필요한 호스트 IP 개수에 따라 클래스를 달리 선택: 네트워크 크기 조정 가능 

* 위 퍼센티지는 각 클래스가 전체 IPv4 주소 공간에서 차지하는 비율을 나타낸다.  

https://www.javatpoint.com/classful-vs-classless-addressing

클래스 A(Class A)

      • B와 C 클래스에 비해 할당 가능한 호스트 주소의 수가 많음
      • 네트워크 주소는 비트 0으로 시작하는 1옥텟, 호스트 주소는 3옥텟으로 구성
      • 이론상 2^7(128)개의 A 클래스 네트워크 존재 가능
      • 각 네트워크에 2^24(16,777,216)개의 호스트 주소 할당 가능
      • A 클래스로 나타낼 수 있는 주소 범위
        - 최솟값을 10진수로 표현하면 0.0.0.0
        - 최댓값을 10진수로 표현하면 127.255.255.255
      • 가장 처음 옥텟의 주소가 0~127일 경우 A 클래스 주소임을 짐작할 수 있음

https://www.geeksforgeeks.org/introduction-of-classful-ip-addressing/
https://www.youtube.com/watch?v=WdErG4qji5Y

클래스 B(Class B)

  • 네트워크 주소는 비트 10으로 시작하는 2옥텟, 호스트 주소는 2옥텟으로 구성
  • 이론상 2^14(16,384)개의 B 클래스 네트워크 존재 가능
  • 각 네트워크에 2^16(65,534)개의 호스트 주소 할당 가능
  • B 클래스로 나타낼 수 있는 주소 범위
    - 최솟값을 10진수로 표현하면 128.0.0.0
    - 최댓값을 10진수로 표현하면 191.255.255.255
  • 가장 처음 옥텟의 주소가 128~191일 경우 B 클래스 주소임을 짐작할 수 있음

https://www.geeksforgeeks.org/introduction-of-classful-ip-addressing/
https://www.youtube.com/watch?v=WdErG4qji5Y

클래스 C(Class C)

  • 네트워크 주소는 비트 110으로 시작하는 3옥텟, 호스트 주소는 1옥텟으로 구성
  • 이론상 2^21(2,097,152)개의 C 클래스 네트워크 존재 가능
  • 각 네트워크에 2^8(256)개의 호스트 주소 할당 가능
  • C 클래스로 나타낼 수 있는 주소 범위
    - 최솟값을 10진수로 표현하면 192.0.0.0
    - 최댓값을 10진수로 표현하면 223.255.255.255
  • 가장 처음 옥텟의 주소가 192~223일 경우 C 클래스 주소임을 짐작할 수 있음

https://www.geeksforgeeks.org/introduction-of-classful-ip-addressing/
https://www.youtube.com/watch?v=WdErG4qji5Y

클래스 D(Class D)

  • 멀티캐스트(multi-casting)를 위해 예약된 클래스
  • 클래스 D의 첫 옥텟은 항상 1110으로 시작하며, 호스트 주소는 남아있는 28비트로 구성
  • D 클래스로 나타낼 수 있는 주소 범위
    - 최솟값을 10진수로 표현하면 224.0.0.0
    - 최댓값을 10진수로 표현하면 239.255.255.255
  • 가장 처음 옥텟의 주소가 224~239일 경우 D 클래스 주소임을 짐작할 수 있음

https://www.geeksforgeeks.org/introduction-of-classful-ip-addressing/
https://www.youtube.com/watch?v=WdErG4qji5Y

클래스 E(Class E)

  • 실험 및 연구 목적으로 예약된 클래스
  • 클래스 E의 첫 옥텟은 항상 1111로 시작하며, 호스트 주소는 남아있는 28비트로 구성
  • E 클래스로 나타낼 수 있는 주소 범위
    - 최솟값을 10진수로 표현하면 240.0.0.0
    - 최댓값을 10진수로 표현하면 255.255.255.255
  • 가장 처음 옥텟의 주소가 240~255일 경우 E 클래스 주소임을 짐작할 수 있음

https://www.geeksforgeeks.org/introduction-of-classful-ip-addressing/
https://www.youtube.com/watch?v=WdErG4qji5Y

하지만, 호스트의 주소 공간을 모두 사용할 수 있는 것은 아니다!

  • 호스트 주소가 전부 0인 IP 주소: 해당 네트워크 자체를 의미하는 네트워크 주소로 사용
  • 호스트 주소가 전부 1인 IP 주소: 브로드캐스트 주소로 사용
  • 따라서, 네트워크별 할당 가능한 호스트 주소는 -2를 해야 한다.

 

클래스풀 주소 체계의 설명(feat. 서브넷 마스크)이 아래의 동영상에 자세히 직관적으로 설명되어 있어서 추천한다. 

https://www.youtube.com/watch?v=WdErG4qji5Y