15 примеров команды PING для диагностики сети

Почему?

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

Что такое порт

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

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

Проверить порт сервера на доступность можно следующими способами:

Ping ipv6 адресов

По умолчанию, когда запускаем команду PING, мы используем IP версии 4. Однако, с появлением протокола IPv6, все чаще стали встречаться адреса такого формата.

Ядро Linux поддерживает IPv6 начиная с версии 2.2, так что все дистрибутивы Linux поддерживают этот протокол.

Базовый синтаксис таков:

$ ping -6 2001:4860:4860::8888

В старых версиях была команда ping6. В новых дистрибутивах её нет и весь функционал объединен с ping.

Как и при работе с IPv4, ключом –c можем указать число пакетов, для отправки, а ключ –i – определяет интерфейс для исходящих запросов.

Ping всех устройств в указанной подсети

Командой Ping можно посылать сигнал всем хостам в сети или подсети. Для этого нужно запустить ping с ключом –b на широковещательный адрес, который заканчивается на 255. Например:

ping -b -c 4 192.168.1.255

Итак, если хост назначения недоступен, значит либо там блокируются ICMP пакеты, либо есть проблемы с сетью или таблицей маршрутизации.

Ping маршрута (traceroute)

Сама по себе команда ping не показывает пути от источника к узлу назначения. Но это было бы очень кстати в том случае, когда узел назначения не отвечает, чтобы определить где именно теряется связь.

Команда tracert (Windows) или traceroute работают аналогично ping. Преимуществом этой команды является то, что он показывает весь путь следования пакета от источника до узла назначения.

В принципе traceroute посылает тот же ICMP пакет, что и Ping. Но в случае traceroute, в отличии от ping начально значение TTL пакета выставляется равным единице. Пакет доходит до первого узла по пути к узлу назначения. Устройство уменьшает TTL на одну единицу и если получается нуль, то возвращает сообщение об ошибке истечения времени пакета.

В сообщение так же содержится IP адрес и имя хоста. Отправитель получает данное сообщение. Если оно не от узла назначения, то посылает второй пакет с TTL на один больше предыдущего. И так до тех пор, пока не получит ответ от узла назначения.
Для получения пути нужно ввести команду:

traceroute [hostname/IPaddres]

Ping на 2-ом уровне osi (использование arping)

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

С другой стороны, можно использовать другую встроенную в Linux команду – arping. Эта утилита работает так же, как ping, но на втором – канальном уровне модели OSI.

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

$ sudo arping [Ip_address]
$ sudo arping [Ip_address]
$ sudo arping 192.168.1.1

В результате получите что-то подобное:

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

Отметим, что эта команда не предустановлена на системе Debian и производных.

Ping по имени узла

По умолчанию, команда ping посылает пакеты на узел назначения используя IP адрес или имя узла назначения. Также нужно отметить, что большинство реализаций утилиты ping на Linux не разрешают DNS в обратном направлении.

Например, если мы запустим команду ping, указав IP адрес, он вернёт только IP узла. И наоборот, если параметром передадим имя узла, то команда вернет его IP адрес.
Посмотрите вывод введя команду ниже:

Где расположена утилита ping?

В Unix-подобных системах таких, как Linux бинарные файлы обычно располагаются по пути

/usr/bin/

В этой папке можно найти все множество бинарных файлов, которые мы используем как команды в терминале. В других ОС семейства Linux, они могут быть расположены в:

/usr/sbin/

Проверить это можем командой ls:

$ ls /usr/bin | grep ping

На скриншоте видно, что команда ping находится в папке

/usr/bin/

Другой метод, которым можно найти место расположения команд это which:

$ which ping

На выводе она даст следующую информацию:

/usr/bin/ping

Диагностика сети при помощи mtr

MTR — программа, которая сочетает функционал команд traceroute и ping в одном инструменте. MTR проверяет соединение между локальной системой и указанным узлом (IP или доменом). Программа отправляет запрос к узлу, как команда ping, и показывает маршрут пакета, как traceroute.

Дополнительные агрунементы для пинга

Команду PING можно задавать с дополнительными аргументами, которые позволят вам более тонко настроить тест. Например, команда ping –t IP_адрес будет производить «пингование» до тех пор, пока пользователь не остановит тест.

Полный список доступных аргументов и их значения можно посмотреть, введя в командной строке команду: ping /?

Завершение работы команды по счетчику

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

ping -c 10 [host]

Запустить команду если ping вернул ошибку

Представьте, что вам нужно получить оповещение если узел назначения перестал отвечать на запросы команды ping. Для этого нужно включить команду ping в bash скрипт и прописать нужные команды.
Например, скрипт ниже позволяет вам проверить отвечает ли узел на запросы ping:

#! /bin/bash

ping -c 1 [host]

