Пинг

PingПинг (от англ. идеофона "ping", передающего звук сканирующего импульса сонара) – консольная утилита, входящая в базовую поставку операционных систем Windows и Linux, которая предназначена для проверки качества передачи данных в компьютерных сетях. Пингом (или пингованием) также называют процесс выполнения программы ping.

Принцип работы пинга заключается в том, что с рабочего компьютера посылается пакет данных на заданный удалённый ПК или сервер. В случае успешного получения пакета сервером, он возвращает его обратно. И так по бесконечному (по умолчанию в Linux) или четырёхкратному (по умолчанию в Windows) циклу. Поскольку процесс обмена пакетами напоминает передачу шарика в настольном теннисе, то некоторые связывают название утилиты именно с игрой в пинг-понг (и даже называют возврат пакета, соответственно, словом "pong").

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

Как пропинговать сайт и зачем это нужно?

Пинг Как пропинговать сайт и зачем это нужно?
Язык:Русский
Формат:
Обновлено:2017-04-15
Автор:





Как пропинговать сайт и зачем это нужно?

Использование таких простых консольных утилит как ping и tracert может многое рассказать о качестве Вашего Интернет-соединения. Мы расскажем Вам как пинговать и трассировать сайты, а также как извлечь из этого максимум пользы.

"Какой у Вас IP? Сейчас я Вас пропингую", – можно услышать от специалиста Вашего провайдера при жалобе на опять неработающий Интернет. Последнее слово сисадмина звучит как-то настораживающе (по этому поводу даже есть пара не совсем цензурных анекдотов :)), однако на самом деле ничего страшного с Вами не сделают. Представитель провайдера просто хочет проверить качество связи с Вашим ПК.

Пинг позволяет увидеть насколько хорошо работает Ваше Интернет-соединение и выявить неполадки на линии. Однако, не стоит думать, что пинг – это прерогатива только бородатых сисадминов. На самом деле каждый может пинговать любые ресурсы Интернета или локальной сети. Сложного в этом ничего нет, а вот польза может быть весьма ощутимой. Поэтому сегодня мы поговорим о "таинственном" слове "ping" и всём, что с ним связано.

Зачем нужен пинг и трассировка

Сказать честно, про существования команды "ping" я знал ещё с тех пор, как у меня появился Интернет, но никакой особой пользы я в ней не видел. Впервые же на практике ощутить важность пинга мне пришлось, когда я захотел поиграть онлайн в Counter Strike 1.6 :)

Вот тут-то и оказалось, что на серверах с пингом выше 100 мс играть было почти нереально из-за вечных подвисаний и лагов. Поэтому одним из первых практических применений предмета нашей статьи для меня стала сортировка доступных игровых серверов по столбцу "Пинг" (или "Latency" – англ. "задержка") примерно в следующей последовательности (см. шаг "5"):

Пинг в Counter Strike 1.6

Фактически, так я понял, что пинг это не просто абстрактные цифры, а вполне реальные значения, которые отражают величину задержки при обмене данными между Вашим компьютером и удалённым сервером. При этом, что интересно, на него не особо влияет выделенная скорость Вашего Интернет-подключения. Высокий пинг (свыше 100 мс) может быть как на простейшем GPRS-канале связи, так и на широкополосном DSL! По сути, длительность задержки напрямую зависит от удалённости запрашиваемого сервера. Хотя, слишком медленный канал тоже плохо...

Кстати, кроме величины задержек в передаче данных, пинг позволяет также получить IP-адрес запрошенного сайта и оценить стабильность подключения по количеству потерянных пакетов (если таковые имеются). Также данная команда может выявить ошибки в работе DNS. Например, если сайт по IP-адресу пингуется, а по имени нет.

С командой "ping" довольно тесно связана и ещё одна команда – "tracert" ("traceroute" в Linux). Если пинг показывает лишь время задержки передачи пакетов между Вашим и удалённым ПК, то трассировка позволяет увидеть полный маршрут этих пакетов с определением узлов, на которых происходят максимальные потери и перенаправления.

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

Думаю, теории хватит – перейдём к практике.


Команда ping

