Протокол управляющих сообщений Интернета (ICMP) — это протокол третьего уровня (сетевого уровня) в семиуровневой модели OSI. Протокол диагностирует сетевое подключение или проблемы с передачей данных между устройствами. Это помогает, отправляя, получая и обрабатывая сообщения ICMP, чтобы сообщать о проблемах с подключением к исходному сетевому устройству.

Следовательно, основной целью протокола ICMP является сообщение об ошибках на сетевом уровне. Однако злоумышленники могут манипулировать его функциями для запуска таких атак, как распределенный отказ в обслуживании (DDoS) и Ping of Death. Здесь вы узнаете о протоколе ICMP, вариантах его использования и параметрах, которые важны для понимания сообщений ICMP.

Как работает ICMP?

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

instagram viewer

Например, когда отправитель отправляет данные с одного устройства на устройство назначения в виде IP-датаграммы, они проходят через несколько маршрутизаторов или промежуточных устройств. Иногда при пересылке дейтаграммы IPV4 может возникнуть ошибка. Следовательно, сообщения ICMP делятся на две широкие категории: сообщения об ошибках и сообщения с запросами.

Сообщения об ошибках

Это сообщения, с которыми может столкнуться маршрутизатор или хост-посредник при обработке дейтаграмм:

  1. Превышено время: Пакет ICMP имеет параметр времени жизни, который, когда он достигает 0, маршрутизатор или хост отбрасывает дейтаграмму и отправляет сообщение об ошибке превышения времени. Сообщение также отправляется, когда пункт назначения не получает все фрагменты данных.
  2. Пункт назначения недоступен: Устройство, инициирующее соединение, получает сообщение об ошибке недостижимого пункта назначения, когда маршрутизатору или промежуточному узлу не удается его доставить. Следовательно, устройства отбрасывают дейтаграмму.
  3. Исходное тушение: Когда устройствам не удается доставить дейтаграмму из-за перегрузки сети, они отправляют отправителю сообщения ICMP «сообщение о подавлении источника». Сообщение об ошибке добавляет управление потоком на сетевом уровне, информируя исходное устройство о перегрузке на пути и замедляя процесс отправки данных.
  4. Перенаправление: Маршрутизатор на неоптимальном пути перенаправляет пакет на маршрутизатор с оптимальным путем между источником и пунктом назначения. Таким образом, он обновляет источник об изменении своего маршрута.
  5. Проблема с параметром: Исходное устройство получает это сообщение, когда в заголовке дейтаграммы отсутствует какое-либо значение. Например, разница в рассчитанной контрольной сумме в пункте назначения и в источнике генерирует это сообщение об ошибке ICMP.

Сообщения запроса

Сообщения-запросы появляются парами и предоставляют определенную информацию от промежуточных устройств к исходному устройству.

  1. Эхо-запрос и эхо-ответ: Эти сообщения помогают решить проблемы с диагностикой сети.
  2. Запрос метки времени и ответ: Эти запросы меток времени и ответные сообщения помогают определить время прохождения между устройствами в обоих направлениях.

Понимание параметров ICMP

Данные сообщений ICMP инкапсулируются под заголовком IP, что означает, что заголовок дейтаграммы ICMP идет после информации IPv4/v6. Первая часть заголовка пакета ICMP содержит параметры, которые помогают сетевым устройствам определить сообщение об ошибке или запросе.

Среди первых 32 бит первые 8 бит определяют тип сообщения, следующие 8 бит определяют код сообщения, а оставшиеся биты содержат информацию, относящуюся к целостности данных. Следовательно, три информационных поля: типы ICMP, код ICMP и контрольная сумма.

Типы ICMP

Тип определяет назначение пакета ICMP. Поскольку это кратко объясняет, почему исходное устройство получает это сообщение. Существует от 0 до 255 типов сообщений ICMP, каждый из которых предоставляет разную информацию. Некоторые важные типы ICMP:

0: эхо-запрос

3: Пункт назначения недоступен

4: Исходное гашение

5: перенаправить

8: Эхо-ответ

11: Время истекло

12: Проблема с параметрами

30: Трассировка

ICMP-код

Код ICMP предоставляет дополнительную информацию о сообщениях. Например, ICMP типа 3 с кодом 0-15 указывает, почему пункт назначения недоступен; то есть, если код равен 0, то это потому, что сеть недоступна. Аналогично, для типа 3 с кодом 1 сообщение указывает, что хост недоступен.

Кроме того, код 0 типа 8 и код 0 типа 0 представляют сообщения эхо-запроса и эхо-ответа. Следовательно, каждый тип сообщения с одинаковым кодовым значением предоставляет разную сетевую информацию.

Контрольная сумма

Контрольная сумма — это механизм обнаружения ошибок, определяющий целостность данных. Значение контрольной суммы представляет биты в сообщении передачи. Отправитель вычисляет и включает контрольную сумму данных, а получатель пересчитывает значение и сравнивает его с исходным, чтобы определить любые изменения в исходном сообщении во время коробка передач.

Вторая часть заголовка указывает на значение байта, которое является причиной проблемы в исходном сообщении. Наконец, конечная часть пакета ICMP является фактической дейтаграммой.

Вариант использования ICMP

Вот несколько рабочих примеров протокола ICMP в различных управление сетью и административные утилиты.

пинг

Ping — это утилита командной строки, которая использует сообщения эхо-запроса и эхо-ответа ICMP для проверки доступности сети и задержки между устройствами. Утилита просто определяет доступность целевого сервера, оценивая общее количество отправленных или полученных пакетов и процент потерянных пакетов. Это также помогает определить общий максимальный размер блока передачи (MTU).

Использовать пинг чтобы определить доступность google.com:

трассировка

Traceroute — еще одна утилита командной строки, которая использует сообщения эхо-запроса и эхо-ответа с переменной TTL для сопоставления пути между исходным и целевым устройствами. Это также полезно при определении задержек отклика и обеспечивает точность, запрашивая каждый переход несколько раз.

Как работает ICMP без порта?

Из приведенного выше объяснения следует, что ICMP — это протокол без установления соединения, который отправляет данные независимо в виде дейтаграммы, а его заголовок появляется после сведений IPv4. Однако вы также можете заметить отсутствие номера порта, что вызывает вопрос о том, как устройства получают данные ICMP или узнают о каком-либо соединении?

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

Управление ошибками и потоком с помощью ICMP

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

Важно знать, что неправильные настройки брандмауэра могут позволить злоумышленникам просканировать сеть организации и сделать ее подверженной атакам DDOS, ping of death и ICMP Flood. Ты можешь использовать Wireshark для захвата пакетов из интернета и выполнить подробный анализ пакетов ICMP для лучшего понимания.

5 способов исправить ошибку «Отсутствует один или несколько сетевых протоколов» в Windows 10

Читать дальше

ДелитьсяТвитнутьДелитьсяЭл. адрес

Похожие темы

  • Объяснение технологии
  • Компьютерная сеть

Об авторе

Румайса Ниази (опубликовано 24 статьи)

Румаиса — независимый писатель в MUO. Она носила много шляп, от математика до энтузиаста информационной безопасности, и теперь работает аналитиком SOC. Ее интересы включают чтение и письмо о новых технологиях, дистрибутивах Linux и обо всем, что связано с информационной безопасностью.

Другие работы Румайсы Ниази

Подпишитесь на нашу рассылку

Подпишитесь на нашу рассылку технических советов, обзоров, бесплатных электронных книг и эксклюзивных предложений!

Нажмите здесь, чтобы подписаться