• IPv4
    • IPv4는 3자리 숫자 * 4마디(총 12개의 숫자)로 구성되고, 각 마디를 옥텟(octet) 이라고 부르며, 옥텟은 0부터 255까지의 숫자를 가진다.
    • 시대가 흘러갈수록 ip 주소 고갈 현상이 발생 → 전 세계 컴퓨터를 비롯한 다양한 기기도 고유한 ip 주소를 가져야 하기 때문
    • 수가 유한하기 때문에 이후 IPv6가 탄생
      • IP 주소의 분류
        • 클래스
          • A 클래스 : 대규모 네트워크 환경에 사용 (1~126)
          • B 클래스 : 중규모 네트워크 환경에 사용(129~191)
          • C 클래스 : 소규모 네트워크 환경에 사용(192~223)
          • D,E 클래스 : 연구/개발용 ip 주소 (224~)
        • 사용 범위
          • 공인 IP 주소(Public IP 주소) :
            • 공유기를 사용하지 않는 한 컴퓨터 등에서 사용하는 대부분의 ip 주소는 Public 이다.
            • 이 주소는 외부로 공개되어 있어서 다른 컴퓨터 등에서 검색, 접근이 가능하다.
            • 공인 ip 주를 사용하려면 방화벽 같은 보안 장비가 반드시 필요하다.
            • 보통 가정집에서 사용하는 인터넷 서비스 회사에서는 보안 서비스를 기본적으로 제공한다.
          • 가상 IP 주소(Private IP 주소)
            • 사설 ip 주소 라고도 한다.
            • 외부에 공개되지 않아 외부에서 검색, 접근이 불가능하다.
            • 이 가상 ip 주소는 주소 대역이 아래 3개로 고정되어있다.
        가상 IP 주소의 필요성유무선 공유기를 설치를 하게되면공유기에 연결되는 기존의 컴퓨터는가상 ip 주소가 필요한 이유
        1. ip 주소 부족
          • IPv4의 한계상 ip 주소가 부족해지는 현상이 나타난다. 1인당 가지고 있는 네트워크 기기는 컴퓨터, 노트북, 핸드폰, 태블릿 등 너무 많다.
          • 이러한 전자 기기들에 할당할 공인 ip주소가 부족하다.
          • 그래서 가상 ip 주소를 사용하면, 컴퓨터가 10대, 100대가 있어도 하나의 공인 ip 주소만 공유기에 할당하고, 모든 컴퓨터들은 가상 ip 주소를 각각 할당받아 인터넷에 접속 할 수 있게 된다.
        2. 보안
          • 가상 ip주소가 할당된 컴퓨터 등은 외부에서 검색, 접근이 기본적으로 불가능하다.
          • 일반적으로 인터넷 공유기가 그러한 보안장비 역할(네트워크 방화벽) 역할을 수행한다.
        • 할당 방식누군가는 그 ip 주소를 해당 전자기기에 배급/ 할당 해 주어야 한다.공인 ip 주소 라면 해당 인터넷 서비스 업체의 주소 할당 서비스가,이 때,자동으로 설정할지, 수동으로 설정할지 선택 가능하다.
          • 고정 ip 주소
            • 사용자가 직접 IP 주소를 입력해 주소를 설정하는 방식
            • 주소가 변경면 안되는 컴퓨터 등에 적합한 방식. 일반적으로는 사용하지 않는다.
            • 파일 공유 서버 등에 사용( 서버에 접속하려고 할때마다 새로운 ip 주소를 찾고 입력해야 한다면 고역일 것이다)
          • 유동 ip 주소
            • IP 주소를 할당하는 특정 서버가 보내주는 정보 그대로 컴퓨터에 자동 설정되는 방식 → 이를 DHCP 서비스 라고 한다.
              • DHCP 서비스가 동작하는 과정
                1. 컴퓨터가 부팅되며 DHCP 서버가 존재함을 탐지한다.
                2. DHCP 서버는 컴퓨터에 IP 주소 등이 할당되어 있는지 확인한다.
                3. 컴퓨터가 DHCP 서버에 IP 주소 할당을 요청한다.
                4. DHCP 서버는 IP 주소 할당 현황에 따라 IP 주소 등의 정보를 컴퓨터에 할당한다.
              • 실생활에서는 인터넷 공유기가 가상 IP 주소를 생성(NAT 서비스) 하여 각 컴퓨터 등에 자동 할당 (DHCP 서비스)하는 역할을 한다
        • 이 과정에서 ‘고정IP 주소’ , ‘유동 IP 주소’라는 개념이 나오게 된다.
        • ip 주소를 할당 받는 전자 기기는 그러한 배급/ 할당 과정을
        • 가상 ip 주소라면 인터넷 공유기가 ip 주소의 배급/ 할당 역할을 수행한다.
        • (’누군가’는 주로 서버 시스템이다.)
        • 앞에서 본 공인 ip 주소든 가상 ip 주소든 컴퓨터 등의 전자 기기에 ip 주소를 할당하려면,
      • 192.168.0.19와 같은 가상 ip 주소(private IP 주소)가 할당된다.
      • 100.100.123.123 이라는 공인 ip 주소는 공유기 ip 주소가 되고,
      • 100.100.123.123 이라는 공인 ip 주소를 가진 컴퓨터가 있을 때,
  • IPv6
    • IPv4의 주소 부족 문제를 해결하기 위해 탄생
    • IPv4에서는 32개의 이진수로 처리
    • IPv6 128개의 이진수로 처리 → 수가 거의 무한대
    • 모든 기기들에게 공용 ip를 부여할수 있게 됨 → 모든 기기들이 각자 통신가능
  • IP 데이터 그램 헤더의 형식
    • IP가 사용하는 패킷을 데이터그램(datagram)이라고 한다.
    • 가변 길이 패킷(내용에 따라 크기가 변함)이며, 헤더와 페이로드(내용물, 데이터)로 구성된다.
    • 헤더는 20~60바이트 길이이며, 라우팅 전송에 필요한 정보를 가지고 있다.
      • IPv4 데이터그램의 구성요소32bits = 4byte
        • 1층 : VER(4bits), HLEN(4bits), Service Type(8bits), Total Length(16bits)
        • 2층 : Identification(16bits), Flags(3bits), Fragmentation Offset(13bits)
        • 3층 : Time-to-Live(8bits), Protocol(8bits), Header Checksum(16bits)
        • 4층 : Source Ip Address(32bits)
        • 5층 : Destination IP Address (32bits)
        필요에 따라 옵션을 추가 할 수 있어서 최소 20에서 최대 60바이트까지 구성된다.
      • 헤더 : 20~60바이트

