Computer Science/컴퓨터네트워크(ComNet)

[컴네/CN] IP Address

gxxgsta 2023. 10. 14. 23:15
반응형
SMALL

인터넷 주소

인터넷 주소는 인터넷에 연결된 장치의 주소이다.

장치의 주소는 두 가지로 나눌 수 있는데, ip 주소와 mac 주소가 그것이다.

 

ip address

ip주소는 인터넷에 연결되어 있는 개체(컴퓨터 또는 네트워크 카드)의 식별자(주소)이다.

즉, 논리적인 주소로 네트워크에 따라 변동된다는 특징이 있으며, ISP/공유기에서 할당한다.

 

mac address

mac 주소는 디바이스 고유의 식별자로 hardware에 존재하는 physical 주소이다.

즉, 물리적인 주소로 네트워크 카드를 만드는 제조사에서 일정한 규칙에 따라 부여한다.

 

물리적 주소와 논리적 주솔흘 쉽게 이해하기 위해 예를 들어 보자면,

우리가 택배를 보낼 때 사용하는 도로명주소가 논리적 주소의 예이고,

위치를 지구상의 위도와 경도로 표기하는 것이 물리적 주소의 예이다.

 

IP Address

ip는 Internet Protocol의 약자로, 기기 간 네트워크 통신 시 주소로 사용한다.

 

ip 주소를 확인하는 도구는 앞 포스트에서 언급했듯이

맥은 ifconfig | grep inet, 윈도우는 ipconfig이다.

리눅스의 경우 도커를 사용하기 때문에 터미널에 ifconfig를 작성하면사진과 같이 docker0이 나오고 이는 맥이나 윈도우로 확인할 수 없는 부분이다.

 

IPv4

IPv4는 3자리의 숫자가 4마디로 표기되는 방식이다.

총 4byte, 즉 32bits로 표기되며, 한 마디는 8bits로 표기된다.

각 마디는 .(dot)으로 구분한다.

IPv4는 한 마디 당 256개(2^8)를 표기할 수 있으므로 총 약 43억개의 종류를 가질 수 있다.

 

처음 네트워크의 통신이 이뤄졌을 때에는 충분하였지만,

90년대부터 점차 부족해져 4byte를 16byte로 늘린 IPv6이 등장하게 되었다.

IPv6은 뒤에서 다시 다루도록 하고 IPv4의 주소에 대해 뜯어보자.

 

IPv4의 클래스

IP 주소는 대역폭에 따라 클래스가 나뉜다. A, B, C, D, E까지 나뉘는데, 각 클래스에 자세히 알아보자.

 

A class

A class는 대규모 네트워크에서 주로 쓰이며 첫 번째 마디가 0~127 사이의 값을 갖는다.

왜냐하면 네트워크의 가장 앞 bit가 0이므로

나머지 7bits가 만들 수 있는 최대 숫자인 127까지가 A class의 시작 마디가 된다.

 

하나의 네트워크가 가질 수 있는 호스트의 숫자가 가장 많은 클래스이며,

네트워크 영역은 앞의 8bits가 차지하고, 나머지 24bits는 호스트가 차지한다.

따라서 한 개의 네트워크가 가질 수 있는 호스트의 숫자는 16,777,216(2^24)개이다.

xxx.xxx.xxx.xxx (붉은 색이 네트워크, 푸른 색이 호스트 부분이다.)

 

B class

B class는 중규모 네트워크에서 주로 쓰이며 첫 번째 마디가 128~191 사이의 값을 갖는다.

왜냐하면 A 클래스와 마찬가지로 네트워크의 가장 앞 bit가 10이므로

나머지 6bits가 만들 수 있는 최대 숫자인 191까지가 B class의 시작 마디가 된다.

 

네트워크 영역은 앞 16bits가 차지하고, 나머지 16bits는 호스트가 차지한다.

