Как проверить пинг и сделать трассировку до сервера? Команды Ping, Tracert и MTR
Знакомая многим ситуация: компьютер включен, доступ в Интернет есть, но не открывается какой-то определенный сайт или сервер в сети. Например: не доступен игровой сервер или игра сильно тормозит при подключении к нему. Что делать? Ответ прост – проверка на пинг и трассировка! Другими словами можно проверить доступность сетевых ресурсов с помощью диагностических методов, самые распространённые из которых — утилиты Ping, Tracert/Traceroute и MTR/WinMTR. Давайте рассмотрим подробно каждую из данных утилит.
Содержание
Утилита Ping
Сетевая утилита Ping — это самый простой способ проверить доступность любого сетевого ресурса. При условии, что у этого ресурса открыты «пинги» из вне, то есть разрешено использование протокола ICMP.
Как это работает? Команда Ping отправляет небольшие пакеты с данными на сервер, который надо проверить. В ОС Windows по умолчанию посылается серия из 4-х таких пакетов. В ОС Linux пакеты посылаются непрерывно, пока пользователь не прервёт операцию. Спустя некоторое время от сервера приходит ответ — в виде тех же пакетов, какие и были отправлены. Если число отправленных и полученных пакетов совпадает — это значит сервер «живой» и никаких проблем с его доступностью не наблюдается.
Как пропинговать сайт или сервер в Windows?
Ping – это консольная утилита, которая запускается с помощью командной строки. Она присутствует во всех версиях ОС Windows. Я буду показывать её работу на примере Windows 11.
Нажимаем правой кнопкой мыши на кнопку «Пуск» чтобы открылось дополнительное меню. Там надо выбрать вариант «Терминал»( в Windows 10 это «Командная строка»):
В командной строке введите команду ping, потом через пробел введите IP-адрес или доменное имя сайта(название), доступность которого надо проверить. Для примера запустим пинг на сайт ya.ru вот такой командой:
ping ya.ru
Пример:
Смотрим результат: отправлено было 4 пакета размером по 32 байта. Время прохождения каждого пакета составило в среднем 22 мс. Все отправленные пакеты дошли до сервера и вернулись обратно.
По умолчанию команда Ping в ОС Windows отправляет всего 4 пакета данных.
Чтобы отправить больше пакетов, можно задать их количество с помощью параметра –n. Пример для отправки 10 тестовых пакетов:
ping –n 10 yandex.ru
Результат будет таким:
Как вариант, можно использовать команда ping с параметром «-t», чтобы пинговать сервер бесконечно, до принудительного прекращения задачи, как в Linux. Команда будет выглядеть так:
ping ya.ru -t
Пример выполнения команды пинг:
Чтобы остановить бесконечный пинг сервера или хоста по IP-адресу — воспользуйтесь комбинацией клавиш Ctrl + C.
Вот так выглядит результат выполнения команды Ping на недоступный сетевой ресурс или хост, на который закрыты ICMP-пакеты.
Как проверить пинг до сервера в Linux?
В операционных системах семейства Linux (в том числе и на FreeBSD, MacOS и Android) проверка пинга до сервера или хоста по IP-адресу тоже осуществляется с помощью команды ping. Она вызывается из командной консоли (терминала).
Запускаем терминал. На некоторых ОС Линкус значок терминала есть прямо на рабочем столе, а на каких-то надо открывать меню и запускать его оттуда. В KDE, например, через раздел меню Администрирование > Терминал.
В терминале вводим команду ping, адрес проверяемого ресурса и нажимаем клавишу «Enter».
В отличие от систем семейства Windows, по умолчанию проверка пинга в Linux идет непрерывно, пока пользователь не прервёт этот процесс с помощью комбинаций клавиш Ctrl + C.
В Linux так же можно задавать нужные параметры с помощью аргументов, но они могут отличаться от аргументов в ОС Windows, которые я показывал выше. Например в Линуксе количество тестовых пакетов задаётся через агрумент «-c», а не через «-n». Для того, чтобы увидеть все доступные агрументы команды Пинг — введите вот такую команду:
ping -h
Как видите, аргументов очень много, что позволяет провести очень тщательную сетевую диагностику доступности удалённого узла сети
Трассировка маршрута в сети: команды tracert и traceroute
Трассировка — еще один хороший метод диагностики связности с удалённым сервером. Смысл тут в том, что во время трассировки тоже выполняется отправка пакетов тестовых данных до сервера. Главное отличие от пинга заключается в том, что трассировка дает возможность увидеть все промежуточные узлы, через которые проходят пакеты от Вашего ПК и до конечного хоста.
Трассировка маршрута в Windows 11
В операционной системе Windows 11, а так же практически всех предыдущих версиях – Windows 10 и старше — трассировка маршрута до сетевого ресурса выполняется с помощью интегрированной в командную оболочку утилиты tracert.
Чтобы ей воспользоваться, снова открываем командную строку и пишем команду:
tracert ya.ru
Так мы запустим трассировку от нашего ПК до сервера Яндекс. Пример:
Теперь смотрим в полученный результат трассировки — он показывает весь маршрут, через который прошел запрос до сайта.
Каждая строка в трассировке — это промежуточный узел ( как правило, маршрутизатор). Эти узлы принято называть прыжками или «хопами».
В моём случае от домашнего компьютера до сайта yandex.ru совершено 7 хопов, пройдя через 5 промежуточных узлов. На каждом из прыжков указывается время, за которое тестовый пакет дошёл до этого узла и вернулся обратно.
Теперь сделаем ещё одну трассировку — google.com. И вот тут в результатах у нас появится очень интересный момент:
А именно строчка со «звёздочками». Что они означают? Многие новички этого пугаются и считают что это сетевая проблема. Это не совсем так! «Звёздочки» говорят о том, что на данном хопе ответ от сервера не получен. Проблема ли это? В этом случае — нет. Это технический узел и на пользовательские запросы он не отвечает.
Проблема была бы в том случае, если после какого-то из хопов все последующие хопы заканчивались бы звёздочками, а сама трассировка закончилась бы ничем. Вот в этом случае надо искать причину. Чаще всего она на том узле, который ответил последним. Но это не точно)))!
Как сделать трассировку в Linux
В операционных система семейства Linux тоже можно сделать трассировку. Правда там команда несколько отличается: это уже не tracert — трассировку выполняет утилита traceroute. Запускается она точно так же, как и пинг — из консоли.
В некоторых дистрибутивах утилита traceroute по умолчанию не установлена. Потому надо её установить. В Ubuntu b Debian это делается командой:
$ sudo apt install traceroute
В RHEL и CentOS — командой:
$ yum install traceroute -y
В остальном, использование данной утилиты ничем особо не отличается от того, как мы это делали в Windows 11. Для примера сделаем трассировку до Яндекса. Команда:
traceroute yandex.ru
Результат выполнения:
Как можно заметить, результат трассировки маршрута выдаётся так же по хопам. Если какой-то узел не ответил — помечается «звёздочками».
Использование утилит MTR и WinMTR для диагностики сети
Хочу рассказать о ещё одной очень полезной для диагностики сетевых проблем утилите – MTR(My traceroute). Она доступна во всех дистрибутивах Linux и сочетает в себе функционал двух перечисленных выше команд: Ping и Traceroute. Как Traceroute она выводит полную трассировку маршрута, который проходят сетевые пакеты до нужного узла. Кроме этого, в режиме реального времени, ведётся пинг до каждого из промежуточных узлов для определения время отклика информации о потерях пакетов на каждом шаге.
Запускается утилита MTR всё так же из терминала командой mtr. Пример:
mtr ya.ru
Результат получился такой:
Отправка тестовых пакетов будет идти бесконечно. Чтобы остановить диагностику — нажмите комбинацию клавиш Ctrl+C.
В моём примере результат показывает, что несмотря на наличие технического узла, который не отзывается, конечный сервер доступен, а все отправленные пакеты (см. колонку Snt) проходят до конечного узла. При этом процент потерь пакетов (см. колонку Loss) равен нулю. Всё отлично!
Используя аргумент -r при вводе команды MTR, Вы получите результат диагностики виде отчета. Информация будет выведена в консоль Linux.
Трассировка WinMTR в Windows 11
В операционных системах Windows нет такого удобного встроенного инструмента, как программа MTR. К счастью, существует специальная утилита WinMTR, выпущенная добрыми людьми. Скачать можно с официального сайта WinMTR — ссылка. Она работает в Portable-режиме, то есть дополнительная установка на ПК не требуется и программа доступна к использованию сразу же после скачивания.
Запускаем WinMTR, в открывшемся окне в строке «Host» вводим адрес проверяемого ресурса:
Нажимаем кнопку «Start» и запускаем диагностику. Спустя пару минут смотрим результат.
Что удобно, в этой утилите можно полученные результаты не только скопировать в буфер обмена, но и сразу экспортировать в текстовом или HTML-формате, чтобы потом отправить, например, в техподдержку провайдера.
Как проверить пинг и сделать трассировку до сервера? Команды Ping, Tracert и MTR — Интернет провайдер | Лобня Долгопрудный Химки Дмитров
Многим пользователям интернета знакома такая ситуация — компьютер включен, интернет работает, но нет доступа к какому — то определенному ресурсу в сети. Например: не открывается сайт, не доступен игровой сервер или не работает удаленный доступ к компьютеру. В таких случаях можно проверить доступность сетевых ресурсов с помощью диагностических методов. Самые распространенные из них — это проверка на пинг и трассировка. Выполняются они с помощью специальных утилит — Ping, Tracert/Traceroute и MTR/WinMTR. Рассмотрим подробно каждую из данных утилит.
Ping.
Утилита Ping — самый простой способ проверки доступности любого сетевого ресурса.
Как это работает? Команда Ping отправляет серию небольших пакетов с данными на тот сервер, который нужно проверить. Спустя некоторое время от сервера приходит ответ — в виде тех же пакетов, что были отправлены. Если обратно вернулись все отправленные пакеты, то это означает, что сервер доступен и никаких проблем не наблюдается.
Как проверить пинг до сервера в Windows?
Ping является консольной утилитой, вызывается с помощью командной строки.
В поисковой строке меню Пуск вводим cmd, запускаем командную строку.
В командной строке вводим команду ping и далее через пробел вписываем доменное имя (название) или IP-адрес того сайта, доступность которого следует проверить.
Пингуем сайт yandex.ru.
Как видно из результатов, отправлено было 4 пакета, каждый размером по 32 байта. Время прохождения каждого пакета составило 5 мс. Все отправленные до сервера пакеты вернулись обратно.
По умолчанию команда Ping в Windows отправляет к запрашиваемому серверу всего 4 пакета данных. Для отправки большего количества пакетов данных используется команда ping с параметром «-t».
Например, ping -t yandex.ru
Команда будет пинговать сайт в бесконечном цикле. Остановить данный процесс можно с помощью комбинации клавиш Ctrl + C
Посмотрим, как будет выглядеть результат выполнения команды Ping на недоступный (неработающий) сетевой ресурс.
Как проверить пинг до сервера в Linux?
В ОС Linux проверка пинга также осуществляется с помощью команды ping. Вызывается данная команда из терминала. По умолчанию, процесс проверки пинга в Linux идет непрерывным циклом, в отличие от ОС Windows. Остановить данный процесс можно с помощью комбинаций клавиш Ctrl + C.
Запускаем терминал. Для этого проходим в меню Пуск > Администрирование > Терминал.
В терминале вводим команду ping и адрес проверяемого ресурса.
Трассировка. Команды tracert и traceroute.
Трассировка — еще один способ проверки связности с сервером. Во время трассировки также осуществляется отправка пакетов данных до сервера. Но в отличие от проверки пинга, трассировка дает возможность посмотреть все промежуточные узлы, через которые проходят пакеты до конечного хоста.
Как сделать трассировку до сервера в Windows.
В ОС Windows трассировка маршрута до сетевого ресурса осуществляется с помощью утилиты tracert.
Запускаем командную строку, прописываем tracert и далее через пробел адрес проверяемого сервера (сайта). Сделаем трассировку маршрута до сайта yandex.ru.
Смотрим полученный вывод. Результат трассировки показывает весь маршрут, через который прошел запрос до сайта. Каждая строка в выводе — это промежуточный узел (маршрутизатор). Их еще называют прыжками или «хопами». Наш запрос до сайта yandex.ru совершил ровно 7 прыжков (хопов) — прошел через 6 промежуточных узлов и седьмым шагом достиг конечного хоста. На каждом шаге указано время, затраченное на отправку пакета и получения ответа от узла.
Рассмотрим вариант трассировки до сайта google.com.
«Звездочки» в полученном выводе не означают проблему на узле, как многие ошибочно считают. Просто данный маршрутизатор настроен таким образом, чтобы не отвечать на входящий запрос (как одна из мер по защите узла от DDos-атак). Отправленные пакеты прошли весь путь и успешно достигли конечной точки.
Рассмотрим пример трассировки до сайта, доступ к которому заблокирован.
Если полученные данные нужны для технической поддержки интернет-провайдера, выделяем мышью строки для отправки и нажимаем “Enter”. Информация попадет в буфер обмена. Далее создаем текстовый файл и вставляем в него скопированную запись с помощью комбинации клавиш “Ctrl + V”. Сохраняем файл и отправляем в техническую поддержку.
Как сделать трассировку в Linux.
В ОС Linux трассировку выполняет утилита traceroute.
Запускается данная утилита так же, как и утилита Ping, из терминала.
По умолчанию утилита traceroute не входит в дистрибутивы Linux, поэтому при выполнении трассировки может быть получена ошибка “Command ‘traceroute’ not found, but can be installed”.
Для установки traceroute вводим в терминале следующие команды:
sudo apt-get update.
sudo apt-get install traceroute.
Утилита traceroute установлена. Выполним трассировку до сайта yandex.ru.
Утилиты MTR и WinMTR.
В Linux есть еще одна очень полезная утилита для диагностики сети — MTR (My traceroute). Доступна во всех дистрибутивах Linux. MTR сочетает в себе функционал Traceroute и Ping. Данная утилита также, как и Traceroute, выводит информацию о маршруте, который проходят сетевые пакеты до конечного узла. Но при этом в режиме реального времени показывает время отклика всех переходов от одного хоста к другому и потери пакетов на каждом шаге.
Запускается MTR из терминала с помощью команды mtr .
Запустим MTR до сайта yandex. ru.
Процесс отправки пакетов будет осуществляться бесконечным циклом. Остановить диагностику можно с помощью комбинации клавиш Ctrl + C.
Используя параметр -r при вводе команды MTR можно получить результат в виде отчета. Будет отправлено 10 сетевых пакетов, затем процесс остановится. Информация будет выведена в консоль Linux.
MTR в Windows.
Для запуска MTR в Windows существует специальная утилита WinMTR. Скачать можно с официального сайта WinMTR. Утилита доступна к использованию сразу после скачивания, дополнительная установка на ПК не требуется.
Запускаем WinMTR, в открывшемся окне в строке «Host» вводим адрес проверяемого ресурса и нажимаем «Start».
Далее смотрим полученный результат.
В данной статье мы рассмотрели самые основные команды для диагностики сетевых подключений — ping, tracert (traceroute) и mtr.
linux — маршрут по умолчанию с linkdown
Задавать вопрос
спросил
Изменено 4 года, 4 месяца назад
Просмотрено 13 тысяч раз
root@route:~# ip r по умолчанию через a.a.a.1 dev enp0s18 metric 10 linkdown по умолчанию через a.a.b.1 dev enp0s10 metric 20 onlink linkdown по умолчанию через x.x.x.49С
Состояние канала
4: enp0s10:mtu 1500 qdisc pfifo_fast состояние DOWN режим DEFAULT group default qlen 1000 ссылка/эфир 1c:af:f7:08:27:e2 brd ff:ff:ff:ff:ff:ff 5: enp0s18: mtu 1500 qdisc pfifo_fast состояние DOWN режим DEFAULT группа по умолчанию qlen 1000 ссылка/эфир 00:13:d3:14:83:f1 брд ff:ff:ff:ff:ff:ff
Результат: Черный трафик
- linux
- маршрутизация
- route
- iproute
В новом ядре у нас новые значения по умолчанию. Решение:
эхо 1 > /proc/sys/net/ipv4/conf/enp0s10/ignore_routes_with_linkdown эхо 1 > /proc/sys/net/ipv4/conf/enp0s18/ignore_routes_with_linkdown
И сделать новый по умолчанию
echo net.ipv4.conf.all.ignore_routes_with_linkdown=1 > /etc/sysctl.d/10-linkdown.conf sysctl -p /etc/sysctl.d/10-linkdown.conf
2
Я также сталкиваюсь с той же проблемой «неактивной ссылки»
И у меня нет файла /etc/sysctl.d/10-linkdown.conf
на моей макетной плате.
Итак, я попробовал решение » echo 1 > /proc/...../ignore_routes_with_linkdown
»
, и следующая проверка ip route show дает «мертвое неактивное соединение».
Есть комментарии/предложения?
3
Зарегистрируйтесь или войдите в систему
Зарегистрируйтесь с помощью Google
Зарегистрироваться через Facebook
Зарегистрируйтесь, используя электронную почту и пароль
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Опубликовать как гость
Электронная почта
Требуется, но не отображается
Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания, политикой конфиденциальности и политикой использования файлов cookie
.Если команда ping ya.ru кажется слишком длинной… / Хабр
ping ya.ru
уже не помогает. Если DNS все-таки работает, то как выяснилось из комментариев, некоторые используют для пинга
www.ru
или google.com
, но большинство все же предпочитает именно ya.ru
просто потому, что меньше букв писать. Оказывается, благодаря солнечным Узбекистану и Туркмении писем можно писать еще меньше. Всевозможные «умные» решения вроде установки какого-нибудь псевдонима
alias p='ping somehost.com'
или добавление в /etc/hosts
хостов с однобуквенными именами сразу отвергаются автором. Это неплохо для собственного компьютера, но не работает, если у вас сотни машин под управлением MS Windows, Linux, MacOS и вы не знаете, с какой из них придется начинать пинговать в следующий раз.
Но можно просто пропинговать двухбуквенные ДВУ тех стран, у которых есть соответствующая А-запись в DNS (команда в синтаксисе tcsh):
В зависимости от ОС и настроек резолвера, имена без точек могут интерпретироваться неправильно («домен по умолчанию»). В этом случае приходится писать на целую букву больше и добавлять точку к 2-буквенным именам в конце. Например, под MS Windows:
(обратите внимание на лишнюю точку в конце после %h). Под Windows по неизвестным причинам хост не резолвился
% foreach host ( uz tm pn io ac cm pwa ai mn bi )
foreach? ping -qc5 $host
foreach? end
PING uz (195.158.1.25): 56 байт данных
— uz статистика пинга —
5 пакетов передано, 4 пакета получено, 20% потерь пакетов 53.388/83.926/160.753/44.644 мс
PING tm (193.223.78.213): 56 байт данных
— статистика ping tmp —
5 пакетов передано, 5 пакетов получено, 0% потери пакетов
круговой обход мин/ среднее/макс./стандартное отклонение = 67,435/68,101/68,830/0,523 мс
PING pn (80.68.93.100): 56 байт данных
— pn статистика пинга —
5 пакетов передано, 5 пакетов получено, 0% потерь пакетов 70.391/71.634/0.860 мс
PING io (193.223.78.212): 56 байт данных
— io ping статистика —
5 пакетов передано, 5 пакетов получено, 0% потери пакетов
туда-обратно мин/средн/ max/stddev = 66,764/67,755/68,713/0,711 мс
PING ac (193. 223.78.210): 56 байт данных
— статистика пинга —
5 переданных пакетов, 5 полученных пакетов, 0% потерь пакетов
время прохождения туда-обратно мин./сред./макс./стандартное отклонение = 67,331/68,218/68,734/0,523 мс
PING cm (195.24.192.17): 56 байт данных cm ping статистика —
5 пакетов передано, 5 пакетов получено, 0% потерь пакетов bytes
— статистика pw ping —
5 пакетов передано, 5 пакетов получено, 0% потерь пакетов
туда-обратно min/avg/max/stddev = 214,316/215,609/216,963/1,059 мс
PING ai (209.59.119.34): 56 байт данных получено, 0% потери пакетов
круговой обход мин./средн./макс./стандартное отклонение = 263,953/288,325/320,875/24,148 мс
PING mn (202.131.0.65): 56 байт данных 5 пакетов передано, 5 пакетов получено, 0% потерь пакетов0093 PING bi (196.2.8.205): 56 байт данных
— bi ping статистика —
5 пакетов передано, 5 пакетов получено, 0% потерь пакетов 815,234/824,431/7,371 мс
for %h in ( uz tm pn io ac cm pw ai mn bi ) допинг -n 2 %h.