Протокол icmp как настроить

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

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

Сетевой пинг — понг

3 минуты чтения

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

Полный курс по Сетевым Технологиям

В курсе тебя ждет концентрат ТОП 15 навыков, которые обязан знать ведущий инженер или senior Network Operation Engineer

Для чего используется 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 можно провести атаки на сеть. Эти атаки связаны с отказом устройства в обслуживании (denial-of-service, DoS). Например “флуд — атака», суть которой заключается в отправке огромного количества пинг (ICMP) — запросов на хоста назначения с разных источников. В итоге устройство отвечает кучей пакетов на разные адреса и перегружает собственные мощности и сетевой адаптер.

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

Читайте также:  Quik не работают заявки

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

Keep calm and Merion!

Полный курс по Сетевым Технологиям

В курсе тебя ждет концентрат ТОП 15 навыков, которые обязан знать ведущий инженер или senior Network Operation Engineer

Источник

Настройка сети в операционной системе Windows 7. Часть 8 – Протокол ICMP и устранение неполадок сетевых подключений

Посетителей: 12354 | Просмотров: 17086 (сегодня 1) Шрифт:

Введение

Протокол межсетевых управляющих сообщений ICMP (Internet Control Message Protocol) – это сервисный протокол, который является обязательным стандартом TCP/IP, используется для оповещения об ошибках и управляет информацией и сведениями о состоянии для протокола IP. ICMP сообщения обычно отправляются в тех случаях, когда IP-датаграмма не может попасть к узлу назначения, шлюз не может перенаправить датаграммы с текущей скоростью передачи, а также когда IP-маршрутизатор перенаправляет узел-отправитель на другой, более выгодный маршрут к узлу назначения. Типы ICMP-сообщений различаются по заголовку ICMP. Длина заголовка ICMP-сообщения постоянная – 8 байтов, где назначение первых четырех байтов всегда одинаково, а назначение оставшихся четырех байтов зависит от типа ICMP-сообщения. Так как ICMP-сообщения переносятся IP-датаграммами, то их доставка не гарантируется. В следующей таблице отображены некоторые типы ICMP-сообщений:

Тип Код Описание Назначение Кто обрабатывает
0 0 Echo Ответ пользовательскому приложению Пользовательское приложение
3 Получатель недоступен Ошибка Пользовательское приложение
0 Сеть недоступна
1 Узел недоступен
2 Протокол недоступен
3 Порт недоступен
4 Нужна фрагментация, но бит фрагментации не установлен
5 Ошибка маршрута
6 Неизвестная сеть назначения
7 Неизвестен узел назначения
9 Сеть получателя административно запрещена
10 Узел получателя административно запрещен
11 Сеть недоступна для TOS
12 Узел недоступен для TOS
13 Связь запрещена сетевым фильтром
4 0 Подавление источником Ошибка Ядро ОС для TCP
5 Перенаправление Ошибка Ядро ОС
0 Перенаправление для сети
1 Перенаправление для узла
2 Перенаправление для TOS и сети
3 Перенаправление для TOS и узла
8 0 Echo-запрос Запрос приложения пользователя Ядро ОС
9 0 Объявление маршрутизации Ответ приложения пользователя Процесс пользователя
11 Истечение времени Ошибка Процесс пользователя
0 TTL = 0
1 Вышло время сбора фрагмента

По умолчанию этот протокол блокируется брандмауэром Windows Vista, Windows 7, Windows Server 2008/2008 R2, а также некоторыми маршрутизаторами и функционально независимыми брандмауэрами. Для того чтобы вы могли использовать функционал устранения неполадок сетевых подключений, создайте исключение для ICMP в брандмауэре Windows или включите общий доступ к файлам в диалоговом окне «Центр управления сетями и общим доступом». В этой статье вы узнаете о таких утилитах ICMP, как Ping, Tracert, а также PathPing.

Использование утилиты Ping

Простейшим ICMP инструментом, предназначенным для удостоверения, что отправляемые пакеты доходят до получателя является Echo-сообщение. Приложение-отправитель отправляет Echo-запрос, а получатель, в случае получения текущего запроса должен отправить ICMP-сообщение с ответом Echo. Во всех операционных системах, которые поддерживают протокол TCP/IP, есть утилита Ping.

