Код
#статьи

Что такое ping (пинг): как проверить качество соединения через командную строку

Когда он высокий — плохо, когда его нет — тоже.

Иллюстрация: Rawpixel / Лиля Брик / Александр Родченко / Annie для Skillbox Media

Прежде чем эта статья появилась на вашем экране, сигнал с устройства (смартфона или ноутбука) прошёл через цепочку маршрутизаторов и серверов по воздуху, оптоволокну или медным кабелям. Такая сложная и громоздкая система не всегда работает стабильно: то сервер перегружен, то канал забит, то ещё какая-нибудь неполадка в сети случится.

И вот когда нужно убедиться в наличии или отсутствии соединения, на помощь приходит тот самый пинг. Что это за зверь такой, как им пользоваться и почему о нём часто плачут геймеры? Давайте разбираться.

Содержание

Что такое ping, от чего он зависит и какой бывает

Начнём с того, что у термина «пинг» есть два значения. Впрочем, они тесно связаны друг с другом.

Пинг в контексте времени

Геймеры и рядовые пользователи интернета чаще всего говорят о пинге, когда у них подвисает онлайн-матч или долго загружается сайт. В таком контексте пинг (ping) — это время, за которое сигнал, отправленный с компьютера, достигает сервера и возвращается. Соответственно, чем пинг ниже, тем комфортнее играть и сёрфить.

От чего зависит пинг и что такое «высокий пинг»

Будет ли подвисать ваша любимая онлайн-игра или сайт, зависит от множества факторов:

Скорость соединения. Чем она ниже, тем выше пинг.

Удалённость сервера. Время прохождения сигнала напрямую зависит от расстояния между вами и сервером.

Сетевое оборудование провайдера. Неисправные или неправильно настроенные коммутаторы и маршрутизаторы нередко являются причиной высокой задержки.

Нагрузка на серверы. Если сервер будет перегружен, то он будет долго обрабатывать запросы и терять пакеты с данными.

Физическое соединение. Повреждение кабеля, электромагнитные помехи, мешающие работе Wi-Fi-роутера, также приводят к увеличению пинга.

Как определить, низкий или высокий у вас пинг? Существует следующая условная классификация:

  • низкий — ниже 50 мс;
  • нормальный — в пределах 50–200 мс;
  • высокий — от 200 и выше.

При низком и нормальном пинге вы не заметите проблем. А вот если ответ на отправленный сигнал пришёл через 500 мс, значит, с вашим соединением явно какие-то проблемы. Игроку онлайн-шутера с таким пингом не позавидуешь.

Девятикратная разница в значении пинга стала весомым преимуществом для победителя
Скриншот: Call of Duty: Modern Warfare 2 / Skillbox Media

Немного душноты. На самом деле вместо «пинга» более грамотно использовать термин RTT (round-trip time), или «круговая задержка». Именно так в компьютерных сетях называют время, за которое запрос проходит от компьютера к серверу и обратно. Более того, RTT является одной из характеристик утилиты ping.

Пинг как команда

Ping — утилита командной строки, позволяющая проверить доступность и качество сетевого соединения вашего компьютера и другого узла сети (компьютера, сервера, сайта).

Ping работает по протоколу ICMP: отправляет запросы (echo request) к узлу назначения и фиксирует их возвращение (echo reply). Процесс отправки пакетов называется пингованием — по его результатам можно судить о качестве сетевого соединения.

Утилиту разработал американский инженер-информатик Майк Муусс в 1983 году. Своё название и принцип работы ping унаследовала от гидролокатора — устройства, которое излучает акустические сигналы и принимает отражённое эхо, что позволяет морякам определить глубину дна.

Инфографика: Майя Мальгина для Skillbox Media

Как узнать свой пинг

Чтобы проверить, высокий у вас пинг или нет, есть несколько способов:

🔵 Онлайн-тесты скорости интернета.

🔵 Стороннее программное обеспечение.

🔵 Командная строка (терминал).

Кратко пройдёмся по каждому из них.

Онлайн-тесты

Самым известным на сегодняшний день онлайн-тестом является speedtest.net. Заходим на сайт, он автоматически определяет вашего провайдера и выбирает оптимальный сервер для измерения. Нажимаем кнопку Go и ждём. В результате сервис выдаёт значения скорости скачивания и загрузки и значение вашего пинга в миллисекундах.

Скриншот: Speedtest / Skillbox Media

Стороннее программное обеспечение

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

PingoMeter

Простейшая в использовании программа, которая потребляет минимум ресурсов. Запускаем, записываем интересующий нас IP-адрес в поле ping IP address, выставляем время обновления, интервал пинга и галочки для сигнализации. Применяем настройки и отслеживаем время отправки — возвращения пакетов в трее.

Интерфейс программы PingoMeter
Скриншот: PingoMeter / Skillbox Media
Узнать подробнее

PingInfoView

Может похвастаться более серьёзными возможностями для мониторинга. Программа позволяет пинговать большое число IP-адресов одновременно, отображая все параметры в реальном времени. Результаты можно сохранять в отдельный файл.

Интерфейс программы PingInfoView
Скриншот: PingInfoView / Skillbox Media
Узнать подробнее

Free Ping Tool

Программа Free Ping Tool отображает данные в табличном виде, а также выводит графики, на которых можно увидеть, как изменяется состояние запросов. Это даёт ещё более наглядное представление о состоянии сетевого соединения. Помимо всего прочего, программа умеет определять маршрут следования пакета до конечного адреса (Traceroute) и доменное имя по IP-адресу (DNS Lookup).

Интерфейс программы Free Ping Tool
Скриншот: Free Ping Tool / Skillbox Media
Узнать подробнее

Команда ping командной строки (терминала)

