Skip to content

IP는 송신 호스트와 수신 호스트가 네트워크에서 정보(패킷)를 주고받는 데 사용하는 정보 위주의 규약이다. OSI 네트워크 계층에서 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당한다.

IP에서는 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해 IP주소를 배정한 후, 그 주소를 사용해 데이터를 전송할 대상을 특정한다.

IP의 특징

  • 비연결성

    패킷을 받을 대상과 연결을 확립하여 데이터를 전송하지 않는다. 패킷을 받을 대상이 없거나, 서비스 불능 상태여도 패킷 전송

  • 비신뢰성(unreliability)

    IP는 전송 흐름에 관여하지 않기 때문에 보낸 정보가 제대로 갔는지 보장하지 않는다. 전송 과정에서 패킷이 손상되거나 패킷의 순서가 바뀐 경우, 또는 패킷이 사라진 경우에도 그 에러를 검출하거나 수정하지 않는다.

  • 프로그램 구분 X

    IP는 호스트에 대해서만 식별하기 때문에, IP단계에서는 같은 호스트에서 여러개의 프로그램을 돌려서 여러 서버와 통신하는 경우에 수신한 패킷을 프로그램별로 구분할 수 없다.

이 점을 보완하기 위해 주로 상위계층의 프로토콜인 TCP/UDP 등의 프로토콜을 함께 사용한다.

IPv4와 IPv6

IPv4

IP의 4번째 버전으로, 32비트의 주소를 사용한다. 보통 0~255 사이의 십진수 넷을 쓰고 '.'으로 구분하여 나타낸다. 0.0.0.0부터 255.255.255.255까지 약 43억개의 IP주소가 존재한다. 점으로 나뉜 8비트의 단위를 옥텟(Octet)이라고 부르기도 한다.

ex) 223.130.195.200

IP주소는 Network ID와 Host ID로 나뉘어있으며, 서브넷 마스크를 통해 두 부분을 구분할 수 있다. (서브넷 마스크에서 1인 부분은 Network ID, 0인 부분은 Host ID임)

  • IPv4클래스

    Ipv4는 사용 목적에 따라 ip를 적절히 할당하기 위해서 용도별로 사용할 수 있는 클래스가 나뉘어져 있다.

    클래스첫번째 옥텟사용 목적기본 서브넷 마스크
    A0xxx xxxx (0~127)대형 기관 (대륙 간)255.0.0.0
    B10xx xxxx (128~191)중형 기관 (국가 간)255.255.0.0
    C110x xxxx (192~223)소형 기관 (기업 간)255.255.255.0
    D111x xxxx (224~239)그룹 통신, 멀티캐스트용X
    E1111 xxxx (240~254)연구/개발용X

IPv6

Ipv4 주소가 고갈되는 문제를 해결하기 위하여 새로 개발된 128비트 체계의 인터넷 프로토콜이다. IPv6 주소는 16비트 단위 8개로 구분하며, 각 단위는 16진수로 변환되어 콜론(:)으로 구분하여 표기한다. 0:0:0:0:0:0:0:0부터 FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF까지 약 340간(43억의 4승) 개의 IP주소가 존재한다.

ex) 2001:0db8:85a3:08d3:1319:8a2e:0370:7334

IPv4보다 IP주소 갯수가 훨씬 많을 뿐만 아니라 보안이나 서비스 품질 면에서도 더 우수하고, PnP 등 여러 기능을 더 지원하기 때문에 교체가 이뤄지고 있다. 현재까지는 IPv4와 IPv4가 공존하고 있기 때문에 NAT(Network Address Translator)로 변환하여 사용하고 있지만, 언젠가는 IPv6이 IPv4를 완전히 대체하게 될 것이다.