pingを飛ばしてホストの稼動を確認する
pingとは TCP/IPネットワークにおいて、相手ホストが稼動しているか確認するために、IPパケットが通信先まで届いているかや、IP的に到達可能かどうかを調べるために利用させる最も基本的なコマンドになります。
perl では Net::Ping モジュールを使うことで、非常に簡単にこの ping を実行する事が出来ます。
use Net::Ping;
$host="192.168.0.1";
$timeout=1;
$pObj = Net::Ping->new("icmp");
if($pObj->ping($host, $timeout)){
print "$host is running.\n";
}
$pObj->close();
上記では 192.168.0.1 へ IPネットワーク的に到達可能か否かを判断します。 $timeout には ping を飛ばして何秒間応答がなければ ping が届かなかったかと判断するかのタイムアウトを設定する事が出来ます。 ここでは 1秒間でタイムアウトしますが、 0.1 ( 100ミリ秒 ) のように少数の値を設定することも可能です。
|