Команды Linux · 4 min read · Sep 19, 2025

Учебник по команде ping в Linux для начинающих (8 примеров)

Независимо от того, какой тип пользователя Linux вы представляете (новичок или профессионал), есть определенные инструменты, о которых вы должны знать. Одним из таких утилит является Ping. В этом учебнике мы обсудим основы этого инструмента, используя несколько простых для понимания примеров. Но прежде чем мы это сделаем, стоит упомянуть, что все примеры в статье были протестированы на машине с Ubuntu 16.04 LTS.

Команда ping в Linux

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

ping [OPTIONS] destination

А вот как это объясняется в справочной странице:

       ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to elicit  
       an ICMP ECHO_RESPONSE from a host or gateway.   ECHO_REQUEST datagrams  
       (``pings'') have an IP and ICMP header, followed by a struct timeval  
       and then an arbitrary number of ``pad'' bytes used to fill out the  
       packet.  
       
       ping6 is IPv6 version of ping, and can also send Node Information  
       Queries (RFC4620). Intermediate hops may not be allowed, because IPv6  
       source routing was deprecated (RFC5095).

Следующие примеры в формате вопросов и ответов должны дать вам хорошее представление о том, как работает команда ping.

Вопрос 1. Как использовать команду ping?

Основное использование довольно просто - просто выполните команду ‘ping’ с указанием адреса назначения.

Например:

ping howtoforge.com

Следующий результат этой команды был получен на моей системе:

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

Обратите внимание, что по умолчанию команда будет продолжать выполняться, пока вы не остановите ее с помощью Ctrl+C.

Вопрос 2. Как изменить временной интервал между пакетами ping?

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

Например, следующая команда гарантирует, что интервал составит 3 секунды:

ping -i 3 howtoforge.com

А следующая команда отправляет пакеты с задержкой в полсекунды.

ping -i 0.5 howtoforge.com

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

Вопрос 3. Как изменить размер пакета ping?

По умолчанию количество байт в пакете ping составляет 56 (64, если учитывать 8 байт заголовка ICMP). Однако, если вы хотите, вы можете изменить это значение, что можно сделать с помощью параметра командной строки -s.

Например, чтобы отправить пакет размером 80 байт (88 с учетом заголовка ICMP), используйте следующую команду:

ping -s 80 howtoforge.com

Вопрос 4. Как заставить ping отправить заданное количество пакетов?

По умолчанию поведение ping заключается в том, что он продолжает отправлять пакеты, пока не будет прерван пользователем. Однако, если вы хотите, вы можете заставить ping остановиться после отправки заданного количества пакетов. Это можно сделать с помощью параметра командной строки -c.

Например, следующая команда отправит 3 пакета и затем остановится.

ping -c 3 howtoforge.com

Вопрос 5. Как запустить поток пакетов с помощью ping?

Да, команда ping также предлагает опцию для запуска потока пакетов. Это можно сделать с помощью параметра командной строки -f.

ping -f howtoforge.com

Вот что говорят официальные документы об этой опции:

              For every ECHO_REQUEST sent a period ``.'' is  
              printed, while for ever ECHO_REPLY received a backspace is  
              printed. This provides a rapid display of how many packets are  
              being dropped.   If interval is not given, it sets interval to  
              zero and outputs packets as fast as they come back or one hun?  
              dred times per second, whichever is more. Only the super-user  
              may use this option with zero interval.

Вопрос 6. Как заставить ping выводить временную метку перед каждой строкой?

Существует опция (-D), которая позволяет вам это сделать. Временная метка, которая выводится, представляет собой комбинацию времени Unix и микросекунд (как в gettimeofday).

ping -D howtoforge.com

Вот скриншот этой опции в действии:

Вопрос 7. Как установить жесткий тайм-аут для ping?

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

Например, следующая команда ping остановится через 3 секунды:

ping -w 3 howtoforge.com

Вот как официальные документы объясняют эту опцию:

              Specify a timeout, in seconds, before ping exits regardless of  
              how many packets have been sent or received. In this case ping  
              does not stop after count packet are sent, it waits either for  
              deadline expire or until count probes are answered or for some  
              error notification from network.

Вопрос 8. Как установить мягкий тайм-аут для ping?

Хотя опция -w гарантирует, что ping остановится в любом случае после истечения срока, существует еще одна опция (-W, заглавными буквами), которая также заставляет ping остановиться, но только когда нет ответа со стороны назначения.

ping -W 3 howtoforge.com

Вот как справочная страница объясняет поведение в этом случае:

              Time to wait for a response, in seconds. The option affects only  
              timeout in absence of any responses, otherwise ping waits  
              for two RTTs.

Заключение

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

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.