Содержание

Ping и некоторые его параметры / Хабр

«Для чего в команде ping используются опции Loose, Strict, Record, Timestamp и Verbose?» — такой вопрос мне недавно встретился в вендорном экзамене. Они позволяют влиять на маршрутизацию ICMP пакетов и собирать информацию о транзитных L3-устройствах. Но занимаясь сетевыми технологиями уже достаточно давно, я почти никогда их не использовал.

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

Утилита ping нам всем хорошо знакома. Помимо стандартного «ping 8.8.8.8», можно использовать различные опции, среди которых присутствуют интересующие нас. Их наименование и описание у вендоров примерно одинаковое.

Из наиболее часто используемых я бы отметил следующие.

  • Количество отправляемых пакетов
    Вместо заданного количества пакетов по умолчанию (например, в Windows — четыре, в оборудовании Cisco — пять), мы можем отправить нужное.
    Сюда же можно отнести многими любимую опцию «-t» в ОС Windows, которая запускает бесконечную отправку пакетов.
  • Интерфейс источника
    В первую очередь актуально для сетевого оборудования. По умолчанию, при использовании команды ping устройство отправляет пакет с адресом ближайшего интерфейса к точке назначения. В случае тестирования функций NAT или проверки VPN, возникает необходимость отправлять ICMP пакеты с другого интерфейса. Ещё один классический пример: как доказать коллеге, что у него включён файрвол на хосте, а не сеть глючит. Запускаем ping с ядра сети без указания интерфейса – пингуется. С указанием неближайшего интерфейса – не пингуется.
  • Установка DF-бита
    Пакет с установленным DF-битом (=1) не может фрагментироваться. Данную опцию удобно использовать для определения максимально допустимого размера кадра (MTU) между двумя точками. Обычно используется в связке параметрами ниже.
  • Размер пакета
    Можно варьировать размер пакета. Вместе с установкой DF-бита помогает в определении MTU. Шлём большой пакет – 1500 байт. Не проходит. Шлём чуть меньше – 1300. Проходит. Шлём 1400. И так далее. В общем, метод дихотомии и MTU определён.
    В Windows мы указываем размер сегмента данных ICMP пакета. На устройствах Cisco – размер пакета IP с учётом заголовков.
  • Вариация размера пакета в указанном диапазоне
    Для тех, кто не любит метод дихотомии, может пригодиться данный режим. Мы указываем начальное значение размера пакета, конечное и шаг. Далее устройство отправляет пакеты, постепенно увеличивая их размер. Главное не забыть выставить DF-бит, а то всё насмарку.
За бортом остался ряд других опций (timeout, ToS и пр.), которыми лично я практически не пользуюсь.

Опции Loose, Strict, Record, Timestamp, Verbose включены в утилиту ping на многих сетевых устройствах. Есть поддержка в Windows.

Record (Record Route)

Пакет ICMP с опцией Record при прохождении через L3-устройства записывает IP-адреса исходящих интерфейсов. Делается это как в сторону пункта назначения, так и обратно. Это удобно, например, при диагностировании проблем, связанных с асинхронной маршрутизацией. Получается вроде traceroute, только лучше.

«Опции»

Слово «опции» я использую в двух контекстах: опции команды ping и опции в пакете ICMP. В случае ICMP, опции – это дополнительные параметры, которые устанавливаются в заголовке IPv4 (далее будем указывать просто IP) в поле Options. Поэтому корректнее, конечно, говорить про опции IP. ICMP просто их использует в своей работе.

Но рано радоваться: максимальное количество записей равно девяти. Причём в них входят данные об IP-адресах устройств в обе стороны. Обусловлено данное ограничением тем, что информация об IP-адресах сохраняется не в теле пакета, а в заголовке. Поле с опциями не может быть слишком большим. Оно ограничено 40 байтами. Нам, в конце концов, по сети нужно гонять полезные данные, а не заголовки. В этот объём помещается всего девять записей (4 байт на каждый IPv4 адрес). Оставшиеся (40-4*9)=4 байта уходят на отметку о типе опции, длине и пр. атрибутах. Напомню, максимальный размер всего заголовка IPv4 – 60 байт.