Для выполнения всех команд из сегодняшней статьи нам потребуется только Командная строка (хотя, есть и иные способы, о которых речь пойдёт чуть ниже). Вызвать командную строку можно различными способами, однако самым универсальным, на мой взгляд, является вызов через строку "Выполнить". Открываем её нажатием сочетания клавиш WIN+R, вводим команду "cmd" (без кавычек) и жмём Enter.

В открывшемся окошке терминала введём команду вида: "ping bestfree.ru" (без кавычек), где "ping" – запуск программы пинга, а "bestfree.ru" – адрес Интернет-ресурса, который мы пингуем. Получим примерно такой результат:

Ping в Windows

Windows по умолчанию отправит 4 пакета данных на запрошенный Вами веб-ресурс, при этом расшифровав его IP. После завершения процесса тестирования Вы получите отчёт о количестве потерь данных в процентах (если они будут) и средних значениях пинга.

В принципе, в большинстве случаев данных статистики стандартной команды ping хватит для быстрой оценки ситуации. Однако, при необходимости мы можем дополнить команду рядом параметров, которые изменят её поведение тем или иным образом. Чтобы посмотреть список всех доступных возможностей воспользуемся справкой, введя команду "ping /?" (без кавычек):

Параметры команды Ping в Windows

Для проверки устойчивости канала связи иногда недостаточно всего четырёх пакетов данных. В этом случае полезно запускать пинг в бесконечном цикле, как это делается по умолчанию в Linux. Для этого вышеприведённая нами команда дополняется ключом "-t": "ping bestfree.ru -t" (прервать выполнение можно нажатием CTRL+C, а получить статистику и продолжить пингование CTRL+Break):

Бесконечный ping в Windows

Как альтернативу бесконечному пингу можно использовать пингование заданным количеством пакетов. Для этого используется ключ "-n" с нужным числом, например: "ping bestfree.ru -n 10".

При плохом соединении пинг со стандартными настройками может не успевать выполниться и будет отображать до 100% потерь при реально имеющейся связи (хоть и медленной). В этом случае целесообразно увеличить время существования пакета, которое обозначается аббревиатурой TTL (от англ. "Time To Live"). Сделать это можно, использовав ключ "-i" с нужным числом в миллисекундах. Например, так можно задать максимально возможное TTL в 255 мс: "ping bestfree.ru -i 255".

Команда tracert

Второй по значимости командой для диагностики сетевого соединения является команда "tracert", которая в базовой своей форме практически не отличается от пинга, но даёт несколько более расширенный результат с упором на перечисление всех промежуточных узлов соединения:

Трассировка в Windows

Как и в случае с пингом, tracert выдаёт нам IP-адрес конечного запрошенного веб-сайта (по адресу же можно проводить и трассировку). Однако, далее следует перечисление всех серверов, через которые проходит сигнал (по умолчанию их максимальное количество – 30).

Строка с данными о сервере называется "прыжком" или "хопом" (от англ. "hop" – "прыжок"). Она содержит в себе три замера (в миллисекундах), отображающих время ожидания ответа (по умолчанию до 5 секунд), название узла и его IP-адрес.

Как и ping, tracert имеет ряд дополнительных параметров, получить список которых можно командой: "tracert /?" (без кавычек):

Ключи команды трассировки в Windows

Из всех доступных параметров запуска наиболее полезными могут стать ключи "-h" (задаёт максимальное количество прыжков) и "-w" (позволяет увеличить интервал ожидания ответа сервера). В качестве примера можно использовать следующую составную команду, которая ограничивает количество прыжков до 10 и увеличивает время ожидания пакета до 9 секунд: "tracert bestfree.ru -h 10 -w 9000":

Пользовательские параметры трассировки

Программы и сервисы для пинга

В принципе, в выполнении пинга и трассировки через Командную строку нет ничего сложного. Вы даже можете без особых ухищрений сохранить результаты в текстовый файл для того, чтобы переслать их кому-либо по почте. Для этого достаточно после нашей команды всего лишь поставить знак "больше" и задать путь сохранения с именем результирующего файла (например: "ping bestfree.ru > C:\BFping.txt").

