Perl: проверка TCP-сокета на удалённой машине
Date August 23rd, 2012 Author Vitaly Agapov
В этой крохотной заметке я оставлю маленький сниппет Perl-кода, который позволяет проверить, открыт ли на удалённой машине определённый порт. Пригодиться это может в первую очередь для всяких мониторинговых целей, когда, например, нам нужно проверить, жив ли демон на удалённой машине (да и сама удалённая машина), и при этом нам для этого достаточно проверить, слушает ли этот демон свой порт.
CPAN как обычно предложил варианты решения задачи, и я для себя выбрал модуль IO::Socket. Вот сам сниппет:
01.
use
IO::
Socket
::INET;
02.
my
$sock
= IO::
Socket
::INET->new( PeerAddr =>
$host_ip
,
03.
PeerPort =>
$host_port
,
04.
Proto =>
'tcp'
,
05.
Timeout => 2,
06.
);
07.
if
(
$sock
) {
08.
print
"Socket is up"
;
09.
$sock
->
close
();
10.
}
11.
else
{
12.
print
"Socket is down"
;
13.
}
Tags: Perl
Category:
Perl |
No comments »