IP 대역과 네트워크 클래스 (Network class)

 

 

1. 서브넷(Subnet)의 이해

 

우리가 사용하는 유무선 기기들은 특정한 IP 대역 안에 있습니다. 집에서 사용하는 기기들만을 묶어주는 대역이 있고, 기업이나 학교 단위로 사용할 수 있는 IP 그룹과, 더 넓은 범위에서는 이동통신사(SK, KT, LG U+)마다 가지고 있는 IP 대역이 존재합니다.

 

이렇게 전체 네트워크를 잘게 쪼개어 각각마다 일부 IP 구간을 할당해주는 것을 서브네팅(Subnetting)이라고 하며, 작게 나눠진 네트워크를 서브넷(Subnet)이라고 부릅니다.

 

네트워크에는 가정/건물/캠퍼스/통신사/국가 단위로 셀 수 없이 많은 서브넷이 존재합니다.

 

서브네팅을 하는 기준은 크게 2가지가 존재하는데요, 네트워크 클래스를 A, B, C, ... 급으로 나눠놓는 방식이 있고, 나머지 방식 하나가 CIDR입니다. 네트워크 클래스는 지금은 잘 쓰이지는 않지만 어떠한 원리를 갖고 등장하였는지를 본 포스트에 다루도록 하겠습니다.

 

2. 네트워크 클래스

 

IP 주소의 클래스는 A부터 E까지 총 5가지가 존재합니다. 이 중에서 클래스 A~C가 서브네팅에 사용되고, 나머지 D와 E는 특수한 용도로 쓰입니다.

 

2-1. 클래스 A, B, C

 

클래스 A부터 C에 속하는 IP 대역은 실제로 호스트에 할당되는 주소들이 포함됩니다. 각 클래스의 차이는 하나의 서브넷이 최대로 가질 수 있는 IP의 개수입니다.

 

 

A 클래스

이 클래스는 0.0.0.0 부터 127.255.255.255 까지의 영역을 부분적으로 할당합니다. 위 그림을 보시면 아시겠지만, A 클래스에 속하는 IP들은 첫 bit가 '0'으로 고정됩니다. 그렇다보니 가용 가능한 IP 범위는 

00000000.00000000.00000000.00000000 ~ 01111111.11111111.1111 1111.11111111

 

이를 10진수로 표현하면 0.0.0.0 ~ 127.255.255.255가 되는 겁니다. ('0.x.x.x'과 '127.x.x.x' 대역은 특별히 다른 목적으로 쓰이기 때문에, 타 블로그나 자료 등에서 A 클래스에 위 2가지 특수 대역을 포함하냐 안하냐에 따라 조금씩 다르게 설명할 수 있습니다. 어떤 게 틀린다거나 그런건 아니니 참고하세요)

 

제일 앞 자리 '0' 뒤에는 Network 필드와 Host 필드가 뒤따르는데요. Network 필드는 서브넷을 구분짓는 7자리의 숫자이고, Host 필드는 각 서브넷에 존재할 수 있는 모든 IP 영역을 커버합니다.

 

A 클래스는 총 $2^7 = 128$개의 서브넷으로 구분되고, 각 서브넷 별로 $2^{24} - 2$개의 호스트가 존재할 수 있습니다. 호스트가 가질 수 있는 IP 가짓수에서 $2$가 빠지는 이유는, 각 서브넷에서 IP 하나는 네트워크 주소(x.0.0.0)로, 또 다른 하나는 브로드캐스팅 용(x.255.255.255)으로 미리 따로 빼두기 때문입니다.

 

예를 들어, 123.234.100.99 라는 IP가 있다면, 서브넷 식별자는 123이고, 서브넷에서 해당 호스트에게 고유하게 할당해준 주소는 234.100.99이 됩니다.

  • IP 범위: 0.0.0.0 ~ 127.255.255.255
  • 서브넷 개수: 128
  • 서브넷 별 최대 호스트 개수: 16,777,214
  • 서브넷 마스크: 255.0.0.0
  • 특수 IP 대역:
    • 0.0.0.0 ~ 0.255.255.255 (임시 IP 주소, DHCP 등에 사용)
    • 10.0.0.0 ~ 10.255.255.255 (사설 IP),
    • 127.0.0.1 ~ 127.255.255.255 (루프백 주소)

 

B클래스

클래스 B와 C도 IP 범위만 다를뿐, 구조는 클래스 A와 유사합니다. 클래스 B는 bit 앞자리가 '10'로 시작하고 IP 대역은 128.0.0.0 ~ 191.255.255.255에 해당합니다.

 

클래스 B는 클래스 A보다는 좀 더 다양하게 서브넷을 나눌 수 있으며, 최대로 가질 수 있는 서브넷의 수는 $2^{14} = 16,384$개 입니다. 다만 서브넷 별로 운용할 수 있는 Host의 수는 그 전보다는 적은 $2^{16} - 2 = 65,534$개 입니다.

  • IP 범위: 128.0.0.0 ~ 191.255.255.255
  • 서브넷 개수: 16,384
  • 서브넷 별 최대 호스트 개수: 65,534
  • 서브넷 마스크: 255.255.0.0
  • 특수 IP 대역: 172.16.0.0 ~ 172.31.255.255 (사설 IP)

 

C클래스

마찬가지로 클래스 C는 앞자리가 '110'이므로 192.0.0.0 ~ 223.255.255.255 영역에 속하는 IP를 갖습니다. 클래스 C는 총 $2^{21}$개의 서브넷과 각 서브넷 별로 $2^8 - 2$개의 IP 주소를 분배할 수 있습니다.

  • IP 범위: 192.0.0.0 ~ 223.255.255.255
  • 서브넷 개수: 2,097,152
  • 서브넷 별 최대 호스트 개수: 254
  • 서브넷 마스크: 255.255.255.0
  • 특수 IP 대역: 192.168.0.0 ~ 192.168.255.255 (사설 IP)

 

2-2. 클래스 D

클래스 D부터는 기기에 할당되는 IP 대역이 아닙니다. 클래스 D의 역할은 멀티캐스팅으로, 한 호스트가 불특정 다수를 대상으로 하는 패킷 데이터를 보내려고 할 때 도착지를 클래스 D 대역에 속하는 IP주소로 표기합니다. 오디오/비디오 스트리밍이나 IPTV에서 주로 사용되는 IP 대역입니다.

  • IP 범위: 224.0.0.0 ~ 239.255.255.255
  • 서브넷 개수: N/A

 

2-3. 클래스 E

클래스 E는 public network에서 사용하지도 못 할 뿐더러, 클래스 계층 구조 설계 당시 실험적인 목적으로 따로 빼둔 IP 대역이라고는 하는데 실제로 어떻게 쓰이고 있는지 조차도 잘 알려지지 않은 IP 대역입니다.

  • IP 범위: 240.0.0.0 ~ 255.255.255.255
  • 서브넷 개수: N/A

 

 

반응형