Команда Ping в Linux: Руководство по Использованию

Команда PING Linux, или Packet Internet Groper — популярная утилита. Её основная цель — управление состоянием сетевого подключения между источником и устройством с помощью IP-сети. В этом руководстве вы узнаете, как она работает и чем может быть полезна вашему проекту.
Что Такое Команда Ping в Linux?
С помощью команды Linux ping мы также можем отправить сообщение узлу и получить ответ из сети, проверив скорость соединения. Это работает следующим образом: утилита отправляет серию ICMP-сообщений (Internet Control Message Protocol) целевому хосту и ожидает ответ — ICMP эхо-ответ от хоста и устройства. Таким образом, мы получаем информацию о выполнении сети и целостности соединения с сервером.
По сути, команда отправляет сообщение ECHO_REQUEST и получает ECHO_RESPONSE. Если в сообщении указано “fast ping low latency” (“быстрый пинг с низкой задержкой”) это означает быстрое соединение. Измеряется в миллисекундах.
PING предварительно установлена на каждом современном компьютере, VPS или другом устройстве, поскольку это довольно востребованная утилита. Команда ping в Linux — это быстрый и простой способ «проверить пинг», или соединение между устройством и хостом (сервером).
Будь то локальная (LAN) или глобальная вычислительная сеть (WAN), ping предоставляет точные сведения о подключении. Вы также получаете статистические сводки, которые включают информацию о минимальных и максимальных раундах, количестве переданных и полученных пакетов, процент потерянных пакетов и стандартное отклонение от среднего значения. Таким образом, пользователь может полностью проверить качество сетевого соединения между двумя устройствами. Здорово, не так ли?
Проверка пинга между вашим компьютером и целевым хостом позволит вам определить:
- Статус целевого хоста: доступен ли он
- Измерение времени соединения (хост-компьютер-хост)
- Процент потерянных пакетов.
Как Установить Команду Ping в Linux
Помните, что сначала мы должны подключиться к нашему VPS по SSH. Вы можете обратиться к нашему руководству по PuTTY, если у вас возникли проблемы.
В большинстве версий Linux ping установлена по умолчанию. Вы можете проверить это, выполнив команду:
ping -V
Если ping отсутствует, быстрое обновление системы должно помочь:
apt-get update && apt-get install -y iputils-ping
Как Пользоваться Командой Linux Ping?
В Linux есть разные варианты, как можно проверить соединение между двумя сетями:
1. Проверка Соединения
Вы можете запустить в своей системе простую и быструю команду, чтобы проверить состояние целевого хоста и сервера или компьютера.
В этом примере мы проверим сетевое соединение с www.google.com:
ping google.com

Если вы не знаете домен, вы также можете использовать IP-адрес. Здесь IP-адрес Google отображается в скобках вместе с полной статистической сводкой.
- min — минимальное время ответа
- avg — показывает среднее время ответа
- max — максимальное время ответа
Чтобы остановить команду ping в Linux, используйте Ctrl + C. Это остановит отправку пакетов на целевой хост. Также команда остановит все процессы в терминале.
2. Указание Количества ECHO_REQUEST
Параметр команды -c используется для указания количества пакетов или запросов, которые хочет выполнить пользователь.
Синтаксис будет выглядеть так:
ping –c * primerdomen.com
Здесь * — количество пингов, которые вы хотите выполнить.
3. Звуковой Пинг
Опция команды Linux ping -a создаёт звуковой сигнал, чтобы проверить, является ли хост активным или нет, таким образом сообщая вам об этом.
Команда будет выглядеть так:
ping –a primerdomen.com
Помните, чтобы завершить пинг, нажмите Ctrl+C.
4. Установка Интервалов
Опция –i в Linux позволяет пользователю устанавливать интервалы в секундах между каждым пакетом.
Команда имеет ту же структуру, что и предыдущие:
ping –i 2 –c 7 primerdomen.com
Цифры, которые вы видите в команде могут быть изменены по вашему желанию.
5. Получать Только Сводку Команды Ping
Чтобы получить только сводную информацию о сети, используйте параметр -q в командной строке терминала Linux:
ping –c 7 –q primerdomen.com
Опять же, мы по-прежнему указываем -c 7 для выполнения семи запросов, но получаем только сводку, поскольку добавили -q.
6. Тестируем Нагрузку на Сеть с Помощью Команды Linux Ping
Команда ping позволяет отправлять 100 или более пакетов в секунду с помощью следующей команды:
ping –f primerdomen.com
Это отличный вариант, если вы хотите проверить, как ваш сайт или сервер справляется с нагрузкой на сеть — большим количеством запросов.
Итоги
Команда Ping в Linux — это популярная утилита для устранения проблем доступности хостов в сети. Она помогает нам понять причину, по которой сайт может не загружаться.
Нам нужно найти причину проблемы, ведь это может быть что угодно: подключение к интернету, потеря сети или сайт больше недоступен. Ping — команда, которая помогает определить доступность сетевого устройства.
Это очень быстрая и понятная команда, поэтому многие пользователи предпочитают использовать именно её для устранения неполадок. Теперь вы тоже знаете, как она работает!
Ольга вже близько восьми років працює менеджером у сфері IT, три з яких вона займається SEO. Написання технічних завдань та інструкцій — один з її основних обов’язків. Її хобі — дізнаватися щось нове і створювати цікаві та корисні статті про сучасні технології, веброзробку, мови програмування, пошукову оптимізацію сайтів та багато іншого.
Команда ping в Linux
Бывают ситуации, когда резко пропадает интернет или компьютер в локальной сети перестает работать, чтобы быстро определить работает ли сеть, работает ли интернет — поможет ping. Эта универсальная команда есть во всех операционных системах. Она проверяет доступность удаленного хоста, отправляя ICMP-пакеты. Согласно модели OSI, все данные в компьютерном мире передаются небольшими пакетами. Утилита посылает эхо-запрос по протоколу ICMP и ожидает получить ответ, если получает, то считается что узел доступен.
Параметры
Рассмотрим синтаксис.
ping параметры адрес
Посмотрим, что говорит справка команда ping —help.