Однако, некоторые товарищи просто панически боятся Командной строки или не любят лишний раз трогать клавиатуру, поэтому для них существует целый ряд графических реализаций команд ping и tracert (правда, почти все толковые из них, увы, платные).

WinPING

Простейшей реализацией пинга с графическим интерфейсом является программа WinPING:

WinPING

Фактически с этой программой мы можем только ввести адрес нужного нам сервера и запустить его пингование. Никаких настроек – только "голый" результат, но, тем не менее, для быстрой проверки доступности сайта WinPING вполне можно использовать.

GPing

Если Вам нужен практически полноценная графическая реализация команды ping для непрерывного тестирования канала в стиле Linux, то довольно интересным решением в этой сфере можно назвать программу GPing:

GPing

Здесь, кроме ввода адреса пингуемого сайта, можно также задать размер пакетов данных и интервал их передачи. Пинг запускается в непрерывном режиме с выводом средних значений статистики и визуализацией задержек в виде графика. Очень наглядный и удобный для тестирования инструмент! Жалко только, что нет официальной portable-версии...

Ping GUI

Ещё одним любопытным инструментом для пингования с расширенными возможностями можно назвать Ping GUI:

Ping GUI

При скачивании программы Ваш антивирус может начать на неё ругаться, поэтому придётся внести её в "белый" список, но она того стоит. Во-первых, Ping GUI не требует установки, а во-вторых, имеет в своём арсенале не только визуально настраиваемую реализацию пинга, но также функцию трассировки и выполнения команды "ipconfig", которая выдаёт информацию обо всех сетевых устройствах Вашего ПК.

По умолчанию Ping GUI пингует указанный Вами веб-ресурс единожды. Однако, если активировать галочку "Ping Continuously", то пинг будет работать в непрерывном режиме. В сочетании с тем, что программа рисует график результатов выполнения команды, данная возможность позволяет производить длительные тесты сервера. Кстати, для удобства имеется функция экспорта результатов работы в текстовый или CSV-файл.

Увы, и здесь не обошлось без недочётов. Помимо того, что на программу реагируют антивирусы, в ней реализованы не все параметры работы оригинальных утилит. Также Ping GUI не поддерживает кириллическую кодировку, поэтому, например, при трассировании, вместо русских букв Вы увидите различные "кракозяблики" (естественно, русского интерфейса тоже нет). Ну и последним жирнейшим минусом является то, что программа не умеет вычислять средние значения по выданным результатам...

Пинг онлайн

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

Из всех протестированных мной сервисов подобного рода больше всего мне понравился англоязычный Ping.eu, который физически находится в Германии:

Ping.eu

Фактически, если отбросить тот факт, что настроить пинг онлайн не позволяет ни один из тестированных мною сервисов, у Ping.eu всё реализовано наиболее приближённо к оригиналу. Как и в Windows, здесь отправляется 4 запроса к заданному Вами серверу и выдача результатов визуально соответствует тому, что мы обычно видим в Командной строке. Единственная разница в скоростях. Прямой обмен данными между серверами получается на порядок быстрее, чем между запрошенным веб-ресурсом и компьютером пользователя...

Кроме пинга на этом же сервисе имеются онлайн-реализации инструментов для трассировки, WHOIS, проверки открытых портов и многих других полезных инструментов. Поэтому, если Вы знаете английский и понимаете, для чего нужны те или иные функции, Вам будет на что посмотреть :)

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

Whoer.net

Настроек здесь, как и в предыдущем случае нет. Вы вводите в поле имя или адрес нужного сервера, жмёте кнопку "Проверить пинг" и получаете результаты. Последние включают в себя расшифровку IP-адреса запрошенного веб-ресурса, а также минимальные, максимальные и средние показатели задержки в ряде стран.

Как понизить пинг?

