Hi
I added support for the Extreme Networks RFS4000 (previously Motolorola) Wireless Controller on LibreNMS at my client. The client has a HA cluster (2xRFS4000) and 50 Access Point devices.
Extreme Networks Wifi RFS4000 Wireless Controller, Version 5.9.1.4-004R MIB=01a
Operating System Wing Wireless controller
Object ID .1.3.6.1.4.1.388.18
I tested and this works.
I added support for this device in my Librenms system and two sesors “Connected AP” and “Connected Total Client”
Is it possible to send you MIB files, snmpwalks (etc.nessesery files) and in the next version add support for this controller. ?
Step by step instructions (Maybe is’ll help someone).
Step 1. I added new file: LibreNMS/OS/Wing.php
<?php
namespace LibreNMS\OS;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessApCountDiscovery;
use LibreNMS\OS;
class Wing extends OS implements
WirelessClientsDiscovery,
WirelessApCountDiscovery
{
public function discoverWirelessClients()
{
$oid = '.1.3.6.1.4.1.388.50.1.4.1.15.1.0'; //WING-MIB
return array(
new WirelessSensor('clients', $this->getDeviceId(), $oid, 'wing', 1, 'Clients: Total')
);
}
public function discoverWirelessApCount()
{
$oid = '.1.3.6.1.4.1.388.50.1.4.1.9.3.0'; //WING-MIB
return array(
new WirelessSensor('ap-count', $this->getDeviceId(), $oid, 'wing', 1, 'Connected APs')
);
}
}
Step 2 .Next I added /opt/librenms/includes/definitions/wing.yaml
os: wing
type: wireless
text: 'Wing Wireless controller'
icon: extreme
over:
- { graph: device_bits, text: 'Device Traffic' }
- { graph: device_processor, text: 'CPU Usage' }
- { graph: device_mempool, text: 'Memory Usage' }
discovery:
- sysObjectID:
- .1.3.6.1.4.1.388.18
mib_dir:
- wing
Step 3. Next I added new WING MIG to /mibs/wing
Step 4. I have to modify OID in 2 files “Symbol”
LibreNMS/OS/Symbol.php
namespace LibreNMS\OS;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery;
use LibreNMS\OS;
class Symbol extends OS implements WirelessClientsDiscovery
{
/**
* Discover wireless client counts. Type is clients.
* Returns an array of LibreNMS\Device\Sensor objects that have been discovered
*
* @return array Sensors
*/
public function discoverWirelessClients()
{
$device = $this->getDevice();
if (str_i_contains($device['hardware'], 'Wireless')) {
$oid = '.1.3.6.1.4.1.388.11.2.4.2.100.10.1.18.1';
return array(
new WirelessSensor('clients', $device['device_id'], $oid, 'symbol', 1, 'Clients')
);
}
return array();
}
}
Step 5. I modified the file > includes/definitions/symbol.yaml → added “.666”
os: symbol
type: network
text: 'Symbol AP'
icon: symbol
discovery:
- sysObjectID:
- .1.3.6.1.4.1.388.666
Regards
Wieczorr