[Networking] IP주소 Class

임수정·2024년 7월 12일
0

📝 Learning Log

목록 보기
35/47
post-thumbnail

📍 IP주소

IP주소는 32자리 이진수로 구성되어 있고 이 주소는 십진수로 표현되는데 옥테드 당 '.'을 찍어 구분한다고 한다. 또한, 하나의 네트워크 안에 IP들은 네트워크 영역은 같아야하고, 호스트 IP는 서로 달라야 통신이 가능하다.

여기서 네트워크 주소와 호스트 주소를 어떻게 구분할 수 있을까?
바로 클래스 때문이다

IP주소에는 클래스라는 개념이 있고 이 클래스의 개념을 알아야 어디까지가 네트워크 영역이고 호스트 IP영역 인지 알 수 있다.
즉, 다시말해 클래스는 하나의 IP주소에서 네트워크 영역과 호스트 영역을 나누는 방법이자, 약속이다.

IP주소를 3개의 클래스로 나누는 이유는 네트워크 크기에 따른 구분이다.
하나의 네트워크에서 몇개의 호스트 IP까지 가질수 있는가에 따라서 클래스를 나눌 수 있다.

📍 IP주소 Class(클래스)

📖 A클래스

A클래스는 하나의 네트워크가 가질 수 있는 호스트 수가 제일 많은 클래스이다.
IP주소를 32자리 2진수로 표현했을 때, 맨 앞자리 수가 항상 0인 경우가 바로 A클래스이다.

형태 : 0xxx xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx (x는 0 또는 1)

여기서 A클래스가 가질 수 있는 IP범위는 0000 0000. 0000 0000. 0000 0000. 0000 0000 ~ 0111 1111. 1111 1111. 1111 1111. 1111 1111 까지이다.
이를 십진수로 표현하면 0.0.0.0 ~ 127.255.255.255 까지 이다.

또 A클래스에서 네트워크 주소는 가장 작은 네트워크인 1.0.0.0과 가장 큰 네트워크인 126.0.0.0까지로 규정되어 있으며(0xxx xxxx. x가 가질수 있는 경우의 수가 네트워크 범위이다. 여기서 127은 제외되는데, 이것은 약속이다.) 참고로 네트워크에서 0인 호스트 부분이라는 뜻이다.

IP주소 중에서 1부터 126으로 시작하는 네트워크는 A클래스라고 생각하면 된다. 그리고 호스트 주소가 가질 수 있는 개수는 (2^24)-2개이다.

📌왜 (2^24)-2일까?

십진수로 나타내면 13.0.0.0 ~ 13.255.255.255이다. 하지만 여기서 13.0.0.0은 네트워크 주소를 표현하기 위해서 호스트 IP로 사용하면 안된다. 또, 13.255.255.255 역시 브로드캐스트 주소로 사용하기 때문에 호스트 IP로 사용하면 안된다. 따라서 -2를 해주는 것!

📖 B클래스

B클래스는 반드시 10으로 시작한다.

형태 : 10xx xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx (x는 0 또는 1)

B클래스의 IP범위는 128.0.0.0 ~ 191.255.255.255 까지
네트워크 범위는 10xx xxxx.xxxx xxxx에서 x들이 가질 수 있는 경우의 수이다. (2^14개)
호스트 주소 범위는 xxxx xxxx. xxxx xxxx에서 x들의 경우의 수인 (2^16)-2이다. (-2를 해주는 이유는 위와 동일)

📖 C클래스

C클래스는 반드시 110으로 시작한다.

형태 : 110x xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx (x는 0 또는 1)

C클래스의 IP범위는 192.0.0.0 ~ 223.255.255.255 까지
네트워크 범위는 110x xxxx. xxxx xxxx. xxxx xxxx에서 x들이 가질 수 있는 경우의 수이다.(2^21개)
호스트 주소 범위는 xxxx xxxx에서 x들이 가질 수있는 경우의 수(2^8)-2이다. (-2를 해주는 이유는 위와 동일)

📍 요약

IP 주소의 클래스는 초기 인터넷에서 IP 주소 할당 방식을 나타내는 방법이다. 주로 IPv4 주소 체계에서 사용되며, 주소의 범위와 네트워크 크기를 결정한다. IPv4 주소는 32비트로 구성되어 있고, 일반적으로 네 개의 숫자로 표현된다. (ex. 192.168.1.1)

📖 A 클래스

첫번째 바이트가 네트워크 식별에 사용된다. 첫 번째 비트는 항상 0이며, 범위는 0.0.0.0 ~ 127.255.255.255이다. 이 클래스는 매우 큰 네트워크를 지원하고, 각 네트워크는 16777214개의 호스트 주소를 가질 수 있다.

📖 B 클래스

첫 번째 두 바이트가 네트워크 식별에 사용된다. 첫 번째 비트는 항상 1로 설정되고 두 번째 비트는 항상 0이다. 범위는 128.0.0.0 ~ 191.255.255.255이다. 이 클래스는 중간 크기의 네트워크를 지원하며, 각 네트워크는 65534개의 호스트 주소를 가질 수 있다.

📖 C 클래스

첫 번째 세 바이트가 네트워크 식별에 사용된다. 첫 번째 비트는 항상 1로 설정되고 두 번째와 세번째 비트는 항상 1로 설정된다. 범위는 192.0.0.0 ~ 223.255.255.255 이다. 이 클래스는 작은 네트워크를 지원하며, 각 네트워크는 254개의 호스트 주소를 가질 수 있다.

📖 D 클래스

멀티캐스트 그룹을 위한 주소로 예약되어 있다. 범위는 224.0.0.0 ~ 239.255.255.255

📖 E 클래스

실험적 목적을 위해 예약된 주소로, 사용 가능한 범위는 240.0.0.0 ~ 255.255.255.255

profile
언어는 거들 뿐...

0개의 댓글