Updated MGE UPS sensors and added traps (#9301)

* MGE: Improve support for Galaxy devices

* MGE: Improve support for Galaxy devices

* MGE: Improve support for Galaxy devices

* rfc1628 adaptations for Eaton MGE Galaxy 7000

* eaton-mge: test data on a Galaxy 7000

* rfc1628 adaptations for Eaton MGE Galaxy 7000

* rfc1628 adaptations for Eaton MGE Galaxy 7000

* eaton-mgeups: test data on a Galaxy 7000

* Add upsmgUtilityFailure and upsmgUtilityRestored trap support for eaton-mgeups

* dev: eaton-mgeups: OID in the dynamic definition for discovery

* dev: eaton-mgeups: cleaning

* add contributor

* add contributor
This commit is contained in:
PipoCanaja
2018-10-17 18:03:51 +02:00
committed by Neil Lathwood
parent e9120085c9
commit 2125c8640b
10 changed files with 2205 additions and 4 deletions

View File

@@ -159,7 +159,7 @@ LibreNMS contributors:
- Joachim Tingvold <joachim@tingvold.com> (jallakim) - Joachim Tingvold <joachim@tingvold.com> (jallakim)
- Martin Zatloukal <slezi2@pvfree.net> (erotel) - Martin Zatloukal <slezi2@pvfree.net> (erotel)
- Matthew Schwen <mschwen@gmail.com> (mattschwen) - Matthew Schwen <mschwen@gmail.com> (mattschwen)
- Joel Cant <joel@linuxmod.co.uk> (NerdBlender - Joel Cant <joel@linuxmod.co.uk> (NerdBlender)
- Aldemir Akpinar <aldemir.akpinar@gmail.com> (aldemira) - Aldemir Akpinar <aldemir.akpinar@gmail.com> (aldemira)
- Rob Nichols <rob@ignition360.com> (rdnn) - Rob Nichols <rob@ignition360.com> (rdnn)
- Patrick Fruh <info@kaeltis.de> (Kaeltis) - Patrick Fruh <info@kaeltis.de> (Kaeltis)
@@ -210,6 +210,7 @@ LibreNMS contributors:
- Frank Petrilli <frank@petril.li> (frankpetrilli) - Frank Petrilli <frank@petril.li> (frankpetrilli)
- Joel Kociolek <joel@kociolek.org> (lejoko) - Joel Kociolek <joel@kociolek.org> (lejoko)
- Rémy Jacquin <remy@remyj.fr> (remyj38) - Rémy Jacquin <remy@remyj.fr> (remyj38)
- PipoCanaja <pipocanaja@gmail.com> [pipocanaja](https://github.com/pipocanaja/)
Observium was written by: Observium was written by:
- Adam Armstrong - Adam Armstrong

View File

@@ -0,0 +1,55 @@
<?php
/**
* UpsmgUtilityFailure.php
*
* -Description-
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2018 PipoCanaja
* @author PipoCanaja <pipocanaja@gmail.com>
*/
namespace LibreNMS\Snmptrap\Handlers;
use App\Models\Device;
use LibreNMS\Interfaces\SnmptrapHandler;
use LibreNMS\Snmptrap\Trap;
use Log;
class UpsmgUtilityFailure implements SnmptrapHandler
{
/**
* Handle snmptrap.
* Data is pre-parsed and delivered as a Trap.
*
* @param Device $device
* @param Trap $trap
* @return void
*/
public function handle(Device $device, Trap $trap)
{
$sensor = $device->sensors()->where('sensor_type', 'upsmgInputBadStatus')->first();
if (!$sensor) {
Log::warning("Snmptrap UpsmgUtilityFailure: Could not find matching sensor upsmgInputBadStatus for device: " . $device->hostname);
return;
}
$sensor->sensor_current = 1;
$sensor->save();
$device_array = $device->toArray();
log_event("UPS power failed, state sensor " . $sensor->sensor_descr . " has changed to ".$sensor->sensor_current . ".", $device_array, "Power", 5);
}
}

View File

@@ -0,0 +1,53 @@
<?php
/**
* -Description-
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link http://librenms.org
* @copyright 2018 PipoCanaja
* @author PipoCanaja <pipocanaja@gmail.com>
*/
namespace LibreNMS\Snmptrap\Handlers;
use App\Models\Device;
use LibreNMS\Interfaces\SnmptrapHandler;
use LibreNMS\Snmptrap\Trap;
use Log;
class UpsmgUtilityRestored implements SnmptrapHandler
{
/**
* Handle snmptrap.
* Data is pre-parsed and delivered as a Trap.
*
* @param Device $device
* @param Trap $trap
* @return void
*/
public function handle(Device $device, Trap $trap)
{
$sensor = $device->sensors()->where('sensor_type', 'upsmgInputBadStatus')->first();
if (!$sensor) {
Log::warning("Snmptrap UpsmgUtilityRestored: Could not find matching sensor upsmgInputBadStatus for device: " . $device->hostname);
return;
}
$sensor->sensor_current = 2;
$sensor->save();
$device_array = $device->toArray();
log_event("UPS power restored, state sensor " . $sensor->sensor_descr . " has changed to ".$sensor->sensor_current . ".", $device_array, "Power", 1);
}
}

View File

@@ -7,5 +7,7 @@ return [
'BGP4-MIB::bgpBackwardTransition' => \LibreNMS\Snmptrap\Handlers\BgpBackwardTransition::class, 'BGP4-MIB::bgpBackwardTransition' => \LibreNMS\Snmptrap\Handlers\BgpBackwardTransition::class,
'IF-MIB::linkUp' => \LibreNMS\Snmptrap\Handlers\LinkUp::class, 'IF-MIB::linkUp' => \LibreNMS\Snmptrap\Handlers\LinkUp::class,
'IF-MIB::linkDown' => \LibreNMS\Snmptrap\Handlers\LinkDown::class, 'IF-MIB::linkDown' => \LibreNMS\Snmptrap\Handlers\LinkDown::class,
'MG-SNMP-UPS-MIB::upsmgUtilityFailure' => \LibreNMS\Snmptrap\Handlers\UpsmgUtilityFailure::class,
'MG-SNMP-UPS-MIB::upsmgUtilityRestored' => \LibreNMS\Snmptrap\Handlers\UpsmgUtilityRestored::class,
] ]
]; ];

