Команды командной строки ping. Что такое команда Ping и зачем она нужна

Бытовая техника 16.07.2019

Команда пинг (ping) и tracert (traceroute) - как правильно использовать?

Команда пинг (ping)

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

Выполняется команда пинг очень просто - "ping ya.ru". Здесь "ya.ru" - имя пингуемого сервера. Можно также использовать IP-адрес, например "ping 213.180.204.3". После запуска команды ping, вам остается только посмотреть на величину задержки.

Как уменьшить пинг?

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

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

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

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

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

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

Команда tracert (traceroute)

Очень часто пользователи задаются вопросом, с чем связана разница в написании tracert и traceroute ? На самом деле, команда tracert применяется в операционных системах Windows, а traceroute - в операционных системах Linux и в операционной системе маршрутизаторов Cisco.

Простейший и самый распространенный пример использования команды tracert - "tracert ya.ru". При использовании команды tracert с буквенным адресом проверяемого хоста, автоматически проверяется еще и работоспособность и доступность DNS - сервера. Ведь для того, чтобы начать процесс трассировки, команда tracert должна сначала связаться с сервером DNS и получить IP-адрес проверяемого хоста.

Пример вывода информации командой tracert:

c:\windows\system32>tracert ya.ru

Трассировка маршрута к ya.ru
с максимальным числом прыжков 30:

1 1 мs 1 мs 1 ms psk-cr1-fe-0-0-v03.сайт
2 1 мs 1 мs 1 мs ge-2-2-0-v2.1g.m20-1-pskv.nwtelecom.ru
3 4 ms 4 ms 4 ms ae0.20g.mx960-1-210.nwtelecom.ru
4 4 ms 4 ms 4 ms as13238-yandex.gateway.nwtelecom.ru
5 12 ms 12 ms 12 ms apollo-vlan304.yandex.net
6 12 ms 12 ms 13 ms grechko-vlan121.yandex.net
7 15 ms 14 ms 14 ms silicon-vlan4.yandex.net
8 14 ms 13 ms 13 ms l3link-iva1-ugr1.yandex.net
9 14 ms 13 ms 15 ms www.yandex.ru

Трассировка завершена.

Команда tracert последовательно опрашивает и измеряет время задержки до всех маршрутизаторов на пути прохождения пакета, пока не будет достигнут целевой хост. Если между какими-либо двумя маршрутизаторами наблюдается большой рост задержки, значит этот участок маршрута влияет на увеличение пинга.

Следует также учитывать, что основная задача маршрутизаторов - это передавать пакеты с полезной информацией, а не отвечать на команды tracert и ping. Поэтому, некоторые маршрутизаторы на пути следования пакета могут пинговаться даже с потерей пакетов, но при этом целевой хост будет доступен без потери пакетов. Поэтому прежде чем звонить в техподдержку провайдера с криком "Я знаю, где у вас пропадают пакеты!", убедитесь, что целевой хост также пингуется с потерей пакетов. Иначе вам попросту расскажут то, о чем написано выше.

При возникновении проблем с сетью, необходимо узнать причину неисправности и в этом может помочь команда Ping, запустить которую можно через командную строку.

Команда Ping является не просто командой, а программой входящей в состав операционных систем семейства Windows. Если не вдаваться в особые тонкости, то суть её работы заключается в отправке запроса на удаленный адрес и получение от него ответа. Если ответа нет, то компьютер, к которому был отправлен запрос либо выключен, либо имеются неисправности сетевого оборудования или кабеля.

Давайте рассмотрим работу данной программы, для этого запустим командную строку (Пуск \ Программы \ Стандартные \ Выполнить \ cmd)

И так, допустим нам нужно проверить соединение с сервером или рабочей станцией в сети, для этого вводим команду ping и ip адрес или dns имя компьютера, с которым необходимо проверить связь (ping 192.168.0.3 ).

Бывают ситуации, что браузер не хочет отображать сайт и может возникнуть подозрение, что провайдер некачественно выполняет свою работу. Однако браузер, как и любая программа, может глючить или просто быть не правильно настроен, по этому нужно убедиться, что интернета нет не по программной причине. Для этого «пропингуем» или как говорится в простонародье «пропнем» какой-нибудь сервер в интернете. И лучше проверять связь с серверами крупных интернет компаний, таких как Яндекс, Гугл, Майкрософт. Так как для них, недоступность сервера грозит потерей миллионов, в то время как сервера других компаний могут быть недоступны, а вы подумаете, что нет интернета (ping yandex. ru )