Результат выполнения ping —help
Как мы видим выше, синтаксис очень простой. В качестве адреса мы пишем доменное имя или ip-адрес узла. Например ip-адрес локального компьютера может выглядеть так: 192.168.0.1. Рассмотрим параметры или их еще называют аргументы: -c. Количество пакетов, которые нужно отправить. -w. Ограничение посылаемых пакетов по времени. В аргументе указывается время в секундах. -i. Интервал в секундах между данными. -d. Если дословно переводить, то запретить адрес хоста. -r. Игнорировать правила таблицы маршрутизации. -4. Использовать только четвертую версию интернет протокола IPv4. -6. Соответственно, только 6 версию IPv6. -b. Разрешить широковещательный адрес. -D. Вывести время. -v. Подробный вывод. -f. Режим flood. Данные передаются без задержки. Опция может использоваться как Dos-атака. Доступна только с правами root. -t. Установить TTL. -?. Вывести справочную информацию. -s. Установить размер пакета.
Примеры
Для проверки работоспособности интернета часто пингуем популярные сайты яндекс или гугл, даже раньше ходил слух, что яндекс специально под это дело купил себе дополнительные сервера. Пингуем сайт ya.ru, в качестве аргумента ничего не ставим, просто указываем название сайта.
В Линуксе при выполнение этой операции пакеты будут посылаться очень долго, в отличие от Windows. Там всего 4 пакета.

Результат выполнения ping ya.ru
Как остановить ping в linux? Для этого необходимо прервать процедуру принудительно, нажимаем горячие клавиши ctrl + C.

Результат нажатия клавиш ctrl + c
- 14 packets transmitted — отправлено пакетов;
- 14 received — количество полученных пакетов;
- 0% packet loss — сколько процентов потерянных пакетов;
- 13322mc time — время работы;
Чтобы не прерывать процедуру в будущем, можно ввести дополнительный аргумент «-с», тем самым мы зададим количество отправляемых пакетов.
ping -c 4 vseprolinux.ru
Пинг конкретного порта

Часто приходится диагностировать доступность порта на хосте. Однако, команда пинг не умеет этого делать. Нельзя просто написать ping номер порта. Так это не работает.
Для такой задачи идеально подойдет — telnet. Он по умолчанию устанавливается в операционную систему Linux.
Как в linux остановить выполнение ping. Знакомимся с командой Ping. Изменение размера отправляемых пакетов
Всем знакомы ситуации, когда интернет на компьютере неожиданно разрывается, такое поведение можно наблюдать при использовании ADSL модемов, Wifi на большом расстоянии, GSM и других подобных ненадежных технологий. Быстро выяснить есть ли на компьютере интернет можно с помощью утилиты ping.
Но область ее применения намного шире, ее используют сетевые администраторы для проверки доступности удаленного узла в сети, она применяется в различных скриптах и многих других местах. В этой статье будет рассмотрена команда ping в Linux, мы поговорим о том, как пользоваться утилитой, как она работает, рассмотрим ее опции и возможности.
Утилита ping — это очень простой инструмент для диагностики сети. Она позволяет проверить доступен удаленный хост или нет и все. Для этого утилита проверяет, может ли хост отвечать на сетевые запросы с помощью протокола ICMP.
Надеюсь, не нужно говорить, что все данные по сети передаются в виде небольших пакетов. Программа передает небольшой пакет с данными ICMP и ожидает получить обратно пакет ответа, если получает, то считается что удаленный узел доступен. ICMP или Internet Control Message Protocol — это надстройка над протоколом IP, которая используется для передачи служебных сообщений и сообщений и ошибках.
Протокол ICMP может передавать только два типа пакетов — это сообщения с отчетами про ошибки и сообщения запросов. В свою очередь, сообщения запросов делятся на:
- Сообщение эхо-запрос;
- Сообщение эхо-ответ.
Попытаемся разобраться что делает команда ping. Итак, когда вы отправляете запрос ping удаленному узлу, утилита устанавливает для каждого пакета уникальный идентификатор, а также TTL и время отправки пакета. Если хост доступен, он отправляет ответ, на основе времени отправки утилита может вычислить время прохождения пакета туда и обратно. Затем отправляется следующий пакет. В конце рассчитывается общее количество отправленных и принятых пакетов, процент потерь и другие данные.
Команда Ping
Теперь нам осталось немного попрактиковаться. Но перед тем, как мы перейдем к практике давайте рассмотрим синтаксис команды и ее опции. Синтаксис довольно прост:
$ ping опции адрес_узла
Формат команды ping очень прост. В качестве адреса узла можно передавать как ip адрес, так и доменное имя. Опции настраивают поведение утилиты. Рассмотрим основные из них:
- -4 — использовать только ipv4 (по умолчанию);
- -6 — использовать только ipv6;
- -A — адаптивный режим, время между отправками пакета адаптируется к времени передачи и приема пакета, но не меньше чем 200мс;
- -b — разрешить ping широковещательного адреса;
- -с — количество пакетов, которые нужно отправить;
- -D — выводить время в виде UNIX timestamp;
- -f — режим флуда, в этом режиме пакеты передаются без задержек, может использоваться для совершения DoS атак на отдельные узлы. Количество точек, которые выводит утилита обозначает количество потерянных пакетов;
- -i — интервал в секундах между отправкой пакетов;
- -I — использовать этот сетевой интерфейс для отправки пакетов;
- -l — режим перегрузки, отправляется очень много пакетов и система не следит за ответными пакетами;
- -n — не получать домены для ip адресов;
- -r — игнорировать таблицы маршрутизации и отправить пакет на указанный интерфейс;
- -s — размер одного пакета;
- -t — установить TTL вручную;
- -v — более подробный вывод.
Теперь, когда мы рассмотрели основные параметры команды ping и ее синтаксис, пришло время практики, дальше поговорим о том, как сделать ping определенного узла в Linux.
Как пользоваться Ping?
Для проверки работоспособности сети часто используется программа ping любого сайта, который всегда доступен, например, google.com или еще проще и короче ya.ru. Вам будет достаточно передать утилите в параметрах этот адрес, она сама найдет ip и сделает все нужное:
Как я и писал выше, для каждого пакета выводится уникальный идентификатор icmp_seq, количество узлов до целевого узла ttl и время, потраченное на доставку пакета time. Чтобы остановить ping нажмите сочетание клавиш Ctrl+C . В конце утилита вывела общую статистику:
- packets transmitted — отправлено пакетов;
- received — получено пакетов;
- packet loss — процент потерянных пакетов;
- time — обще время работы;
rtt min/avg/max/mdev — минимальное время/среднее время/максимальное время/квадратичное отклонение.
Если выполнение команды ping не остановить, то пакеты могут отправляться очень долгое время, это создает дополнительную нагрузку на сервер и поэтому не желательно. Вы можете сразу в вызове команды ограничить количество отправляемых пакетов с помощью опции -c:

