проверка связи
Проверяет подключение на уровне IP к другому компьютеру TCP/IP, отправляя сообщения об эхо-запросе протокола ICMP. Отображается получение соответствующих сообщений эхо-ответа, а также время кругового пути. ping — это основная команда TCP/IP, используемая для устранения неполадок с подключением, доступностью и разрешением имен. Используется без параметров, эта команда отображает содержимое справки.
Эту команду можно также использовать для проверки имени компьютера и IP-адреса компьютера. Если проверка подключения к IP-адресу выполнена успешно, но проверка pinging имя компьютера не является, у вас может возникнуть проблема с разрешением имен. В этом случае убедитесь, что указанное имя компьютера можно разрешить через файл локальных узлов, используя запросы системы доменных имен (DNS) или методы разрешения имен NetBIOS.
Эта команда доступна только в том случае, если протокол TCP/IP установлен в качестве компонента в свойствах сетевого адаптера в сетевых Подключение ions.
Синтаксис
ping [/t] [/a] [/n ] [/l ] [/f] [/I ] [/v ] [/r ] [/s ] [] [/w ] [/R] [/S ] [/4] [/6]
Параметры
| Параметр | Описание |
|---|---|
| /T | Указывает, что связь продолжает отправлять сообщения эхо-запроса в место назначения до прерывания. Чтобы прервать и отобразить статистику, нажмите клавиши CTRL+ВВОД. Чтобы прервать и выйти из этой команды, нажмите клавиши CTRL+C. |
| /a | Указывает разрешение обратного имени на целевом IP-адресе. Если эта операция выполнена успешно, отображается соответствующее имя узла. |
| /N | Указывает количество отправленных сообщений эхо-запроса. Значение по умолчанию — 4. |
| /L | Указывает длину в байтах поля данных в сообщениях эхо-запроса. Значение по умолчанию — 32. Максимальный размер — 65 500. |
| /f | Указывает, что сообщения эхо-запроса отправляются с флагом «Не фрагментировать » в заголовке IP-адреса с значением 1 (доступно только для IPv4). Сообщение эхо-запроса не может быть фрагментировано маршрутизаторами в пути к месту назначения. Этот параметр полезен для устранения неполадок с максимальной единицей передачи (PMTU). |
| /Я | Указывает значение поля Time To Live (TTL) в заголовке IP-адреса для отправленных сообщений эхо-запроса. Значение по умолчанию — значение TTL по умолчанию для узла. Максимальное значение TTL — 255. |
| /V | Указывает значение поля типа службы (TOS) в заголовке IP-адреса для отправленных сообщений эхо-запроса (доступно только для IPv4). По умолчанию установлено значение 0. TOS указывается как десятичное значение от 0 до 255. |
| /R | Указывает параметр «Маршрут записи» в заголовке IP-адреса для записи пути, принятого сообщением запроса эхо и соответствующим сообщением ответа на эхо (доступно только в IPv4). Каждый прыжк в пути использует запись в параметре «Маршрут записи». Если это возможно, укажите число , равное или больше количества прыжков между источником и назначением. Число должно быть не менее 1 и не более 9. |
| /s | Указывает, что параметр метки времени Интернета в заголовке IP-адреса используется для записи времени прибытия сообщения эхо-запроса и соответствующего сообщения эхо-ответа для каждого прыжка. Число должно быть не менее 1 и не более 4. Этот параметр необходим для адресов назначения канала. |
| /J | Указывает сообщения эхо-запроса, используя параметр «Свободный исходный маршрут » в заголовке IP с набором промежуточных назначений, указанных в списке узлов (доступно только для IPv4). При слабой маршрутизации источника последовательные промежуточные назначения могут быть разделены одним или несколькими маршрутизаторами. Максимальное число адресов или имен в списке узлов — 9. Список узлов представляет собой ряд IP-адресов (в точечной десятичной нотации), разделенных пробелами. |
| /K | Указывает сообщения эхо-запроса, используя параметр «Строгий исходный маршрут » в заголовке IP с набором промежуточных назначений, указанных в списке узлов (доступно только для IPv4). При строгой маршрутизации источника следующий промежуточный целевой объект должен быть напрямую доступен (он должен быть соседом в интерфейсе маршрутизатора). Максимальное число адресов или имен в списке узлов — 9. Список узлов представляет собой ряд IP-адресов (в точечной десятичной нотации), разделенных пробелами. |
| /Ж | Указывает время ожидания сообщения эхо-ответа в миллисекундах, соответствующего заданному сообщению эхо-запроса. Если сообщение эхо-ответа не получено в течение времени ожидания, отображается сообщение об ошибке «Время ожидания запроса». Время ожидания по умолчанию — 4000 (4 секунды). |
| /R | Указывает трассировку пути кругового пути (доступно только для IPv6). |
| /S | Указывает исходный адрес, используемый (доступен только в IPv6). |
| /4 | Указывает протокол IPv4, используемый для проверки связи. Этот параметр не требуется для идентификации целевого узла с IPv4-адресом. Это необходимо только для идентификации целевого узла по имени. |
| /6 | Указывает протокол IPv6, используемый для проверки связи. Этот параметр не требуется для идентификации целевого узла с IPv6-адресом. Это необходимо только для идентификации целевого узла по имени. |
| Указывает имя узла или IP-адрес назначения. | |
| /? | Отображение справки в командной строке. |
Пример выходных данных команды ping
C:\>ping example.microsoft.com pinging example.microsoft.com [192.168.239.132] with 32 bytes of data: Reply from 192.168.239.132: bytes=32 time=101ms TTL=124 Reply from 192.168.239.132: bytes=32 time=100ms TTL=124 Reply from 192.168.239.132: bytes=32 time=120ms TTL=124 Reply from 192.168.239.132: bytes=32 time=120ms TTL=124
Примеры
Чтобы выполнить связь с назначением 10.0.99.221 и разрешить 10.0.99.221 имя узла, введите:
ping /a 10.0.99.221
Чтобы получить связь с конечным 10.0.99.221 с 10 сообщениями эхо-запроса, каждая из которых имеет поле «Данные» размером 1000 байт, введите:
ping /n 10 /l 1000 10.0.99.221
Чтобы ping the destination 10.0.99.221 и записать маршрут для 4 прыжков, введите:
ping /r 4 10.0.99.221
Чтобы получить связь с назначением 10.0.99.221 и указать свободный исходный маршрут 10.12.0.1-10.29.3.1-10.1.44.1, введите:
ping /j 10.12.0.1 10.29.3.1 10.1.44.1 10.0.99.221
Дополнительные ссылки
Почему при пинге выдаёт высокий TTL?
В нормальном состоянии маршрутизатор (TPLINK) пингуется с 64 TTL, сеть работает без проблем.
В некоторые моменты времени пинг выдаёт TTL 254, время пинга не увеличивается, сетка падает, инета нет. До перезагрузки устройства. К остальным устройствам пинг обычный
- Вопрос задан более трёх лет назад
- 14397 просмотров
Комментировать
Решения вопроса 1

