(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::__construct — Crée une instance SNMP représentant la session vers l'agent distant SNMP
$version,$hostname,$community,$timeout = -1,$retries = -1Crée une instance SNMP représentant une session avec un agent SNMP distant.
version
Version du protocole SNMP :
SNMP::VERSION_1,
SNMP::VERSION_2C,
SNMP::VERSION_3.
hostname
L'agent SNMP. Le paramètre hostname
peut être suffixé avec le port de l'agent optionnel SNMP
après deux-points. Les adresses IPV6 doivent être entourées de crochets ([])
lors de l'utilisation d'en plus les ports. Si FQDN est utilisé pour le paramètre
hostname, il sera résolu par l'extension PHP SNMP,
et non par le moteur Net-SNMP. L'utilisation des adresses IPV6
lors de l'utilisation de FQDN peut être forcée en entourant FQDN de crochets.
Voici quelques exemples :
| IPv4 avec un port par défaut | 127.0.0.1 |
| IPv6 avec un port par défaut | ::1 or [::1] |
| IPv4 avec un port spécifique | 127.0.0.1:1161 |
| IPv6 avec un port spécifique | [::1]:1161 |
| FQDN avec un port par défaut | host.domain |
| FQDN avec un port spécifique | host.domain:1161 |
| FQDN avec un port par défaut, forçage de l'utilisation d'adresses IPV6 | [host.domain] |
| FQDN avec un port spécifique, forçage de l'utilisation d'adresses IPV6 | [host.domain]:1161 |
community
La chaîne de communauté ou, pour SNMP::VERSION_3, le
nom de sécurité. L'objectif de la chaîne d'accès
community est spécifique à la version de
SNMP :
SNMP::VERSION_1
|
public pour une permission en lecture seule ou
private pour lecture-écriture
|
SNMP::VERSION_2C
|
public pour une permission en lecture seule ou
private pour lecture-écriture
|
SNMP::VERSION_3
|
Le nom de sécurité, généralement une sorte de nom d'utilisateur. |
SNMPv3 nécessite la configuration des paramètres de session liés à la sécurité avec la méthode SNMP::setSecurity().
timeoutLe nombre de microsecondes avant le premier délai d'expiration.
retriesLe nombre de tentatives lorsqu'un délai d'expiration survient.
SNMP::__construct() lance une exception lorsque les paramètres sont faux ou que la version du protocole SNMP est inconnue.
Exemple #1 Récupération de l'emplacement physique de l'hôte
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo "$sysdescr\n";
?>Résultat de l'exemple ci-dessus est similaire à :
STRING: Test server