Запускаем с ПК под управлением ОС Windows ping с опцией Record Route (-r) до адреса 192.168.36.2:

C:\Users\user>ping -n 1 -r 9 192.168.36.2

Обмен пакетами с 192.168.36.2 по с 32 байтами данных:
Ответ от 192.168.36.2: число байт=32 время=12мс TTL=252
    Маршрут: 192.168.31.2 ->
           192.168.32.2 ->
           192.168.34.2 ->
           192.168.35.2 ->
           192.168.36.2 ->
           192.168.35.1 ->
           192.168.33.1 ->
           192.168.31.1 ->
           192.168.20.1
Статистика Ping для 192.168.36.2:
    Пакетов: отправлено = 1, получено = 1, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 12мсек, Максимальное = 12 мсек, Среднее = 12 мсек
Пакeт ICMP Echo Request c выставленной опцией Record Route (Type = 7) в заголовке IP:

ICMP Echo Request доходит до получателя. По пути в него добавляются адреса транзитных устройств. Получатель берёт заполненные поля опции IP заголовка, копирует их в ICMP Echo Reply и отправляет назад. Пока ICMP Echo reply доберётся до инициатора пинга, он обрастёт записями обратного маршрута.

В ответном пакете ICMP Echo Reply, который получит ПК, опция Record Route будет уже заполнена:

Можно заметить, что в нашей сети имеет место ассиметричная маршрутизация.

Пример ping с опцией Record на сетевом оборудовании Cisco.

R1#ping   
Protocol [ip]: 
Target IP address: 192.168.36.2
Repeat count [5]: 1
Datagram size [100]: 
Timeout in seconds [2]: 
Extended commands [n]: y
Source address or interface:
Type of service [0]: 
Set DF bit in IP header? [no]: 
Validate reply data? [no]: 
Data pattern [0xABCD]: 
Loose, Strict, Record, Timestamp, Verbose[none]: R
Number of hops [ 9 ]: 
Loose, Strict, Record, Timestamp, Verbose[RV]: 
Sweep range of sizes [n]: 
Type escape sequence to abort.
Sending 1, 100-byte ICMP Echos to 192.
168.36.2, timeout is 2 seconds: Packet sent with a source address of 192.168.20.1 Packet has IP options: Total option bytes= 39, padded length=40 Record route: <*> (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) (0.0.0.0) Reply to request 0 (3 ms). Received packet has options Total option bytes= 40, padded length=40 Record route: (192.168.31.2) (192.168.32.2) (192.168.34.2) (192.168.35.2) (192.168.36.2) (192.168.35.1) (192.168.33.1) (192.168.31.1) (192.168.31.2) <*> End of list Success rate is 100 percent (1/1), round-trip min/avg/max = 3/3/3 ms
Timestamp

Когда пакет ICMP с опцией Timestamp проходит через L3-устройство, оно записывает в него метку с указанием текущего времени. Схема работы аналогична опции Record, только вместо адреса ставится время. Как и в предыдущем случае пакет может содержать только девять записей о времени (для ОС Windows – четыре, так как кроме временной метки, добавляется IP-адрес устройства).

Время в пакете указано в формате UNIX time. Анализ данных имеет хоть какой-то смысл, если все устройства синхронизированы по времени (в нашем примере этого нет).

Пример ping с опцией Timestamp (-s) на ПК под управлением ОС Windows.

C:\Users\user>ping -n 1 -s 4 192.168.36.2
Обмен пакетами с 192.168.36.2 по с 32 байтами данных:
Ответ от 192.168.36.2: число байт=32 время=4мс TTL=252
    Отметка времени: 192.168.31.2 : 43990397 ->
               192.168.32.2 : 43990389 ->
               192.168.34.2 : 2187294073 ->
               192.168.35.2 : 2190888543
