CakeFest 2024: The Official CakePHP Conference

snmpwalkoid

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

snmpwalkoidЗапрос дерева информации о сетевом объекте

Описание

snmpwalkoid(
    string $hostname,
    string $community,
    array|string $object_id,
    int $timeout = -1,
    int $retries = -1
): array|false

Функция snmpwalkoid() используется для чтения всех идентификаторов объектов и их соответствующих значений из агента SNMP, указанного в hostname.

Функции snmpwalkoid() и snmpwalk() существует по историческим причинам. Обе функции предусмотрены для обратной совместимости. Вместо этого используйте функцию snmprealwalk().

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

hostname

Агент SNMP.

community

Read-сообщество.

object_id

Если null, object_id берётся в качестве корня дерева объектов SNMP и все объекты этого дерева возвращаются в виде массива.

Если указан object_id, возвращаются все объекты SNMP ниже этого object_id.

timeout

Время ожидания в микросекундах.

retries

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

Возвращаемые значения

Возвращает ассоциативный массив с идентификаторами объектов и соответствующими им значениями объектов, начиная с object_id в качестве корня или false в случае возникновения ошибки.

Примеры

Пример #1 Пример использования snmpwalkoid()

<?php
$a
= snmpwalkoid("127.0.0.1", "public", "");
for (
reset($a); $i = key($a); next($a)) {
echo
"$i: $a[$i]<br />\n";
}
?>

Вызов функции вернёт все объекты SNMP из агента SNMP, работающего на localhost. Можно перемещаться по значениям с помощью цикла.

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

  • snmpwalk() - Получает все объекты SNMP из агента

add a note

User Contributed Notes 4 notes

up
0
Anonymous
9 years ago
make sure you install "snmp-mibs-downloader" in debian.

apt-get install snmp-mibs-downloader

you my also need to edit your /etc/apt/sources.list

deb http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.us.debian.org/debian/ wheezy main contrib non-free
up
0
thammer at rtccom dot com
18 years ago
The above note mentions that the MAC addresses come back converted to integers or something funky like that. Not sure why that is happening but I fixed that with a wrapper function.

function PadMAC($mac) {
$mac_arr = explode(':',$mac);
foreach($mac_arr as $atom) {
$atom = trim($atom);
$newarr[] = sprintf("%02s",$atom);
}
$newmac = implode(':',$newarr);
return $newmac;
}

Maybe that will help somebody with that issue. I know I personally use the heck out of these user contributed notes
up
0
gene_wood at example dot com
19 years ago
Looks like timeout is in MICRO seconds.
1,000,000 &micros = 1 s
up
0
jasper at pointless dot net
23 years ago
N.B. it's possible for snmpwalkoid to lose data - the "rmon.matrix.matrixSDTable" table for example uses binary mac addresses as part of the index, these get converted to ascii, and by the time they get to php they can be non-unique - so some entrys in the table get lost...
To Top