(PHP 4, PHP 5, PHP 7, PHP 8)
snmp3_walk — 從代理程式擷取所有 SNMP 物件
$hostname,$security_name,$security_level,$auth_protocol,$auth_passphrase,$privacy_protocol,$privacy_passphrase,$object_id,$timeout = -1,$retries = -1
snmp3_walk() 函式用於從 hostname 指定的 SNMP 代理程式讀取所有值。
即使安全級別未使用驗證或隱私協定/密碼,也必須指定有效值。
hostnameSNMP 代理程式(伺服器)的主機名稱。
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_id 將被視為 SNMP 物件樹的根,並且該樹下的所有物件都將以陣列形式返回。
如果指定了 object_id,則會返回該 object_id 下方的所有 SNMP 物件。
timeout第一次逾時的微秒數。
retries發生逾時時重試的次數。
返回從 object_id 作為根開始的 SNMP 物件值的陣列,或在發生錯誤時返回 false。
| 版本 | 說明 |
|---|---|
| 8.1.0 | 當 libnetsnmp 支援時,auth_protocol 現在接受 "SHA256" 和 "SHA512"。 |
範例 #1 snmp3_walk() 範例
<?php
$ret = snmp3_walk('localhost', 'james', 'authPriv', 'SHA', 'secret007', 'AES', 'secret007', 'IF-MIB::ifName');
var_export($ret);
?>上述函式呼叫將返回在 localhost 上執行的 SNMP 代理程式中的所有 SNMP 物件
array ( 0 => 'STRING: lo', 1 => 'STRING: eth0', 2 => 'STRING: eth2', 3 => 'STRING: sit0', 4 => 'STRING: sixxs', )