본문 바로가기
네트워크 기초(개정판)/실습

06. 멀리 있는 컴퓨터끼리는 이렇게 데이터를 주고받는다 - IPv4, ICMP프로토콜 실습

by 움터 2021. 1. 25.

1. ICMP 부터 확인

WireShark 실행 -> ping 8.8.8.8 -> Filter에 ICMP 입력 -> 캡쳐 중지

 

더블 클릭

 

ICMP 클릭 하면 아래 사진 처럼 나옴

- 그런데 8Byte 이상으로 보인다.

- 그 이유는 뒤에다가 쓸데없는 데이터까지 붙여서 보낸 상태이기 때문이다. 총 32Byte를 보내버렸다.

 

=> 결론은 앞에 8Byte만 ICMP 이다. 그리고 사진에서는 요청하는거기때문에 0 8 이다. 그리고 응답할때는 0 0 이고, 목적지를 못찾을 경우에는 0 3 이다.

 

2. IPv4 구조 확인하기

 

 

* 사진 설명 * 

Version : 4

Header Length : 20Byte / 4 = 5

Total Length

- PayLoad : 32Byte

- ICMP : 8Byte

- Header : 20 Byte

 

Flags : 조각화가 되었는지 안되어있는지 확인 하는 것.

- Reserved bit : 사용 X

- Don't fragment : 조각화가 필요한데 안한다고 명시하는 것 (명시안하면 전송 안됨)

- More fragment : 내 뒤에 조각화 된게 있는지 기다려야한다는 것을 알려주는 것

- Fragment offset : 첫번째부터 얼만큼 떨어져있는지 확인할수 있는 값

 

 

 

Time to live (TTL) : 윈도우의 경우 128이고, 네트워크 장비씩 하나씩 지날때마다 1씩 감소되며, 사진에서는 전송하는 거기때문에 128 그대로이다.

 

Protocol : 상위 프로토콜을 의미  ICMP (1), TCP(6), UDP(17)

checksum : 헤더에 있는 여러가지 값들을 계산하는 것이고, 사진에서는 사용 안하는 중

Source : 출발지 IP

Destination : 목적지 IP

 

3. 2계층이랑 같이 쓰일때

사진에서는 같은 네트워크 대역에서 통신 중이라 복잡하지 않지만, 다른 대역에서 통신일때는 달라진다.

만약 구글(8.8.8.8)과 통신을 했을때는 내가 보내는 패킷의 이더넷 프로토콜과 구글이 받을때의 패킷의 이더넷 프로토콜은 다르다. IPv4 프로토콜은 같지만, Ethernet 프로토콜은 다르다.

댓글