본문 바로가기
네트워크

네트워크 정리 13. IPv4 주소의 개념과 클래스 주소

by 호놀롤루 2022. 4. 13.

1. 개요

IPv4 주소란 TCP/IP에서 각 장치가 인터넷으로의 연결을 확인하는 IP 계층에서 사용되는 

식별자 IP 주소, 또는 인터넷 주소라고 한다.

 

IPv4 주소는 32비트 주소로, 라우터나 호스트의 인터넷 연결을 범용적이고 유일하게 구별할 수 있도록
해준다. IP 주소는 장치가 다른 네트워크로 이동 시, 변경되기 때문에 라우터나 호스트가
아닌 소속 네트워크로부터 부여받은 주소다.

 

 

2. 설명

IPv4 주소에 대해서 정리해보려 한다.

 

2-1. 주소 공간 (Address Space)

IPv4는 32비트의 주소를 사용하므로 주소공간이 2^32 (약 40억 인터넷 연결)이 된다.

 

 

2-2. 표기법 (Notation)

IPv4 주소를 나타내기 위해선 2진수 표기법, 점 10진수 표기법, 16진수 표기법을 사용한다.

 

32비트인 주소를 8비트씩 짤라서 4개로 표기한다.

  • 2진수 (Binary) : 10000000 00010000 00000100 00011111
  • 점 10진수 (Dotted decimal) : 128.16.4.31
  • 16진수 (Hexadecimal) : 80 A0 04 1F

로 표기할 수 있다. 위에 있는 주소는 다 같은 주소다.

 

 

2-3. 계층적 구조 (Hierarchy in Addressing)

32비트인 IPv4 주소는 두 부분으로 구분되는 계층적 구조다.

  • 프리픽스 (Prefix) : 네트워크 주소를 정의하는 부분, 32 이하의 n 비트
  • 서픽스 (Suffix) : 노드(장치의 인터넷 연결)를 정의하는 부분, (32-n) 비트
    이 비트 수를 M이라 치면, 2^m의 수만큼 노드를 연결할 수 있다.
  • 32비트 중, prefix인 n비트가 있고, 나머지 비트는 서픽스가 된다.

 

2-4. 클래스 기반의 주소지정 (Classful addressing)

  • IPv4 주소는 소, 대규모 네트워크를 지원하기 위해 세가지 고정된 프리픽스로 설계되어 있다.
  • 5개의 클래스 (클래스 A, B, C, D)로 구분한다.

간단하게 설명하면 고정된 prefix(네트워크 이름), suffix(연결 가능한 기기 수)를 지정해서 제공하는 것이다.

A클래스의 경우, 2^8(128) 개의 네트워크를 만들 수 있다. 그리고 A클래스 하나로 2^24개의 기기에
네트워크로 연결할 수 있다. 정확하게 말하면 첫번째와 마지막 주소는 사용할 수 없으니 126개를 만들 수 있다.

 

B클래스의 경우, 2^16(65536) 개의 네트워크, 2^16개의 노드에 연결할 수 있다.

C클래스의 경우, 2^24 개의 네트워크, 2^8(128)개의 노드에 연결할 수 있다.

나중에 설명할 부분이지만 D클래스는 멀티캐스트용, E클래스는 실험용이다.

Class Prefixes First Byte
A 8bits 0 ~ 127
B 16bits 128 ~ 191
C 24bits 192 ~ 223
D 해당되는 게 없다. 224 ~ 239 
E 해당되는 게 없다. 240 ~ 255

32비트 중, prefix를 제외한 부분이 suffix가 되니, prefix의 길이가 짧을 수록, 연결할 수 있는
노드의 수가 늘어난다.

 

점유율로 보면, A클래스 : 50%, B클래스 : 25%, C클래스 : 12.5%,  D클래스 : 6.25%, E클래스 : 6.25%

 

 

2-5. 클래스 기반의 주소지정(Classful Addressing) 이슈

  • 주소 고갈 (Address Depletion)
    - 적절히 주소가 분배되지 않아 인터넷 연결을 위해 할당할 수 있는 주소가 남아있지 않은 현상
    (간단한 예로, A클래스의 경우, 2^24 (약 1600만개)의 노드를 가질 수 있는데, 이걸 다 쓰긴 힘들다.)
    - 특정 블록 전체가 낭비되는 현상
  • 서브네팅과 슈퍼네팅 (Subnetting and Supernetting)
    - 주소 고갈을 완화하기 위한 방안이다.
    - 서브넷 : 하나의 네트워크를 다수의 서브 네트워크로 만드는 것 (1개의 네트워크, 16개의 호스트가
    있다면, 4개의 네트워크, 4개의 호스트 이런 식으로 분리하는 것)
    - 슈퍼넷 : 규모가 작은 네트워크 다수를 묶어서 하나의 대규모 네트워크처럼 운용 (조건 만족 시)
  • 클래스 기반의 주소 지정의 장점 (Advantage of Classful Addressing)
    - 주소가 길어지면 각 클래스의 프리픽스가 고정되어 있기 때문에 주소의 클래스를 쉽게 찾고
    프리픽스의 길이를 즉시 알 수 있는 게 장점이다.

댓글