И так, какую информацию нам предоставляет команда ping:

1) IP адрес сервера - с которым мы тестируем связь «Обмен пакетами с yandex.ru с 32 байтами данных ». Т.е. ip адрес у данного сервера 213.180.204.11.

2) Время отклика сервера – это время определяется с момента отправки запроса, до получения ответа и измеряется в миллисекундах. Чем меньше данное значение, тем лучше связь.

3) Количество узлов , которое проходит пакет данных пока не попадет в пункт назначения. Об этом нам говорит значение TTL (в расшифровке time to life или время жизни ). Работа данного параметра заключается в том, что при прохождении каждого узла в сети (маршрутизатора) значение TTL уменьшается на единицу и таким образом можно узнать сколько узлов прошел пакет, пока не попал в пункт назначения. Вроде как по умолчанию TTL задается 128, но в разных операционных системах по разному.

Но есть способ попроще, чтобы узнать количество узлов и IP адреса этих узлов, через команду tracert yandex.ru .

По умолчанию отправляется последовательно 4 пакета и после их отправки приводится статистика. Количество отправленных, полученных и потерянных пакетов, в зависимости от этих значений вычисляется процент потерь. А так же вычисляется примерное время приема-передачи.

И так, о чем нам могут сказать данные полученные после выполнения команды ping:

1) Если вы «пингуете» компьютер в локальной сети и «пинги» не проходят, то есть несколько причин:

Не правильная настройка сетевого подключения;

Обрыв кабеля;

Удаленный компьютер выключен;

Неисправность сетевого оборудования (локальной или удаленной сетевой карты, коммутатора или маршрутизатора)

Либо пакеты блокируются файерволом.

2) Если вы проверяете связь с сетью Интернет, то возможны следующие причины:

Неисправность роутера (бывает, что роутер глючит, по этому следует его перезагрузить и проверить связь снова);

Недоступен сервер сайта, который вы «пингуете», но как я говорил, лучше «пинговать» сайты крупных организаций, так как они по любому должны быть доступны;

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

У команды ping, так же есть множество дополнительных параметров, чтобы узнать каких, достаточно набрать команду ping /? , но я расскажу о тех, которыми сам пользуюсь.

ping yandex.ru –t – данная команда будет бесконечно проверять связь с заданным узлом, пока вы не нажмете Ctrl+C. Это помогает, когда связи нет, и чтобы не обновлять страницу браузера, просто ввести команду и как только пойдут «пинги» связь появится.

ping –a 213.180.193.11 – данная команда позволяет узнать DNS имя компьютера по ip адресу. Лично у меня была ситуация, когда один из компьютеров забирал много интернет трафика, а известен был только ip адрес, так вот данная команда позволила найти вредителя!

Обновлено: 07.01.2019 Опубликовано: 27.06.2016

Параметры команды ping и их описание

Общий синтаксис:

ping [опции] <имя сервера или IP-адрес>

Windows

Для просмотра в Windows также используйте команду ping /?

Используются часто:

Параметр Описание
-t Команда будет отправлять запросы на проверку постоянно, пока ее не прервать клавишами Ctrl + C. Удобно, если сеть не работает и чтобы постоянно не проверять, появилась ли связь.
-a Пытается определить имя узла через DNS.
-n Задает определенное число попыток отправки запроса.
-l Размер пакета. Используется для проверки стабильности сети, создания тестовой нагрузки и так далее.
-f По умолчанию ping разрешает фрагментацию, то есть пакет может быть разбит на несколько для соответствия минимальному пропускаемому размеру (MTU). Данный флаг это запрещает. Используется для определения вышеупомянутого MTU.
-i Задает срок жизни пакета (количество сетевых устройств, через которые может пройти сигнал). Может использоваться в случаях, когда количество оборудования слишком велико. Также можно определить его количества.
-w Устанавливает время ожидания. Применяется, если существуют проблемы производительности на сети или расстояние до узла очень большое.
-S Позволяет выполнить проверку сети с определенного источника. Может быть использовано с узла с несколькими сетевыми адаптерами и отправкой запроса с определенного.
-4 Использовать только IPv4.
-6 Использовать только IPv6.

Используются редко

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

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

Примерный ответ с исправной связью:

Обмен пакетами с yahoo.com с 32 байтами данных:

Ответ от 206.190.36.45: число байт=32 время=191мс TTL=47

Пример ответа, если узел недоступен:

Обмен пакетами с yahoo.com по с 32 байтами данных:

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

