IP주소의 구분 및 개요


 IP Address의 형식은 4byte, 총 32bit의 길이를 8bit 단위로 묶어서 나타낸다.
(1byte=8bit,   8bit 단위=옥텟(octet)) 이를 2진수로 배열할 수도 있고 옥텟으로 묶은 다음 각각을 십진수로
변환해서 나타낼 수도 있다.

   [예제]   203.224.29.56                                       (10진수)
        ->   11001011 11100000 00011101 00111000 (2진수)

 10진수, 2진수 변환은 고등학교를 나왔다면 누구나 할 수 있으리라 생각하지만 쉽게 계산하려면 계산기를 이용하면 된다. [보조프로그램]에서 [계산기]를 클릭하면 다음과 같은 계산기가 나타날 것이다.
   [보기]메뉴에서 공학용을 선택한다. 왼쪽 상단 라디오 버튼 중 ‘Dec’ 를 선택하고,
   10진수를   입력한 후 ‘Bin’ 을 선택하면 2진수로 변환한다.

[참고] Hex : 16진수    Dec : 10진수    Oct : 8진수    Bin : 2진수

IP Class
 
인터넷에는 수많은 수의 네트워크가 존재한다 이들에 고유의 IP주소를 일일이 할당하는 것은 매우 불편한 일이다. 따라서 네트워크의 충돌을 피하기 위해 규모에 따른 IP 주소 할당의 범위를 지정하게 되었는데, 이것이 IP Class이다. IP Class는 class A에서 class E까지 총 5개의 class로 나누어 진다.
이 중 Class D는 IP multicast의 용도로 사용되고, class E는 일반적인 용도로는 사용되지 않는다. 그럼 class ABC에 대해서 알아보자..


Class A : 0 ~ 126개                                                                  |------1옥텟------|

0

 

 

 

 *Class B : 128 ~ 191개

10

 

 

 

 *Class C : 192 ~ 223개

110

 

 

 

 

 

주소할당시 주의사항


 1) 모든 Network ID와 Host ID의 비트가 1이 되어서는 안된다. 모든 비트가 1로 설정되는 것은 브로드캐스팅으로 받아들여진다. 즉, 255.255.255.255 가 된다.
 2) 모든 Network ID와 Host ID의 비트가 0이 되어서는 안 된다. 모든 비트가 0이면 해당 주소는 이 네트워크 전송이라는 의미다. 즉, 0.0.0.0 인터넷 자체를 의미한다.
 3) 하나의 Network ID 에 대해서는 중복되는 Host ID가 존재할 수 없다.

            ---> 이러한 이유에서 ‘-2’ 를 해주는 것이다.

 

==========================================================================

 

IP Address는 Network Address와 Host Address로 구성되어 있으며, IP Addres의 길이는 4Bytes 즉 32bits로 되어 있다. IP Address를 표기할 때는 각 Byte의 값을 10진수로 표기하는데 전체가 4Bytes이므로 4개의 10진수가 164.124.116.5마냥 . 으로 분리되어 표기된다. 1 Bytes가 나타낼 수 있는 값의 범위는 0 ~ 255까지이므로 각 자리의 10진수는 0~ 255까지가 가능하며, 따라서 IP Address의 범위는 는 0.0.0.0 ~ 255.255.255.255 까지라고 말할 수 있다.

32bits IP Address

            Network Address             Host Address

 

8bits             8bits            8bits            8bits

 

 

 

 

164              124             116             5

 


그런데 이러한 IP Address는 3가지로 분류되는데 첫번째는 4Bytes중 Network Address가 1Bytes를 차지하는 Class A, 두번째는 Network Address가 2 Bytes를 차지하는 Class B, 세번째는 Network Address가 3Bytes를 차지하는 Class C이다.

                 8bits             8bits            8bits            8bits

Class A

Network Address

Host Address

 

Class B

Network Address

Host Address

 

Class C

Network Address

Host Address

 


보통 IP Address를 할당할 경우 Network Address 단위로 할당하게 되는데 Class A IP Address를 할당받게 되면 많은 시스템을 접속할 수 있으며, Class C IP Address를 할당받게 되면 적은 수의 시스템을 접속할 수 있다.

IP Address의 Class를 좀더 자세히 살펴보면 Class A, Class B, Class C의 prefix가 다르다는 것을 알 수 있다.

                

         Bit

1

7

24

Class A

0

Network Address

Host Address

 

         Bit

1

1

14

16

Class B

1

0

Network Address

Host Address

 

         Bit

1

1

1

21

8

Class C

1

1

0

Network Address

Host Address

 


Class A의 IP Address의 첫번째 bit는 항상 0 이며, 따라서 Network Address 는 의 첫자리 10진수는 1 ~ 126까지 가능하다. ???? (Reserved 된것들 보여줄것). Class B의 IP Address는 처음 2개의 bit가 항상 1,0이기 때문에 Network Address 의 첫자리 10진수는 128 ~ 191까지 가능하다. Class C의 처음 3개의 bit는 항상 1,1,0이기 때문에 Network Address 의 첫자리 10진수는 192~223까지 가능하다.
Network Address 및 Host Address 부분의 bit열이 모두 0이거나 1인 경우는 이용하지 않음에 유의하자.