View File

@@ -0,0 +1,234 @@
mib: MG-SNMP-UPS-MIB
modules:
sensors:
power:
data:
-
oid: upsmgOutputPhaseTable
value: mgoutputLoadPerPhase
num_oid: .1.3.6.1.4.1.705.1.7.2.1.4.
multiplier: 1000
descr: 'Output (VA) Phase {{ $index }}'
index: 'kva.mgoutputLoadPerPhase.{{ $index }}'
current:
data:
-
oid: upsmgInputPhaseTable
value: mginputCurrent
num_oid: .1.3.6.1.4.1.705.1.6.2.1.6.
divisor: 10
descr: 'Input Current Phase {{ $index }}'
index: 'mginputCurrent.{{ $index }}'
-
oid: upsmgOutputPhaseTable
value: mgoutputCurrent
num_oid: .1.3.6.1.4.1.705.1.7.2.1.5.
divisor: 10
descr: 'Output Current Phase {{ $index }}'
index: 'mgoutputCurrent.{{ $index }}'
-
oid: upsmgBattery
value: upsmgBatteryCurrent
num_oid: .1.3.6.1.4.1.705.1.5.6.
divisor: 10
descr: 'Battery'
index: 'upsmgBatteryCurrent.{{ $index }}'
temperature:
data:
-
oid: upsmgBattery
value: upsmgBatteryTemperature
num_oid: .1.3.6.1.4.1.705.1.5.7.
descr: 'Battery'
index: 'upsmgBatteryTemperature.{{ $index }}'
frequency:
data:
-
oid: upsmgInputPhaseTable
value: mginputFrequency
num_oid: .1.3.6.1.4.1.705.1.6.2.1.3.
divisor: 10
descr: 'Input Frequency Phase {{ $index }}'
index: 'mginputFrequency.{{ $index }}'
-
oid: upsmgOutputPhaseTable
value: mgoutputFrequency
num_oid: .1.3.6.1.4.1.705.1.7.2.1.3.
divisor: 10
descr: 'Output Frequency Phase {{ $index }}'
index: 'mgoutputFrequency.{{ $index }}'
delay:
data:
-
oid: upsmgBattery
value: upsmgBatteryRemainingTime
num_oid: .1.3.6.1.4.1.705.1.5.1.
descr: 'Remaining time'
index: 'upsmgBatteryRemainingTime.{{ $index }}'
charge:
data:
-
oid: upsmgBattery
value: upsmgBatteryLevel
num_oid: .1.3.6.1.4.1.705.1.5.2.
descr: 'Remaining battery capacity'
index: 'upsmgBatteryLevel.{{ $index }}'
voltage:
data:
-
oid: upsmgInputPhaseTable
value: mginputVoltage
num_oid: .1.3.6.1.4.1.705.1.6.2.1.2.
divisor: 10
descr: 'Input Phase/Phase {{ $index }}'
index: 'mginputVoltage.{{ $index }}'
-
oid: upsmgOutputPhaseTable
value: mgoutputVoltage
num_oid: .1.3.6.1.4.1.705.1.7.2.1.2.
divisor: 10
descr: 'Output Phase/Phase {{ $index }}'
index: 'mgoutputVoltage.{{ $index }}'
-
oid: upsmgBattery
value: upsmgBatteryVoltage
num_oid: .1.3.6.1.4.1.705.1.5.5.
divisor: 10
descr: 'Battery'
index: 'upsmgBatteryVoltage.{{ $index }}'
state:
data:
-
oid: upsmgOutputOnBattery
value: upsmgOutputOnBattery
num_oid: .1.3.6.1.4.1.705.1.7.3.
descr: 'Input Status'
index: 'upsmgOutputOnBattery.{{ $index }}'
state_name: upsmgOutputOnBattery
states:
- { descr: On Battery, graph: 0, value: 1, generic: 2 }
- { descr: On Input Power, graph: 0, value: 2, generic: 0 }
-
oid: upsmgOutputOnByPass
value: upsmgOutputOnByPass
num_oid: .1.3.6.1.4.1.705.1.7.4.
descr: 'Bypass Status'
index: 'upsmgOutputOnBypass.{{ $index }}'
state_name: upsmgOutputOnByPass
states:
- { descr: On ByPass, graph: 0, value: 1, generic: 2 }
- { descr: Not Active, graph: 0, value: 2, generic: 0 }
-
oid: upsmgOutputUtilityOff
value: upsmgOutputUtilityOff
num_oid: .1.3.6.1.4.1.705.1.7.7.
descr: 'Utility Status'
index: 'upsmgOutputUtilityOff.{{ $index }}'
state_name: upsmgOutputUtilityOff
states:
- { descr: No Voltage, graph: 0, value: 1, generic: 2 }
- { descr: Output OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgOutputInverterOff
value: upsmgOutputInverterOff
num_oid: .1.3.6.1.4.1.705.1.7.9.
descr: 'UPS Inverter Status'
index: 'upsmgOutputInverterOff.{{ $index }}'
state_name: upsmgOutputInverterOff
states:
- { descr: Inverter Off, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgOutputOverLoad
value: upsmgOutputOverLoad
num_oid: .1.3.6.1.4.1.705.1.7.10.
descr: 'Output OverLoad'
index: 'upsmgOutputOverLoad.{{ $index }}'
state_name: upsmgOutputOverLoad
states:
- { descr: Yes, graph: 0, value: 1, generic: 2 }
- { descr: No, graph: 0, value: 2, generic: 0 }
-
oid: upsmgOutputOverTemp
value: upsmgOutputOverTemp
num_oid: .1.3.6.1.4.1.705.1.7.11.
descr: 'Over Temperature'
index: 'upsmgOutputOverTemp.{{ $index }}'
state_name: upsmgOutputOverTemp
states:
- { descr: Over Temperature, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgBattery
value: upsmgBatteryFaultBattery
num_oid: .1.3.6.1.4.1.705.1.5.9.
descr: 'Battery Fault'
index: 'upsmgBatteryFaultBattery.{{ $index }}'
state_name: upsmgBatteryFaultBattery
states:
- { descr: Fault, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgBattery
value: upsmgBatteryReplacement
num_oid: .1.3.6.1.4.1.705.1.5.11.
descr: 'Battery Replacement Status'
index: 'upsmgBatteryReplacement.{{ $index }}'
state_name: upsmgBatteryReplacement
states:
- { descr: To be replaced, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgBattery
value: upsmgBatteryLowBattery
num_oid: .1.3.6.1.4.1.705.1.5.14.
descr: 'Battery Charge Status'
index: 'upsmgBatteryLowBattery.{{ $index }}'
state_name: upsmgBatteryLowBattery
states:
- { descr: Low Battery, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgBattery
value: upsmgBatteryChargerFault
num_oid: .1.3.6.1.4.1.705.1.5.15.
descr: 'Battery Charger Status'
index: 'upsmgBatteryChargerFault.{{ $index }}'
state_name: upsmgBatteryChargerFault
states:
- { descr: Fault, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgBattery
value: upsmgBatteryLowCondition
num_oid: .1.3.6.1.4.1.705.1.5.16.
descr: 'Battery Condition'
index: 'upsmgBatteryLowCondition.{{ $index }}'
state_name: upsmgBatteryLowCondition
states:
- { descr: Low Condition, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgInputBadStatus
value: upsmgInputBadStatus
num_oid: .1.3.6.1.4.1.705.1.6.3.
descr: 'Input Status'
index: 'upsmgInputBadStatus.{{ $index }}'
state_name: upsmgInputBadStatus
states:
- { descr: Bad Status, graph: 0, value: 1, generic: 2 }
- { descr: OK, graph: 0, value: 2, generic: 0 }
-
oid: upsmgInputLineFailCause
value: upsmgInputLineFailCause
num_oid: .1.3.6.1.4.1.705.1.6.4.
descr: 'Input Line Fail Cause'
index: 'upsmgInputLineFailCause.{{ $index }}'
state_name: upsmgInputLineFailCause
states:
- { descr: 'No Failure', graph: 0, value: 1, generic: 0 }
- { descr: 'Tolerance Volt. Out', graph: 0, value: 2, generic: 2 }
- { descr: 'Tolerance Freq. Out', graph: 0, value: 3, generic: 2 }
- { descr: 'No Voltage', graph: 0, value: 4, generic: 2 }

View File

@@ -852,6 +852,10 @@ function get_device_divisor($device, $os_version, $sensor_type, $oid)
if ($sensor_type == 'voltage' && !starts_with($oid, '.1.3.6.1.2.1.33.1.2.5.') && !starts_with($oid, '.1.3.6.1.2.1.33.1.3.3.1.3')) { if ($sensor_type == 'voltage' && !starts_with($oid, '.1.3.6.1.2.1.33.1.2.5.') && !starts_with($oid, '.1.3.6.1.2.1.33.1.3.3.1.3')) {
return 1; return 1;
} }
} elseif ($device['os'] == 'eaton-mgeups') {
if ($sensor_type == 'voltage') {
return 10;
}
} }
// UPS-MIB Defaults // UPS-MIB Defaults

View File

@@ -6,6 +6,14 @@ $load_data = snmpwalk_group($device, 'upsOutputPercentLoad', 'UPS-MIB');
foreach ($load_data as $index => $data) { foreach ($load_data as $index => $data) {
$load_oid = ".1.3.6.1.2.1.33.1.4.4.1.5.$index"; $load_oid = ".1.3.6.1.2.1.33.1.4.4.1.5.$index";
if (is_array($data['upsOutputPercentLoad'])) {
$load_oid .= ".0";
$value = $data['upsOutputPercentLoad'][0];
} else {
$value = $data['upsOutputPercentLoad'];
}
$divisor = get_device_divisor($device, $pre_cache['poweralert_serial'], 'load', $load_oid); $divisor = get_device_divisor($device, $pre_cache['poweralert_serial'], 'load', $load_oid);
$descr = 'Percentage load'; $descr = 'Percentage load';
if (count($load_data) > 1) { if (count($load_data) > 1) {
@@ -26,6 +34,6 @@ foreach ($load_data as $index => $data) {
null, null,
null, null,
null, null,
$data['upsOutputPercentLoad'] / $divisor $value / $divisor
); );
} }

View File

@@ -25,6 +25,7 @@ if (is_numeric($battery_volts)) {
); );
} }
$output_volts = snmpwalk_group($device, 'upsOutputVoltage', 'UPS-MIB'); $output_volts = snmpwalk_group($device, 'upsOutputVoltage', 'UPS-MIB');
foreach ($output_volts as $index => $data) { foreach ($output_volts as $index => $data) {
$volt_oid = ".1.3.6.1.2.1.33.1.4.4.1.2.$index"; $volt_oid = ".1.3.6.1.2.1.33.1.4.4.1.2.$index";
@@ -34,6 +35,13 @@ foreach ($output_volts as $index => $data) {
$descr .= " Phase $index"; $descr .= " Phase $index";
} }
$upsOutputVoltage_value = $data['upsOutputVoltage'];
if (is_array($data['upsOutputVoltage'])) {
$upsOutputVoltage_value = $data['upsOutputVoltage'][0];
$volt_oid .= ".0";
}
discover_sensor( discover_sensor(
$valid['sensor'], $valid['sensor'],
'voltage', 'voltage',
@@ -48,7 +56,7 @@ foreach ($output_volts as $index => $data) {
null, null,
null, null,
null, null,
$data['upsOutputVoltage'] / $divisor $upsOutputVoltage_value / $divisor
); );
} }
@@ -60,6 +68,13 @@ foreach ($input_volts as $index => $data) {
if (count($input_volts) > 1) { if (count($input_volts) > 1) {
$descr .= " Phase $index"; $descr .= " Phase $index";
} }
$upsInputVoltage_value = $data['upsInputVoltage'];
if (is_array($data['upsInputVoltage'])) {
$upsInputVoltage_value = $data['upsInputVoltage'][0];
$volt_oid .= ".0";
}
discover_sensor( discover_sensor(
$valid['sensor'], $valid['sensor'],
@@ -75,7 +90,7 @@ foreach ($input_volts as $index => $data) {
null, null,
null, null,
null, null,
$data['upsInputVoltage'] / $divisor $upsInputVoltage_value / $divisor
); );
} }

1641
tests/data/eaton-mgeups.json Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,188 @@
1.3.6.1.2.1.1.1.0|4|MGE Galaxy 7000 UPS 250 kVA
1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.705.1.2
1.3.6.1.2.1.1.3.0|67|396318885
1.3.6.1.2.1.1.4.0|4|<private>
1.3.6.1.2.1.1.5.0|4|<private>
1.3.6.1.2.1.1.6.0|4|<private>
1.3.6.1.2.1.2.2.1.1.1|2|1
1.3.6.1.2.1.2.2.1.1.2|2|2
1.3.6.1.2.1.2.2.1.2.1|4|lo
1.3.6.1.2.1.2.2.1.2.2|4|eth0
1.3.6.1.2.1.2.2.1.3.1|2|1
1.3.6.1.2.1.2.2.1.3.2|2|7
1.3.6.1.2.1.2.2.1.4.1|2|1500
1.3.6.1.2.1.2.2.1.4.2|2|1500
1.3.6.1.2.1.2.2.1.5.1|66|0
1.3.6.1.2.1.2.2.1.5.2|66|100000000
1.3.6.1.2.1.2.2.1.6.1|4x|00
1.3.6.1.2.1.2.2.1.6.2|4x|000623012652
1.3.6.1.2.1.2.2.1.7.1|2|1
1.3.6.1.2.1.2.2.1.7.2|2|1
1.3.6.1.2.1.2.2.1.8.1|2|1
1.3.6.1.2.1.2.2.1.8.2|2|1
1.3.6.1.2.1.2.2.1.9.1|67|0
1.3.6.1.2.1.2.2.1.9.2|67|0
1.3.6.1.2.1.2.2.1.10.1|65|0
1.3.6.1.2.1.2.2.1.10.2|65|3966007591
1.3.6.1.2.1.2.2.1.11.1|65|0
1.3.6.1.2.1.2.2.1.11.2|65|9502177
1.3.6.1.2.1.2.2.1.12.1|65|0
1.3.6.1.2.1.2.2.1.12.2|65|143445950
1.3.6.1.2.1.2.2.1.13.1|65|0
1.3.6.1.2.1.2.2.1.13.2|65|0
1.3.6.1.2.1.2.2.1.14.1|65|0
1.3.6.1.2.1.2.2.1.14.2|65|30435736
1.3.6.1.2.1.2.2.1.15.1|65|0
1.3.6.1.2.1.2.2.1.15.2|65|0
1.3.6.1.2.1.2.2.1.16.1|65|0
1.3.6.1.2.1.2.2.1.16.2|65|1623826717
1.3.6.1.2.1.2.2.1.17.1|65|0
1.3.6.1.2.1.2.2.1.17.2|65|9502344
1.3.6.1.2.1.2.2.1.18.1|65|0
1.3.6.1.2.1.2.2.1.18.2|65|142
1.3.6.1.2.1.2.2.1.19.1|65|0
1.3.6.1.2.1.2.2.1.19.2|65|0
1.3.6.1.2.1.2.2.1.20.1|65|0
1.3.6.1.2.1.2.2.1.20.2|65|0
1.3.6.1.2.1.2.2.1.21.1|66|0
1.3.6.1.2.1.2.2.1.21.2|66|0
1.3.6.1.2.1.2.2.1.22.1|6|0.0
1.3.6.1.2.1.2.2.1.22.2|6|0.0
1.3.6.1.2.1.4.3.0|65|62616589
1.3.6.1.2.1.4.4.0|65|0
1.3.6.1.2.1.4.5.0|65|111350
1.3.6.1.2.1.4.6.0|65|0
1.3.6.1.2.1.4.7.0|65|0
1.3.6.1.2.1.4.8.0|65|0
1.3.6.1.2.1.4.9.0|65|62505237
1.3.6.1.2.1.4.10.0|65|9261343
1.3.6.1.2.1.4.11.0|65|0
1.3.6.1.2.1.4.12.0|65|0
1.3.6.1.2.1.4.14.0|65|0
1.3.6.1.2.1.4.15.0|65|0
1.3.6.1.2.1.4.16.0|65|0
1.3.6.1.2.1.4.17.0|65|0
1.3.6.1.2.1.4.18.0|65|0
1.3.6.1.2.1.4.19.0|65|0
1.3.6.1.2.1.4.20.1.2.10.20.0.201|2|2
1.3.6.1.2.1.4.20.1.2.127.0.0.1|2|1
1.3.6.1.2.1.4.20.1.3.10.20.0.201|64|255.255.255.0
1.3.6.1.2.1.4.20.1.3.127.0.0.1|64|255.0.0.0
1.3.6.1.2.1.5.1.0|65|578561
1.3.6.1.2.1.5.2.0|65|0
1.3.6.1.2.1.5.3.0|65|3
1.3.6.1.2.1.5.4.0|65|0
1.3.6.1.2.1.5.5.0|65|0
1.3.6.1.2.1.5.6.0|65|0
1.3.6.1.2.1.5.7.0|65|0
1.3.6.1.2.1.5.8.0|65|578558
1.3.6.1.2.1.5.9.0|65|0
1.3.6.1.2.1.5.10.0|65|0
1.3.6.1.2.1.5.11.0|65|0
1.3.6.1.2.1.5.12.0|65|0
1.3.6.1.2.1.5.13.0|65|0
1.3.6.1.2.1.5.14.0|65|578558
1.3.6.1.2.1.5.15.0|65|0
1.3.6.1.2.1.5.16.0|65|0
1.3.6.1.2.1.5.17.0|65|0
1.3.6.1.2.1.5.18.0|65|0
1.3.6.1.2.1.5.19.0|65|0
1.3.6.1.2.1.5.20.0|65|0
1.3.6.1.2.1.5.21.0|65|0
1.3.6.1.2.1.5.22.0|65|578558
1.3.6.1.2.1.5.23.0|65|0
1.3.6.1.2.1.5.24.0|65|0
1.3.6.1.2.1.5.25.0|65|0
1.3.6.1.2.1.5.26.0|65|0
1.3.6.1.2.1.6.5.0|65|0
1.3.6.1.2.1.6.6.0|65|78
1.3.6.1.2.1.6.7.0|65|1
1.3.6.1.2.1.6.8.0|65|0
1.3.6.1.2.1.6.9.0|66|0
1.3.6.1.2.1.6.10.0|65|7962
1.3.6.1.2.1.6.11.0|65|8136
1.3.6.1.2.1.6.12.0|65|0
1.3.6.1.2.1.6.14.0|65|0
1.3.6.1.2.1.6.15.0|65|4
1.3.6.1.2.1.7.1.0|65|61814472
1.3.6.1.2.1.7.2.0|65|53139794
1.3.6.1.2.1.7.3.0|65|2
1.3.6.1.2.1.7.4.0|65|8674680
1.3.6.1.2.1.11.1.0|65|8674660
1.3.6.1.2.1.11.2.0|65|8674657
1.3.6.1.2.1.11.3.0|65|0
1.3.6.1.2.1.11.4.0|65|2
1.3.6.1.2.1.11.5.0|65|2
1.3.6.1.2.1.11.6.0|65|0
1.3.6.1.2.1.11.8.0|65|0
1.3.6.1.2.1.11.9.0|65|0
1.3.6.1.2.1.11.10.0|65|0
1.3.6.1.2.1.11.11.0|65|0
1.3.6.1.2.1.11.12.0|65|0
1.3.6.1.2.1.11.13.0|65|48800763
1.3.6.1.2.1.11.14.0|65|0
1.3.6.1.2.1.11.15.0|65|4775292
1.3.6.1.2.1.11.16.0|65|309612
1.3.6.1.2.1.11.17.0|65|0
1.3.6.1.2.1.11.18.0|65|0
1.3.6.1.2.1.11.19.0|65|0
1.3.6.1.2.1.11.20.0|65|0
1.3.6.1.2.1.11.21.0|65|5243264
1.3.6.1.2.1.11.22.0|65|0
1.3.6.1.2.1.11.24.0|65|0
1.3.6.1.2.1.11.25.0|65|0
1.3.6.1.2.1.11.26.0|65|0
1.3.6.1.2.1.11.27.0|65|0
1.3.6.1.2.1.11.28.0|65|8674659
1.3.6.1.2.1.11.29.0|65|6
1.3.6.1.2.1.11.30.0|2|1
1.3.6.1.2.1.11.31.0|65|0
1.3.6.1.2.1.11.32.0|65|0
1.3.6.1.2.1.33.1.3.3.1.3.1.0|66|2353
1.3.6.1.2.1.33.1.4.4.1.2.1.0|66|2306
1.3.6.1.2.1.33.1.4.4.1.5.1.0|66|8
1.3.6.1.4.1.705.1.1.1.0|4|Galaxy 7000
1.3.6.1.4.1.705.1.1.2.0|4|250000
1.3.6.1.4.1.705.1.1.4.0|4|GDET: BQ-7-AR / DIGIT: EJ-7-AR
1.3.6.1.4.1.705.1.1.7.0|4|0123456789
1.3.6.1.4.1.705.1.5.1.0|2|7260
1.3.6.1.4.1.705.1.5.2.0|2|100
1.3.6.1.4.1.705.1.5.5.0|2|6000
1.3.6.1.4.1.705.1.5.6.0|2|0
1.3.6.1.4.1.705.1.5.7.0|2|17
1.3.6.1.4.1.705.1.5.9.0|2|2
1.3.6.1.4.1.705.1.5.11.0|2|2
1.3.6.1.4.1.705.1.5.14.0|2|2
1.3.6.1.4.1.705.1.5.15.0|2|2
1.3.6.1.4.1.705.1.5.16.0|2|2
1.3.6.1.4.1.705.1.6.1.0|2|3
1.3.6.1.4.1.705.1.6.2.1.2.1.0|2|4080
1.3.6.1.4.1.705.1.6.2.1.2.2.0|2|4090
1.3.6.1.4.1.705.1.6.2.1.2.3.0|2|4080
1.3.6.1.4.1.705.1.6.2.1.3.1.0|2|500
1.3.6.1.4.1.705.1.6.2.1.3.2.0|2|500
1.3.6.1.4.1.705.1.6.2.1.3.3.0|2|500
1.3.6.1.4.1.705.1.6.2.1.6.1.0|2|370
1.3.6.1.4.1.705.1.6.2.1.6.2.0|2|350
1.3.6.1.4.1.705.1.6.2.1.6.3.0|2|370
1.3.6.1.4.1.705.1.6.3.0|2|2
1.3.6.1.4.1.705.1.6.4.0|2|1
1.3.6.1.4.1.705.1.7.1.0|2|3
1.3.6.1.4.1.705.1.7.2.1.2.1.0|2|4000
1.3.6.1.4.1.705.1.7.2.1.2.2.0|2|3990
1.3.6.1.4.1.705.1.7.2.1.2.3.0|2|3990
1.3.6.1.4.1.705.1.7.2.1.3.1.0|2|490
1.3.6.1.4.1.705.1.7.2.1.3.2.0|2|490
1.3.6.1.4.1.705.1.7.2.1.3.3.0|2|490
1.3.6.1.4.1.705.1.7.2.1.4.1.0|2|10
1.3.6.1.4.1.705.1.7.2.1.4.2.0|2|7
1.3.6.1.4.1.705.1.7.2.1.4.3.0|2|9
1.3.6.1.4.1.705.1.7.2.1.5.1.0|2|390
1.3.6.1.4.1.705.1.7.2.1.5.2.0|2|260
1.3.6.1.4.1.705.1.7.2.1.5.3.0|2|330
1.3.6.1.4.1.705.1.7.3.0|2|2
1.3.6.1.4.1.705.1.7.4.0|2|2
1.3.6.1.4.1.705.1.7.7.0|2|2
1.3.6.1.4.1.705.1.7.9.0|2|2
1.3.6.1.4.1.705.1.7.10.0|2|2
1.3.6.1.4.1.705.1.7.11.0|2|2