PHP Conference Nagoya 2025

snmp3_real_walk

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

snmp3_real_walk Retourne tous les objets incluant les identifiants de leurs objets respectifs

Description

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

La fonction snmp3_real_walk() est utilisée pour parcourir un nombre d'objets SNMP en commençant par l'objet dont l'identifiant est object_id et retourne non seulement leurs valeurs, mais aussi les identifiants des objets associés.

Liste de paramètres

hostname

Le nom d'hôte de l'agent SNMP (serveur).

security_name

Le nom de la sécurité, habituellement, le nom d'utilisateur.

security_level

Le niveau de sécurité (noAuthNoPriv|authNoPriv|authPriv).

auth_protocol

Le protocole d'authentification (MD5 ou SHA).

auth_passphrase

La phrase secrète d'authentification.

privacy_protocol

Le protocole d'authentification ("MD5", "SHA", "SHA256" ou "SHA512").

privacy_passphrase

La phrase secrète privée.

object_id

L'identifiant de l'objet SNMP.

timeout

Le nombre de microsecondes avant le premier délai d'expiration.

retries

Le nombre de tentatives dans le cas où un délai d'expiration survient.

Valeurs de retour

Retourne un tableau associatif d'identifiants d'objets SNMP ainsi que leurs valeurs en cas de succès, ou false si une erreur survient. Dans le cas où une erreur survient, une alerte de niveau E_WARNING est émise.

Historique

Version Description
8.1.0 Le paramètre auth_protocol accepte désormais "SHA256" et "SHA512" lorsqu'il est supporté par libnetsnmp.

Exemples

Exemple #1 Exemple avec snmp3_real_walk()

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

L'exemple ci-dessus affichera quelque chose comme :

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

Voir aussi

  • snmpwalk() - Reçoit tous les objets SNMP d'un agent

add a note

User Contributed Notes 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