형태

Network 번호 영역

Network Address

Class A

00000001 ~

01111110

1.x.x.x ~

126.x.x.x

126 (2^14 - 2)

 

Class B

1000000.00000001 ~

10111111.11111110

128.1.x.x ~

191.254.x.x

16382 (2^14 - 2)

 

Class C

11000000.00000000.00000001 ~

11011111.11111111.11111110

192.0.1.x ~

223.255.254.x

2097150 (2^21 - 2)

 

Host Address 는 Class A IP Address에서는 24bit를 활용할 수 있으므로 Host Address 는 2^24 -2 즉 16,777,214개가 가능하다. 따라서 Class A IP Address는 시스템이 상당히 많이 접속되어 있는 네트웍에 할당된다. Class B IP Address는 16bit를 활용할 수 있으므로 2^16 -2 즉 65,534개의 Host Address를 이용할 수 있으며, Class C IP Address는 8 bit를 활용할 수 있으므로 2^8-2 즉 254개의 Host Address를 이용할 수 있다.

앞에서도 이야기 했듯이 Host Address 부분에서도 bit열이 모두 0이거나 1로 이루어진 것은 이용하지 않는다. bit열이 모두 0인 것은 네트웍 자체에 대한 대표번호로 이용되기 때문이며, bit열이 모두 1로 이루어진것은 broadcasting address로 예약되어 있기 때문이다. 따라서 Class C IP Address의 Network Address가 인 203.252.15.0 인 경우 Host Address는 203.252.15.1 ~ 203.252.15.254 가 가능하다. 203.252.15.255는 broadcasting address로 이용된다.

 

============================================================================

 

현제의 IP는 버젼 4입니다. IP는 총 4바이트(32비트)로 구성되어 있으며, 0.0.0.0 ~ 255.255.255.255까지 일련의 번호를 한꺼번에 사용하지 않고 일정한 클래스로 나누어서 사용합니다.
클래스A는 국가, 클래스B는 소규모 네트웍... 이렇게 구분하시는건 잘못 알고 계신겁니다.
클래스는 A,B,C,D,E(총 5개)로 구분되어 있으며, 일반적으로 클래스 A,B,C로 나누어서 사용하며, 클래스 D는 멀티캐스팅 주소이며, 클래스 E는 특별한 용도를 위해 예약된 주소입니다.

여기서는 클래스 A,B,C에 대해서 설명하겠습니다.
클래스 A는 8비트의 네트워크IP와 24비트의 호스트IP로 구성되어 있으며,
클래스 B는 16비트의 네트워크IP와 16비트의 호스트IP로 구성되어 있으며,
클래스 C는 24비트의 네트워크IP와 8비트의 호스트IP로 구성되어 있습니다.
(참고로 네트워크IP는 라우터에 연결된 컴퓨터들의 집단이라고 생각하시면 됩니다. 즉 하나의 회사에 컴퓨터가 여러대 있으며, 이컴퓨터들이 내부 연결로 되어 있으면,
이회사의 컴퓨터집단을 하나의 네트워크라고 봅니다.
호스트IP는 네트워크안에 있는 각각의 컴퓨터들의 주소가 됩니다.)

클래스별 특징은
클래스 A는 8비트의 네트워크를 가질수 있는데, 이를 개수로 환산하면 2의 8승. 즉 256개의 네트워크 개수가 나옵니다. 하지만 실제 개수는 이보다 줄어든126개의 네트워크 개수가 나오게 되는데 이유는 클래스 A의 범위는 0.0.0.0~127.0.0.0의 IP주소를 가집니다. 이중 맨앞에 있는 0~127이라는 십진수 숫자를 2진수로 표기하면(컴퓨터는 이진수만 인식하므로) 0*******로 표기할수 있습니다. 저 이진수에서 왼쪽의 맨앞에 숫자는 클래스를 구분하는데 사용되며(클래스 B는 10******으로(이진수) 시작하고, 클래스 C는 110*****으로 시작합니다.), 나머지 2개의 주소는 특별한 목적을 위해 예약된 주소이므로 사용가능한 주소의 개수는 126개가 됩니다.
호스트IP는 하나의 네트워크 주소에 연결할수 있는 개별적인 컴퓨터의 개수를 의미합니다. 클래스 A의 경우는 한개의 네트워크주소에 2의 24승인 15,777,214개의 개수를 연결할수 있다는 의미입니다.
이렇게 클래스 B와 클래스C도 마찬가지로 사용됩니다. 다만 네트워크개수와 호스트개수만 달라집니다.

IPv6의 경우는 총 128비트로 구성되어 있으며, IPv4보다는 더많은 컴퓨터들을 연결할수있게 되어있습니다.
이는 인터넷의 급속한 발전으로 인해 IP주소공간이 절대적으로 부족하게 되어 개발되게 되었습니다. 또한 많은 개수와 더블어 인터넷상의 보안문제도 강화되었으며, 서비스개선등과 같은 여러가지 장점들이 수용되었습니다.
IPv6는 IPv4처럼 클래스별로 구분하지는 않으며, 3비트의 유형식별자에 따라서 구분되게 만들어졌습니다.

[출처] IP Address/Class|작성자 희야


by 연하 2009. 4. 13. 09:42