Команда ping є одним з найпоширеніших і найкорисніших інструментів у роботі з мережею. Вона використовується для тестування з’єднання, вимірювання затримки і виявлення втрати пакетів між одним пристроєм і іншим. Її робота базується на протоколі керуючих повідомлень Інтернету (ICMP), який працює на мережевому рівні моделі OSI.
Коли користувач запускає команду, комп’ютер надсилає цільовому хосту пакет ICMP Echo Request. Цей пакет містить мітку часу і порядковий номер. Якщо цільовий пристрій доступний, він відповідає пакетом ICMP Echo Reply. Порівнюючи час відправлення запиту і час отримання відповіді, програма обчислює час проходження запиту в обидва кінці, також відомий як затримка. Під час цього процесу ping показує детальну інформацію, таку як розмір пакета, порядковий номер, час життя, який вказує на кількість переходів, що залишилися, і виміряний час відповіді. Після завершення виконання команда підсумовує результати, повідомляючи, скільки пакетів було надіслано та отримано, відсоток втрат пакетів і середню затримку.
Мережевий стек операційної системи відіграє важливу роль у цьому процесі. ICMP-запит передається на IP-рівень ядра, де він інкапсулюється в IP-пакет і надсилається мережею. Коли надходить відповідь, ядро передає її назад процесу ping у користувацькому просторі. Потім програма інтерпретує відповідь, обчислює статистику, таку як середній час в обидва боки і втрату пакетів, і відображає результати в зручному для читання форматі.
Відсутність команди ping в Ubuntu може бути викликана декількома причинами:
Команда ping надається пакунком iputils-ping в Ubuntu. Щоб встановити його, виконайте наведені нижче дії.
Перед встановленням будь-якого програмного забезпечення завжди корисно оновити список пакунків вашої системи, щоб переконатися, що ви отримали останню версію доступних пакунків:
sudo apt update
Тепер встановіть пакунок, який містить команду ping:
sudo apt install iputils-ping -y
Ця команда завантажує і встановлює iputils-ping разом з усіма залежностями.
Після встановлення переконайтеся, що ping тепер доступний, запустивши його:
ping -V
Якщо всі пакунки було успішно встановлено, ви побачите наступне:
Якщо метод за замовчуванням не працює, скористайтеся альтернативними методами:
Деякі мінімальні дистрибутиви Ubuntu не містять apt за замовчуванням. Якщо у вашій системі встановлено Snap, ви можете встановити ping за допомогою:
sudo snap install iputils
BusyBox – це легка альтернатива, яка включає в себе різні утиліти Unix, в тому числі ping. Встановіть її за допомогою:
sudo apt install busybox
Після цього запустіть:
busybox ping google.com
Це підтвердить, що пінг доступний через BusyBox.
Якщо ви отримуєте помилку дозволу, це може бути пов’язано з обмеженнями безпеки. Спробуйте запустити:
sudo chmod u+s /bin/ping
Це встановить правильні дозволи, щоб дозволити користувачам, які не мають прав root, використовувати ping.
Якщо Ubuntu не може знайти пакунок iputils-ping, переконайтеся, що у вашому сховищі оновлені вихідні коди:
sudo apt update && sudo apt upgrade
Якщо проблему не буде усунуто, перевірте список джерел у файлі /etc/apt/sources.list.