Что такое ICMP?
Протокол Internet Control Message Protocol (ICMP) – это набор коммуникационных правил, которые устройства используют для распространения информации об ошибках передачи данных в сети. При обмене сообщениями между отправителем и получателем могут возникнуть непредвиденные ошибки. Например, сообщения могут быть слишком длинными или пакеты данных могут приходить не по порядку, поэтому получатель не может их организовать. В таких случаях получатель использует ICMP для информирования отправителя сообщением об ошибке и просит отправить сообщение повторно.
Какие существуют варианты использования ICMP?
Протокол Internet Control Message Protocol (ICMP) является важным протоколом сетевого уровня в компьютерных сетях. Он обеспечивает стандартизированный механизм передачи сетевыми устройствами важной информации, такой как подключение и состояние сети. Все устройства, подключенные к сети, включая маршрутизаторы и конечные устройства, могут обрабатывать сообщения ICMP. ICMP адаптирован для работы как с IPv4, так и с IPv6.
Подробнее о компьютерных сетях »
Далее мы обсудим некоторые распространенные варианты использования ICMP.
Отчеты об ошибках
Сообщения об ошибках ICMP информируют о сетевых ошибках – например, о недоступных местах назначения, тайм-аутах или проблемах фрагментации. Сообщения особенно важны для протокола пользовательских дейтаграмм (UDP), который использует модель коммуникации без подключения.
UDP не обеспечивает надежную упорядоченную доставку пакетов. При отправке пакета UDP существует вероятность, что пакет может быть утерян или доставлен с ошибками, например с ошибками контрольной суммы. Если это происходит, получатель отправляет сообщения об ошибках ICMP отправителю, чтобы уведомить его о проблеме.
Диагностика
ICMP можно использовать для диагностики сети. Чаще всего он используется для команд ping и traceroute.
Команда ping проверяет доступность сетевых устройств, отправляя пакеты эхо-запроса ICMP на целевое устройство. Если устройство доступно, оно возвращает эхо-ответ ICMP. Благодаря этому надежно проверяется задержка в сети и обеспечивается доступность устройства.
Команда traceroute отслеживает путь пакетов от источника до места назначения. Для этого команда отправляет сообщения эхо-запроса и эхо-ответа в указанное место назначения.
Эхо-запросы содержат значение времени жизни (TTL), которое уменьшается на единицу при каждом прохождении пакета через маршрутизатор. Когда пакет достигает маршрутизатора с нулевым значением TTL, маршрутизатор отправляет сообщение ICMP обратно источнику.
В сообщении содержится информация о маршруте, пройденном пакетом. С помощью команды Traceroute можно узнать точный путь пакета, чтобы получить представление о производительности сети.
сетевая безопасность;
ICMP можно использовать для обнаружения несанкционированного сетевого трафика и разрешать только законный трафик в сети. Брандмауэры используют ICMP для разрешения или блокировки определенных типов трафика. Сетевые администраторы также используют инструменты мониторинга ICMP для отслеживания состояния и подключения сетевых устройств, а также обнаружения неизвестных устройств.
Вы также можете использовать протокол для выявления необычных схем трафика, которые могут указывать на несанкционированную активность.
Как работает ICMP?
Протокол Internet Control Message Protocol (ICMP) обычно работает вместе с другими сетевыми протоколами, например TCP/IP или протоколом пользовательских дейтаграмм (UDP). Хосты и маршрутизаторы обмениваются сообщениями или пакетами ICMP при возникновении определенных сетевых событий.
Пакет ICMP состоит из заголовка пакета ICMP и раздела данных ICMP.
Заголовок пакета ICMP
Заголовок ICMP содержит информацию о типе пакета, его коде, контрольной сумме и идентификаторе. При отправке пакетов ICMP получатель сообщения считывает информацию в заголовке и в зависимости от типа пакета принимает соответствующие меры.
Например, если используется эхо-запрос, получатель отправляет эхо-ответ с теми же данными. Если тип – недоступное место назначения, получатель отвечает сообщением, в котором указано, что оно недоступно.
Раздел данных ICMP
Раздел данных в сообщении ICMP содержит такую информацию, как IP-адрес получателя или причина сбоя, а также коды ошибок или числовые коды, идентифицирующие ошибки.
Ниже приведены некоторые примеры.
- Код недоступного места назначения (тип 3) означает, что устройство получателя не существует в сети
- Код перенаправления (тип 5) отправляет сообщение другому маршрутизатору с указанием лучшего маршрута к месту назначения
- Коды эхо-запроса и эхо-ответа (типы 8 и 10) проверяют связь между устройствами
- Сообщение о превышении времени показывает, что пакет достиг места назначения
- Сообщение Parameter Problem (Проблема параметра) указывает, что маршрутизатор столкнулся с проблемой в заголовке поля IP
- Сообщение Source Quench (Подавление источника) отправляется, когда маршрутизатору приходится сталкиваться с перегрузкой и ему необходимо ограничить количество получаемых пакетов
В чем разница между ICMP и TCP?
TCP – это ориентированный на соединение протокол для надежной доставки данных с проверкой на ошибки. Он обычно используется для просмотра веб-страниц, электронной почты, удаленного входа в систему и приложений для передачи файлов. TCP требует передачи данных (handshaking) – серии сообщений, которые обеспечивают доверие и проверку личности между отправителем и получателем. TCP гарантирует доставку сообщений.
Напротив, протокол Internet Control Message Protocol (ICMP) – это протокол без подключения, который не гарантирует доставку сообщений. Поскольку ICMP используется только для отчетов об ошибках, сообщения ICMP также меньше пакетов TCP.
ICMP и TCP используются совместно для определения причины сбоя доставки по протоколу TCP.
Что такое наплыв пингов ICMP?
Наплыв пингов по протоколу Internet Control Message Protocol (ICMP) – это события типа «отказ в обслуживании» (DoS), когда неавторизованные пользователи отправляют несколько эхо-запросов ICMP за короткий период времени. В каждом запросе ICMP содержится уникальный идентификатор и полезная нагрузка данных, которая требует от получателя уникального ответа. Принимающий сервер пытается ответить на каждый несанкционированный запрос, в результате чего ответы авторизованных источников задерживаются или замедляются.
Для защиты от наплыва пингов ICMP следует убедиться, что устройства вашей сети настроены на ограничение объема трафика ICMP, который они готовы принять. Также важно контролировать свою сеть на предмет несанкционированной активности и применять необходимые меры безопасности, например использовать брандмауэры и системы обнаружения вторжений (IDS).
Как AWS может усилить защиту от DDoS-событий?
Amazon Web Services (AWS) предлагает сервис AWS Shield, чтобы улучшить защиту от событий типа «распределенный отказ в обслуживании» (DDoS).
AWS Shield — это управляемый сервис защиты от DDoS-атак, который надежно защищает приложения, работающие в облаке AWS. Он обеспечивает динамическое обнаружение и автоматические встроенные средства защиты, которые минимизируют время простоя и задержки приложений. В AWS Shield предусмотрены автоматизированные методы нейтрализации угроз для защиты от всех типов событий сетевой безопасности.
AWS Shield предоставляет вам множество возможностей.
- Автоматическая очистка несанкционированного трафика на определенных уровнях
- Минимизация времени простоя и задержек приложений
- Мониторинг и защита до 1000 типов ресурсов
- Индивидуальное обнаружение на основе шаблона трафика приложения
Начните использовать защиту от DDoS-событий, создав аккаунт сегодня.
AWS: дальнейшие шаги
Получите мгновенный доступ к уровню бесплатного пользования AWS.