Утилита Ping помогает проверить соединение на IP-уровне и используется для тестирования сетевых подключений, позволяя отправить Echo-запрос по протоколу ICMP на имя или IP-адрес целевого узла. Чаще всего данная утилита используется в том случае, когда необходимо проверить, может ли ведомый компьютер подключиться к сети TCP/IP или сетевым ресурсам. Для того чтобы воспользоваться командой ping, откройте окно командной строки, введите там команду ping, укажите имя или IP-адрес удаленного компьютера или сервера, подключение к которому вам нужно проверить и, в случае необходимости, укажите дополнительные параметры. Утилита ping отображает Echo-ответы и ведет простую статистику, из которой понятно, сколько пакетов получено, а сколько потеряно. Если удаленный компьютер реагирует на запрос ping, то подключение к удаленному компьютеру работает. По умолчанию утилита ping ожидает каждый ответ в течение четырех секунд и в случае неудачи отображает сообщение «Превышен интервал ожидания для запроса», то есть, если вы выполняете команду по каналу с большим временем задержки, вам придется увеличить период ожидания. Так как при преобразовании имени компьютера в IP-адрес команда ping использует разрешение имен по типу Windows Sockets и если данная команда успешно выполняется для адреса, но не для имени, то возможно был указан не правильный адрес или проблема может быть связана с разрешением имени. Для этой команды вы можете использовать следующие параметры:

  • -t. Данный параметр указывает на то, что производится проверка связи с указанным узлом до прекращения вручную;
  • -n. Текущий параметр определяет количество отправляемых Echo-запросов;
  • -f. Этот параметр устанавливает бит «не фрагментировать» на ping-пакете. По умолчанию фрагментация разрешается;
  • -w. Данный параметр позволяет настроить тайм-аут для каждого пакета в миллисекундах (по умолчанию установлено значение 4000);
  • -a. Текущий параметр определяет имена узлов по адресам;
  • -l. При помощи этого параметра вы можете указать размер буфера отправки;
  • -i. Использование данного параметра позволяет вам задать срок жизни пакета;
  • -v. Этот параметр задает тип службы для IPv4 и не влияет на поле TOS в IP-заголовке;
  • -r. Текущий параметр записывает маршрут для указанного числа прыжков;
  • -s. Данный параметр позволяет отмечать время для указанного числа прыжков;
  • -j. Используя этот параметр, вы можете указать свободный выбор маршрута по списку узлов;
  • -k. При помощи данного параметра вы можете определить жесткий выбор маршрута по списку узлов;
  • -R. Текущий параметр позволяет использовать заголовок для проверки также и обратного маршрута только для IPv6;
  • -S. Данный параметр указывает используемый адрес источника;
  • -4. Параметр определяет принудительное использование протокола IP версии 4;
  • -6. Параметр определяет принудительное использование протокола IP версии 5.
Читайте также:  Как понять что не работают свечи накаливания

Пример использования данной команды:

Рис. 1. Использование утилиты Ping

Использование утилиты Tracert

Помимо утилиты Ping при возникновении неполадок связи вы также можете воспользоваться командой Tracert для отслеживания пути к конечной точке в сети, а также тестирования на этом пути каждого маршрутизатора и отображения времени, которое было затрачено на этот прыжок. Путь до точки назначения определяется посредством пересылки в точку назначения Echo-запросов протокола ICMP или сообщений ICMPv6 с постоянным увеличением значений срока жизни TTL. Каждый маршрутизатор, через который проходит путь, обязан перед дальнейшей пересылкой пакета уменьшить значение его поля TTL, по меньшей мере, на 1. Путь, который выводится в окне командной строки, является списком ближайших интерфейсов маршрутизаторов, которые расположены на пути между узлом источника и местом назначения. В том случае, когда параметр TTL становится равным 0, маршрутизатор посылает системе-источнику сообщение ICMP об истечении времени. Максимальное количество переходов по умолчанию равно 30, но вы его можете изменить, используя дополнительный параметр. Некоторые маршрутизаторы не посылают сообщения об истечении времени для пакетов с нулевыми значениями TTL. Для команды tracert такие маршрутизаторы не видны, и в случае перехода они обозначаются строкой звездочек. В том случае, если путь от ведомого до искомого сервера пролегает через промежуточные маршрутизаторы, вы можете проверить реагирование каждого промежуточного маршрутизатора. Для того чтобы воспользоваться функционалом текущей утилиты, откройте окно командной строки, введите команду tracert, а затем имя или адрес конечного компьютера или сервера и дополнительные параметры. Для этой команды используются следующие параметры:

  • -d. Данный параметр предотвращает любые попытки утилиты tracert разрешать IP-адреса промежуточных маршрутизаторов в имена, что позволяет увеличить скорость вывода результатов;
  • -h. Текущий параметр задает максимальное количество переходов на пути при поиске конечного объекта;
  • -j. При помощи этого параметра вы можете указать для сообщений с Echo-запросом использовать параметр нестрогой маршрутизации от источника в заголовке IP с набором промежуточных мест назначения, указанных в перечне списка узлов. Данный параметр используется только при трассировке IPv4-адресов;
  • -w. Данный параметр определяет время ожидания для получения Echo-ответов протокола ICMP или ICMP-сообщений об истечении времени в миллисекундах, которые соответствуют данному сообщению Echo-запроса. Значение по умолчанию 4 секунды;
  • -R. Этот параметр позволяет задать использование заголовка расширения маршрутизации IPv6 для отправки Echo-запроса на локальный узел с использованием адреса назначения в качестве промежуточного назначения и проверки обратного маршрута;
  • -S. Текущий параметр указывает адрес источника для использования в сообщениях с Echo-запросом при трассировке IPv6-адресов;
  • -4. Данный параметр задает использование протокола IPv4 для данной трассировки;
  • -6. Этот параметр задает использование протокола IPv6 для данной трассировки;