Точно так же как мы выполняем ping для домена, можно указать ip адрес напрямую. Это позволяет проверить есть ли сеть когда неверно настроены серверы DNS. Например:

Следующий вид отправки ping сообщений, это ping флуд. С помощью таких пакетов можно выполнить нагрузочное тестирование канала или даже заглушить интернет соединение на одной из машин. Но эти функции можно использовать только с правами суперпользователя. Для организации ping флуда укажите опцию -f:

По умолчанию, в обычном режиме, каждый следующий пакет отправляется, когда получен ответ на предыдущий. Но вы можете сами установить интервал между отправкой пакетов -i:

Здесь программа ping выполняет так званный, настраиваемый флуд, вы указываете с какой интенсивностью нужно отправлять пакеты. С помощью опции -D вы можете увидеть Unix Timestamp для каждого сообщения:

Выводы
В этой статье мы рассмотрели что такое команда ping в linux, как ее использовать основные параметры и методы применения. Этот очень простой инструмент можно применять для тестирования неполадок сети и их исправления. В этом плане утилита может стать незаменимой.
Команда PING это, пожалуй, самая используемая сетевая утилита командной строки. PING присутствует во всех версиях всех операционных систем с поддержкой сети и является простым и удобным средством опроса узла по имени или его IP-адресу.
Для обмена служебной и диагностической информацией в сети используется специальный протокол управляющих сообщений ICMP (Internet Control Message Protocol). Команда ping позволяет выполнить отправку управляющего сообщения типа Echo Request (тип равен 8 и указывается в заголовке ICMP-сообщения) адресуемому узлу и интерпретировать полученный от него ответ в удобном для анализа виде. В поле данных отправляемого icmp-пакета обычно содержатся символы английского алфавита. В ответ на такой запрос, опрашиваемый узел дожжен отправить icmp-пакет с теми же данными, которые были приняты, и типом сообщения Echo Reply (код типа в ICMP-заголовке равен 0) . Если при обмене icmp-сообщениями возникает какая-либо проблема, то утилита ping выведет информацию для ее диагностики.
Формат командной строки:
Ping [-t] [-a] [-n число] [-l размер] [-f] [-i TTL] [-v TOS] [-r число] [-s число] [[-j списокУзлов] | [-k списокУзлов]] [-w таймаут] конечноеИмя
-t — Непрерывная отправка пакетов. Для завершения и вывода статистики используются комбинации клавиш Ctrl + Break (вывод статистики и продолжение), и Ctrl + C (вывод статистики и завершение).
-a — Определение адресов по именам узлов.
-n число — Число отправляемых эхо-запросов.
-l размер — Размер поля данных в байтах отправляемого запроса.
-f — Установка флага, запрещающего фрагментацию пакета.
-i TTL — Задание срока жизни пакета (поле «Time To Live»).
-v TOS — Задание типа службы (поле «Type Of Service»).
-r число — Запись маршрута для указанного числа переходов.
-s число — Штамп времени для указанного числа переходов.
-j списокУзлов — Свободный выбор маршрута по списку узлов.
-k списокУзлов — Жесткий выбор маршрута по списку узлов.
-w таймаут — Максимальное время ожидания каждого ответа в миллисекундах.
ping google.com — эхо-запрос к узлу с именем google.com с параметрами по умолчанию — количество пакетов равно 4, длина массива данных = 32 байта.
ping -6 ya.ru — пинг узла ya.ru с использованием протокола Ipv6
ping -a 192.168.1.50 — выполнить пинг с определением имени конесного узла по его адресу.
ping -s 192.168.0.1 computer — пинг узла computer от источника 192.168.0.1. Используется когда на компьютере имеется несколько сетевых интерфейсов.
ping w 5000 ya.ru — пинг с таймаутом ожидания равным 5 секунд (по умолчанию — 4 сек).
ping -n 5000 -l 1000 сайт — опрос узла сайт 5000 раз, пакетами с данными длиной в 1000байт. Допустимая максимальная длина данных — 65500.
ping -n 1 -l 3000 -f ya.ru — пинг с запретом фрагментации пакета.
ping -n 1-r 3 ya.ru — отправить 1 эхо-запрос на узел ya.ru с отображением первых 3-х переходов по маршруту.
ping -i 5 ya.ru — пинг с указанием времени жизни TTL=5. Если для достижения конечного узла потребуется большее количество переходов по маршруту, то маршрутизатор, прервавший доставку ответит сообщением ”Превышен срок жизни (TTL) при передаче пакета.”
Обобщенная схема соединения компьютера (планшета, ноутбука домашней сети) с удаленным конечным узлом можно представить следующим образом:
В качестве домашней сети используется наиболее распространенная сеть с IP-адресами 192.168.1.0 /255.255.255.0 . Речь идет об IPv4 – IP протоколе версии 4, где для адресации используется 4 байта. IP- адреса принято представлять в виде десятичных значений байтов, разделяемых точками. Каждое устройство в сети должно иметь свой уникальный адрес. Кроме адреса, в сетевых настройках используется маска сети (маска подсети). Маска имеет такой же формат представления, как и адрес. Комбинация адреса и маски определяет диапазон адресов, которые принадлежат локальной сети — 192.168.1.0-192.168.1.255. Первый и последний адреса диапазона не назначаются отдельным сетевым устройствам, поскольку используются в качестве адреса сети и широковещательного адреса. Обычно адрес роутера делают равным 192.168.1.1 или 192.168.1.254. Это не является обязательным стандартом, но на практике используется довольно часто. Единичные биты маски определяют постоянную часть IP-адреса сети, а нулевые — выделяемые отдельным узлам. Значение 255 — это байт с установленными в единицу битами. Маска сети служит средством определения диапазона IP-адресов, принадлежащих локальной сети. Устройства с такими адресами достижимы локально, без использования маршрутизации . Маршрутизация — это способ обмена данными с сетевыми устройствами не принадлежащими к данной локальной сети через специальное устройство — маршрутизатор (router, роутер). Маршрутизаторы представляют собой специализированные компьютеры с несколькими сетевыми интерфейсами и специализированным программным обеспечением обеспечивающим пересылку IP-пакетов между отправителем и получателем, находящимися в разных сетях. В такой пересылке могут участвовать несколько маршрутизаторов, в зависимости от сложности маршрута. Домашний роутер — простейшая разновидность маршрутизатора, который обеспечивает пересылку пакетов, адресованных во внешние сети следующему по маршруту маршрутизатору в сети провайдера. Следующий маршрутизатор проверяет достижимость адреса конечного узла локально, и либо пересылает ему данные, либо передает их следующему маршрутизатору в соответствии с таблицей маршрутов. Так происходит до тех пор, пока данные не достигнут получателя или закончится время жизни пакета.
Команда PING можно использовать для диагностики отдельных узлов:
ping 127.0.0.1 — это пинг петлевого интерфейса. Должен выполняться без ошибок, если установлены и находятся в работоспособном состоянии сетевые программные компоненты.
ping свой IP или имя — пинг на собственный адрес или имя. Должен завершаться без ошибок, если установлены все программные средства протокола IP и исправен сетевой адаптер.
ping IP-адрес роутера — должен выполняться, если исправна сетевая карта компьютера, исправен кабель или беспроводное соединение, используемые для подключения к роутеру и исправен сам роутер. Кроме того, настройки IP должны быть такими, чтобы адрес компьютера и роутера принадлежали одной подсети. Обычно это так, когда сетевые настройки выполняются автоматически средствами DHCP-сервера маршрутизатора.
ping yandex.ru — выполнить опрос узла с именем yandex.ru . Если опрос завершается с ошибкой, то причиной может быть не только отсутствие связи с маршрутизатором провайдера, но и невозможность определения адреса узла yandex.ru из-за проблем с программными средствами разрешения имен.
ping 8.8.8.8 — выполнить опрос узла с IP-адресом 8.8.8.8 . Если опрос по адресу выполняется без ошибок, а опрос по имени завершается сообщением о неизвестном узле, то проблема в разрешении имен. Причиной может быть неработоспособность DNS-сервера провайдера. В этом случае, можно попробовать сменить его в настройках сетевого соединения на публичные DNS сервера Google с адресами 8.8.4.4 и 8.8.8.8. Также, проблема может быть вызвана плохим качеством связи с провайдером, что сопровождается слишком большим временем отклика и пропаданием пакетов.
ping -t yandex.ru — выполнять ping до нажатия комбинации CTRL+C, При нажатии CTRL+Break — выдается статистика и опрос узла продолжается.
Ping -n 1000 -l 500 192.168.1.1 — выполнить ping 1000 раз с использованием сообщений, длиной 500 байт. Пинг пакетами стандартной длины в 32 байта может выполняться без ошибок, а на длинных — с ошибками, что характерно для беспроводных соединения при низком уровне сигнала в условиях интенсивных помех.
Ping -n 1 -r 9 -w 1000 yandex.ru — выполнить ping 1 раз (ключ -n 1), выдавать маршрут для первых 9 переходов (-r 9), ожидать ответ 1 секунду (1000мсек)
В результате выполнения данной команды отображается и трассировка маршрута:
Обмен пакетами с yandex.ru с 32 байтами данных:
Ответ от 87.250.251.11: число байт=32 время=36мс TTL=54
Маршрут: 81.56.118.62 ->
81.56.112.1 ->
10.109.11.9 ->
10.109.11.10 ->
195.34.59.105 ->
195.34.52.213 ->
195.34.49.121 ->
195.34.52.213 ->
87.250.239.23
Статистика Ping для 87.250.251.11:
Пакетов: отправлено = 1, получено = 1, потеряно = 0
(0% потерь)
Приблизительное время приема-передачи в мс:
Минимальное = 36мсек, Максимальное = 36 мсек, Среднее = 36 мсек
В данном примере, между отправителе и получателем пакетов выстраивается цепочка из 9 маршрутизаторов. Нужно учитывать тот факт, что в версии утилиты ping.exe для Windows, число переходов может принимать значение от 1 до 9. В случаях, когда этого значения недостаточно, используется команда tracert
Отсутствие эхо-ответа не всегда является признаком неисправности, поскольку иногда по соображениям безопасности, некоторые узлы настраиваются на игнорирование эхо-запросов, посылаемых PING. Примером может служить узел microsoft.com и некоторые маршрутизаторы в сетях небольших провайдеров.
Использование PING в командных файлах.
Нередко, команда PING используется для организации задержек в командных файлах. Выполняется пингование петлевого интерфейса с указанием нужного значения счетчика пакетов, задаваемого параметром -n . Посылка эхо-запросов выполняется с интервалом в 1 секунду, а ответ на петлевом интерфейсе приходит практически мгновенно, поэтому задержка будет приблизительно равна счетчику минус единица:
ping -n 11 127.0.0.1 — задержка в 10 секунд.
Команда PING используется в командных файлах для определения доступности IP-адресов. Поскольку, результат опроса никак не отражается в переменной ERRORLEVEL , то вместо ее анализа используется поиск определенных признаков в данных стандартного вывода PING. Если внимательно посмотреть на сообщения программы ping.exe при опросе доступного и недоступного узла, то можно заметить, что они значительно отличаются
ping 456.0.0.1 — ping на несуществующий адрес
Ответ на такую команду может отличаться от конкретной версии утилиты, и может быть приблизительно таким
При проверке связи не удалось обнаружить узел 456.0.0.1. Проверьте имя узла и повторите попытку.
ping yandex.ru — ping на адрес узла yandex.ru
Ответ на ping доступного узла:
Обмен пакетами с yandex.ru по 32 байт:
Ответ от 87.250.250.11: число байт=32 время=10мс TTL=55
Таким образом, для решения задачи определения доступности узла в командном файле, достаточно проанализировать характерные слова в выводе ping.exe при успешном ответе. Наиболее характерно в данном случае наличие слова TTL . Оно никогда не встречается при возникновении ошибки и состоит всего лишь из символов английского алфавита. Для поиска «TTL» в результатах ping.exe удобнее всего объединить ее выполнение в цепочку с командой поиска строки символов FIND.EXE (конвейер ping и find). Если текст найден командой FIND, то значение переменной ERRORLEVEL будет равно 0
ping -n 1 COMPUTER | find /I «TTL» > nul
if %ERRORLEVEL%==0 goto LIVE
ECHO computer недоступен
подпрограмма обработки недоступного состояния
.
Exit
:LIVE — начало подпрограммы обработки состояния доступности узла
.
.
В более простом варианте можно использовать команды:
PING yandex.ru |find «TTL TTL /mouse-and-keyboard/osnovnye-apparatnye-i-programmnye-komponenty-seti-ukazhite/»>компьютерной сети инструмент ping встроен в большинство операционных систем, которые работают практически так же. Вы выдаете команду ping вместе с определенным URL или IP-адресом. Ваш компьютер отправляет на это несколько пакетов информации, а затем ждет ответа. Когда он получает ответ, инструмент ping показывает Вам, сколько времени каждый пакет потратил, чтобы совершить это путешествие, или сообщает, что ответа не было.
Это звучит просто, и это так. Вы можете проверить, может ли Ваш компьютер подключаться к другому устройству — например, Вашему маршрутизатору — в локальной сети или к устройству в Интернете. Это может помочь Вам определить, есть ли сетевая проблема где-то в Вашей локальной сети или где-то еще. Время, необходимое для возврата пакетов, может помочь Вам определить медленное соединение или если Вы столкнулись с потерей пакетов.
И не имеет значения, какую операционную систему Вы используете. Поднимите терминал или окно командной строки, и Вы можете использовать ping для MacOS, Linux или любой версии Windows.
Как использовать Ping
Мы собираемся использовать командную строку Windows в нашем примере здесь. Но Dы также можете использовать команду ping в Windows PowerShell или в приложении Terminal на macOS или любом дистрибутиве Linux. Как только Dы доберетесь до фактической команды, она работает одинаково везде.
В Windows нажмите Windows + R. В окне «Запуск» введите «cmd» в поле поиска и нажмите «Enter».

