Иногда очень полезно узнать время и сам факт отклика какого-нибудь веб-сервиса, коих сейчас очень много вокруг нас развелось, и от которых всё больше и больше зависит наша жизнь (по мотивам того, как я сегодня ломился в свой далекий заморский банкинг).
Как раз для такого типичного случая есть небольшая, но очень гордая маленькая утилитка httping
, которая позволяет сделать это максимально удобно. Её консольные варианты есть как под Windows, так и под Linux/FreeBSD, а подробности про них всех — у меня под катом.
Установка
Устанавливаем её из портов FreeBSD вот так:
$ cd /usr/ports/net/httping
$ make install
Как альтернатива — в Gentoo Linux через систему portage system
ставим так:
sudo emerge -av net-analyzer/httping
Все остальные линуксоиды невозбранно берут её вот здесь, а виндоиды — тута.
Использование!
Теперь мы её наконец скачали и установили, и подогреваемые острым желанием сразу начинаем пинговать сеть интернет, но пока не всю сразу, а какой-то отдельный сайтик, например мой (к примеру, с целью завалить его к чертовой м@тери под тяжестью коллективных пингов):
$ httping blogerator.ru PING blogerator.ru:80 (blogerator.ru): time=1173.237ms status=200 bytes=52428 kbit/s=~357.493 time=1132.961ms status=200 bytes=52446 kbit/s=~370.329 time=1001.801ms status=200 bytes=52434 kbit/s=~418.718 time=817.659ms status=200 bytes=52430 kbit/s=~512.977 --- Ping statistics for 67.225.136.44:80 4 probes sent. 4 successful, 0 failed. Approximate trip times in milli-seconds: Minimum = 817ms, Maximum = 1173ms, Average = 1030ms
Как видно из выдачи, он возвращает не только статусы веб-сервера, но и среднюю расчетную скорость доступа к нему.
Конечно, этой штукой можно пинговать и другие сервисы, не только http-based, например, SSH или FTP, но в этом случае таймаутов вы не увидите:
$ httping remote-server -p 22 -t 1 error receiving reply from host error receiving reply from host error receiving reply from host error receiving reply from host error receiving reply from host ^CGot signal 2 --- remote-server ping statistics --- 5 connects, 0 ok, 100.00% failed, time 5969mscode>
Здесь я прервал цикл пингования принудительно.
Однако по характерному сообщению «error receiving reply from host» можно сразу понять, что искомый порт сервиса всё-таки открыт. Если же этот порт будет закрыт, то этого сообщения не будет, да и вообще ничего в ответ не будет — только радикально черный экран и тоскливая тишина одиночества консоли будет смотреть в ваши усталые глаза…
В заключение буквально несколько коротких замечаний насчет httping
:
- ключи-опции к этой утилите можно глянуть на этой страничке;
- в Маркете есть её мобильная версия и для Android;
- доступны для свободного скачивания все исходные коды этой утилиты;
- эта мини-утилитка развивается и довольно регулярно обновляется (что приятно);
- также можно посмотреть её аналог от этого же автора — tcping.
Веб-альтернативы
Впрочем, конечно, можно не заморачиваться, а воспользоваться достойными веб-аналогами, коих много (например, тем же моим любимым host-tracker.com), которые к тому же пропингуют сайт ещё с разных точек земного шара, более тонко проверяя его доступность и скорость доступа к нему (вот пример сегодняшнего сохраненного теста для моего блога).