네트워크/개념

[NW] #1. IP ( Internet Protocol )

코딩하는상후니 2022. 9. 21. 21:52

 

 


 

 
 

* 인터넷 프로토콜 ( Internet Protocol )

 
 
=> 컴퓨터마다 사용하는 운영체제도 다르고 프로그램의 경우 구현된 언어가 다르기 때문에
네트워크에서 이들이 통신할 수 있도록 하려면 어떤 '규약 (규칙)' 이 필요하게 된다.
 
=> 기본적으로 이후 배우게 될 TCP/IP 가 표준이다.
 
 
 
=> 'IP 주소' 의미는 Host 에 대한 식별자이다. ( '주민등록번호' 와 유사 )
 
 
 
해당 IP 주소를 출발지와 목적지로 설정함으로써 네트워크 통신을 가능하게 하고
각기 고유한 의미를 가진다.
네트워크 계층 ( Network Layer, L3 ) 에서 다루게 된다.
 
 
 
 
 
 
 
 
 

* Host

 
=> '네트워크에 연결된 어느 컴퓨터' 의미
 
 
 
 
 
 
 
 

* End Point

 
=> 통신 데이터를 최종적으로 사용할 맨 끝에 위치한 Host 를 말함.
 
즉, User ( 사용자 ) 라고 봐도 무방함.

 

 

 

 

 

 

 

 

 

 

* Internet
 
=> Router 와 DNS 의 집합체
 
 

 

 

 

 

 

 

 
 
 

* IP 주소의 종류

 
 

* 공인 IP ( Public IP, Global IP )

 
=> 전 세계에서 유일한 IP 주소.
 
=> 보통 ISP ( Internet Service Provider, ex.SKT,KT... ) 가 제공하는 IP 주소이다.
 
=> 외부에 공개되는 IP 주소이기 때문에 다른 PC 로부터 접근이 가능하고
방화벽 등의 보안이 필요하다.
 
 
 
 
 
 
 
 

* 사설 IP ( Private IP, Local IP )

 
=> 일반 가정이나 회사 등에서 할당되는 네트워크 IP 주소이다.
 
 
=> 공인 IP 가 할당된 라우터 혹은 공유기를 통해 로컬 네트워크에 연결된 기기에서
사설 IP 가 할당된다.
 
 
=> 공인 IP 와 다르게 외부에서 접근할 수 없다.
때문에 보안이 용이하다.
 
 
 
* 사설 IP 대역
 
A 클래스 : 10.0.0.0 ~ 10.255.255.255
B 클래스 : 172.16.0.0 ~ 172.31.255.255
C 클래스 : 192.168.0.0 ~ 192.168.255.255
 
 
 
 
 
 
 
 
 

* 유동 IP

 
=> 기기에 고정적으로 IP 를 부여하지 않고 기기가 꺼진 상태
즉,
IP 를 사용하고 있지 않은 상태일 때는 회수하고 다른 컴퓨터에게 IP 를 할당하는 방식.
 
 
=> 주로 위에서 말한 ISP ( Internet Service Provider, ex.SKT, KT, LG... ) 에서
더 많은 사용자들에게 인터넷 서비스를 제공하기 위해 사용한다.
 
 
 
 
 
 
 
 

* 고정 IP

 
=> 변경되지 않는 공인 IP 를 의미한다.
 
=> IP 를 한번 부여 받으면 반납하기 전까지 해당 IP 를 할당받는다.
 
=> 보통 사이트를 운영할 때 고정 IP 를 사용한다.

 

 

 

 

 

 
 
 
 
 

 

 

 
 
* IPv4 주소 체계
 

 

 

cmd -> ipconfig

 

 

 

 

 

 
IPv4  :  주소 길이 ( 32bit )
 
=> 길이에서 보듯이 32bit 밖에 되질 않아서 인터넷이 보급된 상황에서는 많이 부족하다.
때문에 그보다 상위 체계인 IPv6가 도입되어 오늘날엔 IPv6가 대중화 되었다.
 
 
 
IPv6  :  주소 길이 ( 128bit )
 
 

 

 

 

 

 

 

 

 

 

 

* IP 클래스

 

 

 

 

 

IP Class 는 A,B,C,D,E 로 각각 나누어져있으며,
Network ID / Host ID 로 구분되어진다.
 
 
 
=> 그림에서 보면 알 수 있듯이,
Host ID 영역이 많을수록 해당 IP 주소가 수용할 수 있는 컴퓨터 가 많다는 말이다.
 
 
A,B,C 순으로 대규모~소규모까지 상황에 맞게 부여받을 수 있다.
대부분의 우리가 사용하고 있는 것은 C 클래스이다.
 
 
여기서 중요한 것은
Host ID 와 Network ID 를 구분할 수 있어야지만
해당 IP 를 받았을 때 관리할 수 있을텐데
 
 
이 때,
'서브넷팅 ( Subnetting )' 을 사용한다.
 
주소 영역 옆에 보이는 서브넷 마스크가 그것이다.
비트마스크 처럼 해당 비트를 구분할 때 사용하고
영역 별로 bit 1 이 채워져있어서 & 연산으로 구분한다.
 
자세한 것은 다음 장에서 다룬다.

 

 

 

 

 

 

 

 

 

 


 

참고 자료