ndum / laravel-snmp
一个用于Laravel的FreeDSx/SNMP SNMP包装器
2.0.0
2024-05-14 19:56 UTC
Requires
- php: >=7.1
- freedsx/snmp: ^0.5.0
- illuminate/support: ~5.5|~6.0|~7.0|~8.0|~9.0|~10.0|~11.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
This package is auto-updated.
Last update: 2024-09-21 12:59:21 UTC
README
这个Laravel包提供了一个简单的Laravel包装器,用于优秀的FreeDSx/SNMP类。
要求
要求:Laravel >= 5.5 或更高版本
安装
通过Composer安装。
$ composer require ndum/laravel-snmp
文档
官方文档可以在这里找到
示例
传统方式
use Ndum\Laravel\Snmp; $snmp = new Snmp(); $snmp->newClient('servername', 2, 'secret'); $result = $snmp->getValue('1.3.6.1.2.1.1.5.0'); ## hostname dd($result);
门面
use Ndum\Laravel\Facades\Snmp; $snmp = Snmp::newClient('servername', 2, 'secret'); $result = $snmp->getValue('1.3.6.1.2.1.1.5.0'); ## hostname dd($result);
额外功能
超时设置
use Ndum\Laravel\Snmp; $snmp = new Snmp(); $snmp->newClient('servername', 2, 'secret'); $snmp->setTimeoutConnectValue(5); # set a value for timeout_connect $snmp->setTimeoutReadValue(10); # set a value for timeout_read $result = $snmp->getValue('1.3.6.1.2.1.1.5.0'); ## hostname dd($result);
SNMP陷阱第1部分。(发送陷阱)
v1
$snmp = new Snmp(); $snmp->newClient('targetserver', 1, 'secret', 162); # Parameters: # The enterprise OID to trigger (string) # The IP address. (string) # The generic trap type (int) # The specific trap type (int) # The system uptime (in seconds/int) # The OIDs and their values (string/int) $snmp->sendTrapV1('1.3.6.1.4.1.2021.251.1','localhost', 0, 0, 60, '1.3.6.1.2.1.1.3', 60);
v2c / v3
use Ndum\Laravel\Snmp; $snmp = new Snmp(); $snmp->newClient('targetserver', 2, 'secret', 162); # Parameters: # The system uptime (in seconds/int) # The trap OID (string) # The OIDs and their values (string/int) $snmp->sendTrap(60, '1.3.6.1.4.1.2021.251.1', '1.3.6.1.2.1.1.3', 60));
inform-request(与v2c / v3相同,但需要目标响应)
use Ndum\Laravel\Snmp; $snmp = new Snmp(); $snmp->newClient('targetserver', 2, 'secret', 162); # Parameters: # The system uptime (in seconds/int) # The trap OID (string) # The OIDs and their values (string/int) $snmp->sendInform(60, '1.3.6.1.4.1.2021.251.1', '1.3.6.1.2.1.1.3', 60));
SNMP陷阱第2部分。(接收陷阱/陷阱接收器)
- 首先,创建一个陷阱监听器类(示例可以在这里找到)
- 然后像以下示例一样使用它
use Ndum\Laravel\SnmpTrapServer; # don't forget to use your listener also! # default options $options = [ 'ip' => '0.0.0.0', 'port' => 162, 'transport' => 'udp', 'version' => null, 'community' => null, 'whitelist' => null, 'timeout_connect' => 5, ]; $listener = new TrapListener(); ### your in step 1 created listener-class $server = new SnmpTrapServer() $server->prepare($listener, $options) # $options only needed if other than default $server->listen(); # in addition: (only if needed) $server->getOptions(); # to get the options $server->setOptions($options); # to set the options
陷阱接收器的官方文档可以在这里找到
问题/贡献
直接通过GitHub
许可
本项目采用MIT许可 - 详细信息请参阅LICENSE.md文件