img

Протокол ICMP - что это и для чего нужен?

ICMP, который расшифровывается как Internet Control Message Protocol это протокол третьего уровня модели OSI, который используется для диагностики проблем со связностью в сети. Говоря простым языком, ICMP помогает определить может ли достичь пакет адреса назначения в установленные временные рамки. Обычно, ICMP “юзают" маршрутизаторы и устройства третьего уровня.


Для чего используется ICMP?

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

Второе, и, пожалуй, одно из самых популярных применений ICMP это утилиты ping и traceroute. Термин “пинговать" как - раз связан с протоколом ICMP и “пинговать" хост - означает отправлять ICMP пакеты с целью понять, отвечает ли на них целевое устройство.


Про трассировку

Так и с “трассировкой". Когда говорят “сделайте трассировку маршрута" это означает, что мы хотим увидеть полный маршрут между хостом, на котором выполняется трассировка до хоста назначения. Трассировка покажет каждый из маршрутизаторов на пути до цели и время обработки и прохождения каждого из участков маршрута. Кстати, такой маршрут называется “хопом". Часто говорят: если от узла отправления до узла назначения на пути встретиться 7 маршрутизаторов, то говорят на пути будет 7 хопов. А если на 6 маршрутизаторе пакет обрабатывается дольше обычного, то в среде инженеров говорят “на 6 хопе повышенная задержка". Это один из базовых инструментов того, как можно понять, какой из сетевых узлов на маршруте пакет “сбоит". Именно в этом нам помогает протокол ICMP.


Про пинг

Теперь про ping. Можно сказать, это самый базовый инструмент инженера, который позволяет понять “"А жив ли хост?"

Помимо прочего, пинг поможет понять как долго пакет доходит до адреса назначения и, соответственно, поможет измерить задержку.

Работает ping предельно просто:

  1. Источник отправляет запрос вида ICMP echo request. Это выглядит как вопрос “бро, ты живой?"
  2. Получатель отправляет ответ источнику ICMP echo reply. Это звучит как ответ вида “да, бро, я жив, спасибо!"
  3. Время с момента отправки вопроса до получения ответа суммируется и считается за время пинга
Протокол ICMP - что это и для чего нужен

Темная сторона ICMP

На самом деле, с помощью ICMP можно провести атаки на сеть. Эти атаки связаны с отказом устройства в обслуживании (denial-of-service, DoS). Например “флуд - атака", суть которой заключается в отправке огромного количества пинг (ICMP) - запросов на хоста назначения с разных источников. В итоге устройство отвечает кучей пакетов на разные адреса и перегружает собственные мощности и сетевой адаптер.

Так же, раньше была популярна атака Ping of Death. Если кратко, ее суть заключалась в следующем: злоумышленник намеренно отправляет пакет больше максимального размера. Такой пакет фрагментируется на сети на несколько частей, прилетает в буфер устройства и попадает в очередь на сборка пакета “воедино". Переполнение этой очереди приводило к подвисанию хоста и полному отказу в работе.


Что же, теперь вы знаете, что такое ICMP, почему и как он используется в утилитах ping и трассировке, а так же, какие виды атак можно выполнить с помощью ICMP.

Keep calm and Merion!

Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
DevOps
Скидка 25%
DevOps-инженер с нуля
Научитесь использовать инструменты и методы DevOps для автоматизации тестирования, сборки и развертывания кода, управления инфраструктурой и ускорения процесса доставки продуктов в продакшн. Станьте желанным специалистом в IT-индустрии и претендуйте на работу с высокой заработной платой.
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
В начале 2000-х, когда идея мессенджеров только формировалась, расширяемый протокол обмена сообщениями и информацией о присутств
img
Задержка в сети, или сетевая задержка, - это временная задержка при передаче запросов или данных от источника к адресату в сетев
img
Система доменных имен (DNS – Domain Name System) обеспечивает сетевую коммуникацию. DNS может показаться какой-то невидимой сило
img
Wi-Fi это технология, которая использует радиоволны для отправки и получения сигналов от находящихся поблизости устройств, чтобы
img
BGP (Border Gateway Protocol) - это протокол граничного шлюза, предназначенный для обмена информацией о маршрутизации и доступно
img
Когда читаете данную статью, браузер подключается к провайдеру (или ISP) а пакеты, отправленные с компьютера, находят путь до се
ЗИМНИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59