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:
Category: Perl | No comments »

Comments

Leave a comment

 Comment Form 

Rich Text Editor, comment