Константин ™ @Energoblock
Иногда такой TTL появляется при переводе устройства в Recovery mode.
Если роутер делает так самостоятельно, то лучше обновить прошивку до самой последней версии, сбросить к настройкам по-умолчанию и настроить заново.
Либо подключиться к консольному порту на плате роутера и напрямую смотреть логи в момент перехода в такое состояние.
Ответ написан более трёх лет назад
Комментировать
Нравится Комментировать
Ответы на вопрос 2

впишусь в проект как SRE/DevOps.
TTL — это «время» (в кавычках — потому что не в секундах, а в переходах) жизни пакета. сколько маршрутизаторов он сможет пройти, прежде чем «помрет».
поле 8-и битное, так что максимальный TTL = 255. Большой ttl на работоспособность сети влиять никак не должен — пакет в любом случае умрет, достигнув точки назначения. Стандартный TTL = 64.
изменение TTL скорее всего вызвано тем, что пингуете с разных устройств/ ОС.
Что такое время жизни пакета (TTL)

Вероятно, многие из нас обращали внимание на параметр TTL в запущенной команде ping. Расшифровывается TTL как Time to live.
Время жизни пакета это предельное число итераций, которое пакет данных может совершить до своего исчезновения. Выражаясь не так официально, TTL — это число «прыжков» от устройства к устройству, которое может совершить пакет.

