2024 年 PHP 日本研討會

snmp3_real_walk

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

snmp3_real_walk返回指定 OID 內的所有物件,包含其各自的物件 ID

說明

snmp3_real_walk(
    字串 $hostname,
    字串 $security_name,
    字串 $security_level,
    字串 $auth_protocol,
    字串 $auth_passphrase,
    字串 $privacy_protocol,
    字串 $privacy_passphrase,
    陣列|字串 $object_id,
    int $timeout = -1,
    int $retries = -1
): array|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',
)

參見

  • snmpwalk() - 從代理程式擷取所有 SNMP 物件

新增註釋

使用者貢獻的註釋 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'; // 運作時間

foreach($a as $aPriv)
foreach(
$b as $bProt)
foreach(
$c as $cPrivProt){
echo
'時間 = '.date('Y-m-d H:i:s').'<br/>';
echo
'<b>安全性等級=</b>'.$aPriv.'<br/><b>驗證協定=</b>'.$bProt.'<br/><b>加密協定=</b>'.$cPrivProt.'<br/>請求 = ';
var_dump(
snmp3_real_walk($ip, $user, $aPriv, $bProt, $pass, $cPrivProt, $pass, $branch)
);
}
}

?>
To Top