용어 정리

<aside> 💡 1층

</aside>

  • VER(버전 숫자) : 4비트의 버전 숫자 필드는 IP 프로토콜의 버전을 정의한다. IPv4는 4의 값을 가지고 있다. 2진수로 0100
  • HLEN(헤더 길이) : 4비트 길이의 헤더 길이 필드는 데이터그램 헤더의 전체 길이를 4비트로 표현한다. 4비트로 표현할 수 있는 범위는 0~15까지 이고, 헤더의 크기는 최대 60이니, HLEN의 1은 4바이트를 나타낸다. HLEN이 5(0101)이면 헤더는 20바이트, 15(1111)이면 헤더는 60바이트이다.
  • Service Type(서비스 유형) : 데이터그램을 어떻게 처리할지를 정의하는 서비스의 유형(TOS)을 나타낸다. 예를 들자면 우체국에서 편지를 보낸다고 해도, 일반우편, 등기우편 등 여러 종류의 서비스가 있다. 그걸 정의하는 필드가 여기다.
  • Total Length(전체 길이) : IP 데이터그램의 전체 바이트 수를 정의하는 16비트 길이의 필드다. 16비트의 숫자는 65,535까지 길이를 나타낼 수 있다.

<aside> 💡 2층

</aside>

단편화(Fragmentation)가 필요할 때 쓰는 필드

단편화란 데이터그램을 보낼 때, 라우터에서 받아들일 수 있는 최대용량 (MTU, Maximum Transmission Unit)보다 데이터그램이 클 경우, 데이터를 분할(단편화) 시켜서 보내야 한다. 그 때, 어디서부터 어디까지가 같은 데이터그램인지를 나타내는 것이 2층의 역할이다.

  • 식별자(Identification), 플래그(Flags), 분할 오프셋(Fragmnetation Offset) : 데이터그램을 분할(Fragmentation), 재조립(Reassembly) 할때 사용되는 필드

<aside> 💡 3층

</aside>

  • TTL(Time-TO-Live) : 데이터그램이 얼마동안 살아있을 수 있는지 나타내는 곳이다. 데이터그램이 방문할 수 있는 최대 라우터 수를 정의. 보통 이 값은 일반 호스트 사이에 라우터 수의 약 2배로 정한다(왔다 갔다 할 수 있는 시간)
  • Protocol(프로토콜) : 어떤 프로토콜로 처리할 건지 정의
  • Header Checksum(헤더 체크섬) : 간단한 오류검사용 체크섬

<aside> 💡 4, 5층

</aside>

  • IPv4 네트워크 길이는 32비트이다. 그래서 송신지 주소(Source Ip Address), 수신지 주소(Destination IP Address)의 길이가 각각 32비트다.

참고 자료

[Network] IP 주소에 대해 - (1) IP 주소란?

네트워크 정리 11. IPv4 데이터그램 형식

'네트워크' 카테고리의 다른 글

ICMPv4 & IGMPv2  (0) 2023.07.22
ARP & RARP  (0) 2023.07.22
패킷의 전달과 라우팅  (0) 2023.07.22
네트워크 계층과 논리 주소  (0) 2023.07.22
네트워크 구성장비  (0) 2023.07.22

+ Recent posts