Строго говоря, TTL это не только про пакеты данных. Время жизни имеют и другие вещи, например, DNS-записи на серверах. Поэтому не связывайте понятие TTL только с пакетами данных.
Возвращаясь к теме статьи, объясним предназначение времени жизни пакета. Дело в том, что данные в сети имеют свойство зацикливаться, что создаёт своего рода «мусорный» трафик. Поскольку количество «прыжков» между узлами у пакетов ограничено, они не смогут «бродить» по сети вечно.
На самом деле, изначально предполагалось, что TTL пакетов будет измеряться в секундах. Так что это должно было быть время в буквальном смысле слова. Однако позже от этой концепции отказались в пользу простого числа «прыжков» или хопов (hop). На каждом промежуточном узле это число уменьшается на единицу (по умолчанию, хотя настройки можно выставить иначе). Если число «прыжков» у пакета истекло, а адресата он так и не достиг, этот пакет уничтожается, а адресату направляется сообщение о необходимости повторной отправки данных (Time Exceeded). Учтите, что коммутаторы оставшееся число «прыжков» не изменяют, так как действуют на канальном уровне (более низком) модели OSI, а не сетевом.
Время жизни пакета задаётся в соответствующем поле в заголовке IPv4-пакета. В стандарте IPv6 используется уже другое поле Hop Limit. Максимально возможное значение TTL равно 255. В большинстве популярных операционных систем (macOS, Linux, Android, iOS и т.д.) TTL=64. В Windows по умолчанию TTL=128.
TTL и интернет-провайдеры
Достаточно интересно используют TTL пакетов интернет провайдеры для обнаружения несанкционированного подключения устройств. Способ массово стал использоваться со временем распространения мобильного интернета и устройств, которые могут этот интернет не только потреблять, но и раздавать другим (смартфоны, планшеты).
Как это выглядит на практике? Если Вы пользуетесь мобильным интернетом со смартфона, то тот отправляет TTL=64, но, если раздать с него Wi-Fi, то TTL подключенных устройств будет изменяться на единицу. Нагляднее это можно проследить на схеме ниже.

Таким образом, оператор видит, что TTL «прыгает» с 64 до 63, а то и до 127 (если это ноутбук с Windows), и делает вывод, что в сеть выходит не одно устройство, а больше. В зависимости от условий предоставления связи, это может привести к блокировке.
Мы не будем в этой статье рассматривать способы обхода блокировок. Скажем лишь, что значение TTL по умолчанию можно изменить. Возьмём для примера Windows. Если вы запустите ping localhost, то увидите, что, как и говорилось ранее, TTL=128.

Для изменения установленного по умолчанию значения TTL нам нужно открыть редактор реестра, пройти в ветку HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters и отредактировать (или создать, если его нет) параметр DefaultTTL. Если у вас 64-битная версия ОС, то тип параметра будет QWORD (64 бита), если 32-битная версия ОС, то тип DWORD (32 бита). Система исчисления — десятичная, а значение можете задать от 1 до 255. Например, 65. Тогда пакеты данных, пройдя через раздающий Wi-Fi смартфон, будут выдавать TTL=64.

После этого перезагрузите компьютер. Снова запустив ping localhost, можно увидеть, что значение TTL изменилось.

Отдельно стоит упомянуть протокол IPv6. Если вы его используете, то нужная вам в реестре ветка: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\Parameters.
О том, как провернуть подобную настройку в Ubuntu, читайте в статье по этой ссылке.
Что такое TTL в Linux
В Linux TTL (Time to Live) — это значение, которое определяет время жизни пакета в сети. Это поле содержится в заголовке IP-пакета и определяет максимальное количество шагов (количество узлов, через которые может пройти пакет), которое пакет может сделать, прежде чем он будет отброшен.
Подробней о TTL
Каждый раз, когда пакет проходит через маршрутизатор в сети, значение TTL уменьшается на 1. Если значение TTL достигает нуля, пакет удаляется из сети и отправляется обратно отправителю с сообщением «время жизни истекло». Это помогает предотвратить бесконечное циркулирование пакетов в сети, которые не могут достичь своего назначения.
В Linux, вы можете установить значение TTL для исходящих пакетов, используя утилиту ping с опцией -t. Например, команда «ping -t 10.0.0.1» отправит ICMP-пакеты на хост 10.0.0.1 с TTL, установленным на значение по умолчанию, обычно 64. Если вы хотите изменить значение TTL, вы можете использовать опцию -i, например, «ping -t 10.0.0.1 -i 128» установит TTL равным 128.
Для чего?
Во-первых, TTL используется для предотвращения бесконечного циркулирования пакетов в сети, которые не могут достичь своего назначения. Если пакет проходит через маршрутизатор в сети и TTL достигает нуля, пакет удаляется из сети и отправляется обратно отправителю с сообщением «время жизни истекло». Это помогает предотвратить потерю пакетов и снизить нагрузку на сеть.
Во-вторых, TTL также используется для определения оптимального пути для передачи пакетов в сети. Если узлы в сети имеют разные значения TTL, маршрутизаторы будут выбирать более короткий путь для пакетов с меньшим значением TTL, что может ускорить доставку пакетов.
Наконец, в Linux TTL может быть использован для тестирования сетевых подключений и диагностики проблем с сетью. Например, команда ping с опцией -t позволяет отправить пакеты с заданным значением TTL на удаленный хост и измерить время, необходимое для получения ответа. Если ответ не получен, это может указывать на проблемы в сети или на то, что удаленный хост недоступен.