(PHP 5 >= 5.4.0, PHP 7, PHP 8)
SNMP::__construct — Создаёт экземпляр SNMP, представляющий сессию удалённого агента SNMP
$version
,$hostname
,$community
,$timeout
= -1,$retries
= -1Описание функции
version
SNMP protocol version:
SNMP::VERSION_1
,
SNMP::VERSION_2C
,
SNMP::VERSION_3
.
hostname
Агент SNMP. hostname
может иметь суффикс с
необязательным портом агента SNMP после двоеточия. Адреса IPv6 должны быть заключены в квадратные
скобки, если используются с портом. Если для hostname
используется полное доменное имя,
оно будет обработано библиотекой php-snmp, а не механизмом Net-SNMP. Использование
IPv6-адресов при указании полного доменного имени может быть принудительно заключено
в квадратные скобки. Вот несколько примеров:
IPv4 с портом по умолчанию | 127.0.0.1 |
IPv6 с портом по умолчанию | ::1 or [::1] |
IPv4 с конкретным портом | 127.0.0.1:1161 |
IPv6 с конкретным портом | [::1]:1161 |
FQDN с портом по умолчанию | host.domain |
FQDN с конкретным портом | host.domain:1161 |
FQDN с портом по умолчанию, принудительное использование IPv6-адреса | [host.domain] |
FQDN с конкретным портом, принудительное использование IPv6-адреса | [host.domain]:1161 |
community
Назначение community
зависит от версии SNMP:
SNMP::VERSION_1 | SNMP community |
SNMP::VERSION_2C | SNMP community |
SNMP::VERSION_3 | SNMPv3 securityName |
timeout
Количество микросекунд до первого времени ожидания.
retries
Количество повторных попыток в случае превышения времени ожидания.
SNMP::__construct() выбрасывает исключение, когда количество или типы параметров неверны или указана неизвестная версия протокола SNMP.
Пример #1 Получение sysLocation
<?php
$session = new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo "$sysdescr\n";
?>
Результатом выполнения данного примера будет что-то подобное:
STRING: Test server