0887 371 498 support@itservice-bg.net
08.10.2023 · Самуил Арсов · Debian, Hosting, Kali Linux, Linux commands, Ubuntu

Командата ping

Ping е команда в компютърните мрежи, използвана за изпращане на заявка (ping request) към определено устройство или компютър и измерване на времето, което отнема отговорът (ping reply) да се върне обратно. Процесът служи за проверка на достъпността на дадено устройство в мрежата и за измерване на латентността (закъснението) при комуникацията между тях.

Резултатът от ping се изразява в милисекунди (ms). По-нисък ping указва по-бърза комуникация и по-малка латентност — желателно при онлайн игри, стрийминг на видео и всички приложения, при които закъснението влияе на качеството на услугата.

Как работи ping

Ping работи, като изпраща ICMP (Internet Control Message Protocol) заявки към целевото устройство и чака за отговор. Ето стъпките на процеса:

  1. Потребителят изпълнява командата ping с IP адрес или домейн като аргумент.
  2. Операционната система генерира ICMP Echo Request пакет с идентификатор и пореден номер и го изпраща до целевото устройство.
  3. ICMP пакетът пътува през мрежата до получателя.
  4. Целевото устройство получава пакета и изпраща ICMP Echo Reply обратно към изпращача.
  5. Изпращачът получава отговора и изчислява времето за пътуване в двете посоки — RTT (Round-Trip Time).
  6. На екрана се показват статистики: брой изпратени и получени пакети, минимален, максимален и среден RTT, и процент загубени пакети.

Синтаксис и основни опции

Основният синтаксис на командата е:

ping [опции] хост_или_IP

Най-често използваните опции в Linux:

  • -c N — изпраща точно N пакета и спира (напр. ping -c 4 google.com).
  • -i N — интервал между пакетите в секунди (по подразбиране 1 сек).
  • -s N — задава размера на пакета в байтове (по подразбиране 56 байта).
  • -W N — изчаква максимум N секунди за отговор.
  • -t N — задава TTL (Time to Live) на пакета.
  • -q — тих режим — показва само финалната статистика.

Пример с ping

Изпращане на 4 пакета до google.com:

ping -c 4 google.com

От изхода виждаме 4 пакета изпратени, 4 получени и 0% загуби (packet loss).

Как да четем изхода на ping

Всеки ред от отговора съдържа:

  • bytes — размер на върнатия пакет.
  • icmp_seq — пореден номер на пакета (позволява засичане на загубени пакети).
  • ttl — TTL стойността на отговора. По нея може да се прецени колко маршрутизатора е минал пакетът.
  • time — RTT в милисекунди за конкретния пакет.

Финалната статистика показва min/avg/max/mdev — минимален, среден, максимален RTT и стандартното отклонение. Голямо mdev означава нестабилна връзка (jitter).

Заключение

ping е един от най-основните инструменти за диагностика на мрежи. С него бързо се проверява дали даден хост е достъпен, измерва се латентността и се засичат загубени пакети. За по-детайлно трасиране на маршрута вижте командите traceroute и mtr, които разширяват функционалността на ping с информация за всеки хоп по пътя.