이번엔 ICMP에 대해서 알아보도록 하겠습니다
ICMP란 무엇인가.. 🤔
ICMP는 Intenet Control Message Protocol 의 약자로 사용되는 것인데
호스트와 라우터 간에 메세지를 주고 받기위해서 사용되는 프로토콜이라고 볼 수 있습니다
예를 들어서 호스트에서 http 통신을 서버로 전송했는데 해당 서버가 없을 경우에 오류 메세지를 받게 되는데 그 경우에 사용되는 프로토콜이 ICMP 프로토콜이라고 볼 수 있습니다
1️⃣ ICMP의 계층의 위치
ICMP 같은 경우에는 IP의 한 부분으로 볼 수 도 있지만
보통의 경우에는 IP 데이터 그램에 포함 되서 전송되기 때문에 TCP나 UDP와 같은 전송 계층의 프로토콜로 보기도 한다
그래서 TCP UDP와 같은 방법으로 캡슐 화 되고 해체 되며 사용 되어진다
2️⃣ ICMP의 구조
TCP, UDP와 비슷한 구조를 가지고 있는데 TCP 같은 경우에는 20바이트를 가지지만 ICMP는 8바이트만 가진다
위에 사진은 wireshark를 통해 캡쳐한 ICMP의 헤더입니다
위의 사진은 ICMP의 페이로드의 크기를 확인 할 수 있습니다
위의 사진에서 파란색 으로 선택되어져 있는 부분이 데이터 부분이고 나머지 앞에 8바이트는 헤더인 것으로 확인 할 수 있기 때문에 ICMP의 패킷의 헤더는 8바이트라는 것으로 볼 수 있다
3️⃣ ICMP를 사용할 수 있는 방법
wireshark라는 프로그램을 통해서 확인 할 수 있다
보통 traceroute나 ping 명령을 사용해서 확인 해 볼 수 가 있다