Статистика Ping для 192.168.36.2:
    Пакетов: отправлено = 1, получено = 1, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 4мсек, Максимальное = 4 мсек, Среднее = 4 мсек
Strict (Strict Source Route)

При использовании данной опции задаётся список IP-адресов L3-устройств, через которые ICMP пакет обязательно должен пройти. Причём именно в той последовательности, которую мы указали. Записей, по традиции, максимум девять.

Работает опция просто: на каждом хопе IP-адрес назначения меняется на тот адрес, который мы указали при запуске утилиты ping.

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

В нашей схеме R2 имеет маршрут в сеть 192.168.36.0/24 через R3. Но так как у нас жёстко прописаны устройства в опциях ICMP пакета, R2 передаст его напрямую на R4.

Запускаем утилиту ping с опцией -k (Strict Source Route) в ОС Windows и прописываем адреса устройств.

C:\Users\user>ping –n 1 -k 192.168.20.1 192.168.31.1 192.168.33.1 192.168.35.1 192.168.36.2

Обмен пакетами с 192.168.36.2 по с 32 байтами данных:
Ответ от 192.168.36.2: число байт=32 время=5мс TTL=252
    Маршрут: 192.168.35.1 ->
           192.168.33. 1 ->
           192.168.31.1 ->
           192.168.20.1
Статистика Ping для 192.168.36.2:
    Пакетов: отправлено = 1, получено = 1, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 5мсек, Максимальное = 5 мсек, Среднее = 5 мсек
Пакeт ICMP Echo Request c выставленной опцией Strict Source Route (Type = 137) в заголовке IP на нашем ПК выглядит следующим образом:

ПК подставил 192.168.20.1 в качестве адреса получателя. Остальные адреса транзитных устройств благополучно запаковал в поля опции IP (записи Source Route). Адрес конечного устройства добавил в запись Destination.

Этот же пакет, после того, как он минует R1:

IP-адрес отправителя остался без изменений. IP-адрес получателя поменялся на новый – 192.168.31.1. Это значение взято из поля Source Route, когда пакет ICMP только поступил на R1.

Важно отметить, что R1 занёс в поле опций новую запись — Recorded Route. Туда подставлен IP-адрес интерфейса R1. Данное поле понадобится, чтобы ответный пакет (ICMP Echo reply) вернулся по тому же маршруту, что и ICMP Echo request. Точно также будут поступать и остальные устройства. Поэтому, когда пакет ICMP попадёт на R5, в опции Strict Source Route будет содержаться список IP-адресов интересов, через которые должен пройти ответный пакет.

ICMP Echo reply, полученный ПК:

Поле Recorded Route переписывается по мере прохождения пакета ICMP Echo reply, так как там всегда указан адрес исходящего интерфейса для текущего пакета. Поэтому R1, когда получит ICMP Echo reply, заменит 192.168.31.2 на 192.168.20.1.

Если в команде ping мы опустим один из адресов, например, последний (192.168.35.1 – R5), R4 должен будет отправить пакет сразу на устройство с адресом 192.168.36.2. Но так как эта сеть не является для него локальной, R4 отрапортует о том, что заданный узел недостижим. Маршрутизировать пакет по обычным правилам он не будет.

Для обработки опции Record на сетевом оборудовании должен быть включен режим source routing. Например, на оборудовании Cisco он включён по умолчанию.

Loose (Loose Source Route)

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

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

Запускаем утилиту ping с опцией -j (Loose Source Route) в ОС Windows и прописываем адреса устройств.

C:\Users\user>ping -n 1 -j 192.168.32.1 192.168.36.2

Обмен пакетами с 192.168.36.2 по с 32 байтами данных:
Ответ от 192.168.36.2: число байт=32 время=4мс TTL=250
    Маршрут: 192.168.32.1