Утилита ping доступна на всех известных операционных системах и используется в командной строке (если у вас Windows) или терминале (в Linux и macOS).

Синтаксис у неё довольно простой:

ping доменное имя сайта или IP-адрес

Для примера проверим доступность сайта skillbox.ru во всех трёх операционных системах. Введём команду ping skillbox.ru.

Так, и что это значит?

Компьютер отправил несколько запросов к сайту skillbox.ru. Он получил ответы на все отправленные запросы, время задержки (time) не превышает 150 миллисекунд. Следовательно, сайт доступен, соединение хорошее и, значит, контент будет загружаться практически мгновенно.

О технических неполадках на сервере или сетевом оборудовании можно говорить, если пакеты возвращаются с задержкой свыше 500 миллисекунд или при потерях (например, когда из 10 пакетов вернулось лишь четыре).

Также о проблемах с соединением говорят следующие ответы команды:

🔴 Превышен интервал ожидания для запроса.

🔴 Заданный узел недоступен.

🔴 Unknown host skillbox.ru.

🔴 Request timeout for icmp_req =1.

В этом случае необходимо проводить диагностику оборудования и сетевого канала.

При простой проверке сетевой доступности в разных операционных системах мы увидели, что синтаксис команды ping выглядит практически одинаково, однако есть некоторые различия:

ОСWindowsLinux и macOS
ЯзыкРусскийАнглийский
Нумерация запросовНетДа
Стандартное количество отправляемых пакетов4Пока пользователь не прервёт выполнение команды
Стандартное время жизни пакетов (TTL)12864
Размер отправляемых пакетов32 байта64 байта

Дополнительные параметры

У команды ping есть дополнительные параметры, которые расширяют возможности утилиты. Например, с их помощью можно указать количество отправляемых пакетов, интервалы между ними, размер пакетов, используемый сетевой протокол, время ожидания и многое другое.

Параметры прописываются сразу после названия команды:

ping [-параметр] доменное имя сайта или IP-адрес

Обратите внимание: квадратные скобки используются для обозначения дополнительных аргументов функции, прописывать их не нужно.

Теперь познакомимся с самыми распространёнными параметрами.

Отправлять пакеты бесконечно

ping -t skillbox.ru

-t запускает бесконечную отправку пакетов, которую можно остановить принудительно сочетанием клавиш Ctrl + C. Это полезно при проверке, когда интересующий нас адрес недоступен, но должен вот-вот появиться в сети. Применяется только в Windows, потому что в Linux и macOS бесконечная отправка пакетов идёт по умолчанию.

Задать размер пакетов

ping -l 1000 skillbox.ru

-l позволяет задать размер отправляемых пакетов. В нашем примере мы увеличили их с 32 до 1000 байт. Параметр применяется для проверки пропускной способности сети. Для выполнения аналогичной задачи в Linux и macOS используем параметр -s.

Преобразовать IP-адрес в доменное имя

ping -a 77.88.55.60

Параметр -a может попытаться преобразовать IP-адрес в доменное имя. Если команда выполнится успешно, в командной строке Windows отобразится имя сайта.

Включить звуковой сигнал

ping -a 77.88.55.60

Если аналогичный параметр прописать в терминале Linux или macOS, то при возвращении каждого запроса включается звуковой сигнал. Когда адрес начнёт пинговаться, мы сразу это услышим.

Запретить фрагментацию

ping -f 77.88.55.60

Параметр -f запрещает фрагментацию (деление запроса на части), потому что она может вызывать потерю пакетов или увеличивать задержку при их передаче. Происходит это по причине ограничений размера пакета, который способны передать различные сетевые устройства. Работает только на Windows.

Переход во «флуд-режим»

sudo ping -f 77.88.55.60

Если параметр -f прописать в терминале Linux или macOS, то команда ping активирует режим «флуда», при котором ping отправляет пакеты непрерывно без ожидания ответа. Полезная функция, если нужно протестировать пропускную способность сети или обнаружить изменение задержки. Включается только в режиме суперпользователя (sudo).

Список всех параметров в любой ОС доступен по команде ping -help. Для Linux и macOS дополнительно можно открыть встроенное системное руководство по команде man ping.

Для чего нужен пинг и кто им пользуется

Итак, мы разобрались, как узнавать свой пинг и применять утилиту командной строки. А кто и зачем это делает?

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

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

Геймеры могут пропинговать серверы своей любимой игры и по задержке определить, на каком из них будет комфортнее играть.

Подведём итоги

✅ Ping (пинг) — диагностирующая утилита командной строки, работающая по протоколу ICMP и позволяющая проверить доступность и качество сетевого соединения от вашего компьютера до стороннего узла. Но в разговорной речи под пингом также понимают время, за которое сигнал, отправленный с компьютера, достигает сервера и возвращается.

✅ Пинг бывает низкий (до 50 мс), нормальный (50–200 мс) и высокий (от 200 мс и выше) и зависит от множества факторов, в большинстве случаев, связанных с качеством сетевого канала.

✅ Чтобы узнать свой пинг, можно воспользоваться онлайн-тестами скорости интернета, специальным ПО и командной строкой (терминалом).

✅ Чтобы воспользоваться командой, пропишите в терминале или командной строке название команды и IP-адрес или доменное имя сайта. Например:

ping 77.88.55.60

✅ У пинга много параметров, которые позволяют получить более подробную информацию о вашем сетевом соединении. Узнать их можно по команде ping -help, а в Linux и macOS ещё и во встроенном мануале man ping.

✅ Чаще всего пинг используют сисадмины и разработчики, но и рядовым геймерам он может пригодиться.

Изучайте IT на практике — бесплатно

Курсы за 2990 0 р.

Я не знаю, с чего начать
Научитесь: Профессия Python-разработчик Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована