PHP Conference Nagoya 2025

snmp3_real_walk

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

snmp3_real_walkReturn all objects including their respective object ID within the specified one

Descrição

snmp3_real_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

The snmp3_real_walk() function is used to traverse over a number of SNMP objects starting from object_id and return not only their values but also their object ids.

Parâmetros

hostname

The hostname of the SNMP agent (server).

security_name

the security name, usually some kind of username

security_level

the security level (noAuthNoPriv|authNoPriv|authPriv)

auth_protocol

the authentication protocol (MD5 or SHA)

auth_passphrase

the authentication pass phrase

privacy_protocol

the authentication protocol ("MD5", "SHA", "SHA256", or "SHA512")

privacy_passphrase

the privacy pass phrase

object_id

The SNMP object id.

timeout

The number of microseconds until the first timeout.

retries

The number of times to retry if timeouts occur.

Valor Retornado

Returns an associative array of the SNMP object ids and their values on success or false on error. In case of an error, an E_WARNING message is shown.

Registro de Alterações

Versão Descrição
8.1.0 The auth_protocol now accepts "SHA256" and "SHA512" when supported by libnetsnmp.

Exemplos

Exemplo #1 Using snmp3_real_walk()

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

The above will output something like:

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',
)

Veja Também

  • snmpwalk() - Fetch all the SNMP objects from an agent

adicione uma nota

Notas Enviadas por Usuários (em inglês) 1 note

up
2
Anonymous
12 years ago
Use this function for debug snmp-connection.

<?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