Статистика Ping для 192.168.36.2:
    Пакетов: отправлено = 1, получено = 1, потеряно = 0
    (0% потерь)
Приблизительное время приема-передачи в мс:
    Минимальное = 4мсек, Максимальное = 4 мсек, Среднее = 4 мсек
Пакeт ICMP Echo Request c выставленной опцией Loose Source Route (Type = 131) в заголовке IP на нашем ПК выглядит так:

ПК подставил адрес R3 (192. 168.32.1) в качестве получателя. При этом адрес конечного устройства R5 (192.168.36.2) указал в опции IP (запись Destination). Далее пакет маршрутизируется в сети по обычным правилам, пока не попадёт на R3. R3 подставит в качестве адреса назначения адрес R5 и в опциях пропишет свой адрес, через который должен будет вернуться ответный пакет (запись Recorded Route). После чего отправит его в сеть.

Ответный пакет ICMP Echo reply особого интереса не представляет, так как аналогичен ранее рассмотренным. В опциях будет указан адрес исходящего интерфейса R3 (запись Recorded Route), через который прошел пакет.

Verbose

Данная опция активируется автоматически при выборе любой из ранее описанных. Предоставляет более детальный вывод информации на экран. На сам пакет ICMP она никак не влияет. В Windows в команде ping такой опции нет.


Чтобы мы могли воспользоваться этими опциями, промежуточное оборудование должно их поддерживать. С этим проблем не будет. К новшествам мира ИТ относить весь этот «rocket science» не приходится. Напрашивается вывод: опции Loose, Strict, Record, Timestamp могут быть полезны, даже с учётом ограничения в «девять». Если бы не следующие нюансы, связанные с безопасностью.

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

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

Третье. Часть сетевого оборудования обрабатывает пакеты с установленными опциями программным образом на уровне control-plane (без использования различных схем оптимизации маршрутизации трафика), что безусловно нагружает ЦПУ. А значит есть возможность осуществить DoS атаку на такое устройство.

Многие вендоры (есть даже отдельное RFC 7126) рекомендуют пакеты с указанными опциями никак не обрабатывать. Варианты предлагают разные. Вплоть до отбрасывания таких пакетов. Правда у некоторых из производителей бывают диссонансы: с одной стороны рекомендуем отбрасывать такие пакеты, с другой — «Record is a very useful option».

Быстрая попытка проверить соответствие этим рекомендациям у пары интернет-провайдеров показали, что часть опций всё-таки работает. Но source routing отключён везде.

Получается интересный вывод. Опции Loose, Strict, Timestamp, Record могут быть полезны при диагностике проблем в сети. Но вопрос безопасности нивелирует это.

В итоге у меня всё-таки осталось чувство непонимания. Почему озвученный в начале вопрос присутствовал в тесте? Относительно полезна опция Record и то при небольшой глубине сети. Остальные опции под вопросом.

Напоследок небольшой опрос. Всем хорошего дня!

Параметры команды ping

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

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

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

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

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

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

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

ping 27sysday. ru

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

ping 27susday.ru -t

и процесс можно будет остановить только вручную, нажатием клавиши ctrl+c  
Ключ i – нужен, чтобы задать срок жизни отправленного пакета, по умолчанию 128. Вы отправляете пакет и он начинает шарится по удаленным узлам, пройдя узел, отнимается единичка, и так пока не будет ноль. Затем пакет уничтожается, и выводит Вам соответствующее уведомление.
Ключ w – нужен, чтобы увеличить время ожидания ответа от ресурса, к которому Вы обращаетесь. Бывают такие случаи, когда вы посылаете ping до какого-либо узла, и он выдает вам сообщение, что заданный узел не доступен, соответственно, Вы думаете, что узел не работает. Вывод правильный, но не всегда. Бывает, что он доступен, только вот перегружен и не успевает Вам ответить, чтобы этого избежать ставится ключ w.
Бывает, что удаленный узел, вроде бы работает, т.е. вы можете на него зайти, Вы на сто процентов уверены в его работоспособности, а на ping не отвечает, хоть какую ставь задержку с помощью ключа w. Это объясняется тем, что системный администратор, поставил фаервол и запретил отвечать на ICMP пакеты. Это делается для того, чтобы нельзя было штурмовать эхо-запросами сервера, которые смотрят в Интернет. Упасть сервер не упадет, но вот его производительность снизится.
Совет: Если Вы начинающий системный администратор, советую и вам закрыть ICMP порт на своих серверах, которые у Вас смотрят в интернет.
В этой статье Вы узнали о трех основных ключах для программы Ping.

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

