Yozzang의 해킹일기 💻
article thumbnail
Published 2022. 4. 13. 00:29
ICMP & Traceroute Networking
728x90

이번 포스트에서는 ICMP에 대해 다루도록 하겠습니다.

 

ICMP 란?

: ICMP는 Internet Control Message Protocol의 줄임말로 네트워크 제어 메시지를 전달하기 위해 사용된 프로토콜입니다. ICMP의 특성을 활용하여 만들어진 유틸리티로는 traceroute가 있습니다.

ICMP 기능 : 

  • Error reporting
  • Echo request/reply

 

Traceroute :

  • 패킷이 목적지까지 도달하는 동안 거치는 라우터의 IP주소를 확인할 수 있는 툴이다.
  • UDP와 ICMP, IP의 TTL(Time To Live)값을 활용한다.

 

Traceroute 동작 과정 : 

  1. TTL 값을 1로 설정하고 33434번 포트로  UDP 패킷(probes)을 한 번에 세 개씩(안정 보장을 위해) 보낸다.
  2. 첫 번째 라우터는 1로 설정된 UDP 패킷의 TTL 값을 0으로 줄이고, 출발지 주소를 ICMP Time Exceeded(시간 초과, Type 11) 메시지를 보낸다.
  3. 출발지에서는 패킷을 통해 첫 번째 라우터까지 도달하는 시간을 알아낼 수 있다.
  4. 두 번째 라우터까지는 UDP 패킷의 TTL 값을 다시 2로 설정하여 보내고 첫번째 라우터와 똑같은 과정을 반복한다.
  5. 위 과정을 계속 반복하여 목적지에 도달하면 출발지에 ICMP Port Unreachable(목적지 도달 불가, Type 3) 메시지를 보내며 모든 과정이 끝난다.
profile

Yozzang의 해킹일기 💻

@요짱

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