#06 네트워크 기초 : OSI 3계층(2) : IP, ICMP, IP 조각화 (WireShark)

728x90
반응형

01. 3계층 IP가 하는 일 

: 멀리 있는 컴퓨터끼리 데이터 주고 받음 => IPv4

: 데이터가 정확하게 전달 보장 X

: 중복 패킷 전달 가능 & 패킷 순서의 잘못 전달 가능 => DoS 공격이 됨

: 데이터의 정확하고 순차적인 전달은 tcp에서 보장!

 

IPv4 프로토콜 : 다른 네트워크의 특정 대상을 찾음

* 총 20바이트 (옵션이 있어서 최대 60바이트, 일반적으로 옵션 없이 사용)

 

 

* Version : IP버전 4 Or 6 (4)

* IHL : 헤더의 길이/4 = 최소 20바이트 ~최대 60바이트 (15) (예시로 20바이트 = 5 => 0101(2) ) 

* Type of Service(= Differentiated Services Field)

  = 초기에 사용했지만 요즘은 사용 안해서 0으로 처리 

* Total Length : Payload까지 합쳐진 전체 길이 

 

[쪼개진 데이터를 알아볼 수 있도록 => 조각화와 관련]

* Identification : 원래 하나의 데이터 였음을 알아보기 위해서 사용

* IP Flags : 3비트로 구성 (x D M ) = 안씀 don't frag~ (안쪼갤것) / more frag~ (쪼개서 보냄) 

* Fragment Offset : 순서를 알아보게, Offset( 시작으로부터 ~만큼 떨어져있다)

 

* TTL : 패킷이 살아있는 시간 지정 (3계층 역할: 멀리있는 곳까지 찾아가는 것) 

 - window (128)

* Protocol : 상위 프로토콜이 무엇인지 알려줌 (ICMP (3계층) : 01 / TCP (06) &UDP(17)=11  (4계층) ) 

* Header Checksum : 헤더가 오류가 있는지 확인하는 작업 -> PC가 알아서 계산

 

* Source Address : 출발지 IP주소

* Destination Address : 목적지 IP주소

 

IP : wireshark
Ethernet : wireshark

 

 

 

02. 3계층 ICMP가 하는 일 

: Internet Control Message Protocol / 인터넷 제어 메시지 프로토콜

: 운영체제에서 오류메시지를 전송 받는데 사용

: 프로토콜 구조의 Type과 Code를 통해 오류 메세지 전송 받음

 

ICMP 프로토콜 : 특정 대상과 내가 통신이 잘 되는지 확인

* Type : 카테고리 (대분류) / 종류가 다양

  (1)  0 (응답) / 8 (요청) : 기본적인 것 

  (2) 3 (목적지 도달 불가능 =>라우터 등경로상 문제 ) 

       11 (요청시간 만료 => 목적지는 갔는데 응답 x (상대방쪽 문제: 방화벽 등) 

  (3) 5 : 보안 관련

 

* Code : (소분류)

* Checksum : 헤더가 오류가 있는지 확인하는 작업 -> PC가 알아서 계산

 

 

 

03. 라우팅 테이블

: 3계층 = 최적의 경로로 프로토콜 찾아가기 => 지도처럼 저장해 놓는 것 = 라우팅 테이블

: cmd - 'netstat -r' (네트워크 상태도 알 수 있는 명령어임)

* 기본값 1줄 넣어줌 (지도에 없으면 못 찾아감 )

 

 

04. 다른 네트워크와 통신 과정

(1) 라우팅 테이블에 B의 네트워크 대역을 지도에서 표시해줌 (네트워크 엔지니어가 설정해줌)
(2) 요청은 8 / 응답은 0 , 이더넷은 가까운 곳으로 배치

* 이더넷은 네트워크 대역이 변경될때마다 새롭게 작성됨

 

* 통신이 안되는 경우

: 테이블에 특정 네트워크 대역이 없음

=> 여기에 통신하고 싶은 대상이 없으면 추가해줘야함

 

 

04. IPv4 조각화

: 1500바이트보다 크면 조각화 진행 => 데이터 전송함

: 큰 IP 패킷들이 적은 MTU( Maximum Transmission Unit)을 갖는 링크를 통해 전송되려면

  여러개의 작은 패킷으로 쪼개서/ 조각화 되어 전송해야함

: 목적지까지 패킷 전달 과정 => 통과하는 각 라우터마다 전송에 적합한 프레임으로 변환 필요

: 조각화가 되면, 최종 목적지에 도달할때까지 재조립x

: IPv4에서 발신지 & 중간 라우터에서도 IP 조각화 가

 

* 보통 한번만 조각화 됨 / 연습용으로 2번 조각화한 것

(1) 1500바이트까지 되니, 총 3300 바이트를 쪼개는 것

(2) 조각화할때, IPv4 크기를 제외하고 쪼개야함 

IPv4 조각화

 

04. IPv4 조각화 (wireshark)

조각화된 데이터

 

 

 

 

끝.

 

출처 : 따라하면서 배우는 it 

반응형