* до удаленного узла нет сигнала. Возможно, существуют неполадки на сети.

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

* не удалось определить имя узла. Возможные неполадки: нет связи с DNS , не работает DNS, запрашиваемого имени узла не существует.

Открытие порта для Ping

Справедливо заметить, что не во всех случаях отсутствие ответа на ping означает, что удаленный узел недоступен. Администратор ресурса может намеренно отключить ответы на эхо-запросы.

Также важно знать, что ping не использует конкретный номер порта. Чтобы открыть возможность пинга, необходимо либо найти соответствующую опцию (во многих домашних роутерах) или разрешить ICMP (Internet Control Message Protocol) на брандмауэре. Ну, или наоборот — чтобы закрыть возможность пинга, блокируем запросы ICMP.

Проверка портов

С помощью команды ping нельзя проверить открытость того или иного порта.

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

Давайте посмотрим, что умеет программа Ping, для этого нажмите пуск => выполнить => наберите cmd => нажмите Ок => наберите в черном окне команду

Ping /? => нажмите enter.

Вы увидите список команд, которые, можно выполнить с помощью программы Ping.

Ping [-t] [-a] [-n <число>] [-l <размер>] [-f] [-i ] [-v ] [-r <число>] [-s <число>] [[-j <список узлов>] | [-k <список узлов>]] [-w <тайм-аут>] [-R] [-S <адрес источника>] [-4] [-6] конечный_узел Параметры -t Проверка связи с указанным узлом до прекращения. Для отображения статистики и продолжения проверки нажмите сочетание клавиш CTRL+BREAK; для прекращения нажмите CTRL+C. -a Определение имен узлов по адресам. -n <число> Число отправляемых запросов эха. -l <размер> Размер буфера отправки. -f Установка в пакете флага, запрещающего фрагментацию (только IPv4). -i Задание срока жизни пакетов. -v Задание типа службы (только IPv4. Этот параметр недоступен и не влияет на поле TOS в заголовке IP). -r <число> Запись маршрута для указанного числа прыжков (только IPv4). -s <число> Отметка времени для указанного числа прыжков (только IPv4). -j <список_узлов> Свободный выбор маршрута по списку узлов (только IPv4). -k <список_узлов> Жесткий выбор маршрута по списку узлов (только IPv4). -w <тайм-аут> Тайм-аут для каждого ответа (в миллисекундах). -R Использование заголовка для проверки также и обратного маршрута (только IPv6). -S <адрес источника> Используемый адрес источника. -4 Принудительное использование протокола IPv4. -6 Принудительное использование протокола IPv6.

Давайте разберем некоторые из них.

Практическое использование:

Ключ t – применяется, когда необходимо пинговать какой-либо ресурс долго, чтобы не вводить каждый раз команду:

Ping сайт

можно ввести так:

Ping 27susday.ru -t

и процесс можно будет остановить только вручную, нажатием клавиши ctrl+c

Ключ i – нужен, чтобы задать срок жизни отправленного пакета, по умолчанию 128. Вы отправляете пакет и он начинает шарится по удаленным узлам, пройдя узел, отнимается единичка, и так пока не будет ноль. Затем пакет уничтожается, и выводит Вам соответствующее уведомление.

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

Бывает, что удаленный узел, вроде бы работает, т.е. вы можете на него зайти, Вы на сто процентов уверены в его работоспособности, а на ping не отвечает, хоть какую ставь задержку с помощью ключа w. Это объясняется тем, что системный администратор, поставил фаервол и запретил отвечать на ICMP пакеты. Это делается для того, чтобы нельзя было штурмовать эхо-запросами сервера, которые смотрят в Интернет. Упасть сервер не упадет, но вот его производительность снизится.

Совет: Если Вы начинающий системный администратор, советую и вам закрыть ICMP порт на своих серверах, которые у Вас смотрят в интернет.

В этой статье Вы узнали о трех основных ключах для программы Ping.

Видео-урок по уменьшению пинга в играх:

Команда 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) при передаче пакета.”

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

    В качестве домашней сети используется наиболее распространенная сеть с 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=" && ECHO Yandex pingable - команда ECHO выполняется, если значение ERRORLEVEL, установленное FIND равно 0, т.е узел yandex.ru отвечает на ping.

    PING Server64 |find "TTL=" || ECHO Server64 not pingable - команда ECHO выполняется, если значение ERRORLEVEL, установленное FIND не равно 0, т.е. узел Server64 не ответил на ping.



    Рекомендуем почитать

    Наверх