네트워크/네트워크

ICMP(Internet Control Message Protocol)

비니화이팅 2018. 1. 16. 03:26

ICMP(Internet Control Message Protocol)

노드간 에러사항이나 통신제어를 위한 메시지 보고에 사용한다.

장애나 목적지 시스템이 제대로 응답하여 동작하고 있는지 판단한다.

- 문제가 발생하면 라우터에 의해 ICMP 메시지가 자동으로 발생하여 패킷 송신 호스트에게 전달된다.

오류만 보고할뿐 오류를 해결하지는 못한다.

- TCP/UDP헤더가 필요하지않고, IP헤더와 IP데이터 부분에 ICMP 메시지를 포함하여 패킷을 전송한다.

Ping, 라우팅 경로 변경에 사용한다.

 

[ICMP 헤더]

Type

(8 bit)

Code

(8 bit)

Checksum
(16bit) 

Message

(가변길이)


 ① Type

- 어떤 종류의 ICMP 메세지인지를 정의한다.

Type

메시지 종류

0

 Echo Reply

 Destination Unreachable

 Source Quench

 Redirect

 Echo Request

11 

 Time Exceeded


② Code

- 타입필드의 옵션을 정의한다.

<type3 : Destination Unreachable(경로상의 제일 마지막 라우터는 출발지 시스템에게 목적지에 도달할 수 없다는 메시지를 전송)>

Code

설명

0

 Network Unreachable

1

 Host Unreachable

2

 Protocol Unreachable

3

 Port Unreachable

4

 Fragmentation needed


③ Checksum

- ICMP 패킷이 변조나 수정없이 도착되었음을 보장한다.


④ Message

-Type, Code에 따라 달라진다.


[ICMP 패킷 분석]

- Sequence number로 request와 reply의 쌍을 확인할 수 있다.