[netwhat] IP address와 class

hyeojung·2021년 5월 25일
0

42Seoul

목록 보기
9/16
post-thumbnail

0. 네트워크란?

두 대 이상의 컴퓨터가 논리적 또는 물리적으로 연결되어 서로 통신 가능한 것, 이를 통해 컴퓨터의 자원을 공유하는 것.

0.1. 네트워크의 종류

규모에 따른 네트워크의 종류

  • PAN (Personal Area Network) : 가장 작은 규모의 네트워크
  • LAN ( Local Area Network ) : 근거리 영역 네트워크, 지역적인 좁은 범위 내에서 고속 통신 가능한 통신망.
  • MAN (Metropolitan Area Network) : 대도시 영역 네트워크
  • WAN (Wide Ares Network) : 광대역 네트워크, LAN보다 넓은 지역을 나타내며 지역과 지역, 지방과 지방, 나라와 나라, 대륙과 대륙을 연결하는 통신망.

그 외

  • VAN (Value Added Network) : 부가가치 통신망 정보의 축적과 제공, 통신속도와 형식의 변화, 통신경로의 선택 등 여러 종류의 정보서비스가 부가된 통신망.
  • ISDN (Integrated Services Digital Network) : 종합정보 통신망(=BISDN) 전화, 팩스, 데이터 통신, 비디오텍스 등 통신관련 서비스를 종합하여 다루는 통합서비스 디지털 통신망. 디지털 전송방식과 광섬유 케이블 사용. 꿈의 통신망이라 불림
  • 추가적으로 WLAN, SAN, CAN, GAN, VPN, ISDN, Intranet, Extranet 등이 있다.


1. IP address란?

네트워크 환경에서 컴퓨터(노드) 간의 통신을 위해 각 컴퓨터에 부여된 네트워크 상의 주소. 즉 네트워킹이 가능한 장비를 식별하는 주소.

네트워크 상에서 통신을 하기 위해서는 몇 가지 통신규약(Protocol)을 따라야 하는데, 그 규약들 중에는 "네트워킹을 하는 장비들에게 숫자 12개의 고유한 주소를 주어, 그 주소를 통해 서로를 인식하고 통신하도록 하자"는 의미의 규약이 존재한다.
위 규약에서 말하는 숫자 12개의 고유한 주소가 바로 IP address이다.

1.1. IPv4 주소

오늘날 일반적으로 사용되는 IP 주소로, IP version 4의 줄임말이다.
32비트 길이의 식별자로 보통 0~255 사이의 10진수 네 개를 .으로 구분하여 나타낸다. 따라서 0.0.0.0부터 255.255.255.255까지의 IP가 존재하며 이를 통해 최대 약 43억개의 서로 다른 주소를 부여할 수 있다.
하나의 네트워크 안의 IP주소들은 네트워크 영역은 같고, 호스트 IP는 서로 달라야 통신이 가능하다(네트워크 영역과 호스트 영역은 아래에서 설명).
중간의 일부 주소들은 특별한 용도를 위해 예약되어 있다. 예로 127.0.0.1은 localhost로 자기 자신을 나타낸다.

1.2. IPv6 주소

IPv4 주소가 인터넷 사용자수가 급증하며 전세계 공용으로 사용되어 고갈될 위기에 처하자 이를 해결하기 위해 만들어진 것이 바로 IPv6 주소이다.
128비트 크기를 가지고 있으며, 보통 두 자리 혹은 네 자리 16진수 여덟 개를 :으로 구분하여 나타낸다.
ex) 2001:0230:abcd:ffff:0000:0000:ffff:1111
이를 통해 약 2^128개의 서로 다른 주소를 부여할 수 있다.



2. IP address의 class

IP 주소는 네트워크 영역과 호스트 영역으로 나뉘어 있는데, IP 주소의 클래스라는 개념을 알아야 이를 구분할 수 있다.
다시 말해 클래스는 하나의 IP 주소에서 네트워크 영역과 호스트 영역을 나누는 방법이자 약속이다.