Предыдущая

WindowsГибернация в Windows 7 — 8

Следующая

WindowsДрайвера на звуковую карту realtek

Команда

Ping: руководство для начинающих

Одним из наиболее часто используемых инструментов сетевых администраторов является команда ping. Прошло более полувека с тех пор, как он был выпущен, и неудивительно, что он доказал свою эффективность в устранении неполадок в сетях.

Проверить доступность сетевого устройства в сети (в основном компьютеров) можно с помощью команды ping. Для проверки связи между хостами и серверами используется команда PING (Packet Internet Groper).

Используя IP-адреса или URL-адреса в качестве входных данных, эта команда передает пакет данных на указанный адрес с сообщением «PING» и получает ответ от сервера/хоста. когда скорость пинга высокая, а задержка низкая.

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

Содержание

  1. Что такое команда Ping?
  2. Основы команды Ping
  3. Как работает команда Ping?
  4. Устранение неполадок с помощью ping
  5. Синтаксис проверки связи для Linux
  6. Стандартные команды Ping для Linux

Что такое команда Ping?

Эхо-запросы — это основные программы Интернета, которые позволяют пользователям проверять и проверять, существуют ли конкретные IP-адреса назначения и могут ли они принимать запросы в компьютерных сетях.

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

IP-сеть проверяется с помощью команды ping, если возможно связаться с хостом. Многие системы Unix и Linux используют 64 байта вместо 32 байтов в качестве размера пинга по умолчанию в Windows.

Помимо Windows и Linux, macOS также поддерживает эту команду. Как правило, ping используется для выполнения следующих задач:

  • Проверка настройки сети
  • Проверка подключения удаленного компьютера
  • Определение IP-адреса удаленной системы
  • Пробуждение удаленных систем

УСТАНОВКА 9000 3

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

 sudo ping -v 

Основы команды Ping

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

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

Синтаксис:

 PING [OPTIORS] HOSTNAME или IP -адрес 

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

. клавиши Ctrl+C, мы можем остановить процесс.

  • от: Отображает IP-адрес и цель.
  • важно: IP-адреса могут различаться в зависимости от нашего географического положения при посещении веб-сайта.
  • ttl: Есть значение Time to Live от 1 до 255. Кроме того, он указывает, сколько переходов может пройти пакет, прежде чем он будет удален из сети любым маршрутизатором.
  • icmp_seq: Здесь показаны порядковые номера пакетов ICMP. Для последующих эхо-запросов число увеличивается на одну цифру.
  • время: Описывает продолжительность времени, которое потребовалось пакету, чтобы достичь места назначения и вернуться к источнику. Время выражается в миллисекундах (мс).

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

  1. Самый быстрый способ пропинговать локальный хост — это ping 0 (или ноль) . Терминал определит и распознает IP-адрес при вводе этой команды.
  2. Можно подразумевать имя ping localhost для ping localhost. Эту команду нужно ввести и сказать ping this system каждый раз, когда мы упоминаем эту систему.
  3. Также можно пропинговать локальный хост, используя IP-адрес ping (IP-адрес) . Типичный пример:
 ping localhost 
Команда Ping localhost в Linux