If [ $? -eq 0]; then

    #Your_command_here

Fi

Как завершить команду ping?

По умолчанию, в системе Linux команда Ping непрерывно посылает пакета на хост. Но если нужная информация получена, то необходимо как-то прервать выполнение команды. Для этого просто нужно нажать комбинацию клавиш CTRL C.

:/>  CHKDSK – запуск проверки диска • Блог системного администратора

После этого команда немедленно остановится.

Как проверить пинг до сервера через командную строку

В командной строке введите команду:

ping IP_адрес (например, ping 192.168.1.1)

В итоге вы увидите процесс опроса устройства по заданному IP-адресу. Если время обмена пакетами составляет несколько миллисекунд, то сеть работает нормально. Однако, при появлении ошибок связи с устройством следует искать неисправность.

Для начала следует выполнить проверку связи с локальным IP-адресом, выполнив команду: ping 127.1.1.0, где 127.1.1.0 – это локальный адрес собственного компьютера.

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

Как проверить, открыт ли порт, командой telnet

Telnet — это утилита, с помощью которой можно соединиться с удалённым портом любого компьютера и установить канал связи. Это реализация клиентской части протокола с тем же названием (стандартный порт telnet — 23). Для использования telnet нужно знать, какой порт использует искомое приложение, а также имя или IP-адрес сервера. Если при работе с telnet не указать порт, утилита проверит доступность сервера аналогично команде ping.

Рассмотрим, как узнать, открыт ли порт на компьютере или сервере в Windows и Linux.

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

Принцип работы команды Ping прост: она посылает серию пакетов маленького размера на указанное устройство.

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

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

Например, в локальной проводной сети команда вернет лучший результат по времени, чем в сети с несколькими маршрутизаторами и сетевыми мостами.

Однако, на основе полученной информации утилита будет судить о состоянии целевого устройства.

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

ping [options] [destination]

Ниже приведены некоторые полезные и часто используемые ключи для этой команды:

  • -c: Позволяет указать количество пакетов для отправки.
  • -s: Позволяет изменять размер пакета по умолчанию.
  • -v: Отображает текущее состояние выполнения команды.
  • -w: Указывает в секундах время завершения команды.
  • -i: Позволяет указать интерфейс, с которого будут идти запросы.

Как сделать пинг (ping)?

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

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. Это необходимо, когда известно только имя хоста.

:/>  Настройка звука в Windows 10. Вывод звука на разные устройства для отдельных приложений

target (цель) = удаленное устройство, состояние которого нужно проверить. Это может быть как IP, так и имя хоста.

/? = вывод справки обо всех доступных параметрах команды ping.

Примечание:-f, -v, -r, -s, -j и -k работают только при проверке состояния IPv4-адресов. Опции -R и -S работают только с протоколом IPv6.

В команде ping описание есть и менее популярные параметры: [-j host-list], [-k host-list] и [-c compartment]. Чтобы получить дополнительную информацию о них, воспользуйтесь командой /?.

В этом примере команда ping используется для проверки состояния хоста www.google.com. Опция -n указывает команде ping на необходимость отправить пять echo-запросов ICMP вместо стандартных четырех, а опция –l задаёт размер пакета для каждого запроса в 1500 байт вместо 32 байт по умолчанию. При таком запросе вы получите следующий результат:

Пункт 0% loss в статистике проверки состояния 74.125.224.82 говорит о том, что все посланные к www.google.comecho-запросы были возвращены. Это значит, что до тех пор, пока сеть активна, можно взаимодействовать с сайтом Google без каких-либо проблем.

В этом примере использования команды ping в cmd проверяется состояние 127.0.0.1, который также известен как IP-адрес localhost в протоколе IPv4.

Ping 127.0.0.1 – отличный способ проверить работоспособность всех функций Windows. Но с помощью этого запроса не получится узнать о состоянии своего или удаленного компьютера. Существует и IPv6-версия этой проверки – ping ::1.

В этом примере мы пытаемся узнать имя хоста, привязанное к IP-адресу 192.168.1.22. При этом проверка должна быть проведена в штатном режиме, даже если имя хоста выяснить не удастся.

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

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

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

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

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

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

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

Дайте знать, что вы думаете по данной теме в комментариях. Мы крайне благодарны вам за ваши комментарии, подписки, лайки, отклики, дизлайки!

Как просмотреть журналы сайтов

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

Командная строка в windows 10 или windows 7

Для запуска командной строки проще всего воспользоваться поиском в меню «Пуск». Для этого откройте меню «Пуск», введите команду «cmd» и после выполнения поиска откройте программу «Командная строка». При этом командную строку можно запускать как в обычном режиме, так и от имени администратора, это не принципиально.

