Руководство по протоколу управления Интернет-сообщениями (ICMP)

Протокол управляющих сообщений Интернета (ICMP) является сетевым протоколом для сети Интернет-протокола (IP). ICMP передает управляющую информацию о состоянии самой сети, а не данные приложения. IP-сеть требует ICMP для правильной работы.

ICMP-сообщения — это особый тип IP-сообщения, отличного от TCP и UDP.

На практике наиболее известным примером обмена сообщениями ICMP является утилита ping, которая использует ICMP для проверки реагирования удаленных хостов и измерения общего времени прохождения тестовых сообщений. ICMP также поддерживает другие утилиты, такие как traceroute, которые идентифицируют промежуточные устройства маршрутизации («прыжки») на пути между данным источником и пунктом назначения.

ICMP против ICMPv6

Первоначальное определение ICMP поддерживало сети Internet Protocol версии 4 (IPv4). IPv6 включает в себя пересмотренную форму протокола, обычно называемого ICMPv6, чтобы отличать его от исходного ICMP (иногда называемого ICMPv4).

Типы сообщений ICMP и форматы сообщений

Сообщения ICMP содержат данные, необходимые для работы и администрирования компьютерной сети. Протокол сообщает о таких условиях, как не отвечающие устройства, ошибки передачи и проблемы перегрузки сети.

Как и другие протоколы семейства IP, ICMP определяет заголовок сообщения. Заголовок содержит четыре поля в следующей последовательности:

  • Тип (8 бит)
  • Код (8 бит)
  • Контрольная сумма (16 бит)
  • Данные ICMP (32 бита)

ICMP определяет список определенных типов сообщений и присваивает уникальный номер каждому. Как показано в таблице ниже, ICMPv4 и ICMPv6 предоставляют некоторые распространенные типы сообщений (но часто с разными номерами), а также некоторые сообщения, уникальные для каждого. (Общие типы сообщений также могут незначительно отличаться по поведению в разных версиях IP).

v4 #
v6 #
Тип
Описание
129Эхо ОтветитьСообщение отправлено в ответ на эхо-запрос (см. Ниже)
31Пункт назначения недоступенОтправляется в ответ на невозможность доставки IP-сообщения по любой из разных причин.
4Источник гаситУстройство может отправить это сообщение обратно отправителю, который генерирует входящий трафик с большей скоростью, чем его можно обработать. (Заменено другими методами.)
5137Перенаправить сообщениеУстройства маршрутизации могут генерировать этот метод, если они обнаруживают изменение в запрошенном маршруте для IP-сообщения, который должен быть изменен.
8128Эхо-запросСообщение, отправленное утилитами ping для проверки реакции целевого устройства.
113Превышено времяМаршрутизаторы сгенерировали это сообщение, когда входящие данные достигли своего предела числа переходов. Используется traceroute.
12Параметр ПроблемаГенерируется, когда устройство обнаруживает поврежденные или отсутствующие данные во входящем IP-сообщении.
13, 14Отметка времени (запрос, ответ)Предназначен для синхронизации часов между двумя устройствами через IPv4 (заменен другими более надежными методами).
2Слишком большой пакетМаршрутизаторы генерируют это сообщение при получении сообщения, которое не может быть перенаправлено к месту назначения из-за превышения ограничения длины.

Общие типы сообщений ICMP

Протокол заполняет поля данных Code и ICMP в зависимости от типа сообщения, выбранного для обмена дополнительной информацией. Например, сообщение «Адресат недоступен» может иметь много разных значений кода в зависимости от характера ошибки.

Ссылка на основную публикацию