Yozzang의 해킹일기 💻
article thumbnail
Published 2022. 4. 10. 13:10
IP Address (IPv4) Networking
728x90

이번 포스트에서는 IP 주소(IPv4)에 대해 다루도록 하겠습니다.

 

IPv4의 특징 : 

  • 독특한 32비트로 이루어진 숫자
  • 네트워크 인터페이스를 정의
  • 계층적 구조의 주소(네트워크 부분과 호스트 부분)

IP Classful Addressing (클래스풀 주소체계 A~C) :

  • A : 1.0.0.0 ~ 127.255.255.255
  • B : 128.0.0.0 ~ 191.255.255.255
  • C : 192.0.0.0 ~ 223.255.255.255

IP 주소를 클래스풀의 문제점 : 

  • IP주소 부족
  • 계층화와 분할을 위해 낭비되는 IP주소가 많다

CIDR(Classless Inter-Domain Routing) :

  • 클래스를 특별히 나누지 않고 유연하게 나눠서 쓰는 개념
  • 표현법 : 예) 200.23.16.0/23(서브넷 마스크, 앞의 23비트가 Prefix(네트워크))

Subnet : 

  • 같은 Prefix(네트워크)를 갖는 Interface(디바이스)의 집합
  • 라우터를 경유하지 않고 통신할 수 있는 디바이스들의 집합

IP Fragmentation(단편화) & Reassembly(재결합):

  • 네트워크 링크는 최대 전송한도 MTU(Maximum Transmission Unit)를 가지고 있다.
  • 데이터그램을 전송할 때 크기가 MTU를 초과하면 한 번에 전송할 수 없다.
  • 데이터그램을 MTU보다 작은 범위로 분할하는 것을 Fragmentation, 분할된 것이 Fragment라고 한다.
  • 라우터는 Fragment를 포워딩한 다음에 최종 목적지에서 재결합(Reassembly)된다.
  • 이때, 단편화 및 재결합을 수행하는 계층은 네트워크 계층이다.

IP Fragmentation 예시 : 

  • 4000byte(header = 20byte)의 데이터그램이 있고, MTU가 1500bytes이다.
  • 이때 총 3개의 데이터그램으로 분할하여 전송할 수 있다.
  • (1480 + 20), (1480 + 20), (1020 + 20)

  • length : 페이로드 + 헤더
  • ID : 같은 데이터그램에서 파생된 것인지를 확인하는 ID값
  • fragflag : 기본값 1, 값이 0인 경우 마지막 파생된 데이터그램을 의미
  • offset : 시작점에서부터 떨어진 상대적인 위치값 / 8의 값(파생된 데이터그램의 순서를 확인하기 위함)

'Networking' 카테고리의 다른 글

DHCP (동적 호스트 구성 프로토콜)  (0) 2022.04.12
NAT (Network Address Translation)  (0) 2022.04.11
Network Layer (네트워크 계층)  (0) 2022.04.09
Network Core  (0) 2022.04.08
TCP & UDP  (0) 2022.04.07
profile

Yozzang의 해킹일기 💻

@요짱

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!