snmp3_walk

(PHP 4, PHP 5, PHP 7, PHP 8)

snmp3_walkすべての SNMP オブジェクトをエージェントから取得する

説明

snmp3_walk(
    string$hostname,
    string$security_name,
    string$security_level,
    string$auth_protocol,
    string$auth_passphrase,
    string$privacy_protocol,
    string$privacy_passphrase,
    array|string$object_id,
    int$timeout = -1,
    int$retries = -1
): array|false

snmp3_walk() 関数は、 hostname で指定した SNMP エージェントからすべての値を読み込みます。

セキュリティレベルに auth や priv を使っていなくても、 protocol/password には有効な値を指定しなくてはなりません。

パラメータ

hostname

SNMP エージェント (サーバー) のホスト名。

security_name

セキュリティ名。通常はユーザー名のようなもの。

security_level

セキュリティレベル (noAuthNoPriv|authNoPriv|authPriv)。

auth_protocol

認証プロトコル ("MD5", "SHA", "SHA256", "SHA512")。

auth_passphrase

認証パスフレーズ。

privacy_protocol

プライバシープロトコル (DES あるいは AES)。

privacy_passphrase

プライバシーパスフレーズ。

object_id

null の場合は object_idSNMP オブジェクトツリーのルートとなり、 ツリー配下のすべてのオブジェクトを配列で返します。

object_id を指定すると、 その object_id 以下のすべての SNMP オブジェクトを返します。

timeout

最初のタイムアウトまでのマイクロ秒数。

retries

タイムアウト発生時の再試行回数。

戻り値

object_id をルートとするすべての SNMP オブジェクトの値の配列、あるいはエラー時に false を返します。

変更履歴

バージョン説明
8.1.0auth_protocol は、 libnetsnmp がサポートする場合に、 新たに "SHA256""SHA512" を受け入れるようになりました。

例1 snmp3_walk() の例

<?php
$ret
= snmp3_walk('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName');
var_export($ret);
?>

上の関数コールは、ローカルホストで動作している SNMP エージェントからすべての SNMP オブジェクトを返します。

array ( 0 => 'STRING: lo', 1 => 'STRING: eth0', 2 => 'STRING: eth2', 3 => 'STRING: sit0', 4 => 'STRING: sixxs', )

参考

  • snmp3_real_walk() - 指定したすべてのオブジェクトとそのオブジェクト ID を返す
To Top