Ubiquiti Airfiber60 (#13680)

* Add ubiquiti Airfiber 60

* New AF60 data and MIB

* Stylci fix and small additions

* Update test data

* Stylefix

* Remove the weird ubiquity oids containing encoded mac addresses

* Updated test data

* Remove more complex sensors for now to be added after the conflict airos airos-af60 is solved

* Fix hardware and OS

* To be verified is this is the most practical / clean way of doing it

* Advanced wireless and MCS state sensor

* Fix link capacity multiplier and active link

* Test data update fix lint

* Maybe better
This commit is contained in:
Wheel
2022-01-29 21:10:45 -06:00
committed by GitHub
parent b6a8b602b8
commit 2dbfdda717
10 changed files with 2699 additions and 10 deletions
+94
View File
@@ -0,0 +1,94 @@
<?php
namespace LibreNMS\OS;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessDistanceDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessRateDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessRssiDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessSnrDiscovery;
use LibreNMS\OS;
class AirosAf60 extends OS implements
OSDiscovery,
WirelessFrequencyDiscovery,
WirelessDistanceDiscovery,
WirelessRateDiscovery,
WirelessRssiDiscovery,
WirelessSnrDiscovery
{
/**
* Discover wireless frequency. This is in GHz. Type is frequency.
* Returns an array of LibreNMS\Device\Sensor objects that have been discovered
*
* @return array Sensors
*/
public function discoverWirelessFrequency()
{
$oid = '.1.3.6.1.4.1.41112.1.11.1.1.2.1'; // UI-AF60-MIB::af60Frequency.1
return [
new WirelessSensor('frequency', $this->getDeviceId(), $oid, 'airos-af60', 1, 'Radio Frequency'),
];
}
public function discoverWirelessDistance()
{
$sensors = [];
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaRemoteDistance', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
foreach ($oids as $index => $entry) {
$sensors[] = new WirelessSensor('distance', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.15.' . $index, 'airos-af60', 1, 'Distance', $entry['af60StaRemoteDistance'], 1, 1000); //UI-AF60-MIB::af60StaRemoteDistance
}
return $sensors;
}
public function discoverWirelessRate()
{
$sensors = [];
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaTxCapacity', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaRxCapacity', $oids, 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
foreach ($oids as $index => $entry) {
$sensors[] = new WirelessSensor('rate', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.7.' . $index, 'airos-af60-TX', 1, 'Tx Capacity', $entry['af60StaTxCapacity'], 1000); //UI-AF60-MIB::af60StaTxCapacity
$sensors[] = new WirelessSensor('rate', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.8.' . $index, 'airos-af60-RX', 1, 'Rx Capacity', $entry['af60StaRxCapacity'], 1000); //UI-AF60-MIB::af60StaRxCapacity
}
return $sensors;
}
public function discoverWirelessRssi()
{
$sensors = [];
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaRSSI', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaRemoteRSSI', $oids, 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
foreach ($oids as $index => $entry) {
$sensors[] = new WirelessSensor('rssi', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.3.' . $index, 'airos-af60-l', 1, 'Local RSSI', $entry['af60StaRSSI'], 1); //UI-AF60-MIB::af60StaRSSI
$sensors[] = new WirelessSensor('rssi', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.18.' . $index, 'airos-af60-r', 1, 'Remote RSSI', $entry['af60StaRemoteRSSI'], 1); //UI-AF60-MIB::af60StaRemoteRSSI
}
return $sensors;
}
public function discoverWirelessSnr()
{
$sensors = [];
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaSNR', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
$oids = snmpwalk_cache_oid($this->getDeviceArray(), 'af60StaRemoteSNR', $oids, 'UI-AF60-MIB', 'ubnt', '-OteQUsb');
foreach ($oids as $index => $entry) {
$sensors[] = new WirelessSensor('snr', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.4.' . $index, 'airos-af60-l', 1, 'Local SNR', $entry['af60StaSNR'], 1); //UI-AF60-MIB::af60StaSNR
$sensors[] = new WirelessSensor('snr', $this->getDeviceId(), '.1.3.6.1.4.1.41112.1.11.1.3.1.19.' . $index, 'airos-af60-r', 1, 'Remote SNR', $entry['af60StaRemoteSNR'], 1); //UI-AF60-MIB::af60StaRemoteSNR
}
return $sensors;
}
}
+8
View File
@@ -42,6 +42,14 @@ is the preferred method for detection. Other options are available:
matches one of the regex statements under this item
- `snmpget` Do not use this unless none of the other methods
work. Fetch an oid and compare it against a value.
```yaml
discovery:
-
snmpget:
- oid: <someoid>
- op: <["=","!=","==","!==","<=",">=","<",">","starts","ends","contains","regex","not_starts","not_ends","not_contains","not_regex","in_array","not_in_array","exists"]>
- value: <'string' | boolean>
```
- `_except` You can add this to any of the above to exclude that
element. As an example:
+22
View File
@@ -0,0 +1,22 @@
os: airos-af60
text: 'Ubiquiti AirFiber 60'
type: wireless
icon: ubiquiti
snmp_bulk: false
mib_dir: ubnt
over:
- { graph: device_bits, text: 'Device Traffic' }
- { graph: device_wireless_rate, text: 'Wireless Rate' }
- { graph: device_processor, text: 'CPU Usage' }
poller_modules:
wifi: true
discovery:
-
sysObjectID:
- .1.3.6.1.4.1.10002.1
- .1.3.6.1.4.1.41112.1.11.1
sysDescr: Linux
snmpget:
oid: UI-AF60-MIB::af60FirmwareVersion.1
op: '!='
value: false
+4
View File
@@ -14,3 +14,7 @@ discovery:
- .1.3.6.1.4.1.10002.1
- .1.3.6.1.4.1.41112.1.4
sysDescr: Linux
snmpget:
oid: UI-AF60-MIB::af60Role.1
op: '='
value: false
@@ -0,0 +1,57 @@
mib: UI-AF60-MIB
modules:
os:
hardware: UI-AF60-MIB::af60DevModel.1
version: UI-AF60-MIB::af60FirmwareVersion.1
lat: UI-AF60-MIB::af60GpsLat.1
long: UI-AF60-MIB::af60GpsLon.1
processors:
data:
-
oid: af60CpuUsage
num_oid: '.1.3.6.1.4.1.41112.1.11.2.6'
sensors:
state:
data:
-
oid: af60Role
num_oid: '.1.3.6.1.4.1.41112.1.11.1.1.1.{{ $index }}'
index: af60Role
descr: Radio Role
state_name: af60Role
states:
- { value: 0, generic: 0, graph: 0, descr: AP }
- { value: 1, generic: 0, graph: 0, descr: CPE }
-
oid: af60GpsStatus
num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.1.{{ $index }}'
index: af60GpsStatus
descr: GPS Status
state_name: af60GpsStatus
states:
- { value: 0, generic: 1, graph: 0, descr: Absent }
- { value: 1, generic: 1, graph: 0, descr: Off }
- { value: 2, generic: 0, graph: 0, descr: On }
-
oid: af60GpsFix
num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.2.{{ $index }}'
index: af60GpsFix
descr: GPS fix
state_name: af60GpsFix
states:
- { value: 0, generic: 1, graph: 0, descr: Unknown }
- { value: 1, generic: 1, graph: 0, descr: Nofix }
- { value: 2, generic: 0, graph: 0, descr: Fix2d }
- { value: 3, generic: 0, graph: 0, descr: Fix3d }
count:
data:
-
oid: af60GpsSatsVisible
num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.7.{{ $index }}'
index: af60GpsSatsVisible
descr: Sat visible
-
oid: af60GpsSatsTracked
num_oid: '.1.3.6.1.4.1.41112.1.11.1.4.8.{{ $index }}'
index: af60GpsSatsTracked
descr: Sat tracked
@@ -0,0 +1,77 @@
<?php
$oids = snmpwalk_cache_oid($device, 'af60StaTxMCS', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb'); //UBNT-AFLTU-MIB::afLTUStaTxRate
$oids = snmpwalk_cache_oid($device, 'af60StaRxMCS', $oids, 'UI-AF60-MIB', 'ubnt', '-OteQUsb'); //UBNT-AFLTU-MIB::afLTUStaRxRate
foreach ($oids as $index => $entry) {
//Create State Index
$txmcs_state_name = 'af60StaTxMCS';
$rxmcs_state_name = 'af60StaRxMCS';
$rate_states = [
['value' => 1, 'generic' => 2, 'graph' => 1, 'descr' => '1X'],
['value' => 2, 'generic' => 2, 'graph' => 1, 'descr' => '2X'],
['value' => 3, 'generic' => 1, 'graph' => 1, 'descr' => '3X'],
['value' => 4, 'generic' => 1, 'graph' => 1, 'descr' => '4X'],
['value' => 5, 'generic' => 0, 'graph' => 1, 'descr' => '5X'],
['value' => 6, 'generic' => 0, 'graph' => 1, 'descr' => '6X'],
['value' => 7, 'generic' => 0, 'graph' => 1, 'descr' => '7X'],
['value' => 8, 'generic' => 0, 'graph' => 1, 'descr' => '8X'],
['value' => 9, 'generic' => 0, 'graph' => 1, 'descr' => '9X'],
];
create_state_index($txmcs_state_name, $rate_states);
create_state_index($rxmcs_state_name, $rate_states);
//Discover Sensors
discover_sensor($valid['sensor'], 'state', $device, '.1.3.6.1.4.1.41112.1.11.1.3.1.5.' . $index, 1, $txmcs_state_name, 'TX MCS Rate', '1', '1', null, null, null, null, $entry['af60StaTxMCS']);
discover_sensor($valid['sensor'], 'state', $device, '.1.3.6.1.4.1.41112.1.11.1.3.1.6.' . $index, 2, $rxmcs_state_name, 'RX MCS Rate', '1', '1', null, null, null, null, $entry['af60StaRxMCS']);
//Create Sensor To State Index
create_sensor_to_state_index($device, $txmcs_state_name, 1);
create_sensor_to_state_index($device, $rxmcs_state_name, 2);
break;
}
unset(
$oids,
$index,
$entry,
$rate_states,
$txmcs_state_name,
$rxmcs_state_name
);
$oids = snmpwalk_cache_oid($device, 'af60StaActiveLink', [], 'UI-AF60-MIB', 'ubnt', '-OteQUsb'); //UBNT-AFLTU-MIB::afLTUStaTxRate
// This returns either "main" or "backup" as a string
foreach ($oids as $index => $entry) {
// convert string to int main === 1 and backup === 2
$entry['af60StaActiveLink'] = $entry['af60StaActiveLink'] === 'main' ? 1 : 2;
//Create State Index
$activeLink_state_name = 'af60StaActiveLink';
$rate_states = [
['value' => 1, 'generic' => 0, 'graph' => 1, 'descr' => 'Main'],
['value' => 2, 'generic' => 1, 'graph' => 1, 'descr' => 'Backup'],
];
create_state_index($activeLink_state_name, $rate_states);
//Discover Sensors
discover_sensor($valid['sensor'], 'state', $device, '.1.3.6.1.4.1.41112.1.11.1.3.1.2.' . $index, 1, $activeLink_state_name, 'Active link', '1', '1', null, null, null, null, $entry['af60StaActiveLink']);
//Create Sensor To State Index
create_sensor_to_state_index($device, $activeLink_state_name, 1);
break;
}
unset(
$oids,
$index,
$entry,
$rate_states,
$activeLink_state_name
);
+12 -10
View File
@@ -5,22 +5,22 @@ UBNT-MIB DEFINITIONS ::= BEGIN
OBJECT-GROUP, MODULE-COMPLIANCE FROM SNMPv2-CONF;
ubntMIB MODULE-IDENTITY
LAST-UPDATED "201402270000Z"
ORGANIZATION "Ubiquiti Networks, Inc."
CONTACT-INFO "support@ubnt.com"
DESCRIPTION "The MIB module for Ubiquiti Networks, Inc. entities"
REVISION "201402270000Z"
LAST-UPDATED "202109210000Z"
ORGANIZATION "Ubiquiti, Inc."
CONTACT-INFO "support@ui.com"
DESCRIPTION "The MIB module for Ubiquiti, Inc. entities"
REVISION "202109210000Z"
DESCRIPTION "Split revision"
::= { ubnt 1 }
-- --------------------------------------------------------------------------------
-- Ubiquiti Networks Root
-- Ubiquiti Root
-- --------------------------------------------------------------------------------
ubnt OBJECT IDENTIFIER ::= { enterprises 41112 }
-- --------------------------------------------------------------------------------
-- Ubiquiti Networks SNMP Information
-- Ubiquiti SNMP Information
-- --------------------------------------------------------------------------------
ubntSnmpInfo OBJECT IDENTIFIER ::= { ubntMIB 2 }
@@ -33,11 +33,12 @@ UBNT-MIB DEFINITIONS ::= BEGIN
ubntMFiGroups OBJECT IDENTIFIER ::= { ubntSnmpInfo 7}
ubntUniTelGroups OBJECT IDENTIFIER ::= { ubntSnmpInfo 8}
ubntAFLTUGroups OBJECT IDENTIFIER ::= { ubntSnmpInfo 9}
uiAF60Groups OBJECT IDENTIFIER ::= { ubntSnmpInfo 10}
-- --------------------------------------------------------------------------------
-- Ubiquiti Networks Products
-- Ubiquiti Products
-- --------------------------------------------------------------------------------
ubntAirFIBER OBJECT IDENTIFIER ::= { ubntMIB 3 }
ubntEdgeMax OBJECT IDENTIFIER ::= { ubntMIB 5 }
ubntUniFi OBJECT IDENTIFIER ::= { ubntMIB 6 }
@@ -45,9 +46,10 @@ UBNT-MIB DEFINITIONS ::= BEGIN
ubntMFi OBJECT IDENTIFIER ::= { ubntMIB 8 }
ubntUniTel OBJECT IDENTIFIER ::= { ubntMIB 9 }
ubntAFLTU OBJECT IDENTIFIER ::= { ubntMIB 10 }
uiAF60 OBJECT IDENTIFIER ::= { ubntMIB 11 }
-- --------------------------------------------------------------------------------
-- Ubiquiti Networks OR table
-- Ubiquiti OR table
-- --------------------------------------------------------------------------------
ubntORTable OBJECT-TYPE
+424
View File
@@ -0,0 +1,424 @@
UI-AF60-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE, Integer32, Counter64, IpAddress
FROM SNMPv2-SMI
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
DisplayString
FROM SNMPv2-TC
uiAF60, uiAF60Groups
FROM UBNT-MIB;
af60MIB MODULE-IDENTITY
LAST-UPDATED "202110050000Z"
ORGANIZATION "Ubiquiti, Inc."
CONTACT-INFO "[email protected]"
DESCRIPTION "The AF60 MIB module for Ubiquiti, Inc. entities"
REVISION "202110050000Z"
DESCRIPTION "AF60.v1.0 revision"
::= { uiAF60 1 }
af60Compliances OBJECT IDENTIFIER ::= {uiAF60Groups 1}
af60Groups OBJECT IDENTIFIER ::= {uiAF60Groups 2}
af60Config OBJECT IDENTIFIER ::= {af60MIB 1}
af60Status OBJECT IDENTIFIER ::= {af60MIB 2}
af60StationTable OBJECT IDENTIFIER ::= {af60MIB 3}
af60Gps OBJECT IDENTIFIER ::= {af60MIB 4}
af60Orientation OBJECT IDENTIFIER ::= {af60MIB 5}
-- --------------------------------------------------------------------------------
-- Configuration table
-- --------------------------------------------------------------------------------
af60Role OBJECT-TYPE
SYNTAX INTEGER {
ap (0),
cpe (1)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Wireless Role (ap/cpe)"
::= { af60Config 1 }
af60Frequency OBJECT-TYPE
SYNTAX Integer32
UNITS "MHz"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The main frequency to use in MHz."
::= { af60Config 2 }
af60Bandwidth OBJECT-TYPE
SYNTAX Integer32
UNITS "MHz"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Wireless channel bandwidth in MHz."
::= { af60Config 3 }
af60Ssid OBJECT-TYPE
SYNTAX DisplayString (SIZE (1..15))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Radio SSID"
::= { af60Config 4 }
af60LastIp OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION "IP address of a device"
::= { af60Config 5 }
-- --------------------------------------------------------------------------------
-- Status table
-- --------------------------------------------------------------------------------
af60Mac OBJECT-TYPE
SYNTAX Hex-STRING
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The MAC address of this device"
::= { af60Status 1 }
af60DevModel OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The device model."
::= { af60Status 2 }
af60DevName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The device name."
::= { af60Status 3 }
af60FirmwareVersion OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The firmware version running."
::= { af60Status 4 }
af60MemoryUsage OBJECT-TYPE
SYNTAX Integer32
UNITS "%"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The percentage of total memory usage."
::= { af60Status 5 }
af60CpuUsage OBJECT-TYPE
SYNTAX Integer32
UNITS "%"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The percentage of total CPU usage."
::= { af60Status 6 }
af60Uptime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION "The uptime of the device"
::= { af60Status 7 }
af60CarrierDrop OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "State of Carrier Drop"
::= { af60Status 8 }
-- --------------------------------------------------------------------------------
-- Station table
-- --------------------------------------------------------------------------------
af60StationTable OBJECT-TYPE
SYNTAX SEQUENCE OF Af60StationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "Remote station table for status and statistics."
::= { af60MIB 3 }
af60StationEntry OBJECT-TYPE
SYNTAX Af60StationEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION "An entry in the af60StationTable"
INDEX { af60StaMac }
::= { af60StationTable 1 }
Af60StationEntry ::= SEQUENCE {
af60StaMac OCTET STRING (SIZE (6)),
af60StaActiveLink DisplayString,
af60StaRSSI Integer32,
af60StaSNR Integer32,
af60StaTxMCS Integer32,
af60StaRxMCS Integer32,
af60StaTxCapacity Integer32,
af60StaRxCapacity Integer32,
af60StaTxBytes Counter64,
af60StaRxBytes Counter64,
af60StaTxThroughput Integer32,
af60StaRxThroughput Integer32,
af60StaRemoteDevModel DisplayString,
af60StaRemoteDevName DisplayString,
af60StaRemoteDistance Integer32,
af60StaRemoteDistanceFeet Integer32,
af60StaRemoteConnectionTime TimeTicks,
af60StaRemoteRSSI Integer32,
af60StaRemoteSNR Integer32,
af60StaRemoteLastIp IpAddress
}
af60StaMac OBJECT-TYPE
SYNTAX OCTET STRING (SIZE (6))
MAX-ACCESS read-only
STATUS current
DESCRIPTION "MAC address of remote endpoint"
::= { af60StationEntry 1 }
af60StaActiveLink OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Link type used at the moment (main or backup)"
::= { af60StationEntry 2 }
af60StaRSSI OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Local RSSI"
::= { af60StationEntry 3 }
af60StaSNR OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Signal-to-noise ratio"
::= { af60StationEntry 4 }
af60StaTxMCS OBJECT-TYPE
SYNTAX Integer32
UNITS "X"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Currently selected TX modulation and coding scheme"
::= { af60StationEntry 5 }
af60StaRxMCS OBJECT-TYPE
SYNTAX Integer32
UNITS "X"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Currently selected RX modulation and coding scheme"
::= { af60StationEntry 6 }
af60StaTxCapacity OBJECT-TYPE
SYNTAX Integer32
UNITS "Kbps"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Transmit Capacity"
::= { af60StationEntry 7 }
af60StaRxCapacity OBJECT-TYPE
SYNTAX Integer32
UNITS "Kbps"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Receive Capacity"
::= { af60StationEntry 8 }
af60StaTxBytes OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Bytes transmitted to remote endpoint"
::= { af60StationEntry 9 }
af60StaRxBytes OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Bytes received from remote endpoint"
::= { af60StationEntry 10 }
af60StaTxThroughput OBJECT-TYPE
SYNTAX Integer32
UNITS "Kbps"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current throughput to remote endpoint"
::= { af60StationEntry 11 }
af60StaRxThroughput OBJECT-TYPE
SYNTAX Integer32
UNITS "Kbps"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Current throughput from remote endpoint"
::= { af60StationEntry 12 }
af60StaRemoteDevModel OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Device model of the remote endpoint"
::= { af60StationEntry 13 }
af60StaRemoteDevName OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Device name of the remote endpoint"
::= { af60StationEntry 14 }
af60StaRemoteDistance OBJECT-TYPE
SYNTAX Integer32
UNITS "m"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint distance in meters"
::= { af60StationEntry 15 }
af60StaRemoteDistanceFeet OBJECT-TYPE
SYNTAX Integer32
UNITS "ft"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint distance in feet"
::= { af60StationEntry 16 }
af60StaRemoteConnectionTime OBJECT-TYPE
SYNTAX TimeTicks
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint connection time of current session"
::= { af60StationEntry 17 }
af60StaRemoteRSSI OBJECT-TYPE
SYNTAX Integer32
UNITS "dBm"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint RSSI"
::= { af60StationEntry 18 }
af60StaRemoteSNR OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint signal-to-noise ratio"
::= { af60StationEntry 19 }
af60StaRemoteLastIp OBJECT-TYPE
SYNTAX IpAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Remote endpoint last known IP address"
::= { af60StationEntry 20 }
-- --------------------------------------------------------------------------------
-- GPS table
-- --------------------------------------------------------------------------------
af60GpsStatus OBJECT-TYPE
SYNTAX INTEGER {
absent(0),
off(1),
on(2)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS status"
::= { af60Gps 1 }
af60GpsFix OBJECT-TYPE
SYNTAX INTEGER {
unknown(0),
nofix(1),
fix2d(2),
fix3d(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS fix status"
::= { af60Gps 2 }
af60GpsLat OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS Latitude"
::= { af60Gps 3 }
af60GpsLon OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS Longitude"
::= { af60Gps 4 }
af60GpsAltM OBJECT-TYPE
SYNTAX DisplayString
UNITS "m"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS Atlitude in meters"
::= { af60Gps 5 }
af60GpsAltFt OBJECT-TYPE
SYNTAX DisplayString
UNITS "ft"
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS Atlitude in feet"
::= { af60Gps 6 }
af60GpsSatsVisible OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS visible statellites"
::= { af60Gps 7 }
af60GpsSatsTracked OBJECT-TYPE
SYNTAX Integer32
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS tracked satellites"
::= { af60Gps 8 }
af60GpsHDOP OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "GPS Horizontal Dilution of Precision"
::= { af60Gps 9 }
-- --------------------------------------------------------------------------------
-- Orientation table
-- --------------------------------------------------------------------------------
af60OrientationTilt OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Tilt of orientation"
::= { af60Orientation 1 }
af60OrientationRoll OBJECT-TYPE
SYNTAX DisplayString
MAX-ACCESS read-only
STATUS current
DESCRIPTION "Roll of orientation"
::= { af60Orientation 2 }
END
File diff suppressed because it is too large Load Diff
+136
View File
@@ -0,0 +1,136 @@
1.3.6.1.2.1.1.1.0|4|Linux 4.9.241 #2 SMP Thu Dec 30 12:43:55 EET 2021 armv7l
1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.10002.1
1.3.6.1.2.1.1.4.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.1.3|2|3
1.3.6.1.2.1.2.2.1.1.4|2|4
1.3.6.1.2.1.2.2.1.1.5|2|5
1.3.6.1.2.1.2.2.1.2.1|4|wlan0
1.3.6.1.2.1.2.2.1.2.2|4|br0
1.3.6.1.2.1.2.2.1.2.3|4|lo
1.3.6.1.2.1.2.2.1.2.4|4|eth0
1.3.6.1.2.1.2.2.1.2.5|4|ubond0
1.3.6.1.2.1.2.2.1.3.1|2|6
1.3.6.1.2.1.2.2.1.3.2|2|6
1.3.6.1.2.1.2.2.1.3.3|2|24
1.3.6.1.2.1.2.2.1.3.4|2|6
1.3.6.1.2.1.2.2.1.3.5|2|6
1.3.6.1.2.1.2.2.1.4.1|2|1600
1.3.6.1.2.1.2.2.1.4.2|2|1600
1.3.6.1.2.1.2.2.1.4.3|2|65536
1.3.6.1.2.1.2.2.1.4.4|2|1600
1.3.6.1.2.1.2.2.1.4.5|2|1600
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|0
1.3.6.1.2.1.2.2.1.5.3|66|0
1.3.6.1.2.1.2.2.1.5.4|66|1000000000
1.3.6.1.2.1.2.2.1.5.5|66|0
1.3.6.1.2.1.2.2.1.6.1|4x|F492BFE29EE0
1.3.6.1.2.1.2.2.1.6.2|4x|F492BFE29EE0
1.3.6.1.2.1.2.2.1.6.3|4|
1.3.6.1.2.1.2.2.1.6.4|4x|F492BFE39EE0
1.3.6.1.2.1.2.2.1.6.5|4x|F492BFE29EE0
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.7.3|2|1
1.3.6.1.2.1.2.2.1.7.4|2|1
1.3.6.1.2.1.2.2.1.7.5|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.8.3|2|1
1.3.6.1.2.1.2.2.1.8.4|2|1
1.3.6.1.2.1.2.2.1.8.5|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.9.3|67|0
1.3.6.1.2.1.2.2.1.9.4|67|0
1.3.6.1.2.1.2.2.1.9.5|67|0
1.3.6.1.2.1.2.2.1.10.1|65|68636836
1.3.6.1.2.1.2.2.1.10.2|65|410220655
1.3.6.1.2.1.2.2.1.10.3|65|1161035
1.3.6.1.2.1.2.2.1.10.4|65|1148570841
1.3.6.1.2.1.2.2.1.10.5|65|68636836
1.3.6.1.2.1.2.2.1.11.1|65|392146079
1.3.6.1.2.1.2.2.1.11.2|65|1733741
1.3.6.1.2.1.2.2.1.11.3|65|5724
1.3.6.1.2.1.2.2.1.11.4|65|793296923
1.3.6.1.2.1.2.2.1.11.5|65|392146079
1.3.6.1.2.1.2.2.1.12.1|65|214346
1.3.6.1.2.1.2.2.1.12.2|65|0
1.3.6.1.2.1.2.2.1.12.3|65|0
1.3.6.1.2.1.2.2.1.12.4|65|0
1.3.6.1.2.1.2.2.1.12.5|65|214346
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.13.3|65|0
1.3.6.1.2.1.2.2.1.13.4|65|0
1.3.6.1.2.1.2.2.1.13.5|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|0
1.3.6.1.2.1.2.2.1.14.3|65|0
1.3.6.1.2.1.2.2.1.14.4|65|0
1.3.6.1.2.1.2.2.1.14.5|65|0
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.15.3|65|0
1.3.6.1.2.1.2.2.1.15.4|65|0
1.3.6.1.2.1.2.2.1.15.5|65|0
1.3.6.1.2.1.2.2.1.16.1|65|996715929
1.3.6.1.2.1.2.2.1.16.2|65|251315320
1.3.6.1.2.1.2.2.1.16.3|65|1161035
1.3.6.1.2.1.2.2.1.16.4|65|320308032
1.3.6.1.2.1.2.2.1.16.5|65|996715929
1.3.6.1.2.1.2.2.1.17.1|65|792195013
1.3.6.1.2.1.2.2.1.17.2|65|934655
1.3.6.1.2.1.2.2.1.17.3|65|5724
1.3.6.1.2.1.2.2.1.17.4|65|393305172
1.3.6.1.2.1.2.2.1.17.5|65|792195013
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|0
1.3.6.1.2.1.2.2.1.18.3|65|0
1.3.6.1.2.1.2.2.1.18.4|65|0
1.3.6.1.2.1.2.2.1.18.5|65|0
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.19.3|65|0
1.3.6.1.2.1.2.2.1.19.4|65|0
1.3.6.1.2.1.2.2.1.19.5|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.20.3|65|0
1.3.6.1.2.1.2.2.1.20.4|65|0
1.3.6.1.2.1.2.2.1.20.5|65|0
1.3.6.1.2.1.2.2.1.21.1|66|1000
1.3.6.1.2.1.2.2.1.21.2|66|1000
1.3.6.1.2.1.2.2.1.21.3|66|1
1.3.6.1.2.1.2.2.1.21.4|66|1000
1.3.6.1.2.1.2.2.1.21.5|66|1000
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.2.2.1.22.3|6|0.0
1.3.6.1.2.1.2.2.1.22.4|6|0.0
1.3.6.1.2.1.2.2.1.22.5|6|0.0
1.3.6.1.4.1.41112.1.1.1.1.1|2|1
1.3.6.1.4.1.41112.1.11.1.1.1.1|2|0
1.3.6.1.4.1.41112.1.11.1.1.2.1|2|69120
1.3.6.1.4.1.41112.1.11.1.2.2.1|4|AF60-LR
1.3.6.1.4.1.41112.1.11.1.2.4.1|4|GP.ipq806x.v2.6.0-RC.46590.211230.1238
1.3.6.1.4.1.41112.1.11.1.2.6.1|2|3
1.3.6.1.4.1.41112.1.11.1.3.1.2.244.146.191.226.158.141.1|4|main
1.3.6.1.4.1.41112.1.11.1.3.1.3.244.146.191.226.158.141.1|2|-55
1.3.6.1.4.1.41112.1.11.1.3.1.4.244.146.191.226.158.141.1|2|19
1.3.6.1.4.1.41112.1.11.1.3.1.5.244.146.191.226.158.141.1|2|9
1.3.6.1.4.1.41112.1.11.1.3.1.6.244.146.191.226.158.141.1|2|9
1.3.6.1.4.1.41112.1.11.1.3.1.7.244.146.191.226.158.141.1|2|1951000
1.3.6.1.4.1.41112.1.11.1.3.1.8.244.146.191.226.158.141.1|2|1951000
1.3.6.1.4.1.41112.1.11.1.3.1.15.244.146.191.226.158.141.1|2|4076
1.3.6.1.4.1.41112.1.11.1.3.1.18.244.146.191.226.158.141.1|2|-56
1.3.6.1.4.1.41112.1.11.1.3.1.19.244.146.191.226.158.141.1|2|19
1.3.6.1.4.1.41112.1.11.1.4.1.1|2|2
1.3.6.1.4.1.41112.1.11.1.4.2.1|2|3
1.3.6.1.4.1.41112.1.11.1.4.3.1|4|55.935896
1.3.6.1.4.1.41112.1.11.1.4.4.1|4|-55.624861
1.3.6.1.4.1.41112.1.11.1.4.7.1|2|12
1.3.6.1.4.1.41112.1.11.1.4.8.1|2|9