2010-07-08 3 views

답변

6

Net::Ping하지만이 방법은 어리석은 방법입니다. SSH에 연결하고 싶다면 그냥 해보고 그렇지 않으면 실패를 처리하십시오.

네트워크 인터페이스가 핑에 응답하는 경우 이는 SSH가 작동한다는 것을 보장하지 않습니다. 반대로 SSH가 작동하고 ping이 차단됩니다.

+0

은 흠 당신이 올바른지 사용하여 수행 할 수 있습니다. 하지만 뭔가 처리 할 수 ​​있기 전에 기본 검사를하고 싶었습니다. 그게 왜. 고마워. .. – Raj

+0

내 프로그램에서 나는 ssh 할 기대합니다. 그게 내가 주어진 것처럼. $argument = [email protected]; $ exp-> spawn ("ssh $ argument") 또는 죽을 때 "ssh를 ip $ ssh_ip_address에 생성 할 수 없습니다. \ n"; 하지만 ssh를 할 수 없어도 인쇄되지 않습니다. ssh를 ip $ ssh_ip_address에 생성 할 수 없습니다. 왜 일어나지 않는지 제발 도와 주실 수 있습니까? – Raj

+0

이 새로운 문제에 대한 [새로운 질문 열기] (http://stackoverflow.com/questions/ask) – daxim

1

호스트가 특정 포트에서 수신 대기하는 간단하고 빠른 검사는 IO::Socket::INET

use IO::Socket::INET; 
my $address_tuple = "$ip:$port"; 
my $test_sock = IO::Socket::INET->new(PeerAddr => $address_tuple, Timeout => 0.15); 
if ($test_sock) { 
    # Host is up and appears to be listening on that port 
    $test_sock->close(); 
} 
else { 
    # Host doesn't appear to be listening on that port 
} 
관련 문제