Как работает команда Ping?

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

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

  1. Проверьте сеть на наличие задержек, потерянных пакетов и других проблем.
  2. Будет проведена проверка вашего интернет-соединения.
  3. Убедитесь, что удаленные машины подключены к сети.

Команда ping работает, отправляя небольшой пакет данных, называемый ICMP Echo Request , на целевое устройство, а затем ожидая ответа, называемого ICMP Echo Reply .

ICMP

Если целевое устройство отвечает, это означает, что оно доступно в сети и с сетевым подключением нет серьезных проблем.

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

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

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

  • Время жизни (TTL)
  • Передача и прием байтов
  • Время, затраченное на передачу туда и обратно (мс)
  • Статистические данные о потере пакетов

Устранение неполадок с помощью ping

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

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

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

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

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

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

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

Синтаксис проверки связи для Linux

Чтобы получить синтаксис ping в Linux или macOS, необходимо ввести в терминал следующую команду:

 ping –h 
Синтаксис Функция
а как только он достигает целевого устройства, он издает звук.
б с помощью этой команды вы можете пропинговать широковещательный IP-адрес.
Б гарантирует, что исходный IP-адрес не изменится при проверке связи.
с (количество) определить, сколько пингов будет отправлено.
д используя SO-DEBUG на сокете.
ф несколько пакетов ping отправляются в секунду, чтобы затопить сеть.
я (интервал) количество успешных передач в секундах.
I (адрес интерфейса) идентифицирует исходный IP-адрес указанного интерфейса.
1 (предварительная загрузка) чрезмерное количество эхо-сигналов, отправленных до ожидания ответов.
н несмотря на IP-адреса, он отображает имена хостов в качестве вывода.
д отображается тихий выход. Команда ping резюмируется в конце одной строки.
Т (ттл) время жить значение.
в предоставляет подробный вывод.
В убедитесь, что вы используете последнюю версию ping.
ч (крайний срок) команда ping завершается через определенный промежуток времени, независимо от того, сколько пакетов было отправлено или получено.
W (тайм-аут) ограничивает период времени ожидания ответа в секундах.
-? (Помощь) демонстрирует использование и синтаксис для ping.

Стандартные команды Ping для Linux

Ниже приведены еще несколько приложений пользователей Linux для команды ping:

1. Измените интервал между пакетами ping

В команде ping введите -i 9 0144 вариант указывает интервал в секундах между отправкой последовательных пакетов ping. Значение по умолчанию — 1 секунда.

 ping -i 6 namlabs.com 
Команда интервала проверки связи в Linux

Вы также можете указать дробное значение, например 0,2 , чтобы отправлять запросы чаще. Однако обратите внимание, что фактический интервал может быть немного больше из-за времени, необходимого для обработки команды ping и отправки пакета.

2. Выберите количество ping-запросов для отправки

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

Например, следующая команда отправляет 5 пакетов ping на адрес atatus.com :

 ping www.replaybird.com -c 5 
Команда ограничения эхо-сообщений Ping в Linux

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

3. Проверка версии

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

Например:

 ping -V 
команда версии ping в Linux

Это покажет номер версии команды ping , установленной в вашей системе.

Обратите внимание, что параметр -V представляет собой заглавную букву «V», а не строчную букву «v». Параметр нижнего регистра -v включает подробный вывод.

4. Ping тихий режим

Опция -q включает "тихий" вывод. Это заставляет команду ping подавлять нормальный вывод и отображать только сводку в конце.

Например, следующая команда отправляет 5 ping-пакетов на google.com с тихим выводом: он завершил отправку всех пакетов. В конце он отобразит сводку результатов, включая количество переданных пакетов, количество полученных и потерянных пакетов.

5. Изменить размер пакета

Указывает размер пакета ping в байтах. По умолчанию 9Команда 0143 ping отправляет пакеты размером 56 байт.

