リモートホストの生存確認Net::Pingモジュールを利用すれば、リモートホストの生存を確認することができます。Net::Ping->new;リモートホストの生存を確認するにはpingメソッドを使用します。引数にはホスト名(ドメイン名)とIPアドレスを使用することができます。$p->ping('localhost');少し注意して欲しいことがあるのですが、Net::Pingのpingメソッドはpingコマンドの代替ではありません。pingコマンドICMPというプロトコルを使用しますが、Net::PingはデフォルトではTCPプロトコルを使用して、エコーポート(ポート番号は7)に対して生存確認を行います。HTTP(ポートは80)でリモートホストに接続できたとしても、セキュリティ上の理由でエコーポートを閉じていれば、生存していないという判定が返ってきます。ICMPを利用した生存確認を行うには、コンストラクタでicmpを指定します。これを行うにはroot権限が必要になります(※1)。$p->ping('somehost');HTTPで生存確認を行いたい場合はport_numberメソッドを使用してポート番号に80を指定します。$p->ping('www.google.co.jp');pingメソッドの第二引数にはタイムアウト値(秒)を指定することができます。root権限がなければ生存確認できないのは少し不便です。CPANにはNet::Ping::Externalというモジュールがあり、これはpingコマンドのPerlインターフェースになっています。これを利用すれば、root権限なしてICMPを利用して生存確認を行うことができます。業務に役立つPerlログ解析など日本語を含むテキスト処理の実践!案内YouTubeでもっと簡単にプログラミングを学ぶならPerlゼミちゃんねるLinuxコマンドを学ぶならLinuxサーバー管理入門Webデザインを学ぶならWebデザイン入門Web開発を始めるななMojoliciousスタートアップブログを作るならGiblogプログラミングの勉強会ならPerl入学式お問合せはこちらPerlは、テキスト処理の記述性とパフォーマンスに優れ、正規表現が言語に組み込まれているプログラミング言語です。Linuxサーバー管理でのフィルタリングプログラム、複数行の文字列を処理、ファイル内容の検索・置換などが得意。Mojoliciousを使ったWebサービス開発も。Perlは、gitやopensslなどUnix/Linuxミドルウェアの支援ツールとして採用されています。