PHP Conference Nagoya 2025

SNMP::__construct

(PHP 5 >= 5.4.0, PHP 7, PHP 8)

SNMP::__construct Создаёт экземпляр класса SNMP, который представляет сеанс удалённому SNMP-агенту

Описание

public SNMP::__construct(
    int $version,
    string $hostname,
    string $community,
    int $timeout = -1,
    int $retries = -1
)

Метод создаёт экземпляр класса SNMP, который представляет сессию для удалённого SNMP-агента.

Список параметров

version

Версия протокола SNMP: SNMP::VERSION_1, SNMP::VERSION_2C, SNMP::VERSION_3.

hostname

SNMP-агент. Необязательный порт SNMP-агента указывают в виде суффикса — после имени хоста hostname через двоеточие. IPv6-адреса заключают в квадратные скобки, если указывают с портом. Полное доменное имя (англ. Fully Qualified Domain Name, FQDN) разрешит PHP-модуль SNMP, а не движок Net-SNMP, если в аргументе hostname указали полное имя домена. Полное доменное имя заключают в квадратные скобки, чтобы включить принудительный обмен информацией по IPv6-адресам. Вот несколько примеров:

IPv4-адрес с портом по умолчанию127.0.0.1
IPv6-адрес с портом по умолчанию::1 or [::1]
IPv4-адрес с конкретным портом127.0.0.1:1161
IPv6-адрес с конкретным портом[::1]:1161
Полное доменное имя с портом по умолчаниюhost.domain
Полное доменное имя с конкретным портомhost.domain:1161
Полное доменное имя с портом по умолчанию с принудительным сетевым взаимодействием по IPv6-адресам [host.domain]
Полное доменное имя с конкретным портом с принудительным сетевым взаимодействием по IPv6-адресам [host.domain]:1161

community

Параметр устанавливает уровень безопасности для аргумента version. Назначение аргумента community зависит от версии SNMP-объединения:

SNMP::VERSION_1 Значение "public" разрешает только чтение, а значение "private" разрешает чтение и запись
SNMP::VERSION_2C Значение "public" разрешает только чтение, а значение "private" разрешает чтение и запись
SNMP::VERSION_3 Строка с названием уровня безопасности для версии протокола SNMPv3: "noAuthNoPriv", "authNoPriv" (потребуется парольная фраза и протокол аутентификации), или "authPriv" (потребуются парольная фраза и протокол аутентификации, и парольная фраза и протокол конфиденциальности)
Для уровня безопасности, который устанавливается в версии SNMPv3, потребуется сконфигурировать параметры сессии. Параметры безопасности устанавливают методом SNMP::setSecurity().
timeout

Количество микросекунд до первого времени ожидания.

retries

Количество повторных попыток в случае превышения времени ожидания.

Ошибки

Метод SNMP::__construct() выбрасывает исключение, когда количество или типы параметров неверны или указали неизвестную версию SNMP-протокола.

Примеры

Пример #1 Пример получения физического расположения хоста

<?php

$session
= new SNMP(SNMP::VERSION_1, "127.0.0.1", "public");
$sysdescr = $session->get("sysDescr.0");
echo
"$sysdescr\n";

?>

Вывод приведённого примера будет похож на:

STRING: Test server

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top