Skip to content

Лекція 33. Як комп’ютери перевіряють зв’язок: ping

Лекція 33. Як комп’ютери перевіряють зв’язок: ping

Section titled “Лекція 33. Як комп’ютери перевіряють зв’язок: ping”

Рівень 6: Мережевий слідопит

Марко, сьогодні ми не просто вивчимо новий термін — ми відкриємо ще один шар того, як насправді працює комп’ютер.

Що ми сьогодні розкриємо

Section titled “Що ми сьогодні розкриємо”
  • зрозуміти echo request/echo reply на концептуальному рівні
  • читати базові результати ping
  • розуміти latency і втрату пакетів без надмірних висновків

Зв’язок з попередніми лекціями

Section titled “Зв’язок з попередніми лекціями”

У цій лекції ми використаємо знання про мережі та IP-адреси з лекцій 30—31, щоб навчитися перевіряти зв’язок командою ping.

Ping — мережеве «чуєш мене?»

Section titled “Ping — мережеве «чуєш мене?»”

Команда ping надсилає ICMP Echo Request і очікує Echo Reply. Це схоже на крик у печері: «Гей!» — і відповідь «Гей!» повертається.

Ping корисний, але він перевіряє лише певний тип мережевої доступності. Сервер може не відповідати на ping з політики безпеки, хоча вебсайт при цьому працює.

Latency — час подорожі туди й назад

Section titled “Latency — час подорожі туди й назад”

У відповіді часто є time=... ms. Це приблизний round-trip time — скільки часу пакет ішов до цілі та відповідь назад.

1 ms — одна тисячна секунди. До домашнього роутера затримка зазвичай менша, ніж до далекого сервера, але мережі живі й результати змінюються.

Packet loss — не всі запити повернулися

Section titled “Packet loss — не всі запити повернулися”

Якщо частина пакетів не отримала відповіді, ping може показати packet loss. Причиною можуть бути проблеми каналу, перевантаження, фільтрація або інші фактори. Один тест ще не є повним діагнозом.

ping -c 4 127.0.0.1 тестує loopback цього комп’ютера й не виходить у домашню мережу.

ping -c 4 <gateway> перевіряє доступність шлюзу, якщо він відповідає на ICMP.

ping -c 4 1.1.1.1 перевіряє IP-доступність зовнішньої адреси, але для навчання зовнішні тести залежать від наявності Інтернету та політик мережі.

Linux-лабораторія: три відстані

Section titled “Linux-лабораторія: три відстані”
  1. Локально:
Terminal window
ping -c 4 127.0.0.1
  1. Якщо знаєш gateway з попередньої лекції:
Terminal window
ping -c 4 IP_ШЛЮЗУ
  1. За наявності Інтернету:
Terminal window
ping -c 4 1.1.1.1

Порівняй time=. Якщо якийсь вузол не відповідає, це теж результат — не роби висновок «все зламано» без додаткових тестів.

Виконай місію по черзі. Якщо щось не виходить — спочатку перечитай приклад вище й спробуй знайти, на якому кроці результат відрізняється.

  1. запусти ping на 127.0.0.1
  2. порівняй із ping до gateway, якщо він відповідає
  3. за дозволом мережі протестуй зовнішню IP-адресу
  4. запиши мінімальну та максимальну затримку з підсумку
  5. поясни, чому відсутність ping-відповіді не доводить, що вебсервер вимкнений
  • Що надсилає ping?
  • Що означає ms?
  • Що таке packet loss?
  • Чому localhost зазвичай має дуже малу затримку?
  • Чи гарантує невдалий ping, що всі служби цілі недоступні?
  • Ping (ICMP Echo) — мережеве «чуєш мене?»: надсилає запит і чекає відповідь.
  • ICMP — протокол службових мережевих перевірок (використовується ping).
  • Latency (затримка) — час подорожі пакета туди й назад, зазвичай у мс.
  • ms (мілісекунда) — одна тисячна секунди.
  • Packet loss (втрата пакетів) — частка запитів, на які не прийшла відповідь.
  • ping -c N — надіслати N пакетів, а не нескінченно.

Чек-лист перед наступною лекцією

Section titled “Чек-лист перед наступною лекцією”
  • Чи можеш ти пояснити, як працює команда ping та протокол ICMP?
  • Чи знаєш ти, що таке латентність та втрата пакетів?
  • Чи розумієш ти, як ping допомагає діагностувати мережеві проблеми?

Що потрібно винести з лекції

Section titled “Що потрібно винести з лекції”
  • ping є інструментом перевірки ICMP-доступності
  • latency вимірює час подорожі запит-відповідь
  • один мережевий тест не дає повної картини

Хакерський принцип: не запам’ятовуй магічні слова. Намагайся пояснити своїми словами, що відбулося і чому.