6.7 Мережеві утиліти діагностики: ping, tracert і traceroute
Ефективна діагностика мережевих з’єднань є критично важливою для адміністраторів та користувачів комп’ютерних мереж. Утиліти ping, tracert і traceroute є базовими інструментами, які дозволяють перевірити доступність віддалених хостів та визначити маршрут проходження пакетів у мережі.
Нагадуємо: ці команди доступні як у Windows, так і в Linux системах, хоча синтаксис може дещо відрізнятися.
Команда ping
Ping (Packet InterNet Groper) – це утиліта для перевірки доступності віддаленого хоста шляхом надсилання ICMP-пакетів (Internet Control Message Protocol). Принцип роботи базується на відправленні спеціальних ICMP-повідомлень "echo-request"
до цільового хоста і очікуванні відповіді "echo-reply"
.
Основні функції ping:
- Перевірка доступності хоста в мережі.
- Вимірювання часу відгуку (латентності).
- Виявлення втрати пакетів.
- Тестування якості мережевого з’єднання.
- Визначення проблем з маршрутизацією.
Інформуємо: час відгуку вимірюється в мілісекундах (ms) і показує, скільки часу потрібно пакету для досягнення цільового хоста і повернення назад.
ping на Windows
Способи запуску:
- Через командний рядок (cmd.exe):
- Натисніть
Win + R
. - Введіть
cmd
абоcmd.exe
та натиснітьEnter
.
- Натисніть
- Через PowerShell:
- Натисніть
Win + X
. - Виберіть
Windows PowerShell
абоWindows Terminal
.
- Натисніть
Синтаксис:
- ping [параметри] цільова_адреса
Замість цільова_адреса
Вам потрібно підставити домен чи IP-адрес потрібного хоста.
Основні параметри:
-t
- відправляти пакети до примусової зупинки (комбінація Ctrl + C).-n число
- кількість запитів для відправки.-l розмір
- розмір буфера відправки.-w таймаут
- таймаут у мілісекундах.-4
- примусове використання IPv4.-6
- примусове використання IPv6.
Приклади:
- ping google.com
- ping 192.168.1.1
ping на Linux/MacOS
Способи запуску:
-
Через термінал:
- Натисніть
Ctrl + Alt + T
. - або запустіть емулятор терміналу з меню.
- Натисніть
-
Через консоль:
- Перейдіть у текстовий режим
Ctrl + Alt + F1
.
- Перейдіть у текстовий режим
Синтаксис:
- ping [параметри] цільова_адреса
Замість цільова_адреса
Вам потрібно підставити домен чи IP-адрес потрібного хоста.
Параметри вказуються при потребі, можна й не вказувати, в такому випадку буде відправлено тільки 4 пакети.
Основні параметри:
-c число
- кількість пакетів для відправки.-s розмір
- розмір пакету в байтах.-i інтервал
- інтервал між пакетами в секундах.-W таймаут
- час очікування відповіді.-4
- використовувати тільки IPv4.-6
- використовувати тільки IPv6.-f
- flood ping.-q
- тихий режим, показує тільки підсумок.
Приклади:
- ping -c 5 google.com
- ping -i 2 192.168.1.1
Команди tracert/traceroute
Tracert (Windows) і traceroute (Linux/MacOS) – це аналогічні утиліти, які відстежують маршрут проходження пакетів даних від джерела до цільового хоста через мережу Internet або локальну мережу. Різниця лише у назві та деяких параметрах, але принцип роботи однаковий.
Принцип роботи:
- Відправка серії пакетів з поступово збільшуваним значенням TTL (Time To Live).
- Кожен маршрутизатор на шляху зменшує TTL на 1.
- Коли TTL досягає 0, маршрутизатор відправляє повідомлення про помилку.
- Це дозволяє визначити кожен “стрибок” (hop) на шляху до цілі.
Основні функції:
- Визначення повного маршруту до цільового хоста.
- Виявлення проблемних ділянок мережі.
- Аналіз затримок на кожному вузлі.
- Діагностика проблем з маршрутизацією.
- Виявлення мережевих петель.
Інформуємо: кожен “стрибок” представляє собою маршрутизатор або інший мережевий пристрій на шляху до цільового хоста.
tracert на Windows
Способи запуску:
- Через командний рядок (cmd.exe):
- Натисніть
Win + R
. - Введіть
cmd
абоcmd.exe
та натиснітьEnter
.
- Натисніть
- Через PowerShell:
- Натисніть
Win + X
. - Виберіть
Windows PowerShell
абоWindows Terminal
.
- Натисніть
Синтаксис:
- tracert [параметри] цільова_адреса
Замість цільова_адреса
Вам потрібно підставити домен чи IP-адрес потрібного хоста.
Параметри вказуються при потребі, можете не вказувати.
Основні параметри:
-d
- не перетворювати IP-адреси в імена.-h максимум_хопів
- максимальна кількість хопів.-w таймаут
- таймаут для кожного відгуку в мілісекундах.-4
- примусове використання IPv4.-6
- примусове використання IPv6.
Приклади:
- tracert google.com
- tracert -d -h 15 8.8.8.8
traceroute на Linux/MacOS
Способи запуску:
-
Через термінал:
- Натисніть
Ctrl + Alt + T
. - або запустіть емулятор терміналу з меню.
- Натисніть
-
Через консоль:
- Перейдіть у текстовий режим
Ctrl + Alt + F1
.
- Перейдіть у текстовий режим
Синтаксис:
- traceroute [параметри] цільова_адреса
Замість цільова_адреса
Вам потрібно підставити домен чи IP-адрес потрібного хоста.
Параметри вказуються при потребі, можете не вказувати.
Основні параметри:
-n
- не перетворювати IP в імена хостів.-m максимум_хопів
- максимальна кількість хопів.-w таймаут
- час очікування відповіді.-4
- використовувати тільки IPv4.-6
- використовувати тільки IPv6.-I
- використовувати ICMP запити.-T
- використовувати TCP SYN для запитів.-U
- використовувати UDP для запитів.
Приклади:
- traceroute google.com
- traceroute -n -w 2 8.8.8.8
- traceroute -I 192.168.1.1
Інформуємо: У Linux traceroute за замовчуванням використовує UDP трафік.
- У Windows tracert використовує ICMP Echo Request.
- Для отримання результатів може знадобитися запуск з правами адміністратора.
Важливо: Деякі мережеві пристрої можуть блокувати ICMP-пакети.
- Брандмауери можуть блокувати traceroute/tracert.
- Результати можуть відрізнятися при повторних запусках.
Практичні приклади використання
Діагностика мережевих проблем
- Перевірка базової доступності:
- ping 8.8.8.8
- Аналіз стабільності з’єднання:
- ping -t google.com
Параметр -t
виконує необмежену кількість пінгів на вказаний Вами хост. Щоб закінчити процес, потрібно виконати комбінацію на клавіатурі Ctrl + C
.
- Виявлення проблемної ділянки мережі:
- tracert google.com
Аналіз продуктивності мережі
- Тестування затримки з різним розміром пакетів:
- ping -l 1000 server.example.com
- Визначення втрати пакетів:
- ping -n 100 192.168.1.1