#author("2021-09-03T17:01:36+09:00","","")
** checkhost.inc.php [#m477bb5e]
サーバ等の稼働状況を表示するプラグイン
&checkhost(210.236.208.114);
***概要 [#t9a905c1]
サーバ等の稼働状況を表示します.~
具体的にはfsockopen()を実行してすぐに終了するものです.~
なお,当たり前ですが,相手への経路がファイアウォール・ルータ等で閉じられていたらお手上げです.~
また,大量に設置すると,相手サーバに負荷をかけることになります.使用には十分注意してください.
このプラグインの開発目的はあくまで自分の管理するサーバの稼働チェックです.
***使用方法 [#kd48234f]
&checkhost(調べたいホスト名,OK戻り値,NG戻り値,ポート番号,タイムアウト秒数);
例 &checkhost(www.pukiwiki.org);
&checkhost(test.ytec.jp,稼働中,停止中,22,10);
&checkhost(192.168.1.2,,,Windows);
&checkhost(www.google.co.jp:8080,[[http://www.google.co.jp]],ERROR);
|調べたいホスト名|チェックするホスト名.ドメインでもIPでも可.【省略不可】&br;「ドメイン:ポート番号」形式も可能.その場合,下のポート番号引数より優先|
|OK戻り値|接続OKのときに出したいメッセージ(省略時 OK)|
|NG戻り値|接続NGのときに出したいメッセージ(省略時 NG)|
|ポート番号|接続するポート番号 または 文字列(省略時 80)|
|タイムアウト秒数|接続タイムアウトの秒数(省略時 3秒)|
***ポート文字列 [#fcc808f0]
ポート番号を覚えるのが面倒な場合用に,文字列を利用できるようにしました.~
文字列は大文字小文字問いません.
|LEFT:|RIGHT:||LEFT:|RIGHT:|c
|文字列 |ポート番号||文字列 |ポート番号|
|Web | 80||pop3 | 110|
|http | 80||unix | 22|
|Window | 139||linux | 22|
|ssh | 22||tomcat | 8080|
|ftp | 21||java | 8080|
|mail | 110||smtp | 25|
|ssl | 443||windows2| 135|
|https | 443||epmap | 135|
|telnet | 23||dns | 53|
$port_replaceに追加することにより,自由に増やすことが出来ます.
文字列の変わりにポート番号(数字)を入れ,一部ポートへのアクセスを禁止することも可能です.
**設置方法 [#s3db6f88]
checkhost.inc.phpファイルをプラグインディレクトリに入れてください.
***アタック予防設定項目 [#dcec08a0]
凍結ページのみ動作する(True推奨)
define('CHECKHOST_FREEZE',True); // True or False
アタック防止用設定~
リトライ禁止秒数,この秒数の間はリトライ出来ません.~
標準では1分間はリトライしても接続しません.
define('CHECKHOST_RETRY_TIME',60); // 0=OFF
ポートが違う同一サーバへのアクセスを同一アクセスと見るか.~
Trueのだと,ポートに関係なく制限します.~
しかし,同一サーバの複数サービスを確認したい場合はFalseにしてください.
define('CHECKHOST_RETRY_PORT',True);
リトライ禁止秒数だった場合に,以前のキャッシュを利用するか.~
Trueのままでいいかと思います.~
キャッシュでは意味が無い場合,Falseにして下さい.
define('CHECKHOST_RETRY_MES',True);
リトライを禁止するために前回の実行記録を保存するファイル名.~
define('CHECKHOST_FILE',CACHE_DIR.'checkhost.dat');
***デフォルトメッセージ設定 [#mbeb8a06]
plugin_checkhost_init()の中の,$messages['_checkhost_messages']を編集してください.
|def_OK_mes|接続OKの時のメッセージ|
|def_NG_mes|接続NGの時のメッセージ|
|retry_cache|キャッシュ表示の形式&br;「__CHCHE__」はOK/NGのときのメッセージに置換されます.|
**UDP・ICMP等のプロトコル [#jb677891]
現在のところ,サポートしていません.~
ICMPについては出来ればサポートしたいところですが,個人的能力の限界に近いです(笑)
**ダウンロード [#a9c986b5]
Ver 1.2 (2005.1.31)
&ref(checkhost.inc.php.1.2);
//**開発元 [#ce4b7eac]
//詳しい情報は開発元サイトにも載せています.~
//http://www.teu.ac.jp/chiit/~yamamura/?checkhost~
//(ネットワーク不調により,現在閲覧できません(2005.2.6) )
//