Например, следующая команда отправляет 5 ping-пакетов размером 100 байт на адрес google.com : максимальная единица передачи (MTU) сети или для проверки производительности сети с различными размерами пакетов. Однако обратите внимание, что некоторые системы могут блокировать или отбрасывать ping-пакеты, размер которых превышает определенный.

Если вы хотите отправить максимально возможный размер ping-пакета, вы можете использовать параметр -s со значением 65500 или выше. При этом будет отправлен максимально большой пакет с учетом максимального размера IP-пакета и дополнительных заголовков IP и ICMP.

6. Настройка длительности тайм-аута проверки связи

Этот экземпляр приведет к завершению проверки связи через 15 секунд. Независимо от того, сколько пакетов отправлено или получено, оно будет завершено.

9Параметр 0143 -w указывает крайний срок в секундах для отправки или получения пакета ping. Если пакет не отправлен или не получен в течение указанного времени, команда ping завершится с ошибкой.

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

 ping -w 4 replaybird.com 

Команда ping будет отправлять пакеты и ожидать ответа на каждый пакет до 4 секунд. Если ответ не получен в установленный срок, 9Команда 0143 ping завершится с ошибкой.

Команда тайм-аута ping в Linux

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

Однако обратите внимание, что фактическое время ожидания может быть немного больше из-за времени, необходимого для обработки команды ping и отправки пакета.

Последний снимок

Используя Ping, вы можете проверить сетевое подключение как локально, так и удаленно. Тестирование и устранение проблем со скоростью сети и подключением в Linux можно выполнить мгновенно с помощью команды ping.

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

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

Помимо проверки подключения и определения времени отклика, ping также используется для устранения неполадок. Определите IP-адрес URL-адреса, пропинговав его. Вы можете использовать команду ping, чтобы узнать IP-адрес определенного URL-адреса.


Мониторинг всего приложения с помощью Atatus

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

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

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

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

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

9Команда 0011 ping является одним из наиболее часто используемых инструментов сетевых администраторов. Он служил и продолжает служить сетевым администраторам одним из лучших инструментов для устранения неполадок в сети с момента его выпуска почти 39 лет назад.

В этой статье мы расскажем, что делает команда ping, как ее использовать и многое другое. Читайте дальше, чтобы узнать об этом простом, но мощном сетевом инструменте, без которого не могут обойтись ИТ-команды.

Что делает команда ping?

Команда ping тестирует , если вы можете связаться с хостом через IP-сеть.

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

Размер пинга по умолчанию в Windows составляет 32 байта, в то время как многие системы Unix или Linux используют 64 байта. Помимо Windows и Linux, эта команда также доступна в macOS. На самом деле вы можете найти его почти во всех версиях Unix, как и большинство других операций.

В обычных ИТ-сценариях команда ping используется для:

  • проверки возможности подключения удаленной машины
  • Проверка конфигурации сети
  • Пробуждение удаленных систем
  • Узнать IP-адрес удаленной системы

Синтаксис проверки связи 

Синтаксис базовой команды проверки связи одинаков для систем Windows и Linux. Это просто «ping», за которым следует целевой URL или IP-адрес. Например:

 ping www. facebook.com 

или

 ping 157.240.23.35 

Команда ping также предлагает набор параметров для устранения сетевых неполадок. Хотя возможности или переключатели параметров различаются для систем Windows и Linux, синтаксис аналогичен: ping, за которым следует параметр, за которым следуют параметры параметра, за которыми следует URL-адрес или IP-адрес назначения.

Например, в системах Windows для проверки связи facebook.com с 5 эхо-запросами команда будет выглядеть так:

 ping /n 5 www.facebook.com  

Конечно, вы можете использовать несколько вариантов одновременно.

Например, если вы хотите пропинговать www.facebook.com с помощью 3 эхо-запросов, каждый с размером поля данных 100 байт, команда будет выглядеть так:

 ping /n 3 /l 100 www.facebook. com 

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

