PHP 日本大会 2024

snmp3_real_walk

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

snmp3_real_walk返回指定对象内所有对象及其各自的对象 ID

描述

snmp3_real_walk(
    字符串 $hostname,
    字符串 $security_name,
    字符串 $security_level,
    字符串 $auth_protocol,
    字符串 $auth_passphrase,
    字符串 $privacy_protocol,
    字符串 $privacy_passphrase,
    数组|字符串 $object_id,
    整数 $timeout = -1,
    整数 $retries = -1
): 数组|false

snmp3_real_walk() 函数用于遍历从 object_id 开始的多个 SNMP 对象,并返回它们的值以及它们的对象 ID。

参数

hostname

SNMP 代理(服务器)的主机名。

security_name

安全名称,通常是某种用户名。

security_level

安全级别 (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

身份验证协议 (MD5 或 SHA)

auth_passphrase

身份验证密码

privacy_protocol

隐私协议 ("MD5", "SHA", "SHA256", 或 "SHA512")

privacy_passphrase

隐私密码

object_id

SNMP 对象 ID。

timeout

第一次超时之前的微秒数。

retries

如果超时,重试的次数。

返回值

成功时返回 SNMP 对象 ID 及其值的关联数组;错误时返回 false。如果发生错误,则会显示 E_WARNING 消息。

变更日志

版本 描述
8.1.0 当 libnetsnmp 支持时,auth_protocol 现在接受 "SHA256""SHA512"

范例

示例 #1 使用 snmp3_real_walk()

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

以上将输出类似以下内容

array (
  'IF-MIB::ifName.1' => 'STRING: lo',
  'IF-MIB::ifName.2' => 'STRING: eth0',
  'IF-MIB::ifName.3' => 'STRING: eth2',
  'IF-MIB::ifName.4' => 'STRING: sit0',
  'IF-MIB::ifName.5' => 'STRING: sixxs',
)

参见

添加备注

用户贡献的备注 1 条备注

匿名
12 年前
使用此函数调试 snmp 连接。

<?php
error_reporting
(8191);
date_default_timezone_set('Europe/Moscow');
ini_set('display_errors',1);

snmp_test_connection('12.34.56.78', 'guest', 'guest')

function
snmp_test_connection($ip, $user, $pass){
$a = array('noAuthNoPriv','authNoPriv','authPriv');
$b = array('MD5','SHA');
$c = array('DES','AES');

$branch = '.1.3.6.1.2.1.1.3'; // upTime

foreach($a as $aPriv)
foreach(
$b as $bProt)
foreach(
$c as $cPrivProt){
echo
'time = '.date('Y-m-d H:i:s').'<br/>';
echo
'<b>sec_level=</b>'.$aPriv.'<br/><b>auth_protocol=</b>'.$bProt.'<br/><b>priv_protocol=</b>'.$cPrivProt.'<br/>Request = ';
var_dump(
snmp3_real_walk($ip, $user, $aPriv, $bProt, $pass, $cPrivProt, $pass, $branch)
);
}
}

?>
To Top