В командной строке введите «ping» вместе с URL-адресом или IP-адресом, который Вы хотите проверить, и нажмите «Enter»..

Этот ответ показывает URL-адрес, который Вы просматриваете, IP-адрес, связанный с этим URL-адресом, и размер пакетов, отправляемых в первой строке. Следующие четыре строки показывают ответы от каждого отдельного пакета, включая время (в миллисекундах), которое требуется для ответа, и время жизни (TTL) пакета, которое представляет собой количество времени, которое должно пройти до сброса пакета.
Внизу Вы увидите сводку, которая показывает, сколько пакетов было отправлено и получено, а также минимальное, максимальное и среднее время отклика.
И на следующем рисунке мы пингуем маршрутизатор в нашей локальной сети, используя его IP-адрес. Мы также получаем от него нормальный ответ.

Когда инструмент ping не получает ответа от любых устройств, которые Вы пинговали, это также дает Вам знать об этом.

И вот как использовать пинг на самом базовом уровне. Конечно, как и большинство команд, есть несколько дополнительных опций, которые Вы можете использовать, чтобы заставить его вести себя по-другому. Например, Вы можете заставить его отслеживать пункт назначения до тех пор, пока Вы не остановите команду, не укажете, сколько раз Вы хотите, чтобы он выполнял ping, задал, как часто он должен пинговать, и многое другое. Но, если Вы не выполняете некоторые конкретные типы устранения неполадок, Вам не нужно беспокоиться об этих расширенных параметрах.
Если Вам это интересно, просто введите «ping /?» В командной строке, чтобы увидеть список параметров.