Если вы собираетесь использовать команду ping в Windows, обязательно помните о следующих параметрах:

  • /t — используется для отправки повторяющихся эхо-запросов до тех пор, пока они не будут прерваны. В системах Windows одна команда ping отправляет 4 эхо-запроса, если не указано иное. Команды выглядят следующим образом: ping /t www.facebook.com
    В Linux система постоянно отправляет ping-запросы, если их не прерывают.
  • /n — как упоминалось ранее, устанавливает количество ICMP-пакетов, отправляемых с помощью команды ping. Например, чтобы отправить 5 эхо-запросов ICMP в Facebook, команда будет выглядеть так: пинг -n/ 5 www.facebook.com
  • /a — для разрешения имени хоста из IP-адреса. Например: ping -a 157.240.23.19

Параметры команды ping в Linux

А вот параметры команды ping в Linux:

  • -c — для указания количества ICMP-пакетов, отправляемых с помощью команды ping. Например: ping -c 6 www.facebook.com
  • -i — установить интервал между пакетами. По умолчанию интервал составляет одну секунду. Например, чтобы установить 7 секунд: пинг -i 7 www.facebook.com
  • -f — для отправки максимального количества пакетов на самых высоких скоростях, разрешенных сетью. Например: ping -f www.facebook.com

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

Теперь посмотрим, как использовать команду ping. В Windows откройте командную строку и просто введите команду ping с соответствующими параметрами. Например, чтобы пропинговать Facebook 7 раз, введите:

 ping -n/ 5 www.facebook.com 

В системах Linux откройте терминал и введите команду ping. Например, чтобы пропинговать Facebook 5 раз с интервалом в 10 секунд:

 ping -c 5 -i 10 www.facebook.com 

Как прочитать пинг-тест?

Но выполнение — это еще не все; вам также нужно знать, как читать пинг-тест. Итак, мы разберем строки, чтобы помочь вам понять, что они означают.

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

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

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

Значение TTL представляет собой количество переходов, через которые прошел пакет, чтобы достичь вашей системы. Эти пакеты в приведенном выше примере имели 71 переход, прежде чем они вернулись.

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

Примеры команды ping

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

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

 ping /t hostname  

В Linux ping повторяется, если не указано количество эхо-запросов. Здесь вы также можете установить временной интервал между каждым пингом. Например, вы можете проверять связь с хостом каждые 60 секунд с помощью следующей команды: 

 ping -1 60 hostname 

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

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

 ping 127.0.0.1 

Если вы получаете ответ, это означает, что подключение ваша система к вашему маршрутизатору работает правильно, и проблема не связана с вашим маршрутизатором.

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

Вы также можете настроить команду ping для непрерывного запуска через определенные промежутки времени. Это может помочь вам постоянно контролировать удаленные системы.

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

 ping -f имя хоста 

Ключевые выводы

Команда ping обычно используется для устранения неполадок в сети. Эта команда отправляет ICMP-пакеты на хост или адресату как эхо-запросы ICMP. Хост отправляет пакеты ICMP в качестве ответа, а система вычисляет время, затраченное на это, и отображает результаты.

Чтобы использовать команду ping, просто введите ping, а затем имя хоста или URL-адрес в командной строке для систем Windows. Для систем Linux введите ту же команду в терминале. Не забывайте, что синтаксис команды выглядит так:

 ping hostname 

Команда Ping предлагает несколько вариантов. Они отличаются для систем Linux и Windows. Но общий синтаксис — имя хоста опции ping.

Помимо проверки доступности хоста, вы можете использовать команду ping для непрерывного мониторинга службы или системы. Вы также можете использовать его для устранения неполадок в сети и проверки конфигурации сети.

Часто задаваемые вопросы

Что означает ping?

При разработке инструмента слово ping не использовалось в качестве аббревиатуры. Но это слово уже давно расширилось до Packet InterNet Groper.

Как чаще всего используется команда ping?

Чаще всего команда ping используется для определения доступности сервера или удаленной системы по IP-сети.