Командата ping
Ping е команда в компютърните мрежи, използвана за изпращане на заявка (ping request) към определено устройство или компютър и измерване на времето, което отнема отговорът (ping reply) да се върне обратно. Процесът служи за проверка на достъпността на дадено устройство в мрежата и за измерване на латентността (закъснението) при комуникацията между тях.
Резултатът от ping се изразява в милисекунди (ms). По-нисък ping указва по-бърза комуникация и по-малка латентност — желателно при онлайн игри, стрийминг на видео и всички приложения, при които закъснението влияе на качеството на услугата.
Как работи ping
Ping работи, като изпраща ICMP (Internet Control Message Protocol) заявки към целевото устройство и чака за отговор. Ето стъпките на процеса:
- Потребителят изпълнява командата
pingс IP адрес или домейн като аргумент. - Операционната система генерира ICMP Echo Request пакет с идентификатор и пореден номер и го изпраща до целевото устройство.
- ICMP пакетът пътува през мрежата до получателя.
- Целевото устройство получава пакета и изпраща ICMP Echo Reply обратно към изпращача.
- Изпращачът получава отговора и изчислява времето за пътуване в двете посоки — RTT (Round-Trip Time).
- На екрана се показват статистики: брой изпратени и получени пакети, минимален, максимален и среден 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 с информация за всеки хоп по пътя.