Что Вы можете сделать с помощью Ping
Теперь, когда Вы знаете, как использовать эту команду, вот некоторые интересные вещи, которые Вы можете сделать с ней:
- Ping URL (например, сайт) или IP-адрес, чтобы узнать, можете ли Вы добраться до интернет-адресата. Если Вы получите успешный ответ, Вы знаете, что все сетевые устройства между Вами и этим получателем работают, включая сетевой адаптер на Вашем компьютере, Ваш маршрутизатор и любые устройства в Интернете между Вашим маршрутизатором и пунктом назначения. И если Вы заинтересованы в дальнейшем изучении этих маршрутов, Вы можете использовать другой сетевой инструмент с именем tracert, чтобы сделать это.
- Ping URL-адреса, чтобы увидеть его IP-адрес. Если Вы хотите узнать IP-адрес для определенного URL-адреса, Вы можете отправить URL-адрес. Инструмент ping показывает Вам вверху IP-адрес, с которым он работает.
- Ping Вашего маршрутизатора, чтобы увидеть, можете ли Вы достичь его. Если Вы не можете успешно выполнить ping интернет адреса, Вы можете попробовать выполнить ping-соединение с Вашим маршрутизатором. Успешный ответ позволяет узнать, что Ваша локальная сеть работает нормально, и проблема, связанная с доступом к интернет-сайту, находится где-то вне Вашего контроля.
- Ping Вашего loopback-адреса (127.0.0.1). Если Вы не можете успешно выполнить ping роутера, но Ваш маршрутизатор, похоже, включен и работает, Вы можете попробовать ping так называемый loopback адреса. Этот адрес всегда 127.0.0.1, и его успешное тестирование позволяет узнать, что сетевой адаптер на Вашем компьютере (и сетевое программное обеспечение в Вашей ОС) работает правильно.
Примечание: Вы не можете получить ответ ping с других компьютеров в локальной сети, потому что встроенные брандмауэры на этих устройствах не позволяют им отвечать на запросы ping. Если Вы хотите иметь возможность пинговать эти устройства, Вам необходимо отключить эту настройку, чтобы разрешить прохождение через брандмауэр.
В приведенном выше списке используется внешний подход, когда Вы сначала отправляете запрос на самый удаленный пункт назначения, а затем прокладываете путь к более локальным устройствам. Некоторым людям нравится работать наоборот, сначала пинг loopback адреса, затем маршрутизатор (или другое локальное устройство), а затем интернет-адрес.
И, конечно, о чем мы говорим в этой статье, в основном относится к использованию ping для устранения неполадок в домашней или малой бизнес-сети. Кроме того, если Вам поручено устранять неполадки в крупных сетях, Вы, вероятно, уже знаете, как использовать пинг и многие другие сетевые инструменты.
Думаю любой администратор знает команду ping, которая используется для проверки доступности хостов. Если вы опытный администратор, вероятнее всего вы не узнаете ничего нового из этой статьи. Если же ваши знания ограничиваются банальным ping ya.ru, советую дочитать статью до конца.
Пример 1. Изменение интервала времени между отправкой пакетов
По умолчанию пакеты посылаются с промежутком в одну секунду. Вы можете изменить это интервал с помощью опции -i.
Увеличение интервала
Пример: Ждем 5 секунд перед отправкой следующего пакета.
Уменьшаем интервал
Пример: Ждем 0.1 секунду перед отправкой следующего пакета.
Заметка: Только суперпользователь может указывать интервал меньше 0.2 секунды. В противном случае вы увидите такое сообщение.
$ ping -i 0.1 127.0.0.1 PING 0 (127.0.0.1) 56(84) bytes of data. ping: cannot flood; minimal interval, allowed for user, is 200ms
Пример 2. Проверка локального интерфейса
Перед проверкой удаленного хоста сначала рекомендуется проверить все ли в порядке с вашим локальным интерфейсом. Для этого можно использовать следующие 3 метода.
Пингуем ноль (0)
Это самый простой и быстрый способ:
$ ping 0 PING 0 (127.0.0.1) 56(84) bytes of data. 64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.024 ms ^C
Пингуем по имени
$ ping localhost PING localhost (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.051 ms 64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.055 ms ^C — localhost ping statistics — 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.051/0.053/0.055/0.002 ms
Пингуем по IP
$ ping 127.0.0.1 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.051/0.053/0.055/0.002 ms
Не должно быть никаких потерь пакетов.
Пример 3. Послать N пакетов и завершить работу
Для автоматического завершения пинга после отправки указанного вами числа пакетов исползуется опция -c.
В следующем примере мы отправим 5 пакетов.
$ ping -c 5 google.com PING google.com (74.125.45.100) 56(84) bytes of data. 64 bytes from yx-in-f100.google.com (74.125.45.100): icmp_seq=1 ttl=44 time=731 ms 64 bytes from yx-in-f100.google.com (74.125.45.100): icmp_seq=2 ttl=44 time=777 ms 64 bytes from yx-in-f100.google.com (74.125.45.100): icmp_seq=3 ttl=44 time=838 ms 64 bytes from yx-in-f100.google.com (74.125.45.100): icmp_seq=4 ttl=44 time=976 ms 64 bytes from yx-in-f100.google.com (74.125.45.100): icmp_seq=5 ttl=44 time=1071 ms — google.com ping statistics — 5 packets transmitted, 5 received, 0% packet loss, time 4216ms rtt min/avg/max/mdev = 731.039/879.129/1071.050/126.625 ms
Пример 4. Версия команды ping
С помощью опции -V мы можем посмотреть текущую версию команды.
$ ping -V ping utility, iputils-sss20071127
Пример 5. Флуд в сети
Суперпользователь может послать тысячи и более пакетов в короткие сроки с помощью опции -f.
Как показано ниже, ping -f послал более чем 400,000 пакетов за несколько секунд.
# ping -f localhost PING localhost (127.0.0.1) 56(84) bytes of data. .^C — localhost ping statistics — 427412 packets transmitted, 427412 received, 0% packet loss, time 10941ms rtt min/avg/max/mdev = 0.003/0.004/1.004/0.002 ms, ipg/ewma 0.025/0.004 ms
Пример 6. Звуковой сигнал
Эта опция исползуется редко, но бывает очень полезна. Вы запускается пинг, ответа от хоста нет, вы разбираетесь в чем дело, и как только проблема будет решена и удаленный хост ответит, вы услышите звук.
Пример 7. Печатать только статистику выполнения команды
С помощью опции -q можно пропустить ответы удаленного хоста и вывести сразу полученную статистику.
$ ping -c 5 -q 127.0.0.1 PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data. — 127.0.0.1 ping statistics — 5 packets transmitted, 5 received, 0% packet loss, time 3998ms rtt min/avg/max/mdev = 0.047/0.053/0.061/0.009 ms
Пример 8. Изменение размера пакета
Вы можете изменить размер посылаемого пакета используя опцию -s.
Пример: Изменим размер пакета с 56 до 100.
$ ping -s 100 localhost PING localhost (127.0.0.1) 100(128) bytes of data. 108 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.022 ms 108 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.021 ms 108 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.020 ms ^C — localhost ping statistics — 3 packets transmitted, 3 received, 0% packet loss, time 1998ms rtt min/avg/max/mdev = 0.020/0.021/0.022/0.000 ms
Пример 9. Длительность выполнения команды
С помощью опции -w мы можем указать время выполнения команды в секундах.
В следующем примере мы будем пинговать локалхост в течение 5-ти секунд.
$ ping -w 5 localhost
Заметка: В случае одновременного использования опций -w и -c завершение работы утилиты наступит в момент срабатывания первого ограничения.
Пример 10. Краткая статистика с SIGQUIT
Не прерывая команду пинг, можно посмотреть статистику выполнения. Для этого нужна нажать CTRL + |
$ ping -w 100 localhost PING localhost (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost (127.0.0.1): icmp_seq=10 ttl=64 time=0.021 ms 64 bytes from localhost (127.0.0.1): icmp_seq=11 ttl=64 time=0.022 ms 11/11 packets, 0% loss, min/avg/ewma/max = 0.020/0.022/0.022/0.024 ms 64 bytes from localhost (127.0.0.1): icmp_seq=12 ttl=64 time=0.021 ms 64 bytes from localhost (127.0.0.1): icmp_seq=13 ttl=64 time=0.022 ms 64 bytes from localhost (127.0.0.1): icmp_seq=14 ttl=64 time=0.021 ms 64 bytes from localhost (127.0.0.1): icmp_seq=15 ttl=64 time=0.021 ms 19/19 packets, 0% loss, min/avg/ewma/max = 0.020/0.022/0.022/0.024 ms 64 bytes from localhost (127.0.0.1): icmp_seq=31 ttl=64 time=0.022 ms 64 bytes from localhost (127.0.0.1): icmp_seq=32 ttl=64 time=0.022 ms 32/32 packets, 0% loss, min/avg/ewma/max = 0.020/0.022/0.022/0.027 ms 64 bytes from localhost (127.0.0.1): icmp_seq=33 ttl=64 time=0.023 ms ..
Лучшая посуда от мировых брендов в интернет магазине: BergHOFF, Luminarc, Vitesse
Команда ping используются, чтобы убедиться, что компьютер может взаимодействовать с Сетью и ресурсами внутри нее. Ping работает за счёт отправки echo request сообщений по протоколу ICMP ( Internet Control Message Protocol ) и ожидания ответа. Она позволяет узнать, сколько ответов получено, и сколько времени на это ушло:
Синтаксис команды Ping
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS] [-r count] [-s count] [-w timeout] [-R] [-S srcaddr] [-p] [-4] [-6] target
T = эта опция будет пинговать целевое устройство до тех пор, пока вы принудительно не остановите запрос с помощью сочетания клавиш Ctrl+C .
A = запросит имя хоста по целевому IP-адресу .
N число = задаёт количество ICMP сообщений, которое должно быть отправлено. Если выполнить команду ping без указания этого параметра, то по умолчанию будет отправлено 4 запроса.
L размер = задает размер пакета echo-запросов (от 32 до 65,527 ). Без указания этой опции ping отправляет echo-запросы размером в 32 байта.
F = предотвращает фрагментацию echo-запросов маршрутизаторами, находящимися в цепочке между вами и целевым устройством. Опцию -f часто используют для отладки проблем, связанных с PMTU ( Path Maximum Transmission Unit ).
I TTL = задаёт длительность TTL ( Time to Live ), максимальное значение которой составляет 255 .
V TOS = устанавливает значение TOS ( Type of Service ). Параметр не работает в Windows 7 и выше.
R число = эту опцию для команды ping нужно использовать для указания количества переходов между вашим и целевым компьютером, которое вы хотите записать и вывести. Максимальное значение 9 , так что, если вам интересно узнать точное количество звеньев между двумя устройствами, то лучше использовать tracert .
S число = время в формате Internet Timestamp , за которое получается и отправляется каждый echo-запрос . Максимальное значение здесь 4 , а это значит, что можно зафиксировать лишь первых 4 перехода.
W timeout = значения тайм-аута в миллисекундах, в течение которого ping будет ожидать каждого ответа. Если не использовать опцию -w, то тайм-аут по умолчанию будет составлять 4000 миллисекунд ( 4 секунды ).
R = использование заголовка для проверки также и обратного маршрута.
S srcaddr = используемый адрес источника.
P = используется для проверки состояния адреса Hyper-V Network Virtualization .
4 = проверка состояния подключения только по протоколу IPv4 . Это требуется, когда цель имеет только имя хоста и неизвестен IP-адрес .
6 = принудительная проверка состояния подключения по протоколу IPv6 . Это необходимо, когда известно только имя хоста.
target (цель ) = удаленное устройство, состояние которого нужно проверить. Это может быть как IP , так и имя хоста.
/? = вывод справки обо всех доступных параметрах команды ping .
Примечание: -f , -v , -r , -s , -j и -k работают только при проверке состояния IPv4-адресов . Опции -R и -S работают только с протоколом IPv6 .
В команде ping описание есть и менее популярные параметры: [-j host-list] , [-k host-list] и [-c compartment] . Чтобы получить дополнительную информацию о них, воспользуйтесь командой /? .
Примеры команды Ping
ping -n 5 -l 1500 www.google.com
В этом примере команда ping используется для проверки состояния хоста www.google.com . Опция -n указывает команде ping на необходимость отправить пять echo-запросов ICMP вместо стандартных четырех, а опция —l задаёт размер пакета для каждого запроса в 1500 байт вместо 32 байт по умолчанию. При таком запросе вы получите следующий результат:
Pinging www.google.com with 1500 bytes of data: Reply from 74.125.224.82: bytes=1500 time=68ms TTL=52 Reply from 74.125.224.82: bytes=1500 time=68ms TTL=52 Reply from 74.125.224.82: bytes=1500 time=65ms TTL=52 Reply from 74.125.224.82: bytes=1500 time=66ms TTL=52 Reply from 74.125.224.82: bytes=1500 time=70ms TTL=52 Ping statistics for 74.125.224.82: Packets: Sent = 5, Received = 5, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 65ms, Maximum = 70ms, Average = 67ms
Пункт 0% loss в статистике проверки состояния 74.125.224.82 говорит о том, что все посланные к www.google.com echo-запросы были возвращены. Это значит, что до тех пор, пока сеть активна, можно взаимодействовать с сайтом Google без каких-либо проблем.
В этом примере использования команды ping в cmd проверяется состояние 127.0.0.1 , который также известен как IP-адрес localhost в протоколе IPv4 .
Ping 127.0.0.1 – отличный способ проверить работоспособность всех функций Windows . Но с помощью этого запроса не получится узнать о состоянии своего или удаленного компьютера. Существует и IPv6-версия этой проверки — ping::1 .
ping -a 192.168.1.22
В этом примере мы пытаемся узнать имя хоста, привязанное к IP-адресу 192.168.1.22 . При этом проверка должна быть проведена в штатном режиме, даже если имя хоста выяснить не удастся.
Pinging J3RTY22 with 32 bytes of data: Reply from 192.168.1.22: bytes=32 time при помощи опции -t ).
Pinging SERVER with 32 bytes of data: Reply from fe80::fd1a:3327:2937:7df3%10: time=1ms Reply from fe80::fd1a:3327:2937:7df3%10: time
Команда Linux ping
В Linux команда ping — один из наиболее часто используемых инструментов для устранения неполадок, тестирования и диагностики проблем с сетевым подключением.

