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

12 set 2022 3 min di lettura
Как использовать команду Ping в Linux
Indice dei contenuti

Введение

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

Ping работает, отправляя один или несколько пакетов эхо-запроса протокола управляющих сообщений Интернета (ICMP) на указанный IP-адрес назначения в сети и ожидая ответа. Когда пункт назначения получает пакет, он отвечает эхо-ответом ICMP.

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

Утилита ping является частью пакета iputils (или iputils-ping ), который предустановлен почти во всех дистрибутивах Linux. ping также доступен в Windows, macOS и FreeBSD.

Как использовать команду Ping

Синтаксис команды ping следующий:

ping [OPTIONS] DESTINATION

Чтобы лучше проиллюстрировать, как работает команда ping, давайте пропингуем google.com:

ping google.com

Вывод будет выглядеть следующим образом:

PING google.com (216.58.206.46) 56(84) bytes of data.
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=1 ttl=52 time=23.5 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=2 ttl=52 time=23.3 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=3 ttl=52 time=23.0 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=4 ttl=52 time=23.4 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=5 ttl=52 time=23.5 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=6 ttl=52 time=23.8 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=7 ttl=52 time=24.0 ms
 64 bytes from mil07s07-in-f14.1e100.net (216.58.206.46): icmp_seq=8 ttl=52 time=23.5 ms
 ^C
 --- google.com ping statistics ---
 8 packets transmitted, 8 received, 0% packet loss, time 7009ms
 rtt min/avg/max/mdev = 23.007/23.489/24.000/0.285 ms

Команда ping преобразует доменное имя в IP-адрес и начинает отправлять пакеты ICMP на целевой IP-адрес. Если целевой IP-адрес доступен, он ответит, и команда ping напечатает строку, содержащую следующие поля:

  • Количество байтов данных. Значение по умолчанию — 56, что соответствует 64 байтам данных ICMP — 64 bytes.
  • IP-адрес получателя — from muc11s01-in-f14.1e100.net (172.217.22.206)
  • Порядковый номер ICMP для каждого пакета. icmp_seq=1
  • Время жить. - ttl=53 - Как работает TTL?
  • Время проверки связи, измеряемое в миллисекундах, которое представляет собой время прохождения пакета в обе стороны до хоста и время возврата ответа отправителю. - time=41.4 ms

По умолчанию интервал между отправкой нового пакета составляет одну секунду.

Команда ping будет продолжать отправлять пакеты ICMP на IP-адрес назначения, пока не получит прерывание. Чтобы остановить команду, достаточно нажать комбинацию Ctrl+C

Когда команда останавливается, она отображает статистику, включающую процент потерянных пакетов. Потеря пакетов означает, что данные были выпущены где-то в сети, что указывает на проблему в сети. В случае потери пакета вы можете использовать команду traceroute, чтобы определить, где произошла потеря пакета.

Если ping не возвращает ответ, сетевое соединение не установлено. Когда это происходит, это не всегда означает, что IP-адрес назначения не работает. Некоторые хосты могут иметь брандмауэр, который блокирует трафик ICMP или не отвечает на запросы ping.

В случае успеха команда ping заканчивается кодом 0. В противном случае он выйдет с кодом 1 или 2. Это может быть полезно при использовании утилиты ping в сценарии оболочки.

В следующих разделах мы рассмотрим наиболее часто используемые параметры команды ping.

Укажите количество пакетов

Как уже упоминалось, по умолчанию ping будет продолжать отправлять ICMP-пакеты, пока не получит сигнал прерывания. Чтобы указать количество пакетов эхо-запроса для отправки, после которых пинг завершится, используйте параметр -c, за которым следует количество пакетов:

ping -c 1 DESTINATION

Например, чтобы noviello.it только один раз, вы должны использовать:

ping -c 1 noviello.it

Указывает исходный интерфейс

По умолчанию команда ping отправляет пакеты ICMP по маршруту по умолчанию. Если на вашем компьютере несколько интерфейсов, вы можете указать исходный интерфейс с опцией -I:

ping -I INTERFACE_NAME DESTINATION

Следующая команда noviello.it, используя em2 в качестве исходного интерфейса:

ping -I em2 noviello.it

Указывает Интернет-протокол

Когда вы выполняете команду ping, она будет использовать IPv4 или IPv6, в зависимости от настроек DNS машины.

Чтобы заставить ping использовать IPv4, передайте параметр -4 или используйте псевдоним ping4:

ping -4 DESTINATION

Для IPv6 передайте параметр -6 или используйте ping6:

ping -6 DESTINATION

Вывод

ping — это сетевая утилита командной строки, которая позволяет вам проверить подключение на уровне IP определенного хоста в вашей сети.

Чтобы просмотреть все доступные параметры команды ping, введите:

man ping
Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.