Инструменты командной строки для пинга HTTP?
Справочная информация: это общий вопрос, так как мы можем искать в Google "пинг работает, но http не работает"
Пинг не является надежным тестом сетевого подключения.
Работа ping просто означает, что стек IP достаточно для обработки эхо-запросов ICMP (это не огромная часть системы по сравнению с тем, что требуется для SSH и веб-серверов). У нас могло бы быть то, что я называю "частичной паникой" (ядро взорвалось, но IP-код продолжал работать), не хватило ОЗУ, или наши процессы SSH/HTTPd могли бы свалиться по неизвестным причинам.
Ресурсы
- Сервер не отвечает на SSH и HTTP, но пинг работает
- http://forums.opensuse.org/english/get-technical-help-here/network-internet/403023-ping-works-but-nothing-else-does.html
- https://superuser.com/questions/203667/can-ping-fine-but-no-browsing
Мой вопрос: какой-либо инструмент командной строки для пинга HTTP?
3 ответа
Существует множество инструментов командной строки, которые могут быть HTTP-командной строкой или простым TCP-клиентом. netcat
а также telnet
(и да, nmap
) может сказать вам, если порт TCP отвечает, и curl
или же wget
может обработать попытку полного HTTP-запроса.
Но почему бы вместо этого не использовать реальное решение для мониторинга, если у вас возникают проблемы с отказом службы?
curl --head http://ipaddress/
является ближайшим к пингу в том смысле, что это минимальная проверка того, что сервер отвечает на HTTP-запросы.
Любая заслуживающая внимания система мониторинга имеет встроенную функциональность. Nagios является бесплатным IIRC
Существует небольшая программа для тестирования производительности удаленного хоста с использованием TCP-пакетов, она называется echoping. Я думаю, что вы ищете