[PHP-users 32556] PearのNet_Pingについて

富士通)小野 ono.1982.kenji @ jp.fujitsu.com
2007年 8月 22日 (水) 21:34:10 JST


 皆さん今日は。小野と言います。


Pear_pingを使って死活監視を試みているのですが、想定した動作をし
てくれません。

環境は、以下のとおりです。
$ uname -a
SunOS hakata 5.9 Generic_122300-04 sun4u sparc SUNW,UltraAX-i2

$ /usr/local/apache2/bin/httpd -v
Server version: Apache/2.0.59
Server built:   Jun 19 2007 02:09:06

$ php -v
PHP 4.4.7 (cli) (built: Aug 22 2007 16:42:43)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

$ pear list
Installed packages, channel pear.php.net:
=========================================
Package              Version State
Archive_Tar          1.3.2   stable
Auth_SASL            1.0.2   stable
Console_Getopt       1.2.1   stable
HTML_Template_IT     1.1     stable
Mail                 1.1.14  stable
Mail_Mime            1.3.1   stable
Net_POP3             1.3.6   stable
Net_Ping             2.4.2   stable
Net_Portscan         1.0.2   stable
Net_SMTP             1.2.10  stable
Net_Socket           1.0.8   stable
Net_Traceroute       0.21.1  alpha
Net_URL              1.0.15  stable
Net_UserAgent_Detect 2.0.1   stable
Net_Whois            1.0     stable
PEAR                 1.5.0   stable
Structures_Graph     1.0.2   stable
XML_FastCreate       1.0.3   stable
XML_Parser           1.2.8   stable
XML_RDDL             0.9     beta
XML_Statistics       0.1     beta

サンプルとして以下のようなソースを作ってみました。
キックはWebからしてますが、画面に表示が戻ってきません。

    $ping = Net_Ping::factory();
    if (PEAR::isError($ping)) {
        echo $ping->getMessage();
    } else {
        $ping->setArgs(array("count" => 2 , "size" => 32, "TTL" => 512));
        var_dump($ping->ping(監視先IPアドレス));
    }

TELNETで状況を見ていると、以下のように表示されます。
bash-2.05# ps -ef | grep ping
  nobody 22917 22907  0 17:02:48 ? 0:00 sh -c /usr/sbin/ping  -s
xx.xx.xx.xx 56 2
  nobody 22918 22917  0 17:02:48 ? 0:00 /usr/sbin/ping -s xx.xx.xx.xx

何故、2個もPINGが走っているのか謎だし、2行目だとまさに永久に実
行し続けるから、戻ってくれそうにないですよね。
しょうがないので、2行目をkillすると、画面に表示が戻ってきて、
PINGの実行結果らしき内容が表示されます。

どなたか、原因や回避方法などご存知でしたら、ご教授頂きたく、よ
ろしくおねがい致します。





PHP-users メーリングリストの案内