2010-07-08 54 views

回答

6

Net::Ping,但這是一個愚蠢的做法。如果你想連接SSH,只需要做,如果你不能處理失敗。

如果網絡接口響應ping,這不能保證SSH工作。相反,SSH可以工作並且ping被阻塞。

+0

嗯,你是正確的完成。但是我只想在進行一些處理之前進行基本檢查。這就是爲什麼。謝謝兄弟..我在我的程序中使用期望做的ssh。 – Raj 2010-07-08 09:40:20

+0

。在那裏我給了像 [email protected]; $ exp-> spawn(「ssh $ argument」)或者死於「無法產生ssh到ip $ ssh_ip_address \ n」; 但即使它不能執行ssh也不會打印無法將ssh分配給ip $ ssh_ip_address。你能幫我解釋爲什麼它不會發生嗎? – Raj 2010-07-08 09:42:12

+0

[打開一個新問題](http://stackoverflow.com/questions/ask)爲這個不同的問題。 – daxim 2010-07-08 09:53:27

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 
} 
相關問題