따라서 한 개의 네트워크가 가질 수 있는 호스트의 숫자는 65,536(2^16)개이다.

xxx.xxx.xxx.xxx (붉은 색이 네트워크, 푸른 색이 호스트 부분이다.)

 

C class

C class는 소규모 네트워크에서 주로 쓰이며 첫 번째 마디가 192~223 사이의 값을 갖는다.

왜냐하면 다른 클래스와 마찬가지로 네트워크의 가장 앞 bit가 110이므로

나머지 5bits가 만들 수 있는 최대 숫자인 223까지가 C class의 시작 마디가 된다.

 

네트워크 영역은 앞 24bits가 차지하고, 나머지 8bits는 호스트가 차지한다.

따라서 한 개의 네트워크가 가질 수 있는 호스트의 숫자는 256(2^8)개이다.

xxx.xxx.xxx.xxx (붉은 색이 네트워크, 푸른 색이 호스트 부분이다.)

 

D class

D class는 multicast 즉, 방송 등에 사용된다. 보통 잘 쓰이지 않는다.

첫 번째 마디가 224~239 사이의 값을 갖는데,

다른 클래스와 마찬가지로 네트워크의 가장 앞 bit가 1110이므로

나머지 4bits가 만들 수 있는 최대 숫자인 239까지가 D class의 시작 마디가 된다.

 

E class

E class는 거의 쓰이지 않으며 연구/개발 혹은 미래에 사용하기 위해 남겨둔 것이다.

첫 번째 마디가 240~255 사이의 값을 갖는데,

다른 클래스와 마찬가지로 네트워크의 가장 앞 bit가 1111이므로

나머지 4bits가 만들 수 있는 최대 숫자인 255까지가 E class의 시작 마디가 된다.

 

private address

ip 주소 중 몇몇 개는 사설 ip로 컴퓨터 안에서만 작동하는 ip가 존재한다.

이 ip는 공유기 밖으로 나가서는 안 되고 밖으로 나갈 때에는 외부 ip로 바뀌어 나간다.

위 표에 존재하는 ip들이 사설 ip에 해당 되는데,

보통 10.0.0.0은 학교 공유기의 ip이고, 172.0.0.0은 docker, 192.0.0.0은 집 공유기의 ip이다.

 

또한 특수 주소 몇 개를 아래 표로 소개하고 IPv4에 대한 설명을 마치겠다.

 

IPv6

앞서 IPv4의 개수가 부족하여 IPv6가 등장하였다고 짧게 언급하였다.

따라서 IPv6는 16bytes, 즉 128bits로 구성되어 있으며,

16bits씩 8마디로 구성되어 있다.

각 마디는 :(콜론)으로 이어지며 16진수로 표기된다.

 

지금까지 우리는 IPv4를 사용하여 통신하였다. 하지만 IPv6가 등장하고 IPv6를 이용하기에는

커널, 공유기, 라우터 등 이미 존재하는 많은 요소들을 바꾸어야 했는데

실제로 100% 바꾸기에는 어려움이 존재한다.

따라서 ip 주소를 최대한 활용하여 주소 하나로 여러 개를 연결하고 공유기를 도입하는 방법을 사용한다.

 

IPv6은 unicast, anycast, link-local, multicast를 가지고 있고,

::1/128의 경우 local address, fe80::/10의 경우 link-local prefix,

fc00::/7의 경우 local(사설 ip 주소)이다.


출처 및 참고

https://code-lab1.tistory.com/33

 

반응형
LIST

'Computer Science > 컴퓨터네트워크(ComNet)' 카테고리의 다른 글

[컴네/CN] 응용 DNS  (0) 2023.11.29
[컴네/CN] 인터넷 성능  (1) 2023.11.28
[컴네/CN] 프로토콜 및 소켓  (1) 2023.10.14
[컴네/CN] HTTP와 Cookie  (0) 2023.10.14
[컴네/CN] HTTP 버전  (2) 2023.10.13