IP 주소의 클래스는 네트워크 크기에 따른 구분이라고 생각하면 쉽게 이해할 수 있다. 하나의 네트워크에서 몇 개의 호스트 IP까지를 가질 수 있는가에 따라 클래스를 나눌 수 있는데, 이는 네트워크 영역이 커질수록 호스트 영역은 작아지는 반비례 관계를 의미한다.

  • 네트워크 주소: 라우터를 거치지 않고 내부적으로 통신이 가능한 영역이며 브로드캐스트가 적용되는 영역.
  • 호스트 주소: 특정한 한 네트워크 내에서 서로를 구분하기 위한 주소.

IP 주소에는 A, B, C, D, E 총 다섯 개의 클래스가 있는데 이 중 A, B, C 클래스에 대해서만 알아볼 것이다. (D, E 클래스는 멀티캐스트용, 연구용으로 사용됨)

2.1. A 클래스

A 클래스는 하나의 네트워크가 가질 수 있는 호스트 IP의 수가 가장 많은 클래스이다.
IP 주소를 32자리 2진수로 표현했을 때 맨 앞자리의 수가 항상 0인 경우가 A 클래스로, 0xxx xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx와 같이 되어 있다. (x는 0 또는 1)
이 범위를 10진수로 표현하면 0.0.0.0 ~ 127.255.255.255이다. 여기에서 127은 제외하고(그것이 약속이니까. 끄덕.) IP 주소 중 1~126으로 시작하는 네트워크는 A 클래스라고 생각할 수 있다.

그리고 A 클래스의 네트워크에서 가질 수 있는 호스트 주소의 개수는 2^24 - 2개이다. 왜냐하면 모두가 1인 경우에는 브로드캐스트 주소로 사용하고, 모두 0인 경우 네트워크 주소로 사용하기 때문이다.
예를 들어, A 클래스로 13.0.0.0 IP 주소를 할당받았을 때 가능한 호스트 IP의 범위는 13.0.0.0 ~ 13.255.255.255이다. 하지만 여기에서 13.0.0.0은 네트워크 주소를 표현하므로 호스트 IP로 사용할 수 없다. 마찬가지로 13.255.255.255는 브로드캐스트 주소로 사용하므로 호스트 IP로 사용할 수 없어 2^24개에서 -2를 해주는 것이다.

2.2. B 클래스

B 클래스의 IP 주소는 32자리 2진수로 표현했을 때 항상 맨 앞자리의 수가 10으로, 10xx xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx와 같이 되어 있다. (x는 0 또는 1)
이 범위를 10진수로 표현하면 128.0.0.0 ~ 191.255.255.255이다.

네트워크 주소의 범위는 10xx xxxx. xxxx xxxx에서 x의 경우의 수인 2^14개이고,
호스트 주소의 범위는 xxxx xxxx. xxxx xxxx에서 x의 경우의 수인 2^16 - 2개이다.

2.3. C 클래스

C 클래스의 IP 주소는 32자리 2진수로 표현했을 때 항상 맨 앞자리의 수가 110으로, 110x xxxx. xxxx xxxx. xxxx xxxx. xxxx xxxx와 같이 되어 있다. (x는 0 또는 1)
이 범위를 10진수로 표현하면 192.0.0.0 ~ 223.255.255.255이다.

네트워크 주소 범위는 110x xxxx. xxxx xxxx. xxxx xxxx에서 x의 경우의 수인 2^21개이고,
호스트 주소의 범위는 xxxx xxxx에서 x의 경우의 수인 2^8 - 2개이다.

2.4. A, B, C 클래스 비교

클래스형식 (네트워크:n, 호스트:h)네트워크 영역호스트 영역
A0nnn nnnn. hhhh hhhh. hhhh hhhh. hhhh hhhh8bit (2^7-1개: 127 제외)24bit (2^24-2개)
B10nn nnnn. nnnn nnnn. hhhh hhhh. hhhh hhhh16bit (2^14개)16bit (2^16-2개)
C110n nnnn. nnnn nnnn. nnnn nnnn. hhhh hhhh24bit (2^21개)8bit (2^8-1개)


참고한 글

[Network] IP주소 클래스(A,B,C class)란?
https://limkydev.tistory.com/168
IP address 란?
https://velog.io/@hidaehyunlee/IP-address란
[Network] 네트워크 주소와 호스트 주소, 그리고 서브넷 마스크
http://blog.naver.com/PostView.nhn?blogId=no1rogue&logNo=30095809969

profile
응애 나 애기 개발자

0개의 댓글