ICMP [Internet Control Message Protocol]
: 인터넷 제어 메시지 프로토콜
오류 메시지를 전송받는 데 주로 사용됩니다.
ip계층에서 발생한 진단/제어로 사용되거나 오류에 대한 응답으로 만들어진다.
오류에 대한 응답은 원래 패킷의 소스 ip주소로 보내진다.
용도는 뭘까요?
- 인터넷/통신 상에서 발생한 일반적인 상황에 대한 보고
- 인터넷/통신 상에서 발생한 오류에 대한 보고
- 위험한 상황에 대한 경보
기능은 뭘까요?
- IP 프로토콜을 이용하여 ICMP 메시지 전달
- 네트워크 계층에 속한다 이 말은 종단 간 데이터 수송 역할은 하지 않고 최종 IP 수신IP 확인.
OSI 7 계층에서 계층에서 ICMP 프로토콜은 Network 계층에 속하며 IP 프로토콜과 같이 사용한다.
활용 명령어
1. Ping 명령어 : 호스트가 존재하는지 알아보기 위한 명령은프로토콜입니다.
- Echo Request 질의 메시지 요청
- Echo Reply : 응답 메시지 요청
명령어 형식 [ping ip]
2. Tracert 명령어 : 목적지까지의 라우터 경로를 추적하기 위해 사용
- Time Exceeded 확인 가능
명령어 형식 : [tracert ip]
ICMP TYPE |
ICMP CODE |
ICMP CHECKSUM |
ICMP 메시지 1 |
||
ICMP 메시지 2 |
ICMP 패킷 헤더 구조
ICMP Type : ICMP의 메시지를 구별
ICMP Code : 메세지 내용에 대한 추가 정보 (즉, ICMP TYPE에 대한 상세 정보)
ICMP Cehcksum : ICMP의 값이 변조 여부를 확인
ICMP 메시지메시지 1, 메세지메시지 2 : ICMP TYPE에 따라 내용이 가변적으로 들어가는 내용
ICMP TYPE - Request
ICMP구조에 따라 Type 8, Code 0, Checksum, Data를 확인할 수 있네요
type이 Request 이기 때문에 메세지 1(data)에 특정값(abcdefg.. 이하 생략)이 채워져 있네요
ICMP TYPE - Reply [응답이 정상적인 경우]
Type 0, Code 0, Checksum 도 정상적이네요
또 동일하게 Reply 이기 때문에메시지 1(data)에 특정값으로 채워져 있는 것을 확인할 수 있습니다
ICMP TYPE - Destination Unreachable [응답이 비정상적인 경우]
어떠한 이유로 인해 패킷이 정상적으로 도달하지 못하는 경우 이에 대한 응답메시지를 보내는데, Unreachable도 그중 하나입니다.
Type 3, Code 13, Checksum 도 정상적인데, 차이점은 메세지 2(data)에 실패한 패킷의 정보(IPV4, ICMP)가 담겨있는 것을 볼 수 있죠
DHCPv6 대 DHCPv4 메시지 유형
TYPE과 CODE
댓글