Формат сообщений протокола ICMP
Существует несколько типов сообщений ICMP. Каждый тип сообщения имеет свой формат, при этом все они начинаются с общих трех полей: 8-битного целого числа, обозначающего тип сообщения (TYPE), 8-битного поля кода (CODE), который конкретизирует назначение сообщения, и 16-битного поля контрольной суммы (CHECKSUM). Кроме того, сообщение ICMP всегда содержит заголовок и первые 64 бита данных пакета IP, который вызвал ошибку. Это делается для того, чтобы узел-отправитель смог более точно проанализировать причину ошибки, так как все протоколы прикладного уровня стека TCP/IP содержат наиболее важную информацию для анализа в первых 64 битах своих сообщений.
Поле типа может иметь следующие значения (табл. П2.1).
Значение | Тип сообщения |
0 1 | Эхо-ответ (Echo Replay) |
3 | Узел назначения недостижим (Destination Unreachable) |
4 | Подавление источника (Source Quench) |
5 | Перенаправление маршрута (Redirect) |
8 | Эхо-запрос (Echo Request) |
11 | Истечение времени дейтаграммы (Time Exceeded for a Datagram) |
12 | Проблема с параметром пакета (Parameter Problem on a Datagram) |
13 | Запрос отметки времени (Timestamp Request) |
14 | Ответ отметки времени (Timestamp Replay) |
17 | Запрос маски (Address Mask Request) |
18 | Ответ маски (Address Mask Replay) |
Таблица П2.1. Значения
Как видно из используемых типов сообщений, протокол ICMP представляет собой некоторое объединение протоколов, решающих свои узкие задачи.