Читайте также:  Если работаешь не по специальности диплома 5 лет

Рис. 2. Использование утилиты Tracert

Использование утилиты PathPing

Утилиты Ping и Tracert сочетают в себе хорошие возможности, предназначенные для тестирования сетевых подключений, но существует команда, которая совмещает в себе все эти возможности, а также содержит некоторые дополнительные особенности. Утилита PathPing отправляет многочисленные сообщения с Echo-запросом каждому маршрутизатору, который находится между исходным пунктом и пунктом назначения, после чего, на основании пакетов, полученных от каждого из них, вычисляет процентное соотношение пакетов, возвращаемых в каждом прыжке. Так как утилита PathPing показывает степень потери пакетов на каждом маршрутизаторе или узле, с ее помощью вы можете точно определить маршрутизаторы и узлы, на которых возникают сетевые проблемы. Эквивалентно утилите Tracert, утилита PathPing идентифицирует маршрутизаторы, которые расположены на пути к исходному узлу, после чего она периодически в течение заданного времени обменивается пакетами со всеми маршрутизаторами и на основании числа пакетов, полученных от каждого из них, обрабатывает статистику. В отличие от предыдущих утилит, во избежание перегрузки сети пакеты должны передаваться через довольно большие интервалы времени. Подобно утилите Tracert, утилита PathPing сначала выводит путь, а после чего, в течение 90 секунд выдает сообщение о том, что она занята. Именно в этот период происходит сбор сведений со всех маршрутизаторов, перечисленных выше и со всех соединений между ними. С данной командой вы можете использовать следующие параметры:

  • -g. Данный параметр определяет использование параметра свободной маршрутизации в IP-заголовке с набором промежуточных мест назначения для сообщений с Echo-запросом, который указывается в списке компьютеров.
  • -h. Данный параметр задает максимальное количество переходов на пути при поиске конечного объекта;
  • -i. Этот параметр указывает IP-адрес источника;
  • -n. Текущий параметр предотвращает попытки сопоставления IP-¬адресов промежуточных маршрутизаторов с их именами, что существенно ускоряет вывод результатов;
  • -p. Используя данный параметр, вы можете задать время ожидания между последовательными проверками связи, где значением по умолчанию указано 250 миллисекунд;
  • -q. При помощи текущего параметра вы можете указать количество сообщений с Echo-запросом, отправленных каждому маршрутизатору пути (по умолчанию — 100);
  • -w. Данный параметр определяет время ожидания для получения Echo-ответов протокола ICMP или ICMP-сообщений об истечении времени в миллисекундах, которые соответствуют данному сообщению Echo-запроса. Значение по умолчанию 4 секунды;
  • -4. Параметр определяет принудительное использование протокола IP версии 4;
  • -6. Параметр определяет принудительное использование протокола IP версии 5.

Рис. 3. Использование утилиты PathPing

Заключение

В этой статье вы узнали о назначении протокола межсетевых управляющих сообщений ICMP, а также о таких утилитах ICMP, как Ping, Tracert и PathPing, которые помогают проверять соединение на IP-уровне и используются для тестирования сетевых подключений, позволяя отправить Echo-запрос по протоколу ICMP на имя или IP-адрес целевого узла. Утилита Ping используется в том случае, когда необходимо проверить, может ли ведомый компьютер подключиться к сети TCP/IP или сетевым ресурсам. Утилита Tracert предназначена для отслеживания пути к конечной точке в сети, а также тестирования на этом пути каждого маршрутизатора и отображения времени, которое было затрачено на этот прыжок. А утилита PathPing, в свою очередь, совмещает все возможности вышеперечисленных утилит, а также на основании пакетов, полученных от каждого из них, вычисляет процентное соотношение пакетов, возвращаемых в каждом прыжке.

Источник

Оцените статью