На скриншотах внизу показано, как это выглядит в операционных системах Windows 10 и Windows 7.

Также командную строку можно запустить при помощи меню «Выполнить». В этом случае нужно нажать комбинацию клавиш Win-R и в открывшемся меню ввести команду «cmd».

Запуск через меню «Выполнить» работает, как в Windows 10, так и в Windows 7.

Команды, связанные с ping

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

Можно ли использовать ping с прокси-сервером?

Прокси – это сервер или приложение играющее роль посредника для соединения двух хостов в сети. Это своего рода «человек посередине», который отправляет запросы прямо к хосту.

Проблема в том, что команда PING требует прямого соединения между устройствами. Таким образом, команда Ping не может функционировать если перед ним стоит прокси-сервер.

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

Немного теории о команде ping

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

PING – основная утилита командной строки Windows для проверки сетевых соединений в TCP/IP. Команда PING с помощью отправки сообщений с эхо-запросом по протоколу ICMP проверяет соединение на уровне протокола IP с другим компьютером, поддерживающим TCP/IP. После каждой передачи выводится соответствующее сообщение с эхо-ответом.

:/>  Как использовать активатор Office 365 для Windows 10 | Проблемы с компьютером

Ping пожалуй самая основная TCP/IP-команда среди пользователей Windows, используемая для устранения неполадок и проверки возможности доступа к Интернет.

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

Отключение команды ping

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

Открываем командную строку

Для проверки связи с сетевым устройством (рабочей станцией, сервером и т.п.) необходимо открыть командную строку (найти ее можно в меню «Пуск»->Все программы->Стандартные). Либо нажимаем сочетание клавиш Win R и вводим CMD

По ftp или ssh

Теперь вы знаете, как проверить, открыт ли порт на сервере, как использовать ping и traceroute, и как посмотреть логи сайта.

Поиск идеального значения mtu

MTU (Maximum Transmission Unit) это максимальный размер пакета, который может быть передан по сети.

Сегодня, в целях безопасности, в сетях создаются препятствия для работы MTU. Но большинство локальных сетей на основе Ethernet использует MTU размером 1500 байт.

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

ping: local error: Message too long

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

ping -M do -s [initial_value] [host]

В нашем случае, значение размера пакета слишком большое. Поэтому уменьшаем его до 1472 байтов.

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

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

Показатель время отклика сервера

Теперь поговорим про показатель время отклика сервера. Это время с момента отправки пакета до момента получения ответа от сервера. Измеряется этот показатель в миллисекундах (мс). Чем меньше это значение, тем лучше связь.

Значения времени отклика (см скрин ниже – среднее значение 33 мс):

  1. До 40 мс — идеальное значение. Такое время реакции позволяет комфортно пользоваться стримминговыми сервисами;
  2. От 40 — 110 мс считается нормальным значением. Пинг позволяет комфортно пользоваться интернет-серфингом и онлайн-игр;
  3. Если пинг больше 110 — 210 мс, то медиасервисы будут работать медленно.

Полный синтаксис и важные ключи команды ping

ping [-t] [-a] [-n счетчик] [-l размер] [-f] [-i TTL] [-v тип] [-r счетчик] [-s счетчик] [{-j список_узлов | -k список_узлов}] [-w интервал] [имя_конечного_компьютера], где

Проверка задержки командой ping

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

Чтобы измерить задержку введи указанную команду и обратите внимание на ввыод:

ping -c 4 [host]

ping -c 4 192.168.1.1

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

rtt min/avg/max/mdev

Второе значение после знака равенства – это время задержки. В нашем случае он равен 6,798.

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

Результаты проверки ping

При выполнении проверки на пинг рядом с каждым отправленным пакетом отображается время его возврата в миллисекундах (мс). Это именно то, чтобы обычно называют «пингом».

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

Ниже статистика о времени приема и передачи пакетов в миллисекундах (мс) или пинг.

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

Установление размера пакета ping

По умолчанию, размер пакетов ICMP равен 56 байтам. Это позволяет не влиять на работу сети во время проверки. Но при необходимости можно изменять это значение. Для этого достаточно запустить команду ping с ключом –s и требуемым размером. Например:

ping -s [packet_size] hostname/IP

Если нужно установить значение пакета равным 100 байтам, нужно прописать команду ниже:

ping -s 100 192.168.1.1

Ping с выводом времени

Хотя команда ping дает много полезной информации, но этого может быть недостаточно. Тем не менее, есть возможность настроить команду так, чтобы она показала дату и время отправки пакета. Это может сделать вывод приятней и полезней для скриптов и логирования.

Для этого достаточно прописать указанную ниже команду. Но вам придется установить пакет ccze.

Заключение

https://www.youtube.com/watch?v=a9a3aaJBLkA

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

Оставьте комментарий

Adblock
detector