Итак, мы разобрались, что такое пинг, как пинговать сайты и какие для этого существуют инструменты. Мы усвоили, что если пинг низкий (примерно до 100 мс.), то это – хорошо. А теперь главный вопрос: "А что делать, если пинг высокий?". Чтобы дать на него ответ нужно знать первопричину высокого пинга, которая может быть следующей:

  1. Проблемы на стороне запрашиваемого или промежуточного сервера. Помнится, из-за такой проблемы у меня больше года не было прямого доступа к нашему сайту! При попытке пинга выдавалось 100% потерь. Трассировка же показала, что "непроходимость" запроса возникала на одном киевском промежуточном сервере.

    Поначалу я пользовался анонимайзерами и прокси, но потом плюнул и арендовал выделенный IP-адрес, трафик по которому шёл через другие каналы. Максимально однозначно идентифицировать такого рода проблему можно, пропинговав несколько различных сайтов. Если остальные пингуются хорошо, значит это как раз описанный случай и "лечится" он только использованием альтернативных каналов связи с нужным сервером.
  2. Географическая удалённость от нужного сервера. Данный случай наиболее актуален для геймеров. Если Вы можете видеть, в какой стране/регионе находится игровой сервер, то выбирайте тот, который ближе всего к Вам. Ведь, несмотря на то, что скорости обмена данными в Интернете сейчас весьма высокие, если пакет данных проходит сотни километров, то это явно будет вызывать большие задержки и, соответственно, зависания в игре.
  3. Проблемы с Интернет-кабелем. Если результаты пинга плохие для нескольких разных сайтов, то здесь может быть два варианта: либо сейчас что-то "химичит" Ваш провайдер (такие "проблемы" обычно пропадают довольно быстро), либо где-то износился Ваш Интернет-кабель.

    Например, не так давно подобная ситуация была у меня на работе. Компьютер стал очень медленно соединяться не только с Интернетом, но и с другими ПК в локальной сети. Проблема оказалось в перетёртом кабеле, проложенном под ковром (!), по которому ходили все, кому не лень :)

    Обычно замена кабеля восстанавливает нормальный доступ в Сеть. У нас на сайте имеется целая мини-книга о том, как обжать сетевой кабель самостоятельно. Однако, если Вы сами не можете этого сделать сами, обратитесь к провайдеру, чтобы он прислал к Вам своего специалиста, который заменит повреждённый провод (увы, это не бесплатно, но лучше, чем терпеть постоянные "тормоза").
  4. Ошибки в работе компьютера. Бывает и так, что в результате деятельности вирусов или необдуманных действий пользователя компьютер либо вообще перестаёт соединяться с Интернетом, либо делает это очень медленно. Правильно диагностировать эту проблему и отличить её от описанной выше ситуации с кабелем можно, попытавшись выйти в Интернет через ту же точку доступа (проводную или беспроводную) с другого компьютера, ноутбука или смартфона. Если проблем с доступом не будет, то однозначно причина в Вашем ПК.

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

    Если же сетевая карта заработает нормально, то проблема в Вашем компьютере. Самым радикальным способом её решения обычно является полная переустановка операционной системы. Однако, перед этим шагом нужно, всё-таки попробовать восстановить всё "малой кровью". Во-первых, проверьте работоспособность драйвера сетевой карты в Диспетчере устройств (значок "Мой Компьютер" – правая кнопка мыши – "Свойства").

    Если драйвер на месте и неизвестных устройств в Диспетчере не значится, попробуйте восстановить сетевые настройки при помощи утилиты SG TCP Optimizer. Данная программа позволяет автоматически подобрать и применить оптимальные параметры для работы Вашей сети и в ряде случаев позволяет решить проблемы с нарушением доступа к ней после зловредных проделок вирусов (кстати, в программе есть также неплохие визуальные инструменты для пинга и трассировки сайтов)!

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

Ну и, естественно, никто не застрахован от банального "раздолбайства" работников местного "центра предоставления услуг доступа к Интернету" (как любят себя называть некоторые ушлые товарищи). Здесь может быть и экономия на кабеле (прокладывают простую витую пару по улице!), и слабое серверное оборудование (тоже экономия...), и неумелые "сисадмины". Но, по крайней мере, Вы можете при помощи трассировки и всё того же пинга выяснить, что задержки возникают именно между Вами и провайдером, а это уже будет веским основанием для претензий с Вашей стороны!

Выводы

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

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

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.







Полезный совет:


Система проверки ошибок от Mistakes.ru