查询

snmpget()函数—用法及示例

「 从指定的SNMP代理获取指定的OID的值 」


函数名称:snmpget()

函数描述:snmpget()函数用于从指定的SNMP代理获取指定的OID的值。

适用版本:PHP 4 >= 4.3.3, PHP 5, PHP 7

语法:string snmpget(string $hostname, string $community, string $object_id, int $timeout = 1000000, int $retries = 5)

参数:

  • $hostname:要查询的SNMP代理的主机名或IP地址。
  • $community:SNMP代理的共同体字符串,用于身份验证。
  • $object_id:要获取的OID(对象标识符)。
  • $timeout(可选):超时时间,以微秒为单位,默认为1秒。
  • $retries(可选):重试次数,默认为5次。

返回值:成功时返回获取的值,失败时返回FALSE。

示例:

  1. 获取SNMP代理的系统描述:
$hostname = '192.168.0.1';
$community = 'public';
$object_id = 'sysDescr.0';

$value = snmpget($hostname, $community, $object_id);
echo "System Description: " . $value;
  1. 获取SNMP代理的接口状态:
$hostname = '192.168.0.1';
$community = 'public';
$object_id = 'ifOperStatus.1';

$value = snmpget($hostname, $community, $object_id);
if ($value === '1') {
    echo "Interface is up";
} else {
    echo "Interface is down";
}

注意事项:

  • 在使用snmpget()函数之前,确保已安装SNMP扩展并启用了SNMP功能。
  • 请根据实际情况替换$hostname和$community变量的值。
  • OID的格式应为.,其中是对应的对象标识符,是对应的索引(如果适用)。
  • 请根据你的需求自定义超时时间和重试次数。
补充纠错
上一个函数: snmpgetnext()函数
下一个函数: SNMP::__construct()函数
热门PHP函数
分享链接