1. ICMP 에러메세지
ㅇ IP 계층에서 IP 데이터그램의 전달 상의 문제가 발생했을 때,
- 그 에러의 유형을 송신측에게 알려주기 위한 일련의 메세지들
2. ICMP 에러메세지 구성
ㅇ 원래 메세지 본문 일부가 포함되어 전달됨
- 발신측에 오류 상황을 보다 많이 알리려고,
- ICMP 헤더 및 원래 IP 데이터그램의 일부가 채워짐
. IPv4 : 원본 IPv4 헤더 + 데이터부분 첫 8 바이트
.. 원래 데이터그램의 IP 헤더 및 TCP,UDP 헤더 내 포트주소,순서번호가 덧붙여짐
. IPv6 : 최소 MTU 1280 바이트를 넘지 않을 만큼, 원본 IP 데이터그램 앞 일부를
채울 수 있을 만큼 채움
3. ICMP 오류메세지 생성 위치 및 규칙
ㅇ 오류메세지 생성 위치
- 대부분의 경우에, ICMP 에러메세지는 라우터로부터 발생
ㅇ 오류메세지 생성 제약 (오류메세지의 연이은 브로드캐스트 폭풍 방지)
- ICMP 메세지 전달과정에 발생된 오류메세지에 대해서는 또다시 생성되지 않음
- 단편화된 IP 데이터그램 중 첫번째 것을 제외한 나머지 단편들에 대해 생성되지 않음
- 수신 주소가 브로드캐스트,멀티캐스트 주소인 경우에는 생성되지 않음
- 발신 주소가 무의미한 주소(제로 주소,루프백 주소,브로드캐스트 주소,
멀티캐스트 주소 등)일 경우에는 생성되지 않음
4. ICMP의 주요 에러 메세지 종별 및 설명
ㅇ Destination Unreachable 에러메세지 (ICMPv4 : type 3, ICMPv6 : type 1)
- 도달할 수 없는 목적지에 계속하여 패킷을 보내지 않도록 송신측에 주의를 줌
ㅇ Source Quench 에러메세지 (ICMPv4 : type 4) (표준에서 제외됨, 비현행)
- 폭주가 발생한 상황을 송신측에 알려서 송신측이 전송을 잠시 중단하거나 전송률
을 줄이는 등의 조치를 취하도록 알리는 역할을 하는 에러메세지
ㅇ Packet Too Big 에러메세지 (ICMPv6 : type 2)
- 목적지까지 가는 경로 중의 라우터에서 전송 가능한 데이터링크 MTU 보다 큰
IP 데이터그램일 경우에, 발신지에게 IP 단편화하도록 알리는 ICMPv6 에러메세지
ㅇ Redirect 에러메세지 (ICMPv4 : type 5, ICMPv6 : type 137)
- 송신측으로부터 패킷을 수신 받은 라우터가 특정 목적지로 가는 더 짧은 경로가
있음을 알리고자할 때 사용하는 에러메세지
- 이는 동일 서브넷에 여러 라우터가 존재하고 디폴트 라우터가 잘못 설정된 경우에 사용
ㅇ Time Exceeded 에러 메세지 (ICMPv4 : type 11, ICMPv6 : type 3)
- Time to Live Exceeded in Transit
. 목적지 시스템에 도달하기 이전에 TTL 값이 0 에 이르렀음 ☞ traceroute
- Fragment Reassembly Time Exceeded
. traceroute가 중간에 거치는 라우터들을 확인할 때 사용
ㅇ Parameter Problem 에러메세지 (ICMPv4 : type 12, ICMPv6 : type 4) 등
※ [참고사항] IANA의 ICMPv4,ICMPv6 유형(type) 및 코드값(code) 관련
- ICMPv6 Parameters
- ICMPv4 Parameters