Skip to main content

5 ICMP

OSI 계층의 네트워크 계층에 해당하는 프로토콜입니다.

개요

  • 데이터가 목적지에 도달하는지 여부를 확인하기 위해 사용됩니다.
  • 주요 목적은 오류 보고입니다. 연결을 실패하는 경우 오류를 생성하여 두 장치에 공유합니다.
  • 보조 용도는 네트워크 진단입니다. 터미널 유틸인 traceRouteping은 모두 ICMP를 사용하여 작동합니다.
    • traceRoute: 요청과 응답 사이의 라우팅 경로를 표시하는 데 사용됩니다.
      • 라우팅 경로는 요청이 대상에 도달하기 전 통과해야 하는 연결된 라우티의 실제 물리적 경로입니다. traceRoute는 라우팅 중 각 홉에 필요한 시간을 보고합니다. 네트워크 지연 원인 파악에 사용됩니다.
      • Hob: 한 라우터와 다른 라우터 간의 여정을 '홉'이라고 합니다.
    • ping: traceRoute의 단순화 버전입니다.
      • 두 장치간의 연결 속도를 테스트
      • 데이터 패킷이 대상에 도달하고 발신지로 돌아오는 데 걸리는 시간을 측정하는 메트릭입니다.
      • ICMP 에코 요청 및 에코 응답 메시지는 일반적으로 ping을 수행하기 위해 사용됩니다.

원리

  • IP와 달리 ICMPTCP, UDP와 같은 **전송 계층 프로토콜 (Transport Layer, OSI L4)**과 연결되지 않습니다.
  • ICMP연결이 없는 프로토콜이므로 메시지를 보내기 전 다른 장치와의 연결을 수행하지 않습니다.
    • TCP handshake 수행하여 통신 양측의 수신 준비를 확인하지 않습니다.
  • 장치의 특정 포트를 대상으로 하는 것을 허용하지 않습니다.
  • 이러한 ICMP의 속성을 이용해 ICMP flood attack, Ping of death 공격을 수행합니다.

See also