Команда ping отправляет один или несколько пакетов эхо-запроса ICMP (Internet Control Message Protocol) на указанный IP-адрес назначения в сети и ожидает ответ. Пункт назначения после получения пакета отвечает эхо-ответом ICMP.
Содержание
- Возможности
- Синтаксис
- Опции
- Примеры использования команды ping в Linux
- Использование без опций
- Как остановить команду ping в Linux
- Потери пакетов
- Ограничение количества пакетов
- Указание Интернет-протокола
Возможности
С помощью этой утилиты можно определить:
- активен или неактивен удаленный IP-адрес;
- время задержки туда-обратно при связи с пунктом назначения;
- есть ли потеря пакетов.
Синтаксис
ping [опции]
Опции
DNS-имя или IP-адрес -A Использовать адаптивный пинг -c Остановить после ответов -D Выводить временных меток -d Использовать параметр сокета SO_DEBUG -f Флуд ping -I Имя интерфейса, либо адрес -i N секунд между отправкой каждого пакета -L Подавлять закольцовывание многоадресных пакетов -l Отправить количество пакетов во время ожидания ответов -n Не получать DNS-имена -s Использовать как количество байтов данных для отправки -t Определить время жизни -v Подробный вывод -4 Использовать IPv4 -6 Использовать IPv6 Примеры использования команды ping в Linux
Использование без опций
В качестве простейшего примера даём ping для google.com :
oleg@mobile:~:$ ping google.com PING google.com (216.58.214.142) 56(84) bytes of data. 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=1 ttl=119 time=15.9 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=2 ttl=119 time=17.5 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=3 ttl=119 time=12.1 ms 64 bytes from sof02s42-in-f14.1e100.net (216.58.214.142): icmp_seq=4 ttl=119 time=10.5 ms 64 bytes from sof02s42-in-f14.1e100.net (216.58.214.142): icmp_seq=5 ttl=119 time=18.0 ms ^C --- google.com ping statistics --- 5 packets transmitted, 5 received, 0% packet loss, time 4005ms rtt min/avg/max/mdev = 10.509/14.788/17.966/2.987 ms oleg@mobile:~:$Утилита преобразовала доменное имя ( google.com ) в IP-адрес ( 216.58.214.142 ) и начала отправлять пакеты ICMP на целевой IP-адрес. Доступный IP-адрес назначения ответил и утилита напечатала строку, содержащую следующие поля:
Количество байтов данных Значение по умолчанию — 56, что соответствует 64 байтам данных ICMP 64 bytes IP-адрес получателя from fra16s06-in-f142.1e100.net (216.58.214.142) Порядковый номер ICMP для каждого пакета icmp_seq=1 Время жизни ttl=119 Время проверки связи туда-обратно, ms time=15.9 ms
По умолчанию интервал между отправкой нового пакета составляет одну секунду.
Если ответ не возвращается, это означает, что сетевое соединение не установлено. Когда это происходит, это не всегда означает, что IP-адрес назначения не активен. Некоторые хосты могут иметь брандмауэр, который блокирует трафик ICMP или не отвечает на запросы ping .
Как остановить команду ping в Linux
Команда ping будет продолжать отправлять пакеты ICMP на IP-адрес назначения, пока не получит прерывание. Для того чтобы остановить команду, просто нажмите комбинацию клавиш Ctrl+C.
Потери пакетов
После остановки команда ping отображает статистику, включая процент потери пакетов. Потеря пакета означает, что данные были потеряны где-то в сети, что указывает на проблему в сети. В случае потери пакетов, вы можете использовать команду traceroute, чтобы определить, где произошла потеря.
Ограничение количества пакетов
Команда ping по умолчанию отправляет ICMP-пакеты до получения сигнала прерывания. Для ограничения количества пакетов отправляемых эхо-запросов используется опция -c , за которой следует количество пакетов:
oleg@mobile:~:$ ping -c 3 google.com PING google.com (216.58.214.142) 56(84) bytes of data. 64 bytes from sof02s42-in-f14.1e100.net (216.58.214.142): icmp_seq=1 ttl=119 time=15.3 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=2 ttl=119 time=13.0 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=3 ttl=119 time=16.8 ms --- google.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 12.973/15.029/16.820/1.581 ms oleg@mobile:~:$Теперь прерывание произошло автоматически.
Указание Интернет-протокола
Например, для принудительного использования протокола IPv4, передайте команде опцию -4 :
oleg@mobile:~:$ ping -4 -c 3 google.com PING google.com (216.58.214.142) 56(84) bytes of data. 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=1 ttl=119 time=13.5 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=2 ttl=119 time=12.6 ms 64 bytes from fra16s06-in-f142.1e100.net (216.58.214.142): icmp_seq=3 ttl=119 time=14.9 ms --- google.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2003ms rtt min/avg/max/mdev = 12.610/13.666/14.876/0.931 ms oleg@mobile:~:$Заключение
В Linux сетевая утилита командной строки ping позволяет вам проверить подключение на уровне IP данного хоста в сети. Она проста в использовании и может быть очень полезна многим пользователям.