Знакомимся с командой Ping

Команда ping используются, чтобы убедиться, что компьютер может взаимодействовать с Сетью и ресурсами внутри нее. Ping работает за счёт отправки echo request сообщений по протоколу ICMP (Internet Control Message Protocol) и ожидания ответа. Она позволяет узнать, сколько ответов получено, и сколько времени на это ушло:

ping-command-windows-10-572673fb3df78ced1fe56588

Синтаксис команды 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 [74.125.224.82] 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 127.0.0.1

В этом примере использования команды 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 [192.168.1.22] with 32 bytes of data:
Reply from 192.168.1.22: bytes=32 time<1ms TTL=64
Reply from 192.168.1.22: bytes=32 time<1ms TTL=64
Reply from 192.168.1.22: bytes=32 time=1ms TTL=64
Reply from 192.168.1.22: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.1.22:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 1ms, Average = 0ms

Как видно из приведенного выше примера, команда ping в Windows 7 определила проверяемый IP-адрес как имя хоста J3RTY22, после чего осуществила проверку состояния при стандартных настройках.

ping -t -6 SERVER

В этом примере мы, при помощи опции -6, включаем принудительное использование протокола IPv6, а затем приступаем к бесконечной проверке состояния SERVER (при помощи опции -t).

Pinging SERVER [fe80::fd1a:3327:2937:7df3%10] with 32 bytes of data:
Reply from fe80::fd1a:3327:2937:7df3%10: time=1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms
Reply from fe80::fd1a:3327:2937:7df3%10: time<1ms

Ping statistics for fe80::fd1a:3327:2937:7df3%10:
    Packets: Sent = 7, Received = 7, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 1ms, Average = 0ms
Control-C
^C

После семи полученных ответов мы намеренно прервали проверку состояния. Вспоминаем, как остановить команду ping? При помощи Ctrl+C. Также -6 привела к использованию адресов по протоколу IPv6.

Совет: число после знака % в сгенерированных в данном примере ответах указывает на Zone ID протокола IPv6, которая определяет используемый сетевой шлюз. Можно сгенерировать таблицу из Zone ID, совпадающих с названием вашего сетевого шлюза, при помощи netsh interface ipv6 show interface. IPv6 Zone ID отображается числом в колонке Idx.

Поддержка команды Ping

Команда ping поддерживается в командной строке ОС Windows 10, Windows 8, Windows 7, Windows Vista и Windows XP, а также Windows 98 и 95.

Её также можно использовать в дополнительных настройках автозагрузки и опциях восстановления системы.

Связанные команды

Команда ping часто используется как дополнение к другим командам (tracert, ipconfig, netstat, nslookup и другие).

Перевод статьи “Ping Command?” был подготовлен дружной командой проекта Сайтостроение от А до Я.