diff --git a/LibreNMS/Alert/AlertUtil.php b/LibreNMS/Alert/AlertUtil.php index 1fa4d1b12af6..ed65e9bcc601 100644 --- a/LibreNMS/Alert/AlertUtil.php +++ b/LibreNMS/Alert/AlertUtil.php @@ -28,8 +28,8 @@ use App\Models\Device; use App\Models\User; use DeviceCache; +use Illuminate\Database\Eloquent\Builder; use Illuminate\Support\Arr; -use Illuminate\Support\Facades\DB; use LibreNMS\Config; use PHPMailer\PHPMailer\PHPMailer; @@ -168,28 +168,16 @@ public static function findContactsSysContact(array $results): array public static function findContactsOwners(array $results): array { - return User::whereNot('email', '')->whereIn('user_id', function (\Illuminate\Database\Query\Builder $query) use ($results) { - $tables = [ - 'bill_id' => 'bill_perms', - 'port_id' => 'ports_perms', - 'device_id' => 'devices_perms', - ]; - - $first = true; - foreach ($tables as $column => $table) { - $ids = array_filter(Arr::pluck($results, $column)); // find IDs for this type - - if (! empty($ids)) { - if ($first) { - $query->select('user_id')->from($table)->whereIn($column, $ids); - $first = false; - } else { - $query->union(DB::table($table)->select('user_id')->whereIn($column, $ids)); - } - } + return User::whereNot('email', '')->where(function (Builder $query) use ($results) { + if ($device_ids = array_filter(Arr::pluck($results, 'device_id'))) { + $query->orWhereHas('devicesOwned', fn ($q) => $q->whereIn('devices_perms.device_id', $device_ids)); + } + if ($port_ids = array_filter(Arr::pluck($results, 'port_id'))) { + $query->orWhereHas('portsOwned', fn ($q) => $q->whereIn('ports_perms.port_id', $port_ids)); + } + if ($bill_ids = array_filter(Arr::pluck($results, 'bill_id'))) { + $query->orWhereHas('bills', fn ($q) => $q->whereIn('bill_perms.bill_id', $bill_ids)); } - - return $query; })->pluck('realname', 'email')->all(); } diff --git a/LibreNMS/Alert/Transport/Linemessagingapi.php b/LibreNMS/Alert/Transport/Linemessagingapi.php index bbb1924d25f5..e1309afce14e 100644 --- a/LibreNMS/Alert/Transport/Linemessagingapi.php +++ b/LibreNMS/Alert/Transport/Linemessagingapi.php @@ -10,11 +10,10 @@ namespace LibreNMS\Alert\Transport; use LibreNMS\Alert\Transport; -use LibreNMS\Config; use LibreNMS\Exceptions\AlertTransportDeliveryException; use LibreNMS\Util\Http; -class LineMessagingAPI extends Transport +class Linemessagingapi extends Transport { protected string $name = 'LINE Messaging API'; diff --git a/LibreNMS/Data/Store/Datastore.php b/LibreNMS/Data/Store/Datastore.php index 0c79bd56470b..de96a75ca2a7 100644 --- a/LibreNMS/Data/Store/Datastore.php +++ b/LibreNMS/Data/Store/Datastore.php @@ -27,9 +27,10 @@ use Illuminate\Support\Collection; use LibreNMS\Config; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Data\Datastore as DatastoreContract; -class Datastore +class Datastore implements DataStorageInterface { protected $stores; diff --git a/LibreNMS/Device/Availability.php b/LibreNMS/Device/Availability.php index 018bc09809c2..bd8e0eb00d69 100644 --- a/LibreNMS/Device/Availability.php +++ b/LibreNMS/Device/Availability.php @@ -25,7 +25,9 @@ namespace LibreNMS\Device; +use App\Models\Device; use App\Models\DeviceOutage; +use Illuminate\Support\Collection; use LibreNMS\Util\Number; class Availability @@ -37,28 +39,28 @@ class Availability * 1 year 365 * 24 * 60 * 60 = 31536000 */ - public static function day($device, $precision = 3) + public static function day(Device $device, int $precision = 3): float { $duration = 86400; return self::availability($device, $duration, $precision); } - public static function week($device, $precision = 3) + public static function week(Device $device, int $precision = 3): float { $duration = 604800; return self::availability($device, $duration, $precision); } - public static function month($device, $precision = 3) + public static function month(Device $device, int $precision = 3): float { $duration = 2592000; return self::availability($device, $duration, $precision); } - public static function year($device, $precision = 3) + public static function year(Device $device, int $precision = 3): float { $duration = 31536000; @@ -68,17 +70,13 @@ public static function year($device, $precision = 3) /** * addition of all recorded outages in seconds * - * @param object $found_outages filtered database object with all recorded outages + * @param Collection $found_outages filtered database object with all recorded outages * @param int $duration time period to calculate for * @param int $now timestamp for 'now' * @return int sum of all matching outages in seconds */ - protected static function outageSummary($found_outages, $duration, $now = null) + protected static function outageSummary(Collection $found_outages, int $duration, int $now): int { - if (! is_numeric($now)) { - $now = time(); - } - // sum up time period of all outages $outage_sum = 0; foreach ($found_outages as $outage) { @@ -103,26 +101,26 @@ protected static function outageSummary($found_outages, $duration, $now = null) * means, starting with 100% as default * substracts recorded outages * - * @param array $device device to be looked at + * @param Device $device device to be looked at * @param int $duration time period to calculate for * @param int $precision float precision for calculated availability * @return float calculated availability */ - public static function availability($device, $duration, $precision = 3, $now = null) + public static function availability(Device $device, int $duration, int $precision = 3): float { - if (! is_numeric($now)) { - $now = time(); - } + $now = time(); - $query = DeviceOutage::where('device_id', '=', $device['device_id']) - ->where('up_again', '>=', $now - $duration) - ->orderBy('going_down'); + $found_outages = $device->outages()->where('up_again', '>=', $now - $duration) + ->orderBy('going_down')->get(); - $found_outages = $query->get(); + // no recorded outages found, so use current status + if ($found_outages->isEmpty()) { + return 100 * $device->status; + } - // no recorded outages found, so use current uptime - if (! count($found_outages)) { - return 100 * 1; + // don't calculate for time when the device didn't exist + if ($device->inserted) { + $duration = min($duration, $device->inserted->diffInSeconds()); } $outage_summary = self::outageSummary($found_outages, $duration, $now); diff --git a/LibreNMS/Device/Sensor.php b/LibreNMS/Device/Sensor.php index 1a7fc062be20..acefc0e40a86 100644 --- a/LibreNMS/Device/Sensor.php +++ b/LibreNMS/Device/Sensor.php @@ -30,6 +30,7 @@ use LibreNMS\Interfaces\Polling\PollerModule; use LibreNMS\OS; use LibreNMS\RRD\RrdDefinition; +use LibreNMS\Util\StringHelpers; class Sensor implements DiscoveryModule, PollerModule { @@ -510,22 +511,22 @@ private function getUniqueId() protected static function getDiscoveryInterface($type) { - return str_to_class($type, 'LibreNMS\\Interfaces\\Discovery\\Sensors\\') . 'Discovery'; + return StringHelpers::toClass($type, 'LibreNMS\\Interfaces\\Discovery\\Sensors\\') . 'Discovery'; } protected static function getDiscoveryMethod($type) { - return 'discover' . str_to_class($type); + return 'discover' . StringHelpers::toClass($type, null); } protected static function getPollingInterface($type) { - return str_to_class($type, 'LibreNMS\\Interfaces\\Polling\\Sensors\\') . 'Polling'; + return StringHelpers::toClass($type, 'LibreNMS\\Interfaces\\Polling\\Sensors\\') . 'Polling'; } protected static function getPollingMethod($type) { - return 'poll' . str_to_class($type); + return 'poll' . StringHelpers::toClass($type, null); } /** diff --git a/LibreNMS/Device/WirelessSensor.php b/LibreNMS/Device/WirelessSensor.php index 6471bc0c01d6..8a085507cca9 100644 --- a/LibreNMS/Device/WirelessSensor.php +++ b/LibreNMS/Device/WirelessSensor.php @@ -27,6 +27,7 @@ use LibreNMS\Config; use LibreNMS\OS; +use LibreNMS\Util\StringHelpers; class WirelessSensor extends Sensor { @@ -229,22 +230,22 @@ public static function getTypes($valid = false, $device_id = null) protected static function getDiscoveryInterface($type) { - return str_to_class($type, 'LibreNMS\\Interfaces\\Discovery\\Sensors\\Wireless') . 'Discovery'; + return StringHelpers::toClass($type, 'LibreNMS\\Interfaces\\Discovery\\Sensors\\Wireless') . 'Discovery'; } protected static function getDiscoveryMethod($type) { - return 'discoverWireless' . str_to_class($type); + return 'discoverWireless' . StringHelpers::toClass($type, null); } protected static function getPollingInterface($type) { - return str_to_class($type, 'LibreNMS\\Interfaces\\Polling\\Sensors\\Wireless') . 'Polling'; + return StringHelpers::toClass($type, 'LibreNMS\\Interfaces\\Polling\\Sensors\\Wireless') . 'Polling'; } protected static function getPollingMethod($type) { - return 'pollWireless' . str_to_class($type); + return 'pollWireless' . StringHelpers::toClass($type, null); } /** diff --git a/LibreNMS/IRCBot.php b/LibreNMS/IRCBot.php index 555299a83ad6..890ea5ebbe3c 100644 --- a/LibreNMS/IRCBot.php +++ b/LibreNMS/IRCBot.php @@ -27,6 +27,7 @@ use App\Models\User; use LibreNMS\DB\Eloquent; use LibreNMS\Enum\AlertState; +use LibreNMS\Util\Mail; use LibreNMS\Util\Number; use LibreNMS\Util\Time; use LibreNMS\Util\Version; @@ -706,7 +707,7 @@ private function _auth($params) $this->log("Auth for '" . $params[0] . "', ID: '" . $user->user_id . "', Token: '" . $token . "', Mail: '" . $user->email . "'"); } - if (send_mail($user->email, 'LibreNMS IRC-Bot Authtoken', "Your Authtoken for the IRC-Bot:\r\n\r\n" . $token . "\r\n\r\n") === true) { + if (Mail::send($user->email, 'LibreNMS IRC-Bot Authtoken', "Your Authtoken for the IRC-Bot:\r\n\r\n" . $token . "\r\n\r\n", false) === true) { return $this->respond('Token sent!'); } else { return $this->respond('Sorry, seems like mail doesnt like us.'); diff --git a/LibreNMS/Interfaces/Data/DataStorageInterface.php b/LibreNMS/Interfaces/Data/DataStorageInterface.php new file mode 100644 index 000000000000..23183dac9457 --- /dev/null +++ b/LibreNMS/Interfaces/Data/DataStorageInterface.php @@ -0,0 +1,46 @@ +. + * + * @link https://www.librenms.org + * + * @copyright 2023 Tony Murray + * @author Tony Murray + */ + +namespace LibreNMS\Interfaces\Data; + +interface DataStorageInterface +{ + /** + * Datastore-independent function which should be used for all polled metrics. + * + * RRD Tags: + * rrd_def RrdDefinition + * rrd_name array|string: the rrd filename, will be processed with rrd_name() + * rrd_oldname array|string: old rrd filename to rename, will be processed with rrd_name() + * rrd_step int: rrd step, defaults to 300 + * + * @param array $device + * @param string $measurement Name of this measurement + * @param array $tags tags for the data (or to control rrdtool) + * @param array|mixed $fields The data to update in an associative array, the order must be consistent with rrd_def, + * single values are allowed and will be paired with $measurement + */ + public function put($device, $measurement, $tags, $fields); +} diff --git a/LibreNMS/Interfaces/Data/Datastore.php b/LibreNMS/Interfaces/Data/Datastore.php index 0078480df119..5c3bc3d1cbd0 100644 --- a/LibreNMS/Interfaces/Data/Datastore.php +++ b/LibreNMS/Interfaces/Data/Datastore.php @@ -25,7 +25,7 @@ namespace LibreNMS\Interfaces\Data; -interface Datastore +interface Datastore extends DataStorageInterface { /** * Check if this is enabled by the configuration @@ -54,21 +54,4 @@ public function getName(); * @return array */ public function getStats(); - - /** - * Datastore-independent function which should be used for all polled metrics. - * - * RRD Tags: - * rrd_def RrdDefinition - * rrd_name array|string: the rrd filename, will be processed with rrd_name() - * rrd_oldname array|string: old rrd filename to rename, will be processed with rrd_name() - * rrd_step int: rrd step, defaults to 300 - * - * @param array $device - * @param string $measurement Name of this measurement - * @param array $tags tags for the data (or to control rrdtool) - * @param array|mixed $fields The data to update in an associative array, the order must be consistent with rrd_def, - * single values are allowed and will be paired with $measurement - */ - public function put($device, $measurement, $tags, $fields); } diff --git a/LibreNMS/Interfaces/Module.php b/LibreNMS/Interfaces/Module.php index a15539856e20..3a493a73c288 100644 --- a/LibreNMS/Interfaces/Module.php +++ b/LibreNMS/Interfaces/Module.php @@ -26,7 +26,9 @@ namespace LibreNMS\Interfaces; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; interface Module { @@ -35,6 +37,16 @@ interface Module */ public function dependencies(): array; + /** + * Should this module be run? + */ + public function shouldDiscover(OS $os, ModuleStatus $status): bool; + + /** + * Should polling run for this device? + */ + public function shouldPoll(OS $os, ModuleStatus $status): bool; + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -49,8 +61,9 @@ public function discover(OS $os): void; * Run frequently (default every 5 minutes) * * @param \LibreNMS\OS $os + * @param \LibreNMS\Interfaces\Data\DataStorageInterface $datastore */ - public function poll(OS $os): void; + public function poll(OS $os, DataStorageInterface $datastore): void; /** * Remove all DB data for this module. diff --git a/LibreNMS/Interfaces/Polling/OSPolling.php b/LibreNMS/Interfaces/Polling/OSPolling.php index 49d758b48498..61c79724221b 100644 --- a/LibreNMS/Interfaces/Polling/OSPolling.php +++ b/LibreNMS/Interfaces/Polling/OSPolling.php @@ -25,11 +25,13 @@ namespace LibreNMS\Interfaces\Polling; +use LibreNMS\Interfaces\Data\DataStorageInterface; + interface OSPolling { /** * Poll additional OS data. * Data must be manually saved within this method. */ - public function pollOS(): void; + public function pollOS(DataStorageInterface $datastore): void; } diff --git a/LibreNMS/Modules/Availability.php b/LibreNMS/Modules/Availability.php new file mode 100644 index 000000000000..11e43467508e --- /dev/null +++ b/LibreNMS/Modules/Availability.php @@ -0,0 +1,121 @@ +. + * + * @link https://www.librenms.org + * + * @copyright 2023 Tony Murray + * @author Tony Murray + */ + +namespace LibreNMS\Modules; + +use App\Models\Device; +use LibreNMS\Config; +use LibreNMS\Interfaces\Data\DataStorageInterface; +use LibreNMS\Interfaces\Module; +use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; +use LibreNMS\RRD\RrdDefinition; +use LibreNMS\Util\Time; + +class Availability implements Module +{ + /** + * @inheritDoc + */ + public function dependencies(): array + { + return []; + } + + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return false; + } + + /** + * @inheritDoc + */ + public function discover(OS $os): void + { + } + + /** + * @inheritDoc + */ + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled(); + } + + /** + * @inheritDoc + */ + public function poll(OS $os, DataStorageInterface $datastore): void + { + $os->enableGraph('availability'); + + $valid_ids = []; + foreach (Config::get('graphing.availability') as $duration) { + // update database with current calculation + $avail = \App\Models\Availability::updateOrCreate([ + 'device_id' => $os->getDeviceId(), + 'duration' => $duration, + ], [ + 'availability_perc' => \LibreNMS\Device\Availability::availability($os->getDevice(), $duration), + ]); + $valid_ids[] = $avail->availability_id; + + // update rrd + $datastore->put($os->getDeviceArray(), 'availability', [ + 'name' => $duration, + 'rrd_def' => RrdDefinition::make()->addDataset('availability', 'GAUGE', 0, 100), + 'rrd_name' => ['availability', $duration], + ], [ + 'availability' => $avail, + ]); + + // output info + $human_duration = Time::formatInterval($duration, parts: 1); + \Log::info(str_pad($human_duration, 7) . ' : ' . $avail->availability_perc . '%'); + } + + // cleanup + $os->getDevice()->availability()->whereNotIn('availability_id', $valid_ids)->delete(); + } + + /** + * @inheritDoc + */ + public function cleanup(Device $device): void + { + $device->availability()->delete(); + } + + /** + * @inheritDoc + */ + public function dump(Device $device) + { + return [ + 'availability' => $device->availability()->orderBy('duration') + ->get()->map->makeHidden(['availability_id', 'device_id']), + ]; + } +} diff --git a/LibreNMS/Modules/Core.php b/LibreNMS/Modules/Core.php index 81719f9c351d..50abe79c201d 100644 --- a/LibreNMS/Modules/Core.php +++ b/LibreNMS/Modules/Core.php @@ -30,8 +30,10 @@ use Illuminate\Support\Str; use LibreNMS\Config; use LibreNMS\Enum\Severity; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; use LibreNMS\Util\Compare; use LibreNMS\Util\Number; @@ -49,6 +51,11 @@ public function dependencies(): array return []; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + public function discover(OS $os): void { $snmpdata = SnmpQuery::numeric()->get(['SNMPv2-MIB::sysObjectID.0', 'SNMPv2-MIB::sysDescr.0', 'SNMPv2-MIB::sysName.0']) @@ -88,7 +95,12 @@ public function discover(OS $os): void echo 'OS: ' . Config::getOsSetting($device->os, 'text') . " ($device->os)\n\n"; } - public function poll(OS $os): void + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + + public function poll(OS $os, DataStorageInterface $datastore): void { $device = $os->getDevice(); $oids = []; @@ -109,7 +121,7 @@ public function poll(OS $os): void 'sysObjectID' => $snmpdata['.1.3.6.1.2.1.1.2.0'] ?? $device->sysObjectID, ]); - $this->calculateUptime($os, $snmpdata['.1.3.6.1.2.1.1.3.0'] ?? null); + $this->calculateUptime($os, $snmpdata['.1.3.6.1.2.1.1.3.0'] ?? null, $datastore); $device->save(); } @@ -247,7 +259,7 @@ protected static function checkDiscovery(Device $device, array $array, $mibdir): return true; } - private function calculateUptime(OS $os, ?string $sysUpTime): void + private function calculateUptime(OS $os, ?string $sysUpTime, DataStorageInterface $datastore): void { global $agent_data; $device = $os->getDevice(); @@ -280,13 +292,13 @@ private function calculateUptime(OS $os, ?string $sysUpTime): void } } - app('Datastore')->put($os->getDeviceArray(), 'uptime', [ + $datastore->put($os->getDeviceArray(), 'uptime', [ 'rrd_def' => RrdDefinition::make()->addDataset('uptime', 'GAUGE', 0), ], $uptime); $os->enableGraph('uptime'); - echo 'Uptime: ' . Time::formatInterval($uptime) . PHP_EOL; + Log::info('Uptime: ' . Time::formatInterval($uptime)); $device->uptime = $uptime; } } diff --git a/LibreNMS/Modules/Isis.php b/LibreNMS/Modules/Isis.php index b11de878a8a6..11f03aba233e 100644 --- a/LibreNMS/Modules/Isis.php +++ b/LibreNMS/Modules/Isis.php @@ -31,10 +31,12 @@ use Illuminate\Support\Arr; use Illuminate\Support\Collection; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\IsIsDiscovery; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\IsIsPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\Util\IP; class Isis implements Module @@ -56,6 +58,11 @@ public function dependencies(): array return ['ports']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -72,6 +79,11 @@ public function discover(OS $os): void $this->syncModels($os->getDevice(), 'isisAdjacencies', $adjacencies); } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. @@ -79,7 +91,7 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { $adjacencies = $os->getDevice()->isisAdjacencies; diff --git a/LibreNMS/Modules/LegacyModule.php b/LibreNMS/Modules/LegacyModule.php index cfad0833915b..2a61a42c2070 100644 --- a/LibreNMS/Modules/LegacyModule.php +++ b/LibreNMS/Modules/LegacyModule.php @@ -29,8 +29,10 @@ use Illuminate\Support\Arr; use Illuminate\Support\Facades\DB; use LibreNMS\Component; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\Util\Debug; use Symfony\Component\Yaml\Yaml; @@ -64,12 +66,45 @@ public function __construct(string $name) $this->name = $name; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $this->shouldPoll($os, $status); + } + public function discover(OS $os): void { - // TODO: Implement discover() method. + if (! is_file(base_path("includes/discovery/$this->name.inc.php"))) { + echo "Module $this->name does not exist, please remove it from your configuration"; + + return; + } + + $device = &$os->getDeviceArray(); + $device['attribs'] = $os->getDevice()->attribs->toArray(); + Debug::disableErrorReporting(); // ignore errors in legacy code + + include_once base_path('includes/datastore.inc.php'); + include_once base_path('includes/dbFacile.php'); + include base_path("includes/discovery/$this->name.inc.php"); + + Debug::enableErrorReporting(); // and back to normal + } + + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + if (! $status->isEnabled()) { + return false; + } + + if (! $os->getDevice()->status) { + return false; + } + + // all legacy modules require snmp except ipmi and unix-agent + return ! $os->getDevice()->snmp_disable || in_array($this->name, ['ipmi', 'unix-agent']); } - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { if (! is_file(base_path("includes/polling/$this->name.inc.php"))) { echo "Module $this->name does not exist, please remove it from your configuration"; @@ -81,6 +116,7 @@ public function poll(OS $os): void $device['attribs'] = $os->getDevice()->attribs->toArray(); Debug::disableErrorReporting(); // ignore errors in legacy code + include_once base_path('includes/datastore.inc.php'); include_once base_path('includes/dbFacile.php'); include base_path("includes/polling/$this->name.inc.php"); diff --git a/LibreNMS/Modules/Mempools.php b/LibreNMS/Modules/Mempools.php index 89d0be86b83a..653aceb118e6 100644 --- a/LibreNMS/Modules/Mempools.php +++ b/LibreNMS/Modules/Mempools.php @@ -30,9 +30,11 @@ use App\Observers\MempoolObserver; use Illuminate\Support\Collection; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\MempoolsPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; use LibreNMS\Util\Number; use Log; @@ -49,6 +51,11 @@ public function dependencies(): array return []; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + public function discover(OS $os): void { $mempools = $os->discoverMempools()->filter(function (Mempool $mempool) { @@ -70,7 +77,12 @@ public function discover(OS $os): void }); } - public function poll(OS $os): void + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + + public function poll(OS $os, DataStorageInterface $datastore): void { $mempools = $os->getDevice()->mempools; @@ -82,7 +94,7 @@ public function poll(OS $os): void ? $os->pollMempools($mempools) : $this->defaultPolling($os, $mempools); - $this->calculateAvailable($mempools)->each(function (Mempool $mempool) use ($os) { + $this->calculateAvailable($mempools)->each(function (Mempool $mempool) use ($os, $datastore) { $this->printMempool($mempool); if (empty($mempool->mempool_class)) { @@ -109,7 +121,7 @@ public function poll(OS $os): void 'free' => $mempool->mempool_free, ]; - data_update($os->getDeviceArray(), 'mempool', $tags, $fields); + $datastore->put($os->getDeviceArray(), 'mempool', $tags, $fields); }); } diff --git a/LibreNMS/Modules/Mpls.php b/LibreNMS/Modules/Mpls.php index 9354d70ffe5f..337b8b58adb8 100644 --- a/LibreNMS/Modules/Mpls.php +++ b/LibreNMS/Modules/Mpls.php @@ -30,10 +30,12 @@ use App\Models\Device; use App\Observers\ModuleModelObserver; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\MplsDiscovery; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\MplsPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; class Mpls implements Module { @@ -47,6 +49,11 @@ public function dependencies(): array return ['ports', 'vrf']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status && $os instanceof MplsDiscovery; + } + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -92,6 +99,11 @@ public function discover(OS $os): void } } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status && $os instanceof MplsPolling; + } + /** * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. @@ -99,7 +111,7 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { if ($os instanceof MplsPolling) { $device = $os->getDevice(); diff --git a/LibreNMS/Modules/Nac.php b/LibreNMS/Modules/Nac.php index beba10e6023a..75a9e14c50cb 100644 --- a/LibreNMS/Modules/Nac.php +++ b/LibreNMS/Modules/Nac.php @@ -28,9 +28,11 @@ use App\Models\Device; use App\Models\PortsNac; use App\Observers\ModuleModelObserver; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\NacPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; class Nac implements Module { @@ -42,6 +44,11 @@ public function dependencies(): array return ['ports']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return false; + } + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -53,6 +60,11 @@ public function discover(OS $os): void // not implemented } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status && $os instanceof NacPolling; + } + /** * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. @@ -60,7 +72,7 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { if ($os instanceof NacPolling) { // discovery output (but don't install it twice (testing can can do this) diff --git a/LibreNMS/Modules/Netstats.php b/LibreNMS/Modules/Netstats.php index 3a7bb0c93d8d..0f4efaba4d17 100644 --- a/LibreNMS/Modules/Netstats.php +++ b/LibreNMS/Modules/Netstats.php @@ -26,6 +26,7 @@ namespace LibreNMS\Modules; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\Netstats\IcmpNetstatsPolling; use LibreNMS\Interfaces\Polling\Netstats\IpForwardNetstatsPolling; @@ -34,6 +35,7 @@ use LibreNMS\Interfaces\Polling\Netstats\TcpNetstatsPolling; use LibreNMS\Interfaces\Polling\Netstats\UdpNetstatsPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; class Netstats implements Module @@ -174,6 +176,11 @@ public function dependencies(): array 'tcp' => TcpNetstatsPolling::class, ]; + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return false; + } + /** * @inheritDoc */ @@ -182,10 +189,15 @@ public function discover(OS $os): void // no discovery } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * @inheritDoc */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { foreach ($this->types as $type => $interface) { if ($os instanceof $interface) { @@ -203,7 +215,7 @@ public function poll(OS $os): void $fields[$stat] = $data[$oid] ?? null; } - app('Datastore')->put($os->getDeviceArray(), "netstats-$type", ['rrd_def' => $rrd_def], $fields); + $datastore->put($os->getDeviceArray(), "netstats-$type", ['rrd_def' => $rrd_def], $fields); // enable graphs foreach ($this->graphs[$type] as $graph) { diff --git a/LibreNMS/Modules/Os.php b/LibreNMS/Modules/Os.php index d911455ca547..844df9b8f355 100644 --- a/LibreNMS/Modules/Os.php +++ b/LibreNMS/Modules/Os.php @@ -27,8 +27,10 @@ use App\Models\Device; use App\Models\Location; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\OSPolling; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\Util\Url; class Os implements Module @@ -41,6 +43,11 @@ public function dependencies(): array return []; } + public function shouldDiscover(\LibreNMS\OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + public function discover(\LibreNMS\OS $os): void { $this->updateLocation($os); @@ -59,11 +66,16 @@ public function discover(\LibreNMS\OS $os): void $this->handleChanges($os); } - public function poll(\LibreNMS\OS $os): void + public function shouldPoll(\LibreNMS\OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + + public function poll(\LibreNMS\OS $os, DataStorageInterface $datastore): void { $deviceModel = $os->getDevice(); /** @var \App\Models\Device $deviceModel */ if ($os instanceof OSPolling) { - $os->pollOS(); + $os->pollOS($datastore); } else { // legacy poller files global $graphs, $device; diff --git a/LibreNMS/Modules/Ospf.php b/LibreNMS/Modules/Ospf.php index 398a70473f83..62f6897c2087 100644 --- a/LibreNMS/Modules/Ospf.php +++ b/LibreNMS/Modules/Ospf.php @@ -33,8 +33,10 @@ use App\Models\OspfPort; use App\Observers\ModuleModelObserver; use Illuminate\Support\Collection; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; use SnmpQuery; @@ -48,6 +50,11 @@ public function dependencies(): array return ['ports']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return false; + } + /** * @inheritDoc */ @@ -56,10 +63,15 @@ public function discover(OS $os): void // no discovery } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * @inheritDoc */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { foreach ($os->getDevice()->getVrfContexts() as $context_name) { echo ' Processes: '; @@ -216,7 +228,7 @@ public function poll(OS $os): void ]; $tags = compact('rrd_def'); - app('Datastore')->put($os->getDeviceArray(), 'ospf-statistics', $tags, $fields); + $datastore->put($os->getDeviceArray(), 'ospf-statistics', $tags, $fields); } } } diff --git a/LibreNMS/Modules/PrinterSupplies.php b/LibreNMS/Modules/PrinterSupplies.php index a33b0bb6ae55..05a4c27e363a 100644 --- a/LibreNMS/Modules/PrinterSupplies.php +++ b/LibreNMS/Modules/PrinterSupplies.php @@ -28,8 +28,10 @@ use Illuminate\Support\Str; use LibreNMS\DB\SyncsModels; use LibreNMS\Enum\Severity; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; use LibreNMS\Util\Number; @@ -45,6 +47,11 @@ public function dependencies(): array return []; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -63,6 +70,11 @@ public function discover(OS $os): void $this->syncModels($os->getDevice(), 'printerSupplies', $data); } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. @@ -70,11 +82,15 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { $device = $os->getDeviceArray(); $toner_data = $os->getDevice()->printerSupplies; + if (empty($toner_data)) { + return; // no data to poll + } + $toner_snmp = snmp_get_multi_oid($device, $toner_data->pluck('supply_oid')->toArray()); foreach ($toner_data as $toner) { @@ -90,7 +106,7 @@ public function poll(OS $os): void 'rrd_oldname' => ['toner', $toner['supply_descr']], 'index' => $toner['supply_index'], ]; - data_update($device, 'toner', $tags, $tonerperc); + $datastore->put($device, 'toner', $tags, $tonerperc); // Log empty supplies (but only once) if ($tonerperc == 0 && $toner['supply_current'] > 0) { diff --git a/LibreNMS/Modules/Slas.php b/LibreNMS/Modules/Slas.php index 12992ba75d1f..50e869e58f63 100644 --- a/LibreNMS/Modules/Slas.php +++ b/LibreNMS/Modules/Slas.php @@ -24,10 +24,13 @@ use App\Models\Sla; use App\Observers\ModuleModelObserver; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\SlaDiscovery; use LibreNMS\Interfaces\Module; use LibreNMS\Interfaces\Polling\SlaPolling; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; +use LibreNMS\RRD\RrdDefinition; class Slas implements Module { @@ -41,6 +44,11 @@ public function dependencies(): array return []; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status && $os instanceof SlaDiscovery; + } + /** * Discover this module. Heavier processes can be run here * Run infrequently (default 4 times a day) @@ -56,6 +64,11 @@ public function discover(OS $os): void } } + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status && $os instanceof SlaPolling; + } + /** * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. @@ -63,7 +76,7 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { if ($os instanceof SlaPolling) { // Gather our SLA's from the DB. @@ -74,6 +87,17 @@ public function poll(OS $os): void // We have SLA's, lets go!!! $os->pollSlas($slas); $os->getDevice()->slas()->saveMany($slas); + + // The base RRD + foreach ($slas as $sla) { + $datastore->put($os->getDeviceArray(), 'sla', [ + 'sla_nr' => $sla->sla_nr, + 'rrd_name' => ['sla', $sla->sla_nr], + 'rrd_def' => RrdDefinition::make()->addDataset('rtt', 'GAUGE', 0, 300000), + ], [ + 'rtt' => $sla->rtt, + ]); + } } } } diff --git a/LibreNMS/Modules/Stp.php b/LibreNMS/Modules/Stp.php index 3e373db567db..444fc92a57df 100644 --- a/LibreNMS/Modules/Stp.php +++ b/LibreNMS/Modules/Stp.php @@ -29,8 +29,10 @@ use App\Models\PortStp; use App\Observers\ModuleModelObserver; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; class Stp implements Module { @@ -44,6 +46,11 @@ public function dependencies(): array return ['ports', 'vlans']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + public function discover(OS $os): void { $device = $os->getDevice(); @@ -61,7 +68,12 @@ public function discover(OS $os): void echo PHP_EOL; } - public function poll(OS $os): void + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + + public function poll(OS $os, DataStorageInterface $datastore): void { $device = $os->getDevice(); diff --git a/LibreNMS/Modules/Xdsl.php b/LibreNMS/Modules/Xdsl.php index 692b4026af4b..a5e9a372b7b6 100644 --- a/LibreNMS/Modules/Xdsl.php +++ b/LibreNMS/Modules/Xdsl.php @@ -32,8 +32,10 @@ use App\Observers\ModuleModelObserver; use Illuminate\Support\Collection; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Module; use LibreNMS\OS; +use LibreNMS\Polling\ModuleStatus; use LibreNMS\RRD\RrdDefinition; use LibreNMS\Util\Number; @@ -58,14 +60,24 @@ public function dependencies(): array return ['ports']; } + public function shouldDiscover(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; + } + /** * @inheritDoc */ public function discover(OS $os): void { - //discover if any port has dsl data. We use the pollXdsl functions, with the store parameter set to false - $this->pollAdsl($os, false); - $this->pollVdsl($os, false); + //discover if any port has dsl data. We use the pollXdsl functions, with the datastore parameter ommitted + $this->pollAdsl($os); + $this->pollVdsl($os); + } + + public function shouldPoll(OS $os, ModuleStatus $status): bool + { + return $status->isEnabled() && ! $os->getDevice()->snmp_disable && $os->getDevice()->status; } /** @@ -75,15 +87,15 @@ public function discover(OS $os): void * * @param \LibreNMS\OS $os */ - public function poll(OS $os): void + public function poll(OS $os, DataStorageInterface $datastore): void { //only do polling if at least one portAdsl was discovered if ($os->getDevice()->portsAdsl()->exists()) { - $this->pollAdsl($os); + $this->pollAdsl($os, $datastore); } if ($os->getDevice()->portsVdsl()->exists()) { - $this->pollVdsl($os); + $this->pollVdsl($os, $datastore); } } @@ -115,11 +127,8 @@ public function dump(Device $device) * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. * Run frequently (default every 5 minutes) - * - * @param \LibreNMS\OS $os - * @param bool $store */ - private function pollAdsl(OS $os, $store = true): Collection + private function pollAdsl(OS $os, ?DataStorageInterface $datastore = null): Collection { $adsl = \SnmpQuery::hideMib()->walk('ADSL-LINE-MIB::adslMibObjects')->table(1); $adslPorts = new Collection; @@ -141,8 +150,8 @@ private function pollAdsl(OS $os, $store = true): Collection $portAdsl->port_id = $os->ifIndexToId($ifIndex); - if ($store) { - $this->storeAdsl($portAdsl, $data, (int) $ifIndex, $os); + if ($datastore) { + $this->storeAdsl($portAdsl, $data, (int) $ifIndex, $os, $datastore); echo ' ADSL(' . $portAdsl->adslLineCoding . '/' . Number::formatSi($portAdsl->adslAtucChanCurrTxRate, 2, 3, 'bps') . '/' . Number::formatSi($portAdsl->adslAturChanCurrTxRate, 2, 3, 'bps') . ') '; } @@ -158,11 +167,8 @@ private function pollAdsl(OS $os, $store = true): Collection * Poll data for this module and update the DB / RRD. * Try to keep this efficient and only run if discovery has indicated there is a reason to run. * Run frequently (default every 5 minutes) - * - * @param \LibreNMS\OS $os - * @param bool $store */ - private function pollVdsl(OS $os, $store = true): Collection + private function pollVdsl(OS $os, ?DataStorageInterface $datastore = null): Collection { $vdsl = \SnmpQuery::hideMib()->walk(['VDSL2-LINE-MIB::xdsl2ChannelStatusTable', 'VDSL2-LINE-MIB::xdsl2LineTable'])->table(1); $vdslPorts = new Collection; @@ -182,8 +188,8 @@ private function pollVdsl(OS $os, $store = true): Collection $portVdsl->fill($data); // fill oids that are one to one - if ($store) { - $this->storeVdsl($portVdsl, $data, (int) $ifIndex, $os); + if ($datastore) { + $this->storeVdsl($portVdsl, $data, (int) $ifIndex, $os, $datastore); echo ' VDSL(' . $os->ifIndexToName($ifIndex) . '/' . Number::formatSi($portVdsl->xdsl2LineStatusAttainableRateDs, 2, 3, 'bps') . '/' . Number::formatSi($portVdsl->xdsl2LineStatusAttainableRateUs, 2, 3, 'bps') . ') '; } @@ -195,7 +201,7 @@ private function pollVdsl(OS $os, $store = true): Collection return $this->syncModels($os->getDevice(), 'portsVdsl', $vdslPorts); } - private function storeAdsl(PortAdsl $port, array $data, int $ifIndex, OS $os): void + private function storeAdsl(PortAdsl $port, array $data, int $ifIndex, OS $os, DataStorageInterface $datastore): void { $rrd_def = RrdDefinition::make() ->addDataset('AtucCurrSnrMgn', 'GAUGE', 0, 635) @@ -248,17 +254,17 @@ private function storeAdsl(PortAdsl $port, array $data, int $ifIndex, OS $os): v 'AturChanUncorrectBlks' => $data['adslAturChanUncorrectBlks'] ?? null, ]; - data_update($os->getDeviceArray(), 'adsl', [ + $datastore->put($os->getDeviceArray(), 'adsl', [ 'ifName' => $os->ifIndexToName($ifIndex), 'rrd_name' => Rrd::portName($port->port_id, 'adsl'), 'rrd_def' => $rrd_def, ], $fields); } - private function storeVdsl(PortVdsl $port, array $data, int $ifIndex, OS $os): void + private function storeVdsl(PortVdsl $port, array $data, int $ifIndex, OS $os, DataStorageInterface $datastore): void { // Attainable - data_update($os->getDeviceArray(), 'xdsl2LineStatusAttainableRate', [ + $datastore->put($os->getDeviceArray(), 'xdsl2LineStatusAttainableRate', [ 'ifName' => $os->ifIndexToName($ifIndex), 'rrd_name' => Rrd::portName($port->port_id, 'xdsl2LineStatusAttainableRate'), 'rrd_def' => RrdDefinition::make() @@ -270,7 +276,7 @@ private function storeVdsl(PortVdsl $port, array $data, int $ifIndex, OS $os): v ]); // actual data rates - data_update($os->getDeviceArray(), 'xdsl2ChStatusActDataRate', [ + $datastore->put($os->getDeviceArray(), 'xdsl2ChStatusActDataRate', [ 'ifName' => $os->ifIndexToName($ifIndex), 'rrd_name' => Rrd::portName($port->port_id, 'xdsl2ChStatusActDataRate'), 'rrd_def' => RrdDefinition::make() @@ -282,7 +288,7 @@ private function storeVdsl(PortVdsl $port, array $data, int $ifIndex, OS $os): v ]); // power levels - data_update($os->getDeviceArray(), 'xdsl2LineStatusActAtp', [ + $datastore->put($os->getDeviceArray(), 'xdsl2LineStatusActAtp', [ 'ifName' => $os->ifIndexToName($ifIndex), 'rrd_name' => Rrd::portName($port->port_id, 'xdsl2LineStatusActAtp'), 'rrd_def' => RrdDefinition::make() diff --git a/LibreNMS/OS/Arbos.php b/LibreNMS/OS/Arbos.php index 85ce1e513dd5..b4f436d202cd 100644 --- a/LibreNMS/OS/Arbos.php +++ b/LibreNMS/OS/Arbos.php @@ -25,6 +25,7 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; use LibreNMS\RRD\RrdDefinition; @@ -32,12 +33,12 @@ class Arbos extends OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $flows = SnmpQuery::get('PEAKFLOW-SP-MIB::deviceTotalFlows.0')->value(); if (is_numeric($flows)) { - app('Datastore')->put($this->getDeviceArray(), 'arbos_flows', [ + $datastore->put($this->getDeviceArray(), 'arbos_flows', [ 'rrd_def' => RrdDefinition::make()->addDataset('flows', 'GAUGE', 0, 3000000), ], [ 'flows' => $flows, diff --git a/LibreNMS/OS/Asyncos.php b/LibreNMS/OS/Asyncos.php index 6266883acafe..1105033b2b5d 100644 --- a/LibreNMS/OS/Asyncos.php +++ b/LibreNMS/OS/Asyncos.php @@ -25,20 +25,21 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; use LibreNMS\RRD\RrdDefinition; class Asyncos extends OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Get stats only if device is web proxy if ($this->getDevice()->sysObjectID == '.1.3.6.1.4.1.15497.1.2') { $connections = \SnmpQuery::get('TCP-MIB::tcpCurrEstab.0')->value(); if (is_numeric($connections)) { - data_update($this->getDeviceArray(), 'asyncos_conns', [ + $datastore->put($this->getDeviceArray(), 'asyncos_conns', [ 'rrd_def' => RrdDefinition::make()->addDataset('connections', 'GAUGE', 0, 50000), ], [ 'connections' => $connections, diff --git a/LibreNMS/OS/Barracudangfirewall.php b/LibreNMS/OS/Barracudangfirewall.php index afdcb3715a74..cfeb9c1bb521 100644 --- a/LibreNMS/OS/Barracudangfirewall.php +++ b/LibreNMS/OS/Barracudangfirewall.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\OSDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; @@ -40,7 +41,7 @@ public function discoverOS(Device $device): void } } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // TODO move to count sensor $sessions = snmp_get($this->getDeviceArray(), 'firewallSessions64.8.102.119.83.116.97.116.115.0', '-OQv', 'PHION-MIB'); @@ -50,7 +51,7 @@ public function pollOS(): void $fields = ['fw_sessions' => $sessions]; $tags = compact('rrd_def'); - app('Datastore')->put($this->getDeviceArray(), 'barracuda_firewall_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'barracuda_firewall_sessions', $tags, $fields); $this->enableGraph('barracuda_firewall_sessions'); } } diff --git a/LibreNMS/OS/Ciscowlc.php b/LibreNMS/OS/Ciscowlc.php index 7f6c7e86f150..bd46e7d70ec2 100644 --- a/LibreNMS/OS/Ciscowlc.php +++ b/LibreNMS/OS/Ciscowlc.php @@ -27,6 +27,7 @@ use App\Models\AccessPoint; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessApCountDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; @@ -38,7 +39,7 @@ class Ciscowlc extends Cisco implements WirelessClientsDiscovery, WirelessApCountDiscovery { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $device = $this->getDeviceArray(); $apNames = \SnmpQuery::enumStrings()->walk('AIRESPACE-WIRELESS-MIB::bsnAPName')->table(1); @@ -65,7 +66,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($device, 'ciscowlc', $tags, $fields); + $datastore->put($device, 'ciscowlc', $tags, $fields); $db_aps = $this->getDevice()->accessPoints->keyBy->getCompositeKey(); $valid_ap_ids = []; @@ -105,7 +106,7 @@ public function pollOS(): void ->addDataset('numasoclients', 'GAUGE', 0, 500) ->addDataset('interference', 'GAUGE', 0, 2000); - data_update($device, 'arubaap', [ + $datastore->put($device, 'arubaap', [ 'name' => $ap->name, 'radionum' => $ap->radio_number, 'rrd_name' => ['arubaap', $ap->name . $ap->radio_number], diff --git a/LibreNMS/OS/Coriant.php b/LibreNMS/OS/Coriant.php index 2aac024aa638..913e66d9a8d1 100644 --- a/LibreNMS/OS/Coriant.php +++ b/LibreNMS/OS/Coriant.php @@ -29,11 +29,12 @@ use App\Models\TnmsneInfo; use App\Observers\ModuleModelObserver; use LibreNMS\Enum\Severity; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; class Coriant extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { echo 'TNMS-NBI-MIB: enmsNETable'; diff --git a/LibreNMS/OS/Epmp.php b/LibreNMS/OS/Epmp.php index f63b733cca17..97155407137c 100644 --- a/LibreNMS/OS/Epmp.php +++ b/LibreNMS/OS/Epmp.php @@ -27,6 +27,7 @@ use App\Models\Device; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessRssiDiscovery; @@ -62,7 +63,7 @@ public function discoverOS(Device $device): void } } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $device = $this->getDeviceArray(); @@ -77,7 +78,7 @@ public function pollOS(): void 'numVisible' => $cambiumGPSNumVisibleSat, ]; $tags = compact('rrd_def'); - data_update($device, 'cambium-epmp-gps', $tags, $fields); + $datastore->put($device, 'cambium-epmp-gps', $tags, $fields); $this->enableGraph('cambium_epmp_gps'); } @@ -92,7 +93,7 @@ public function pollOS(): void 'downlinkMCSMode' => $cambiumSTADownlinkMCSMode, ]; $tags = compact('rrd_def'); - data_update($device, 'cambium-epmp-modulation', $tags, $fields); + $datastore->put($device, 'cambium-epmp-modulation', $tags, $fields); $this->enableGraph('cambium_epmp_modulation'); } @@ -110,7 +111,7 @@ public function pollOS(): void 'authFailure' => $sysNetworkEntryAuthenticationFailure, ]; $tags = compact('rrd_def'); - data_update($device, 'cambium-epmp-access', $tags, $fields); + $datastore->put($device, 'cambium-epmp-access', $tags, $fields); $this->enableGraph('cambium_epmp_access'); } @@ -134,7 +135,7 @@ public function pollOS(): void 'dlwlanframeutilization' => $dlWlanFrameUtilization, ]; $tags = compact('rrd_def'); - data_update($device, 'cambium-epmp-frameUtilization', $tags, $fields); + $datastore->put($device, 'cambium-epmp-frameUtilization', $tags, $fields); $this->enableGraph('cambium-epmp-frameUtilization'); } } diff --git a/LibreNMS/OS/F5.php b/LibreNMS/OS/F5.php index 07e127c95cd5..72091233e549 100644 --- a/LibreNMS/OS/F5.php +++ b/LibreNMS/OS/F5.php @@ -25,13 +25,14 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; use LibreNMS\RRD\RrdDefinition; class F5 extends OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $metadata = [ 'F5-BIGIP-APM-MIB::apmAccessStatCurrentActiveSessions.0' => [ @@ -75,7 +76,7 @@ public function pollOS(): void $info['dataset'] => $data[$key], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), $info['name'], $tags, $fields); + $datastore->put($this->getDeviceArray(), $info['name'], $tags, $fields); $this->enableGraph($info['name']); } } @@ -90,7 +91,7 @@ public function pollOS(): void 'TotCompatConns' => $data['F5-BIGIP-SYSTEM-MIB::sysClientsslStatTotCompatConns.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'bigip_system_tps', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'bigip_system_tps', $tags, $fields); $this->enableGraph('bigip_system_tps'); } } diff --git a/LibreNMS/OS/Fortiadc.php b/LibreNMS/OS/Fortiadc.php index 1be1ec6d0bc0..912eb477c481 100644 --- a/LibreNMS/OS/Fortiadc.php +++ b/LibreNMS/OS/Fortiadc.php @@ -3,10 +3,10 @@ namespace LibreNMS\OS; use App\Models\Device; -use LibreNMS\Interfaces\Polling\OSPolling; +use LibreNMS\Interfaces\Discovery\OSDiscovery; use LibreNMS\OS\Shared\Fortinet; -class Fortiadc extends Fortinet implements OSPolling +class Fortiadc extends Fortinet implements OSDiscovery { public function discoverOS(Device $device): void { @@ -14,9 +14,4 @@ public function discoverOS(Device $device): void $device->hardware = $device->hardware ?: $this->getHardwareName(); } - - public function pollOS(): void - { - // - } } diff --git a/LibreNMS/OS/Fortigate.php b/LibreNMS/OS/Fortigate.php index 24e4963f6f0a..40cd80344537 100644 --- a/LibreNMS/OS/Fortigate.php +++ b/LibreNMS/OS/Fortigate.php @@ -27,6 +27,7 @@ use App\Models\Device; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessApCountDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; @@ -45,7 +46,7 @@ public function discoverOS(Device $device): void $device->hardware = $device->hardware ?: $this->getHardwareName(); } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $sessions = snmp_get($this->getDeviceArray(), 'FORTINET-FORTIGATE-MIB::fgSysSesCount.0', '-Ovq'); if (is_numeric($sessions)) { @@ -57,7 +58,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - app()->make('Datastore')->put($this->getDeviceArray(), 'fortigate_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'fortigate_sessions', $tags, $fields); $this->enableGraph('fortigate_sessions'); } @@ -71,7 +72,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - app()->make('Datastore')->put($this->getDeviceArray(), 'fortigate_cpu', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'fortigate_cpu', $tags, $fields); $this->enableGraph('fortigate_cpu'); } } diff --git a/LibreNMS/OS/Fortios.php b/LibreNMS/OS/Fortios.php index fe3c4fd582a3..a7862577b291 100644 --- a/LibreNMS/OS/Fortios.php +++ b/LibreNMS/OS/Fortios.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS\Shared\Fortinet; use LibreNMS\RRD\RrdDefinition; @@ -40,7 +41,7 @@ public function discoverOS(Device $device): void $device->features = snmp_get($this->getDeviceArray(), 'fmDeviceEntMode.1', '-OQv', 'FORTINET-FORTIMANAGER-FORTIANALYZER-MIB') == 'fmg-faz' ? 'with Analyzer features' : null; } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Log rate only for FortiAnalyzer features enabled FortiManagers if ($this->getDevice()->features == 'with Analyzer features') { @@ -49,7 +50,7 @@ public function pollOS(): void $rrd_def = RrdDefinition::make()->addDataset('lograte', 'GAUGE', 0, 100000000); $fields = ['lograte' => $log_rate]; $tags = compact('rrd_def'); - app()->make('Datastore')->put($this->getDeviceArray(), 'fortios_lograte', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'fortios_lograte', $tags, $fields); $this->enableGraph('fortios_lograte'); } } diff --git a/LibreNMS/OS/Gaia.php b/LibreNMS/OS/Gaia.php index 8e5475611d65..2bdf7b2a9dd6 100644 --- a/LibreNMS/OS/Gaia.php +++ b/LibreNMS/OS/Gaia.php @@ -2,12 +2,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Gaia extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $oids = ['fwLoggingHandlingRate.0', 'mgLSLogReceiveRate.0', 'fwNumConn.0', 'fwAccepted.0', 'fwRejected.0', 'fwDropped.0', 'fwLogged.0']; @@ -24,7 +25,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'gaia_firewall_lograte', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'gaia_firewall_lograte', $tags, $fields); $this->enableGraph('gaia_firewall_lograte'); } @@ -39,7 +40,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'gaia_logserver_lograte', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'gaia_logserver_lograte', $tags, $fields); $this->enableGraph('gaia_logserver_lograte'); } @@ -54,7 +55,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'gaia_connections', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'gaia_connections', $tags, $fields); $this->enableGraph('gaia_connections'); } @@ -76,7 +77,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'gaia_firewall_packets', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'gaia_firewall_packets', $tags, $fields); $this->enableGraph('gaia_firewall_packets'); } } diff --git a/LibreNMS/OS/Iosxe.php b/LibreNMS/OS/Iosxe.php index 96c495466e27..391089842f76 100644 --- a/LibreNMS/OS/Iosxe.php +++ b/LibreNMS/OS/Iosxe.php @@ -30,6 +30,7 @@ use Illuminate\Support\Arr; use Illuminate\Support\Collection; use LibreNMS\DB\SyncsModels; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\IsIsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessCellDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessChannelDiscovery; @@ -57,7 +58,7 @@ class Iosxe extends Ciscowlc implements use SyncsModels; use CiscoCellular; - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Don't poll Ciscowlc FIXME remove when wireless-controller module exists } diff --git a/LibreNMS/OS/Junos.php b/LibreNMS/OS/Junos.php index 77471825295a..b106c31aab33 100644 --- a/LibreNMS/OS/Junos.php +++ b/LibreNMS/OS/Junos.php @@ -29,6 +29,7 @@ use App\Models\Sla; use Carbon\Carbon; use Illuminate\Support\Collection; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\SlaDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\Interfaces\Polling\SlaPolling; @@ -55,12 +56,12 @@ public function discoverOS(Device $device): void $device->version = $data[0]['jnxVirtualChassisMemberSWVersion'] ?? $parsedVersion[1] ?? $parsed['version'] ?? null; } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $data = snmp_get_multi($this->getDeviceArray(), 'jnxJsSPUMonitoringCurrentFlowSession.0', '-OUQs', 'JUNIPER-SRX5000-SPU-MONITORING-MIB'); if (is_numeric($data[0]['jnxJsSPUMonitoringCurrentFlowSession'] ?? null)) { - data_update($this->getDeviceArray(), 'junos_jsrx_spu_sessions', [ + $datastore->put($this->getDeviceArray(), 'junos_jsrx_spu_sessions', [ 'rrd_def' => RrdDefinition::make()->addDataset('spu_flow_sessions', 'GAUGE', 0), ], [ 'spu_flow_sessions' => $data[0]['jnxJsSPUMonitoringCurrentFlowSession'], @@ -121,15 +122,7 @@ public function pollSlas($slas): void $time = Carbon::parse($data[$owner][$test]['jnxPingResultsTime'] ?? null)->toDateTimeString(); echo 'SLA : ' . $rtt_type . ' ' . $owner . ' ' . $test . '... ' . $sla->rtt . 'ms at ' . $time . "\n"; - $fields = [ - 'rtt' => $sla->rtt, - ]; - - // The base RRD - $rrd_name = ['sla', $sla['sla_nr']]; - $rrd_def = RrdDefinition::make()->addDataset('rtt', 'GAUGE', 0, 300000); - $tags = compact('sla_nr', 'rrd_name', 'rrd_def'); - data_update($device, 'sla', $tags, $fields); + $collected = ['rtt' => $sla->rtt]; // Let's gather some per-type fields. switch ($rtt_type) { @@ -154,16 +147,16 @@ public function pollSlas($slas): void ->addDataset('ProbeResponses', 'GAUGE', 0, 300000) ->addDataset('ProbeLoss', 'GAUGE', 0, 300000); $tags = compact('rrd_name', 'rrd_def', 'sla_nr', 'rtt_type'); - data_update($device, 'sla', $tags, $icmp); - $fields = array_merge($fields, $icmp); + app('Datastore')->put($device, 'sla', $tags, $icmp); + $collected = array_merge($collected, $icmp); break; case 'NtpQuery': case 'UdpTimestamp': break; } - d_echo('The following datasources were collected for #' . $sla['sla_nr'] . ":\n"); - d_echo($fields); + d_echo('The following datasources were collected for #' . $sla->sla_nr . ":\n"); + d_echo($collected); } } diff --git a/LibreNMS/OS/Netscaler.php b/LibreNMS/OS/Netscaler.php index 5b291ade5f85..eb9c61c5e865 100644 --- a/LibreNMS/OS/Netscaler.php +++ b/LibreNMS/OS/Netscaler.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Netscaler extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { echo ' IP'; @@ -157,7 +158,7 @@ public function pollOS(): void } $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'netscaler-stats-tcp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'netscaler-stats-tcp', $tags, $fields); $this->enableGraph('netscaler_tcp_conn'); $this->enableGraph('netscaler_tcp_bits'); diff --git a/LibreNMS/OS/Nios.php b/LibreNMS/OS/Nios.php index 8cbde60a2c71..5d5228d00d6f 100644 --- a/LibreNMS/OS/Nios.php +++ b/LibreNMS/OS/Nios.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Nios extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { //############# // Create ddns update rrd @@ -59,7 +60,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'ib_dns_dyn_updates', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'ib_dns_dyn_updates', $tags, $fields); $this->enableGraph('ib_dns_dyn_updates'); //################# @@ -83,7 +84,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'ib_dns_performance', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'ib_dns_performance', $tags, $fields); $this->enableGraph('ib_dns_performance'); //################# @@ -113,7 +114,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'ib_dns_request_return_codes', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'ib_dns_request_return_codes', $tags, $fields); $this->enableGraph('ib_dns_request_return_codes'); //################# @@ -158,7 +159,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'ib_dhcp_messages', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'ib_dhcp_messages', $tags, $fields); $this->enableGraph('ib_dhcp_messages'); } } diff --git a/LibreNMS/OS/Openbsd.php b/LibreNMS/OS/Openbsd.php index d85a049caf60..599925088555 100644 --- a/LibreNMS/OS/Openbsd.php +++ b/LibreNMS/OS/Openbsd.php @@ -25,13 +25,14 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS\Shared\Unix; use LibreNMS\RRD\RrdDefinition; class Openbsd extends Unix implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $oids = \SnmpQuery::get([ 'OPENBSD-PF-MIB::pfStateCount.0', @@ -57,13 +58,13 @@ public function pollOS(): void 'OPENBSD-PF-MIB::pfCntNoRoute.0', ])->values(); - $this->graphOID('states', ['states' => $oids['OPENBSD-PF-MIB::pfStateCount.0']], 'GAUGE'); - $this->graphOID('searches', ['searches' => $oids['OPENBSD-PF-MIB::pfStateSearches.0']]); - $this->graphOID('inserts', ['inserts' => $oids['OPENBSD-PF-MIB::pfStateInserts.0']]); - $this->graphOID('removals', ['removals' => $oids['OPENBSD-PF-MIB::pfStateRemovals.0']]); - $this->graphOID('matches', ['matches' => $oids['OPENBSD-PF-MIB::pfCntMatch.0']]); + $this->graphOID('states', $datastore, ['states' => $oids['OPENBSD-PF-MIB::pfStateCount.0']], 'GAUGE'); + $this->graphOID('searches', $datastore, ['searches' => $oids['OPENBSD-PF-MIB::pfStateSearches.0']]); + $this->graphOID('inserts', $datastore, ['inserts' => $oids['OPENBSD-PF-MIB::pfStateInserts.0']]); + $this->graphOID('removals', $datastore, ['removals' => $oids['OPENBSD-PF-MIB::pfStateRemovals.0']]); + $this->graphOID('matches', $datastore, ['matches' => $oids['OPENBSD-PF-MIB::pfCntMatch.0']]); - $this->graphOID('drops', [ + $this->graphOID('drops', $datastore, [ 'badoffset' => $oids['OPENBSD-PF-MIB::pfCntBadOffset.0'], 'fragmented' => $oids['OPENBSD-PF-MIB::pfCntFragment.0'], 'short' => $oids['OPENBSD-PF-MIB::pfCntShort.0'], @@ -83,7 +84,7 @@ public function pollOS(): void ]); } - private function graphOID(string $graphName, array $oids, string $type = 'COUNTER'): void + private function graphOID(string $graphName, DataStorageInterface $datastore, array $oids, string $type = 'COUNTER'): void { $rrd_def = RrdDefinition::make(); $fields = []; @@ -94,7 +95,7 @@ private function graphOID(string $graphName, array $oids, string $type = 'COUNTE } } $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), "pf_$graphName", $tags, $fields); + $datastore->put($this->getDeviceArray(), "pf_$graphName", $tags, $fields); $this->enableGraph("pf_$graphName"); } diff --git a/LibreNMS/OS/Panos.php b/LibreNMS/OS/Panos.php index b2341b6c2010..27ef78f7ffc2 100644 --- a/LibreNMS/OS/Panos.php +++ b/LibreNMS/OS/Panos.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use Illuminate\Support\Str; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; @@ -36,7 +37,7 @@ class Panos extends \LibreNMS\OS implements OSPolling 'Packet Buffers', ]; - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $data = snmp_get_multi($this->getDeviceArray(), [ 'panSessionActive.0', @@ -76,7 +77,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions', $tags, $fields); $this->enableGraph('panos_sessions'); } @@ -89,7 +90,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions-tcp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions-tcp', $tags, $fields); $this->enableGraph('panos_sessions_tcp'); } @@ -102,7 +103,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions-udp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions-udp', $tags, $fields); $this->enableGraph('panos_sessions_udp'); } @@ -115,7 +116,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions-icmp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions-icmp', $tags, $fields); $this->enableGraph('panos_sessions_icmp'); } @@ -128,7 +129,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions-ssl', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions-ssl', $tags, $fields); $this->enableGraph('panos_sessions_ssl'); } @@ -141,7 +142,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-sessions-sslutil', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-sessions-sslutil', $tags, $fields); $this->enableGraph('panos_sessions_sslutil'); } @@ -154,7 +155,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-activetunnels', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-activetunnels', $tags, $fields); $this->enableGraph('panos_activetunnels'); } @@ -166,7 +167,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosBlkNumEntries', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosBlkNumEntries', $tags, $fields); $this->enableGraph('panos_panFlowDosBlkNumEntries'); } @@ -178,7 +179,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowMeterVsysThrottle', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowMeterVsysThrottle', $tags, $fields); $this->enableGraph('panos_panFlowMeterVsysThrottle'); } @@ -190,7 +191,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowPolicyDeny', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowPolicyDeny', $tags, $fields); $this->enableGraph('panos_panFlowPolicyDeny'); } @@ -202,7 +203,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowPolicyNat', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowPolicyNat', $tags, $fields); $this->enableGraph('panos_panFlowPolicyNat'); } @@ -214,7 +215,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowScanDrop', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowScanDrop', $tags, $fields); $this->enableGraph('panos_panFlowScanDrop'); } @@ -226,7 +227,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosDropIpBlocked', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosDropIpBlocked', $tags, $fields); $this->enableGraph('panos_panFlowDosDropIpBlocked'); } @@ -238,7 +239,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRedIcmp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRedIcmp', $tags, $fields); $this->enableGraph('panos_panFlowDosRedIcmp'); } @@ -250,7 +251,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRedIcmp6', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRedIcmp6', $tags, $fields); $this->enableGraph('panos_panFlowDosRedIcmp6'); } @@ -262,7 +263,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRedIp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRedIp', $tags, $fields); $this->enableGraph('panos_panFlowDosRedIp'); } @@ -274,7 +275,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRedTcp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRedTcp', $tags, $fields); $this->enableGraph('panos_panFlowDosRedTcp'); } @@ -286,7 +287,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRedUdp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRedUdp', $tags, $fields); $this->enableGraph('panos_panFlowDosRedUdp'); } @@ -298,7 +299,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosPbpDrop', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosPbpDrop', $tags, $fields); $this->enableGraph('panos_panFlowDosPbpDrop'); } @@ -310,7 +311,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRuleDeny', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRuleDeny', $tags, $fields); $this->enableGraph('panos_panFlowDosRuleDeny'); } @@ -322,7 +323,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosRuleDrop', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosRuleDrop', $tags, $fields); $this->enableGraph('panos_panFlowDosRuleDrop'); } @@ -334,7 +335,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosZoneRedAct', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosZoneRedAct', $tags, $fields); $this->enableGraph('panos_panFlowDosZoneRedAct'); } @@ -346,7 +347,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosZoneRedMax', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosZoneRedMax', $tags, $fields); $this->enableGraph('panos_panFlowDosZoneRedMax'); } @@ -358,7 +359,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosSyncookieNotTcpSyn', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosSyncookieNotTcpSyn', $tags, $fields); $this->enableGraph('panos_panFlowDosSyncookieNotTcpSyn'); } @@ -370,7 +371,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosSyncookieNotTcpSynAck', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosSyncookieNotTcpSynAck', $tags, $fields); $this->enableGraph('panos_panFlowDosSyncookieNotTcpSynAck'); } @@ -382,7 +383,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosBlkSwEntries', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosBlkSwEntries', $tags, $fields); $this->enableGraph('panos_panFlowDosBlkSwEntries'); } @@ -394,7 +395,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'panos-panFlowDosBlkHwEntries', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'panos-panFlowDosBlkHwEntries', $tags, $fields); $this->enableGraph('panos_panFlowDosBlkHwEntries'); } diff --git a/LibreNMS/OS/Pfsense.php b/LibreNMS/OS/Pfsense.php index 35042746cadf..0c52d96b9a65 100644 --- a/LibreNMS/OS/Pfsense.php +++ b/LibreNMS/OS/Pfsense.php @@ -25,13 +25,14 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS\Shared\Unix; use LibreNMS\RRD\RrdDefinition; class Pfsense extends Unix implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $oids = snmp_get_multi($this->getDeviceArray(), [ 'pfStateTableCount.0', @@ -54,7 +55,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_states', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_states', $tags, $fields); $this->enableGraph('pf_states'); } @@ -67,7 +68,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_searches', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_searches', $tags, $fields); $this->enableGraph('pf_searches'); } @@ -80,7 +81,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_inserts', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_inserts', $tags, $fields); $this->enableGraph('pf_inserts'); } @@ -93,7 +94,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_removals', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_removals', $tags, $fields); $this->enableGraph('pf_removals'); } @@ -106,7 +107,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_matches', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_matches', $tags, $fields); $this->enableGraph('pf_matches'); } @@ -119,7 +120,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_badoffset', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_badoffset', $tags, $fields); $this->enableGraph('pf_badoffset'); } @@ -132,7 +133,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_fragmented', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_fragmented', $tags, $fields); $this->enableGraph('pf_fragmented'); } @@ -145,7 +146,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_short', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_short', $tags, $fields); $this->enableGraph('pf_short'); } @@ -158,7 +159,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_normalized', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_normalized', $tags, $fields); $this->enableGraph('pf_normalized'); } @@ -171,7 +172,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pf_memdropped', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pf_memdropped', $tags, $fields); $this->enableGraph('pf_memdropped'); } diff --git a/LibreNMS/OS/Pmp.php b/LibreNMS/OS/Pmp.php index 410828a737e8..5fad0a968fa1 100644 --- a/LibreNMS/OS/Pmp.php +++ b/LibreNMS/OS/Pmp.php @@ -28,6 +28,7 @@ use App\Models\Device; use Illuminate\Support\Str; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessErrorsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery; @@ -95,7 +96,7 @@ public function discoverOS(Device $device): void $device->hardware = $hardware; } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Migrated to Wireless Sensor $fec = snmp_get_multi_oid($this->getDeviceArray(), ['fecInErrorsCount.0', 'fecOutErrorsCount.0', 'fecCRCError.0'], '-OQUs', 'WHISP-BOX-MIBV2-MIB'); @@ -109,7 +110,7 @@ public function pollOS(): void 'fecOutErrorsCount' => $fec['fecOutErrorsCount.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-errorCount', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-errorCount', $tags, $fields); $this->enableGraph('canopy_generic_errorCount'); } @@ -120,7 +121,7 @@ public function pollOS(): void 'crcErrors' => $fec['fecCRCError.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-crcErrors', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-crcErrors', $tags, $fields); $this->enableGraph('canopy_generic_crcErrors'); } @@ -131,7 +132,7 @@ public function pollOS(): void 'jitter' => $jitter, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-jitter', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-jitter', $tags, $fields); $this->enableGraph('canopy_generic_jitter'); unset($rrd_def, $jitter); } @@ -150,7 +151,7 @@ public function pollOS(): void 'failed' => $failed, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-regCount', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-regCount', $tags, $fields); $this->enableGraph('canopy_generic_regCount'); unset($rrd_def, $registered, $failed); } @@ -166,7 +167,7 @@ public function pollOS(): void 'tracked' => floatval($tracked), ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-gpsStats', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-gpsStats', $tags, $fields); $this->enableGraph('canopy_generic_gpsStats'); } @@ -185,7 +186,7 @@ public function pollOS(): void 'avg' => $radio['radioDbmAvg.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-radioDbm', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-radioDbm', $tags, $fields); $this->enableGraph('canopy_generic_radioDbm'); } @@ -199,7 +200,7 @@ public function pollOS(): void 'vertical' => $dbm['linkRadioDbmVertical.2'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-450-linkRadioDbm', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-450-linkRadioDbm', $tags, $fields); $this->enableGraph('canopy_generic_450_linkRadioDbm'); } @@ -210,7 +211,7 @@ public function pollOS(): void 'last' => $lastLevel, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-450-powerlevel', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-450-powerlevel', $tags, $fields); $this->enableGraph('canopy_generic_450_powerlevel'); } @@ -228,7 +229,7 @@ public function pollOS(): void 'combined' => $combined, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-signalHV', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-signalHV', $tags, $fields); $this->enableGraph('canopy_generic_signalHV'); unset($rrd_def, $vertical, $horizontal, $combined); } @@ -245,7 +246,7 @@ public function pollOS(): void 'vertical' => $vertical, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'canopy-generic-450-slaveHV', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'canopy-generic-450-slaveHV', $tags, $fields); $this->enableGraph('canopy_generic_450_slaveHV'); } } diff --git a/LibreNMS/OS/Poweralert.php b/LibreNMS/OS/Poweralert.php index c262e1c94359..21332a93e971 100644 --- a/LibreNMS/OS/Poweralert.php +++ b/LibreNMS/OS/Poweralert.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; class Poweralert extends \LibreNMS\OS implements OSPolling @@ -37,7 +38,7 @@ public function discoverOS(Device $device): void $this->customSysName($device); } - public function pollOs(): void + public function pollOS(DataStorageInterface $datastore): void { $this->customSysName($this->getDevice()); } diff --git a/LibreNMS/OS/Procurve.php b/LibreNMS/OS/Procurve.php index 687544d0b262..2bb3526d3740 100644 --- a/LibreNMS/OS/Procurve.php +++ b/LibreNMS/OS/Procurve.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Procurve extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $FdbAddressCount = snmp_get($this->getDeviceArray(), 'hpSwitchFdbAddressCount.0', '-Ovqn', 'STATISTICS-MIB'); @@ -42,7 +43,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'fdb_count', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'fdb_count', $tags, $fields); $this->enableGraph('fdb_count'); } diff --git a/LibreNMS/OS/Pulse.php b/LibreNMS/OS/Pulse.php index 1746a0805aaa..2fbd51f53522 100644 --- a/LibreNMS/OS/Pulse.php +++ b/LibreNMS/OS/Pulse.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Pulse extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $users = snmp_get($this->getDeviceArray(), 'iveConcurrentUsers.0', '-OQv', 'PULSESECURE-PSG-MIB'); @@ -42,7 +43,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'pulse_users', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'pulse_users', $tags, $fields); $this->enableGraph('pulse_users'); } } diff --git a/LibreNMS/OS/Riverbed.php b/LibreNMS/OS/Riverbed.php index 78b2767175f7..f391e842b6f6 100644 --- a/LibreNMS/OS/Riverbed.php +++ b/LibreNMS/OS/Riverbed.php @@ -25,13 +25,14 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; use LibreNMS\RRD\RrdDefinition; class Riverbed extends OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { /* optimisation oids * @@ -76,7 +77,7 @@ public function pollOS(): void $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'riverbed_connections', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'riverbed_connections', $tags, $fields); $this->enableGraph('riverbed_connections'); } @@ -107,7 +108,7 @@ public function pollOS(): void $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'riverbed_datastore', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'riverbed_datastore', $tags, $fields); $this->enableGraph('riverbed_datastore'); } @@ -139,7 +140,7 @@ public function pollOS(): void $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'riverbed_optimization', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'riverbed_optimization', $tags, $fields); $this->enableGraph('riverbed_optimization'); } @@ -177,7 +178,7 @@ public function pollOS(): void $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'riverbed_passthrough', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'riverbed_passthrough', $tags, $fields); $this->enableGraph('riverbed_passthrough'); } } diff --git a/LibreNMS/OS/Routeros.php b/LibreNMS/OS/Routeros.php index 46b3fab848ca..7f11b2b1dafc 100644 --- a/LibreNMS/OS/Routeros.php +++ b/LibreNMS/OS/Routeros.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessCcqDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessDistanceDiscovery; @@ -466,7 +467,7 @@ public function discoverWirelessSinr() return $sensors; } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $leases = snmp_get($this->getDeviceArray(), 'mtxrDHCPLeaseCount.0', '-OQv', 'MIKROTIK-MIB'); @@ -478,7 +479,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'routeros_leases', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'routeros_leases', $tags, $fields); $this->enableGraph('routeros_leases'); } @@ -492,7 +493,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'routeros_pppoe_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'routeros_pppoe_sessions', $tags, $fields); $this->enableGraph('routeros_pppoe_sessions'); } } diff --git a/LibreNMS/OS/Rutos2xx.php b/LibreNMS/OS/Rutos2xx.php index 08bc19708fc5..6b78cc75f61d 100644 --- a/LibreNMS/OS/Rutos2xx.php +++ b/LibreNMS/OS/Rutos2xx.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessRssiDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessSnrDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; @@ -37,7 +38,7 @@ class Rutos2xx extends OS implements WirelessSnrDiscovery, WirelessRssiDiscovery { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Mobile Data Usage $usage = snmp_get_multi_oid($this->getDeviceArray(), [ @@ -59,7 +60,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'rutos_2xx_mobileDataUsage', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'rutos_2xx_mobileDataUsage', $tags, $fields); $this->enableGraph('rutos_2xx_mobileDataUsage'); } } diff --git a/LibreNMS/OS/Screenos.php b/LibreNMS/OS/Screenos.php index ab208fb7e7c5..d63ecf9b2382 100644 --- a/LibreNMS/OS/Screenos.php +++ b/LibreNMS/OS/Screenos.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Screenos extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $sess_data = snmp_get_multi_oid($this->getDeviceArray(), [ '.1.3.6.1.4.1.3224.16.3.2.0', @@ -53,7 +54,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'screenos_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'screenos_sessions', $tags, $fields); $this->enableGraph('screenos_sessions'); } diff --git a/LibreNMS/OS/Secureplatform.php b/LibreNMS/OS/Secureplatform.php index 462f2aeefb56..c644bca9b4f1 100644 --- a/LibreNMS/OS/Secureplatform.php +++ b/LibreNMS/OS/Secureplatform.php @@ -25,12 +25,13 @@ namespace LibreNMS\OS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Secureplatform extends \LibreNMS\OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $connections = snmp_get($this->getDeviceArray(), 'fwNumConn.0', '-OQv', 'CHECKPOINT-MIB'); @@ -42,7 +43,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'secureplatform_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'secureplatform_sessions', $tags, $fields); $this->enableGraph('secureplatform_sessions'); } } diff --git a/LibreNMS/OS/Sgos.php b/LibreNMS/OS/Sgos.php index a17fdbde7b54..5c2612b4be2e 100644 --- a/LibreNMS/OS/Sgos.php +++ b/LibreNMS/OS/Sgos.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use LibreNMS\Device\Processor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\ProcessorDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; @@ -33,7 +34,7 @@ class Sgos extends OS implements ProcessorDiscovery, OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $oid_list = [ 'sgProxyHttpClientRequestRate.0', @@ -55,7 +56,7 @@ public function pollOS(): void 'requests' => $sgos[0]['sgProxyHttpClientRequestRate'], ]; - data_update($this->getDeviceArray(), 'sgos_average_requests', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_average_requests', $tags, $fields); $this->enableGraph('sgos_average_requests'); echo ' HTTP Req Rate'; @@ -69,7 +70,7 @@ public function pollOS(): void 'client_conn' => $sgos[0]['sgProxyHttpClientConnections'], ]; - data_update($this->getDeviceArray(), 'sgos_client_connections', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_client_connections', $tags, $fields); $this->enableGraph('sgos_client_connections'); echo ' Client Conn'; @@ -83,7 +84,7 @@ public function pollOS(): void 'server_conn' => $sgos[0]['sgProxyHttpServerConnections'], ]; - data_update($this->getDeviceArray(), 'sgos_server_connections', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_server_connections', $tags, $fields); $this->enableGraph('sgos_server_connections'); echo ' Server Conn'; @@ -97,7 +98,7 @@ public function pollOS(): void 'client_conn_active' => $sgos[0]['sgProxyHttpClientConnectionsActive'], ]; - data_update($this->getDeviceArray(), 'sgos_client_connections_active', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_client_connections_active', $tags, $fields); $this->enableGraph('sgos_client_connections_active'); echo ' Client Conn Active'; @@ -111,7 +112,7 @@ public function pollOS(): void 'server_conn_active' => $sgos[0]['sgProxyHttpServerConnectionsActive'], ]; - data_update($this->getDeviceArray(), 'sgos_server_connections_active', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_server_connections_active', $tags, $fields); $this->enableGraph('sgos_server_connections_active'); echo ' Server Conn Active'; @@ -125,7 +126,7 @@ public function pollOS(): void 'client_idle' => $sgos[0]['sgProxyHttpClientConnectionsIdle'], ]; - data_update($this->getDeviceArray(), 'sgos_client_connections_idle', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_client_connections_idle', $tags, $fields); $this->enableGraph('sgos_client_connections_idle'); echo ' Client Conne Idle'; @@ -139,7 +140,7 @@ public function pollOS(): void 'server_idle' => $sgos[0]['sgProxyHttpServerConnectionsIdle'], ]; - data_update($this->getDeviceArray(), 'sgos_server_connections_idle', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sgos_server_connections_idle', $tags, $fields); $this->enableGraph('sgos_server_connections_idle'); echo ' Server Conn Idle'; diff --git a/LibreNMS/OS/Shared/Cisco.php b/LibreNMS/OS/Shared/Cisco.php index fadb03ed9011..8f54ab60ec70 100755 --- a/LibreNMS/OS/Shared/Cisco.php +++ b/LibreNMS/OS/Shared/Cisco.php @@ -440,15 +440,7 @@ public function pollSlas($slas): void echo 'SLA ' . $sla_nr . ': ' . $rtt_type . ' ' . $sla['owner'] . ' ' . $sla['tag'] . '... ' . $sla->rtt . 'ms at ' . $time . "\n"; - $fields = [ - 'rtt' => $sla->rtt, - ]; - - // The base RRD - $rrd_name = ['sla', $sla['sla_nr']]; - $rrd_def = RrdDefinition::make()->addDataset('rtt', 'GAUGE', 0, 300000); - $tags = compact('sla_nr', 'rrd_name', 'rrd_def'); - data_update($device, 'sla', $tags, $fields); + $collected = ['rtt' => $sla->rtt]; // Let's gather some per-type fields. switch ($rtt_type) { @@ -480,8 +472,8 @@ public function pollSlas($slas): void ->addDataset('AvgSDJ', 'GAUGE', 0) ->addDataset('AvgDSJ', 'GAUGE', 0); $tags = compact('rrd_name', 'rrd_def', 'sla_nr', 'rtt_type'); - data_update($device, 'sla', $tags, $jitter); - $fields = array_merge($fields, $jitter); + app('Datastore')->put($device, 'sla', $tags, $jitter); + $collected = array_merge($collected, $jitter); // Additional rrd for total number packet in sla $numPackets = [ 'NumPackets' => $data[$sla_nr]['rttMonEchoAdminNumPackets'], @@ -490,8 +482,8 @@ public function pollSlas($slas): void $rrd_def = RrdDefinition::make() ->addDataset('NumPackets', 'GAUGE', 0); $tags = compact('rrd_name', 'rrd_def', 'sla_nr', 'rtt_type'); - data_update($device, 'sla', $tags, $numPackets); - $fields = array_merge($fields, $numPackets); + app('Datastore')->put($device, 'sla', $tags, $numPackets); + $collected = array_merge($collected, $numPackets); break; case 'icmpjitter': $icmpjitter = [ @@ -519,13 +511,13 @@ public function pollSlas($slas): void ->addDataset('JitterIAJOut', 'GAUGE', 0) ->addDataset('JitterIAJIn', 'GAUGE', 0); $tags = compact('rrd_name', 'rrd_def', 'sla_nr', 'rtt_type'); - data_update($device, 'sla', $tags, $icmpjitter); - $fields = array_merge($fields, $icmpjitter); + app('Datastore')->put($device, 'sla', $tags, $icmpjitter); + $collected = array_merge($collected, $icmpjitter); break; } d_echo('The following datasources were collected for #' . $sla['sla_nr'] . ":\n"); - d_echo($fields); + d_echo($collected); } } diff --git a/LibreNMS/OS/Sonicwall.php b/LibreNMS/OS/Sonicwall.php index 01c58a2fe482..b8064ee58c6f 100644 --- a/LibreNMS/OS/Sonicwall.php +++ b/LibreNMS/OS/Sonicwall.php @@ -19,6 +19,7 @@ use Illuminate\Support\Str; use LibreNMS\Device\Processor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\ProcessorDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS; @@ -26,7 +27,7 @@ class Sonicwall extends OS implements OSPolling, ProcessorDiscovery { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $data = snmp_get_multi($this->getDeviceArray(), [ 'sonicCurrentConnCacheEntries.0', @@ -42,7 +43,7 @@ public function pollOS(): void 'maxsessions' => $data[0]['sonicMaxConnCacheEntries'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'sonicwall_sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'sonicwall_sessions', $tags, $fields); $this->enableGraph('sonicwall_sessions'); } } diff --git a/LibreNMS/OS/Timos.php b/LibreNMS/OS/Timos.php index 0738e2cca3ac..e5f09e9dc53f 100644 --- a/LibreNMS/OS/Timos.php +++ b/LibreNMS/OS/Timos.php @@ -720,7 +720,7 @@ public function pollMplsSaps($svcs) 'rrd_def' => $rrd_def, ]; - data_update($this->getDeviceArray(), 'sap', $tags, $fields); + app('Datastore')->put($this->getDeviceArray(), 'sap', $tags, $fields); $this->enableGraph('sap'); } diff --git a/LibreNMS/OS/Topvision.php b/LibreNMS/OS/Topvision.php index bfc2ed976cff..aee2d06393b6 100644 --- a/LibreNMS/OS/Topvision.php +++ b/LibreNMS/OS/Topvision.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; @@ -40,7 +41,7 @@ public function discoverOS(Device $device): void } } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $cmstats = snmp_get_multi_oid($this->getDeviceArray(), ['.1.3.6.1.4.1.32285.11.1.1.2.2.3.1.0', '.1.3.6.1.4.1.32285.11.1.1.2.2.3.6.0', '.1.3.6.1.4.1.32285.11.1.1.2.2.3.5.0']); if (is_numeric($cmstats['.1.3.6.1.4.1.32285.11.1.1.2.2.3.1.0'])) { @@ -49,7 +50,7 @@ public function pollOS(): void 'cmtotal' => $cmstats['.1.3.6.1.4.1.32285.11.1.1.2.2.3.1.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'topvision_cmtotal', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'topvision_cmtotal', $tags, $fields); $this->enableGraph('topvision_cmtotal'); } @@ -59,7 +60,7 @@ public function pollOS(): void 'cmreg' => $cmstats['.1.3.6.1.4.1.32285.11.1.1.2.2.3.6.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'topvision_cmreg', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'topvision_cmreg', $tags, $fields); $this->enableGraph('topvision_cmreg'); } @@ -69,7 +70,7 @@ public function pollOS(): void 'cmoffline' => $cmstats['.1.3.6.1.4.1.32285.11.1.1.2.2.3.5.0'], ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'topvision_cmoffline', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'topvision_cmoffline', $tags, $fields); $this->enableGraph('topvision_cmoffline'); } } diff --git a/LibreNMS/OS/Vrp.php b/LibreNMS/OS/Vrp.php index 9505ce00f9ec..d36c019fcd41 100644 --- a/LibreNMS/OS/Vrp.php +++ b/LibreNMS/OS/Vrp.php @@ -35,6 +35,7 @@ use Illuminate\Support\Str; use LibreNMS\Device\Processor; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\MempoolsDiscovery; use LibreNMS\Interfaces\Discovery\OSDiscovery; use LibreNMS\Interfaces\Discovery\ProcessorDiscovery; @@ -107,7 +108,7 @@ public function discoverOS(Device $device): void } } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { // Polling the Wireless data TODO port to module $apTable = snmpwalk_group($this->getDeviceArray(), 'hwWlanApName', 'HUAWEI-WLAN-AP-MIB', 2); @@ -162,7 +163,7 @@ public function pollOS(): void ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'vrp', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'vrp', $tags, $fields); $ap_db = dbFetchRows('SELECT * FROM `access_points` WHERE `device_id` = ?', [$this->getDeviceArray()['device_id']]); @@ -223,7 +224,7 @@ public function pollOS(): void ]; $tags = compact('name', 'radionum', 'rrd_name', 'rrd_def'); - data_update($this->getDeviceArray(), 'arubaap', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'arubaap', $tags, $fields); $foundid = 0; @@ -541,15 +542,7 @@ public function pollSlas($slas): void $time = Carbon::parse($data[$owner][$test]['pingResultsLastGoodProbe'] ?? null)->toDateTimeString(); echo 'SLA : ' . $rtt_type . ' ' . $owner . ' ' . $test . '... ' . $sla->rtt . 'ms at ' . $time . "\n"; - $fields = [ - 'rtt' => $sla->rtt, - ]; - - // The base RRD - $rrd_name = ['sla', $sla['sla_nr']]; - $rrd_def = RrdDefinition::make()->addDataset('rtt', 'GAUGE', 0, 300000); - $tags = compact('sla_nr', 'rrd_name', 'rrd_def'); - data_update($device, 'sla', $tags, $fields); + $collected = ['rtt' => $sla->rtt]; // Let's gather some per-type fields. switch ($rtt_type) { @@ -567,13 +560,13 @@ public function pollSlas($slas): void ->addDataset('ProbeResponses', 'GAUGE', 0, 300000) ->addDataset('ProbeLoss', 'GAUGE', 0, 300000); $tags = compact('rrd_name', 'rrd_def', 'sla_nr', 'rtt_type'); - data_update($device, 'sla', $tags, $icmp); - $fields = array_merge($fields, $icmp); + app('Datastore')->put($device, 'sla', $tags, $icmp); + $collected = array_merge($collected, $icmp); break; } - d_echo('The following datasources were collected for #' . $sla['sla_nr'] . ":\n"); - d_echo($fields); + d_echo('The following datasources were collected for #' . $sla->sla_nr . ":\n"); + d_echo($collected); } } } diff --git a/LibreNMS/OS/XirrusAos.php b/LibreNMS/OS/XirrusAos.php index 5c6d06c0d052..837757a7f7ae 100644 --- a/LibreNMS/OS/XirrusAos.php +++ b/LibreNMS/OS/XirrusAos.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use LibreNMS\Device\WirelessSensor; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\Sensors\WirelessClientsDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery; use LibreNMS\Interfaces\Discovery\Sensors\WirelessNoiseFloorDiscovery; @@ -49,7 +50,7 @@ class XirrusAos extends OS implements WirelessRssiDiscovery, WirelessSnrDiscovery { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $associations = []; @@ -75,7 +76,7 @@ public function pollOS(): void 'stations' => $count, ]; $tags = compact('radio', 'rrd_name', 'rrd_def'); - data_update($this->getDeviceArray(), $measurement, $tags, $fields); + $datastore->put($this->getDeviceArray(), $measurement, $tags, $fields); } $this->enableGraph('xirrus_stations'); } diff --git a/LibreNMS/OS/Zywall.php b/LibreNMS/OS/Zywall.php index 8c0908f0ed4d..79ec1d517789 100644 --- a/LibreNMS/OS/Zywall.php +++ b/LibreNMS/OS/Zywall.php @@ -26,6 +26,7 @@ namespace LibreNMS\OS; use App\Models\Device; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Discovery\OSDiscovery; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\OS\Shared\Zyxel; @@ -44,7 +45,7 @@ public function discoverOS(Device $device): void } } - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $sessions = snmp_get($this->getDeviceArray(), '.1.3.6.1.4.1.890.1.6.22.1.6.0', '-Ovq'); if (is_numeric($sessions)) { @@ -53,7 +54,7 @@ public function pollOS(): void 'sessions' => $sessions, ]; $tags = compact('rrd_def'); - data_update($this->getDeviceArray(), 'zywall-sessions', $tags, $fields); + $datastore->put($this->getDeviceArray(), 'zywall-sessions', $tags, $fields); $this->enableGraph('zywall_sessions'); } } diff --git a/LibreNMS/Poller.php b/LibreNMS/Poller.php index d37f3821aad9..02f4986e2332 100644 --- a/LibreNMS/Poller.php +++ b/LibreNMS/Poller.php @@ -28,11 +28,11 @@ use App\Events\DevicePolled; use App\Events\PollingDevice; use App\Models\Device; +use App\Models\Eventlog; use App\Polling\Measure\Measurement; use App\Polling\Measure\MeasurementManager; use Carbon\Carbon; use Illuminate\Database\Eloquent\Builder; -use Illuminate\Support\Facades\DB; use Illuminate\Support\Str; use LibreNMS\Enum\Severity; use LibreNMS\Exceptions\PollerException; @@ -41,7 +41,6 @@ use LibreNMS\Util\Debug; use LibreNMS\Util\Dns; use LibreNMS\Util\Module; -use LibreNMS\Util\StringHelpers; use LibreNMS\Util\Version; use Psr\Log\LoggerInterface; use Throwable; @@ -94,15 +93,15 @@ public function poll(): int PollingDevice::dispatch($this->device); $this->os = OS::make($this->deviceArray); + $measurement = Measurement::start('poll'); + $measurement->manager()->checkpoint(); // don't count previous stats + $helper = new ConnectivityHelper($this->device); $helper->saveMetrics(); + $helper->isUp(); // check and save status - $measurement = Measurement::start('poll'); - $measurement->manager()->checkpoint(); // don't count previous stats + $this->pollModules(); - if ($helper->isUp()) { - $this->pollModules(); - } $measurement->end(); if (empty($this->module_override)) { @@ -163,8 +162,6 @@ public function totalDevices(): int private function pollModules(): void { - $this->filterModules(); - // update $device array status $this->deviceArray['status'] = $this->device->status; $this->deviceArray['status_reason'] = $this->device->status_reason; @@ -174,24 +171,34 @@ private function pollModules(): void include_once base_path('includes/common.php'); include_once base_path('includes/polling/functions.inc.php'); include_once base_path('includes/snmp.inc.php'); - include_once base_path('includes/datastore.inc.php'); // remove me - - foreach (Config::get('poller_modules') as $module => $module_status) { - if ($this->isModuleEnabled($module, $module_status)) { - $start_memory = memory_get_usage(); - $module_start = microtime(true); - $this->logger->info("\n#### Load poller module $module ####"); - - try { - $instance = Module::fromName($module); - $instance->poll($this->os); - } catch (Throwable $e) { - // isolate module exceptions so they don't disrupt the polling process - $this->logger->error("%rError polling $module module for {$this->device->hostname}.%n $e", ['color' => true]); - \App\Models\Eventlog::log("Error polling $module module. Check log file for more details.", $this->device, 'poller', Severity::Error); - report($e); + + $datastore = app('Datastore'); + + foreach (array_keys(Config::get('poller_modules')) as $module) { + $module_status = Module::status($module, $this->device, $this->isModuleManuallyEnabled($module)); + $should_poll = false; + $start_memory = memory_get_usage(); + $module_start = microtime(true); + + try { + $instance = Module::fromName($module); + $should_poll = $instance->shouldPoll($this->os, $module_status); + + if ($should_poll) { + $this->logger->info("#### Load poller module $module ####\n"); + $this->logger->debug($module_status); + + $instance->poll($this->os, $datastore); } + } catch (Throwable $e) { + // isolate module exceptions so they don't disrupt the polling process + $this->logger->error("%rError polling $module module for {$this->device->hostname}.%n $e", ['color' => true]); + \App\Models\Eventlog::log("Error polling $module module. Check log file for more details.", $this->device, 'poller', Severity::Error); + report($e); + } + if ($should_poll) { + $this->logger->info(''); app(MeasurementManager::class)->printChangedStats(); $this->saveModulePerformance($module, $module_start, $start_memory); $this->logger->info("#### Unload poller module $module ####\n"); @@ -216,45 +223,22 @@ private function saveModulePerformance(string $module, float $start_time, int $s $this->os->enableGraph('poller_modules_perf'); } - private function isModuleEnabled(string $module, bool $global_status): bool + private function isModuleManuallyEnabled(string $module): ?bool { - if (! empty($this->module_override)) { - if (in_array($module, $this->module_override)) { - $this->logger->debug("Module $module manually enabled"); + if (empty($this->module_override)) { + return null; + } + foreach ($this->module_override as $override) { + [$override_module] = explode('/', $override); + if ($module == $override_module) { return true; } - - return false; - } - - $os_module_status = Config::get("os.{$this->device->os}.poller_modules.$module"); - $device_attrib = $this->device->getAttrib('poll_' . $module); - $this->logger->debug(sprintf('Modules status: Global %s OS %s Device %s', - $global_status ? '+' : '-', - $os_module_status === null ? ' ' : ($os_module_status ? '+' : '-'), - $device_attrib === null ? ' ' : ($device_attrib ? '+' : '-') - )); - - if ($device_attrib - || ($os_module_status && $device_attrib === null) - || ($global_status && $os_module_status === null && $device_attrib === null)) { - return true; } - $reason = $device_attrib !== null ? 'by device' - : ($os_module_status === null || $os_module_status ? 'globally' : 'by OS'); - $this->logger->debug("Module [ $module ] disabled $reason"); - return false; } - private function moduleExists(string $module): bool - { - return class_exists(StringHelpers::toClass($module, '\\LibreNMS\\Modules\\')) - || is_file("includes/polling/$module.inc.php"); - } - private function buildDeviceQuery(): Builder { $query = Device::query(); @@ -264,11 +248,9 @@ private function buildDeviceQuery(): Builder } elseif ($this->device_spec == 'all') { return $query; } elseif ($this->device_spec == 'even') { - /** @phpstan-ignore-next-line */ - return $query->where(DB::raw('device_id % 2'), 0); + return $query->whereRaw('device_id % 2 = 0'); } elseif ($this->device_spec == 'odd') { - /** @phpstan-ignore-next-line */ - return $query->where(DB::raw('device_id % 2'), 1); + return $query->whereRaw('device_id % 2 = 1'); } elseif (is_numeric($this->device_spec)) { return $query->where('device_id', $this->device_spec); } elseif (Str::contains($this->device_spec, '*')) { @@ -296,9 +278,14 @@ private function initDevice(int $device_id): void private function initRrdDirectory(): void { $host_rrd = \Rrd::name($this->device->hostname, '', ''); - if (Config::get('rrd.enable', true) && ! is_dir($host_rrd)) { - mkdir($host_rrd); - $this->logger->info("Created directory : $host_rrd"); + if (Config::get('rrd.enable', true) && ! Config::get('rrdcached') && ! is_dir($host_rrd)) { + try { + mkdir($host_rrd); + $this->logger->info("Created directory : $host_rrd"); + } catch (\ErrorException $e) { + Eventlog::log("Failed to create rrd directory: $host_rrd", $this->device); + $this->logger->error($e); + } } } @@ -313,7 +300,7 @@ private function parseModules(): void Config::set("poller_submodules.$module", $existing_submodules); } - if (! $this->moduleExists($module)) { + if (! Module::exists($module)) { unset($this->module_override[$index]); continue; } @@ -324,21 +311,6 @@ private function parseModules(): void $this->printModules(); } - private function filterModules(): void - { - if ($this->device->snmp_disable) { - // only non-snmp modules - Config::set('poller_modules', array_intersect_key(Config::get('poller_modules'), [ - 'availability' => true, - 'ipmi' => true, - 'unix-agent' => true, - ])); - } else { - // we always want the core module to be included, prepend it - Config::set('poller_modules', ['core' => true] + Config::get('poller_modules')); - } - } - private function printDeviceInfo(?string $group): void { $this->logger->info(sprintf(<<<'EOH' diff --git a/LibreNMS/Polling/ModuleStatus.php b/LibreNMS/Polling/ModuleStatus.php new file mode 100644 index 000000000000..fbf6f9afa3c4 --- /dev/null +++ b/LibreNMS/Polling/ModuleStatus.php @@ -0,0 +1,82 @@ +. + * + * @link https://www.librenms.org + * + * @copyright 2023 Tony Murray + * @author Tony Murray + */ + +namespace LibreNMS\Polling; + +class ModuleStatus +{ + public function __construct( + public bool $global, + public ?bool $os = null, + public ?bool $device = null, + public ?bool $manual = null, + ) { + } + + public function isEnabled(): bool + { + if ($this->manual !== null) { + return $this->manual; + } + + if ($this->device !== null) { + return $this->device; + } + + if ($this->os !== null) { + return $this->os; + } + + return $this->global; + } + + public function reason(): string + { + if ($this->manual !== null) { + return 'mannually'; + } + + if ($this->device !== null) { + return 'by device'; + } + + if ($this->os !== null) { + return 'by OS'; + } + + return 'globally'; + } + + public function __toString(): string + { + return sprintf('Module %s: Global %s | OS %s | Device %s | Manual %s', + $this->isEnabled() ? 'enabled' : 'disabled', + $this->global ? '+' : '-', + $this->os === null ? ' ' : ($this->os ? '+' : '-'), + $this->device === null ? ' ' : ($this->device ? '+' : '-'), + $this->manual === null ? ' ' : ($this->manual ? '+' : '-'), + ); + } +} diff --git a/LibreNMS/Snmptrap/Handlers/BgpBackwardTransition.php b/LibreNMS/Snmptrap/Handlers/BgpBackwardTransition.php index 9be1e506862a..93e7ffe9d6e7 100644 --- a/LibreNMS/Snmptrap/Handlers/BgpBackwardTransition.php +++ b/LibreNMS/Snmptrap/Handlers/BgpBackwardTransition.php @@ -29,6 +29,7 @@ use LibreNMS\Enum\Severity; use LibreNMS\Interfaces\SnmptrapHandler; use LibreNMS\Snmptrap\Trap; +use LibreNMS\Util\AutonomousSystem; use Log; class BgpBackwardTransition implements SnmptrapHandler @@ -57,7 +58,7 @@ public function handle(Device $device, Trap $trap) $bgpPeer->bgpPeerState = $trap->getOidData($state_oid); if ($bgpPeer->isDirty('bgpPeerState')) { - $trap->log('SNMP Trap: BGP Down ' . $bgpPeer->bgpPeerIdentifier . ' ' . get_astext($bgpPeer->bgpPeerRemoteAs) . ' is now ' . $bgpPeer->bgpPeerState, severity: Severity::Error, type: 'bgpPeer', + $trap->log('SNMP Trap: BGP Down ' . $bgpPeer->bgpPeerIdentifier . ' ' . AutonomousSystem::get($bgpPeer->bgpPeerRemoteAs)->name() . ' is now ' . $bgpPeer->bgpPeerState, severity: Severity::Error, type: 'bgpPeer', reference: $bgpPeerIp); } diff --git a/LibreNMS/Snmptrap/Handlers/BgpEstablished.php b/LibreNMS/Snmptrap/Handlers/BgpEstablished.php index 10343b3b7c75..8fed24d757a4 100644 --- a/LibreNMS/Snmptrap/Handlers/BgpEstablished.php +++ b/LibreNMS/Snmptrap/Handlers/BgpEstablished.php @@ -29,6 +29,7 @@ use LibreNMS\Enum\Severity; use LibreNMS\Interfaces\SnmptrapHandler; use LibreNMS\Snmptrap\Trap; +use LibreNMS\Util\AutonomousSystem; use Log; class BgpEstablished implements SnmptrapHandler @@ -57,7 +58,7 @@ public function handle(Device $device, Trap $trap) $bgpPeer->bgpPeerState = $trap->getOidData($state_oid); if ($bgpPeer->isDirty('bgpPeerState')) { - $trap->log('SNMP Trap: BGP Up ' . $bgpPeer->bgpPeerIdentifier . ' ' . get_astext($bgpPeer->bgpPeerRemoteAs) . ' is now ' . $bgpPeer->bgpPeerState, Severity::Ok, 'bgpPeer', $bgpPeerIp); + $trap->log('SNMP Trap: BGP Up ' . $bgpPeer->bgpPeerIdentifier . ' ' . AutonomousSystem::get($bgpPeer->bgpPeerRemoteAs)->name() . ' is now ' . $bgpPeer->bgpPeerState, Severity::Ok, 'bgpPeer', $bgpPeerIp); } $bgpPeer->save(); diff --git a/LibreNMS/Util/Module.php b/LibreNMS/Util/Module.php index cc668b1e4ab8..4280694e2235 100644 --- a/LibreNMS/Util/Module.php +++ b/LibreNMS/Util/Module.php @@ -25,7 +25,10 @@ namespace LibreNMS\Util; +use App\Models\Device; +use LibreNMS\Config; use LibreNMS\Modules\LegacyModule; +use LibreNMS\Polling\ModuleStatus; class Module { @@ -35,4 +38,20 @@ public static function fromName(string $name): \LibreNMS\Interfaces\Module return class_exists($module_class) ? new $module_class : new LegacyModule($name); } + + public static function status(string $name, Device $device, ?bool $manual = null): ModuleStatus + { + return new ModuleStatus( + Config::get('poller_modules.' . $name), + Config::get("os.{$device->os}.poller_modules.$name"), + $device->getAttrib('poll_' . $name), + $manual, + ); + } + + public static function exists(string $module): bool + { + return class_exists(StringHelpers::toClass($module, '\\LibreNMS\\Modules\\')) + || is_file(base_path("includes/polling/$module.inc.php")); + } } diff --git a/LibreNMS/Validations/Mail.php b/LibreNMS/Validations/Mail.php index 3c68ad482c70..81eac15e4a19 100644 --- a/LibreNMS/Validations/Mail.php +++ b/LibreNMS/Validations/Mail.php @@ -71,7 +71,7 @@ public function validate(Validator $validator): void }//end if if ($run_test == 1) { $email = Config::get('alert.default_mail'); - if ($err = send_mail($email, 'Test email', 'Testing email from NMS')) { + if ($err = \LibreNMS\Util\Mail::send($email, 'Test email', 'Testing email from NMS', false)) { $validator->ok('Email has been sent'); } else { $validator->fail("Issue sending email to $email with error $err"); diff --git a/LibreNMS/Waas.php b/LibreNMS/Waas.php index 19c7618b9b4e..f961dfcb0e5e 100644 --- a/LibreNMS/Waas.php +++ b/LibreNMS/Waas.php @@ -25,17 +25,18 @@ namespace LibreNMS; +use LibreNMS\Interfaces\Data\DataStorageInterface; use LibreNMS\Interfaces\Polling\OSPolling; use LibreNMS\RRD\RrdDefinition; class Waas extends OS implements OSPolling { - public function pollOS(): void + public function pollOS(DataStorageInterface $datastore): void { $connections = \SnmpQuery::get('CISCO-WAN-OPTIMIZATION-MIB::cwoTfoStatsActiveOptConn.0')->value(); if (is_numeric($connections)) { - data_update($this->getDeviceArray(), 'waas_cwotfostatsactiveoptconn', [ + $datastore->put($this->getDeviceArray(), 'waas_cwotfostatsactiveoptconn', [ 'rrd_def' => RrdDefinition::make()->addDataset('connections', 'GAUGE', 0), ], [ 'connections' => $connections, diff --git a/app/Models/Availability.php b/app/Models/Availability.php index cc945ee3e34e..69c345bfa5c9 100644 --- a/app/Models/Availability.php +++ b/app/Models/Availability.php @@ -31,4 +31,10 @@ class Availability extends Model { public $timestamps = false; protected $table = 'availability'; + protected $primaryKey = 'availability_id'; + protected $fillable = [ + 'device_id', + 'duration', + 'availability_perc', + ]; } diff --git a/app/Models/Device.php b/app/Models/Device.php index 20479b5778de..0c10ea0907a9 100644 --- a/app/Models/Device.php +++ b/app/Models/Device.php @@ -81,6 +81,7 @@ class Device extends BaseModel ]; protected $casts = [ + 'inserted' => 'datetime', 'last_polled' => 'datetime', 'status' => 'boolean', ]; diff --git a/app/Models/User.php b/app/Models/User.php index 4643969ea979..cb7123d5800a 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -228,6 +228,11 @@ public function apiTokens(): HasMany return $this->hasMany(\App\Models\ApiToken::class, 'user_id', 'user_id'); } + public function bills(): BelongsToMany + { + return $this->belongsToMany(\App\Models\Bill::class, 'bill_perms', 'user_id', 'bill_id'); + } + public function devices() { // pseudo relation @@ -236,6 +241,11 @@ public function devices() }); } + public function devicesOwned(): BelongsToMany + { + return $this->belongsToMany(\App\Models\Device::class, 'devices_perms', 'user_id', 'device_id'); + } + public function deviceGroups(): BelongsToMany { return $this->belongsToMany(\App\Models\DeviceGroup::class, 'devices_group_perms', 'user_id', 'device_group_id'); @@ -247,10 +257,15 @@ public function ports() return Port::query(); } else { //FIXME we should return all ports for a device if the user has been given access to the whole device. - return $this->belongsToMany(\App\Models\Port::class, 'ports_perms', 'user_id', 'port_id'); + return $this->portsOwned(); } } + public function portsOwned(): BelongsToMany + { + return $this->belongsToMany(\App\Models\Port::class, 'ports_perms', 'user_id', 'port_id'); + } + public function dashboards(): HasMany { return $this->hasMany(\App\Models\Dashboard::class, 'user_id'); diff --git a/composer.lock b/composer.lock index b26090101a16..7f5c06292567 100644 --- a/composer.lock +++ b/composer.lock @@ -1760,16 +1760,16 @@ }, { "name": "justinrainbow/json-schema", - "version": "5.2.12", + "version": "v5.2.13", "source": { "type": "git", "url": "https://github.com/justinrainbow/json-schema.git", - "reference": "ad87d5a5ca981228e0e205c2bc7dfb8e24559b60" + "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/ad87d5a5ca981228e0e205c2bc7dfb8e24559b60", - "reference": "ad87d5a5ca981228e0e205c2bc7dfb8e24559b60", + "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/fbbe7e5d79f618997bc3332a6f49246036c45793", + "reference": "fbbe7e5d79f618997bc3332a6f49246036c45793", "shasum": "" }, "require": { @@ -1824,9 +1824,9 @@ ], "support": { "issues": "https://github.com/justinrainbow/json-schema/issues", - "source": "https://github.com/justinrainbow/json-schema/tree/5.2.12" + "source": "https://github.com/justinrainbow/json-schema/tree/v5.2.13" }, - "time": "2022-04-13T08:02:27+00:00" + "time": "2023-09-26T02:20:38+00:00" }, { "name": "laravel-notification-channels/webpush", @@ -5802,16 +5802,16 @@ }, { "name": "symfony/console", - "version": "v6.3.0", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7" + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", - "reference": "8788808b07cf0bdd6e4b7fdd23d8ddb1470c83b7", + "url": "https://api.github.com/repos/symfony/console/zipball/eca495f2ee845130855ddf1cf18460c38966c8b6", + "reference": "eca495f2ee845130855ddf1cf18460c38966c8b6", "shasum": "" }, "require": { @@ -5872,7 +5872,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v6.3.0" + "source": "https://github.com/symfony/console/tree/v6.3.4" }, "funding": [ { @@ -5888,7 +5888,7 @@ "type": "tidelift" } ], - "time": "2023-05-29T12:49:39+00:00" + "time": "2023-08-16T10:10:12+00:00" }, { "name": "symfony/css-selector", @@ -6254,16 +6254,16 @@ }, { "name": "symfony/finder", - "version": "v6.3.0", + "version": "v6.3.3", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2" + "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/d9b01ba073c44cef617c7907ce2419f8d00d75e2", - "reference": "d9b01ba073c44cef617c7907ce2419f8d00d75e2", + "url": "https://api.github.com/repos/symfony/finder/zipball/9915db259f67d21eefee768c1abcf1cc61b1fc9e", + "reference": "9915db259f67d21eefee768c1abcf1cc61b1fc9e", "shasum": "" }, "require": { @@ -6298,7 +6298,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v6.3.0" + "source": "https://github.com/symfony/finder/tree/v6.3.3" }, "funding": [ { @@ -6314,7 +6314,7 @@ "type": "tidelift" } ], - "time": "2023-04-02T01:25:41+00:00" + "time": "2023-07-31T08:31:44+00:00" }, { "name": "symfony/http-foundation", @@ -6671,16 +6671,16 @@ }, { "name": "symfony/polyfill-ctype", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a" + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/5bbc823adecdae860bb64756d639ecfec17b050a", - "reference": "5bbc823adecdae860bb64756d639ecfec17b050a", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", + "reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb", "shasum": "" }, "require": { @@ -6695,7 +6695,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6733,7 +6733,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0" }, "funding": [ { @@ -6749,20 +6749,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354" + "reference": "875e90aeea2777b6f135677f618529449334a612" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/511a08c03c1960e08a883f4cffcacd219b758354", - "reference": "511a08c03c1960e08a883f4cffcacd219b758354", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612", + "reference": "875e90aeea2777b6f135677f618529449334a612", "shasum": "" }, "require": { @@ -6774,7 +6774,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6814,7 +6814,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0" }, "funding": [ { @@ -6830,7 +6830,7 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-intl-idn", @@ -6921,16 +6921,16 @@ }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6" + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/19bd1e4fcd5b91116f14d8533c57831ed00571b6", - "reference": "19bd1e4fcd5b91116f14d8533c57831ed00571b6", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", + "reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92", "shasum": "" }, "require": { @@ -6942,7 +6942,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -6985,7 +6985,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0" }, "funding": [ { @@ -7001,20 +7001,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534" + "reference": "42292d99c55abe617799667f454222c54c60e229" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/8ad114f6b39e2c98a8b0e3bd907732c207c2b534", - "reference": "8ad114f6b39e2c98a8b0e3bd907732c207c2b534", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229", + "reference": "42292d99c55abe617799667f454222c54c60e229", "shasum": "" }, "require": { @@ -7029,7 +7029,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -7068,7 +7068,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0" }, "funding": [ { @@ -7084,7 +7084,7 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-07-28T09:04:16+00:00" }, { "name": "symfony/polyfill-php72", @@ -7164,16 +7164,16 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936" + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", - "reference": "7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5", + "reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5", "shasum": "" }, "require": { @@ -7182,7 +7182,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -7227,7 +7227,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0" }, "funding": [ { @@ -7243,7 +7243,7 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-php83", @@ -7406,16 +7406,16 @@ }, { "name": "symfony/process", - "version": "v6.3.0", + "version": "v6.3.4", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628" + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/8741e3ed7fe2e91ec099e02446fb86667a0f1628", - "reference": "8741e3ed7fe2e91ec099e02446fb86667a0f1628", + "url": "https://api.github.com/repos/symfony/process/zipball/0b5c29118f2e980d455d2e34a5659f4579847c54", + "reference": "0b5c29118f2e980d455d2e34a5659f4579847c54", "shasum": "" }, "require": { @@ -7447,7 +7447,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v6.3.0" + "source": "https://github.com/symfony/process/tree/v6.3.4" }, "funding": [ { @@ -7463,7 +7463,7 @@ "type": "tidelift" } ], - "time": "2023-05-19T08:06:44+00:00" + "time": "2023-08-07T10:39:22+00:00" }, { "name": "symfony/routing", @@ -7631,16 +7631,16 @@ }, { "name": "symfony/string", - "version": "v6.3.0", + "version": "v6.3.2", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f" + "reference": "53d1a83225002635bca3482fcbf963001313fb68" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/f2e190ee75ff0f5eced645ec0be5c66fac81f51f", - "reference": "f2e190ee75ff0f5eced645ec0be5c66fac81f51f", + "url": "https://api.github.com/repos/symfony/string/zipball/53d1a83225002635bca3482fcbf963001313fb68", + "reference": "53d1a83225002635bca3482fcbf963001313fb68", "shasum": "" }, "require": { @@ -7697,7 +7697,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v6.3.0" + "source": "https://github.com/symfony/string/tree/v6.3.2" }, "funding": [ { @@ -7713,7 +7713,7 @@ "type": "tidelift" } ], - "time": "2023-03-21T21:06:29+00:00" + "time": "2023-07-05T08:41:27+00:00" }, { "name": "symfony/translation", @@ -9130,16 +9130,16 @@ }, { "name": "composer/ca-bundle", - "version": "1.3.6", + "version": "1.3.7", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "90d087e988ff194065333d16bc5cf649872d9cdb" + "reference": "76e46335014860eec1aa5a724799a00a2e47cc85" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/90d087e988ff194065333d16bc5cf649872d9cdb", - "reference": "90d087e988ff194065333d16bc5cf649872d9cdb", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/76e46335014860eec1aa5a724799a00a2e47cc85", + "reference": "76e46335014860eec1aa5a724799a00a2e47cc85", "shasum": "" }, "require": { @@ -9186,7 +9186,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.3.6" + "source": "https://github.com/composer/ca-bundle/tree/1.3.7" }, "funding": [ { @@ -9202,7 +9202,7 @@ "type": "tidelift" } ], - "time": "2023-06-06T12:02:59+00:00" + "time": "2023-08-30T09:31:38+00:00" }, { "name": "composer/class-map-generator", @@ -9279,16 +9279,16 @@ }, { "name": "composer/composer", - "version": "2.5.8", + "version": "2.6.4", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "4c516146167d1392c8b9b269bb7c24115d262164" + "reference": "d75d17c16a863438027d1d96401cddcd6aa5bb60" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/4c516146167d1392c8b9b269bb7c24115d262164", - "reference": "4c516146167d1392c8b9b269bb7c24115d262164", + "url": "https://api.github.com/repos/composer/composer/zipball/d75d17c16a863438027d1d96401cddcd6aa5bb60", + "reference": "d75d17c16a863438027d1d96401cddcd6aa5bb60", "shasum": "" }, "require": { @@ -9296,23 +9296,23 @@ "composer/class-map-generator": "^1.0", "composer/metadata-minifier": "^1.0", "composer/pcre": "^2.1 || ^3.1", - "composer/semver": "^3.0", + "composer/semver": "^3.2.5", "composer/spdx-licenses": "^1.5.7", "composer/xdebug-handler": "^2.0.2 || ^3.0.3", "justinrainbow/json-schema": "^5.2.11", "php": "^7.2.5 || ^8.0", "psr/log": "^1.0 || ^2.0 || ^3.0", - "react/promise": "^2.8", + "react/promise": "^2.8 || ^3", "seld/jsonlint": "^1.4", "seld/phar-utils": "^1.2", "seld/signal-handler": "^2.0", - "symfony/console": "^5.4.11 || ^6.0.11", - "symfony/filesystem": "^5.4 || ^6.0", - "symfony/finder": "^5.4 || ^6.0", + "symfony/console": "^5.4.11 || ^6.0.11 || ^7", + "symfony/filesystem": "^5.4 || ^6.0 || ^7", + "symfony/finder": "^5.4 || ^6.0 || ^7", "symfony/polyfill-php73": "^1.24", "symfony/polyfill-php80": "^1.24", "symfony/polyfill-php81": "^1.24", - "symfony/process": "^5.4 || ^6.0" + "symfony/process": "^5.4 || ^6.0 || ^7" }, "require-dev": { "phpstan/phpstan": "^1.9.3", @@ -9320,7 +9320,7 @@ "phpstan/phpstan-phpunit": "^1.0", "phpstan/phpstan-strict-rules": "^1", "phpstan/phpstan-symfony": "^1.2.10", - "symfony/phpunit-bridge": "^6.0" + "symfony/phpunit-bridge": "^6.0 || ^7" }, "suggest": { "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", @@ -9333,7 +9333,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "2.5-dev" + "dev-main": "2.6-dev" }, "phpstan": { "includes": [ @@ -9343,7 +9343,7 @@ }, "autoload": { "psr-4": { - "Composer\\": "src/Composer" + "Composer\\": "src/Composer/" } }, "notification-url": "https://packagist.org/downloads/", @@ -9372,7 +9372,8 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", - "source": "https://github.com/composer/composer/tree/2.5.8" + "security": "https://github.com/composer/composer/security/policy", + "source": "https://github.com/composer/composer/tree/2.6.4" }, "funding": [ { @@ -9388,7 +9389,7 @@ "type": "tidelift" } ], - "time": "2023-06-09T15:13:21+00:00" + "time": "2023-09-29T08:54:47+00:00" }, { "name": "composer/metadata-minifier", @@ -9532,16 +9533,16 @@ }, { "name": "composer/semver", - "version": "3.3.2", + "version": "3.4.0", "source": { "type": "git", "url": "https://github.com/composer/semver.git", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9" + "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/semver/zipball/3953f23262f2bff1919fc82183ad9acb13ff62c9", - "reference": "3953f23262f2bff1919fc82183ad9acb13ff62c9", + "url": "https://api.github.com/repos/composer/semver/zipball/35e8d0af4486141bc745f23a29cc2091eb624a32", + "reference": "35e8d0af4486141bc745f23a29cc2091eb624a32", "shasum": "" }, "require": { @@ -9591,9 +9592,9 @@ "versioning" ], "support": { - "irc": "irc://irc.freenode.org/composer", + "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/semver/issues", - "source": "https://github.com/composer/semver/tree/3.3.2" + "source": "https://github.com/composer/semver/tree/3.4.0" }, "funding": [ { @@ -9609,7 +9610,7 @@ "type": "tidelift" } ], - "time": "2022-04-01T19:23:25+00:00" + "time": "2023-08-31T09:50:34+00:00" }, { "name": "composer/spdx-licenses", @@ -11728,23 +11729,24 @@ }, { "name": "react/promise", - "version": "v2.10.0", + "version": "v3.0.0", "source": { "type": "git", "url": "https://github.com/reactphp/promise.git", - "reference": "f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38" + "reference": "c86753c76fd3be465d93b308f18d189f01a22be4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/promise/zipball/f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38", - "reference": "f913fb8cceba1e6644b7b90c4bfb678ed8a3ef38", + "url": "https://api.github.com/repos/reactphp/promise/zipball/c86753c76fd3be465d93b308f18d189f01a22be4", + "reference": "c86753c76fd3be465d93b308f18d189f01a22be4", "shasum": "" }, "require": { - "php": ">=5.4.0" + "php": ">=7.1.0" }, "require-dev": { - "phpunit/phpunit": "^9.5 || ^5.7 || ^4.8.36" + "phpstan/phpstan": "1.10.20 || 1.4.10", + "phpunit/phpunit": "^9.5 || ^7.5" }, "type": "library", "autoload": { @@ -11788,7 +11790,7 @@ ], "support": { "issues": "https://github.com/reactphp/promise/issues", - "source": "https://github.com/reactphp/promise/tree/v2.10.0" + "source": "https://github.com/reactphp/promise/tree/v3.0.0" }, "funding": [ { @@ -11796,7 +11798,7 @@ "type": "open_collective" } ], - "time": "2023-05-02T15:15:43+00:00" + "time": "2023-07-11T16:12:49+00:00" }, { "name": "sebastian/cli-parser", @@ -12876,16 +12878,16 @@ }, { "name": "seld/signal-handler", - "version": "2.0.1", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/Seldaek/signal-handler.git", - "reference": "f69d119511dc0360440cdbdaa71829c149b7be75" + "reference": "04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/signal-handler/zipball/f69d119511dc0360440cdbdaa71829c149b7be75", - "reference": "f69d119511dc0360440cdbdaa71829c149b7be75", + "url": "https://api.github.com/repos/Seldaek/signal-handler/zipball/04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98", + "reference": "04a6112e883ad76c0ada8e4a9f7520bbfdb6bb98", "shasum": "" }, "require": { @@ -12931,9 +12933,9 @@ ], "support": { "issues": "https://github.com/Seldaek/signal-handler/issues", - "source": "https://github.com/Seldaek/signal-handler/tree/2.0.1" + "source": "https://github.com/Seldaek/signal-handler/tree/2.0.2" }, - "time": "2022-07-20T18:31:45+00:00" + "time": "2023-09-03T09:24:00+00:00" }, { "name": "symfony/filesystem", @@ -13067,16 +13069,16 @@ }, { "name": "symfony/polyfill-php73", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9" + "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/9e8ecb5f92152187c4799efd3c96b78ccab18ff9", - "reference": "9e8ecb5f92152187c4799efd3c96b78ccab18ff9", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fe2f306d1d9d346a7fee353d0d5012e401e984b5", + "reference": "fe2f306d1d9d346a7fee353d0d5012e401e984b5", "shasum": "" }, "require": { @@ -13085,7 +13087,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -13126,7 +13128,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.28.0" }, "funding": [ { @@ -13142,20 +13144,20 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.27.0", + "version": "v1.28.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a" + "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/707403074c8ea6e2edaf8794b0157a0bfa52157a", - "reference": "707403074c8ea6e2edaf8794b0157a0bfa52157a", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/7581cd600fa9fd681b797d00b02f068e2f13263b", + "reference": "7581cd600fa9fd681b797d00b02f068e2f13263b", "shasum": "" }, "require": { @@ -13164,7 +13166,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "1.27-dev" + "dev-main": "1.28-dev" }, "thanks": { "name": "symfony/polyfill", @@ -13205,7 +13207,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.27.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.28.0" }, "funding": [ { @@ -13221,7 +13223,7 @@ "type": "tidelift" } ], - "time": "2022-11-03T14:55:06+00:00" + "time": "2023-01-26T09:26:14+00:00" }, { "name": "symfony/stopwatch", diff --git a/daily.php b/daily.php index 2ee8dd445194..5bc5fc2aac0d 100644 --- a/daily.php +++ b/daily.php @@ -342,11 +342,7 @@ if ($options['f'] === 'notify') { if (\LibreNMS\Config::has('alert.default_mail')) { - send_mail( - \LibreNMS\Config::get('alert.default_mail'), - '[LibreNMS] Auto update has failed for ' . Config::get('distributed_poller_name'), - "We just attempted to update your install but failed. The information below should help you fix this.\r\n\r\n" . $options['o'] - ); + \LibreNMS\Util\Mail::send(\LibreNMS\Config::get('alert.default_mail'), '[LibreNMS] Auto update has failed for ' . Config::get('distributed_poller_name'), "We just attempted to update your install but failed. The information below should help you fix this.\r\n\r\n" . $options['o'], false); } } diff --git a/doc/Extensions/Authentication.md b/doc/Extensions/Authentication.md index 561fbb73da5e..25edcc0727c7 100644 --- a/doc/Extensions/Authentication.md +++ b/doc/Extensions/Authentication.md @@ -304,10 +304,14 @@ The attribute `Filter-ID` is a standard Radius-Reply-Attribute (string) that can be assigned a specially formatted string to assign a single role to the user. The string to send in `Filter-ID` reply attribute must start with `librenms_role_` followed by the role name. -For example to set the admin role send `librenms_role_admin` +For example to set the admin role send `librenms_role_admin`. -LibreNMS will ignore any other strings sent in `Filter-ID` and revert to default -role that is set in your config. +The following strings correspond to the built-in roles, but any defined role can be used: +- `librenms_role_normal` - Sets the normal user level. +- `librenms_role_admin` - Sets the administrator level. +- `librenms_role_global-read` - Sets the global read level + +LibreNMS will ignore any other strings sent in `Filter-ID` and revert to default role that is set in your config. ```php $config['radius']['hostname'] = 'localhost'; diff --git a/doc/Installation/Install-LibreNMS.md b/doc/Installation/Install-LibreNMS.md index 550688b25217..7f8e5f973d5e 100644 --- a/doc/Installation/Install-LibreNMS.md +++ b/doc/Installation/Install-LibreNMS.md @@ -21,7 +21,7 @@ Connect to the server command line and follow the instructions below. === "Ubuntu 22.04" === "NGINX" ``` - apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd whois unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip + apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip whois ``` === "Ubuntu 20.04" @@ -31,7 +31,7 @@ Connect to the server command line and follow the instructions below. add-apt-repository universe add-apt-repository ppa:ondrej/php apt update - apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd whois unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip + apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd unzip python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip whois ``` === "Apache" @@ -40,7 +40,7 @@ Connect to the server command line and follow the instructions below. add-apt-repository universe add-apt-repository ppa:ondrej/php apt update - apt install acl curl apache2 fping git graphviz imagemagick libapache2-mod-fcgid mariadb-client mariadb-server mtr-tiny nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd whois python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip + apt install acl curl apache2 fping git graphviz imagemagick libapache2-mod-fcgid mariadb-client mariadb-server mtr-tiny nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip rrdtool snmp snmpd whois python3-pymysql python3-dotenv python3-redis python3-setuptools python3-systemd python3-pip unzip ``` === "CentOS 8" @@ -59,7 +59,7 @@ Connect to the server command line and follow the instructions below. dnf -y install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm dnf module reset php dnf module enable php:remi-8.1 - dnf install bash-completion cronie fping git httpd ImageMagick mariadb-server mtr net-snmp net-snmp-utils nmap php-fpm php-cli php-common php-curl php-gd php-gmp php-json php-mbstring php-process php-snmp php-xml php-zip php-mysqlnd python3 python3-PyMySQL python3-redis python3-memcached python3-pip python3-systemd rrdtool unzip gcc python3-devel + dnf install bash-completion cronie fping gcc git httpd ImageMagick mariadb-server mtr net-snmp net-snmp-utils nmap php-fpm php-cli php-common php-curl php-gd php-gmp php-json php-mbstring php-process php-snmp php-xml php-zip php-mysqlnd python3 python3-devel python3-PyMySQL python3-redis python3-memcached python3-pip python3-systemd rrdtool unzip ``` === "Debian 11" @@ -69,7 +69,7 @@ Connect to the server command line and follow the instructions below. wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/sury-php.list apt update - apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-systemd python3-pip rrdtool snmp snmpd whois + apt install acl curl fping git graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php-cli php-curl php-fpm php-gd php-gmp php-json php-mbstring php-mysql php-snmp php-xml php-zip python3-dotenv python3-pymysql python3-redis python3-setuptools python3-systemd python3-pip rrdtool snmp snmpd unzip whois ``` ## Add librenms user diff --git a/html/css/styles.css b/html/css/styles.css index 6f4bcbd00868..27e33dd5ebc3 100644 --- a/html/css/styles.css +++ b/html/css/styles.css @@ -2203,11 +2203,10 @@ label { } .device-table-icon { - padding-left:7px; - display: inline-block; - width: 64px; - height: 32px; - line-height: 32px; + display: flex; + align-items: center; + width: 32px; + height: 32px; } .device-table-icon img { diff --git a/html/images/logos/aviat.svg b/html/images/logos/aviat.svg new file mode 100644 index 000000000000..e17f9d816328 --- /dev/null +++ b/html/images/logos/aviat.svg @@ -0,0 +1 @@ + diff --git a/html/images/logos/fortinet.svg b/html/images/logos/fortinet.svg new file mode 100644 index 000000000000..633d18d648c8 --- /dev/null +++ b/html/images/logos/fortinet.svg @@ -0,0 +1 @@ + diff --git a/html/images/os/aviat.png b/html/images/os/aviat.png deleted file mode 100644 index 4475e58e095d..000000000000 Binary files a/html/images/os/aviat.png and /dev/null differ diff --git a/html/images/os/aviat.svg b/html/images/os/aviat.svg new file mode 100644 index 000000000000..6f4c7448d8a0 --- /dev/null +++ b/html/images/os/aviat.svg @@ -0,0 +1 @@ + diff --git a/includes/common.php b/includes/common.php index d8000508ea92..aada736a6e43 100644 --- a/includes/common.php +++ b/includes/common.php @@ -168,21 +168,11 @@ function get_port_by_ifIndex($device_id, $ifIndex) return dbFetchRow('SELECT * FROM `ports` WHERE `device_id` = ? AND `ifIndex` = ?', [$device_id, $ifIndex]); } -function table_from_entity_type($type) -{ - // Fuck you, english pluralisation. - if ($type == 'storage') { - return $type; - } else { - return $type . 's'; - } -} - function get_entity_by_id_cache($type, $id) { global $entity_cache; - $table = table_from_entity_type($type); + $table = $type == 'storage' ? $type : $type . 's'; if (is_array($entity_cache[$type][$id])) { $entity = $entity_cache[$type][$id]; @@ -206,18 +196,6 @@ function get_port_by_id($port_id) } } -function get_sensor_by_id($sensor_id) -{ - if (is_numeric($sensor_id)) { - $sensor = dbFetchRow('SELECT * FROM `sensors` WHERE `sensor_id` = ?', [$sensor_id]); - if (is_array($sensor)) { - return $sensor; - } else { - return false; - } - } -} - function get_device_id_by_port_id($port_id) { if (is_numeric($port_id)) { @@ -297,26 +275,11 @@ function strgen($length = 16) return $string; } -function getpeerhost($id) -{ - return dbFetchCell('SELECT `device_id` from `bgpPeers` WHERE `bgpPeer_id` = ?', [$id]); -} - -function getifindexbyid($id) -{ - return dbFetchCell('SELECT `ifIndex` FROM `ports` WHERE `port_id` = ?', [$id]); -} - function getifbyid($id) { return dbFetchRow('SELECT * FROM `ports` WHERE `port_id` = ?', [$id]); } -function getifdescrbyid($id) -{ - return dbFetchCell('SELECT `ifDescr` FROM `ports` WHERE `port_id` = ?', [$id]); -} - function getidbyname($hostname) { return DeviceCache::getByHostname($hostname)->device_id; @@ -449,13 +412,6 @@ function get_graph_subtypes($type, $device = null) return $types; } // get_graph_subtypes -function get_smokeping_files($device) -{ - $smokeping = new \LibreNMS\Util\Smokeping(DeviceCache::get((int) $device['device_id'])); - - return $smokeping->findFiles(); -} - function generate_smokeping_file($device, $file = '') { $smokeping = new \LibreNMS\Util\Smokeping(DeviceCache::get((int) $device['device_id'])); @@ -489,26 +445,6 @@ function is_customoid_graph($type, $subtype) return false; } // is_customoid_graph -// -// maintain a simple cache of objects -// - -function object_add_cache($section, $obj) -{ - global $object_cache; - $object_cache[$section][$obj] = true; -} // object_add_cache - -function object_is_cached($section, $obj) -{ - global $object_cache; - if (is_array($object_cache) && array_key_exists($obj, $object_cache)) { - return $object_cache[$section][$obj]; - } else { - return false; - } -} // object_is_cached - function search_phrase_column($c) { global $searchPhrase; @@ -878,19 +814,6 @@ function get_vm_parent_id($device) return dbFetchCell('SELECT `device_id` FROM `vminfo` WHERE `vmwVmDisplayName` = ? OR `vmwVmDisplayName` = ?', [$device['hostname'], $device['hostname'] . '.' . Config::get('mydomain')]); } -/** - * Generate a class name from a lowercase string containing - or _ - * Remove - and _ and camel case words - * - * @param string $name The string to convert to a class name - * @param string $namespace namespace to prepend to the name for example: LibreNMS\ - * @return string Class name - */ -function str_to_class($name, $namespace = null) -{ - return \LibreNMS\Util\StringHelpers::toClass($name, $namespace); -} - /** * Index an array by a column * diff --git a/includes/definitions/cnmatrix.yaml b/includes/definitions/cnmatrix.yaml new file mode 100644 index 000000000000..410724854a44 --- /dev/null +++ b/includes/definitions/cnmatrix.yaml @@ -0,0 +1,15 @@ +os: cnmatrix +text: 'Cambium cnMatrix' +type: network +icon: cambium +mib_dir: cambium/cnmatrix +ifname: true +over: + - { graph: device_bits, text: 'Overall Traffic' } + - { graph: device_temperature, text: 'Device Temperature' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.24 diff --git a/includes/definitions/cnwave60.yaml b/includes/definitions/cnwave60.yaml new file mode 100644 index 000000000000..0e36faebee2e --- /dev/null +++ b/includes/definitions/cnwave60.yaml @@ -0,0 +1,13 @@ +os: cnwave60 +text: 'Cambium cnWave60' +type: wireless +icon: cambium +mib_dir: cambium +over: + - { graph: device_bits, text: 'Overall Traffic' } + - { graph: device_mempool, text: 'Memory Usage' } + - { graph: device_processor, text: 'CPU Usage' } +discovery: + - + sysObjectID: + - .1.3.6.1.4.1.17713.60.1 diff --git a/includes/definitions/discovery/cnmatrix.yaml b/includes/definitions/discovery/cnmatrix.yaml new file mode 100644 index 000000000000..df8b040c7502 --- /dev/null +++ b/includes/definitions/discovery/cnmatrix.yaml @@ -0,0 +1,50 @@ +modules: + os: + hardware: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocModelName.0 + version: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocSoftwareRev.0 + serial: LLDP-EXT-MED-CAMBIUM-MIB::lldpXMedLocSerialNum.0 + processors: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentCPUThreshold + num_oid: '.1.3.6.1.4.1.2076.81.1.68.{{ $index }}' + type: cpuUsage + mempools: + data: + - + percent_used: ARICENT-ISS-MIB::issSwitchCurrentRAMUsage + sensors: + temperature: + data: + - + oid: ARICENT-ISS-MIB::issSwitchCurrentTemperature + num_oid: '.1.3.6.1.4.1.2076.81.1.66.{{ $index }}' + index: 'issSwitchCurrentTemperature.{{ $index }}' + descr: 'System Temperature' + voltage: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsVoltage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.4.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsVoltage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Voltage' + divisor: 10 + current: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsAmperage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.3.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsAmperage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Amperage' + divisor: 1000 + power: + data: + - + oid: ARICENT-POE-MIB::fsPethPsePortTable + value: ARICENT-POE-MIB::fsPethPsPortPowerMeasurementsWattage + num_oid: '.1.3.6.1.4.1.2076.103.1.3.1.5.{{ $index }}' + index: 'fsPethPsPortPowerMeasurementsWattage.{{ $index }}' + descr: 'Port {{ $subindex1 }} Wattage' + divisor: 1000 diff --git a/includes/definitions/discovery/cnwave60.yaml b/includes/definitions/discovery/cnwave60.yaml new file mode 100644 index 000000000000..8e93da2cc288 --- /dev/null +++ b/includes/definitions/discovery/cnwave60.yaml @@ -0,0 +1,45 @@ +mib: TERRAGRAPH-RADIO-MIB +modules: + os: + sysDescr_regex: '/^Cambium cnWave (?.*) (?:Client|Distribution) Node, Version (?.*)$/' + sensors: + dbm: + data: + - + oid: tgRadioInterfacesTable + value: rssi + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.7.{{ $index }}' + descr: '{{ $ifName }} RSSI' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'rssi.{{ $index }}' + - + oid: tgRadioInterfacesTable + value: snr + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.6.{{ $index }}' + descr: '{{ $ifName }} SNR' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'snr.{{ $index }}' + state: + data: + - + oid: tgRadioInterfacesTable + value: mcs + num_oid: '.1.3.6.1.4.1.17713.60.1.1.1.5.{{ $index }}' + descr: '{{ $ifName }} MCS' + group: '{{ $ifName }} [{{ $remoteMacAddr }}]' + index: 'mcs.{{ $index }}' + states: + - { value: 0, descr: mcs0, graph: 1, generic: 1 } + - { value: 1, descr: mcs1, graph: 1, generic: 1 } + - { value: 2, descr: mcs2, graph: 1, generic: 1 } + - { value: 3, descr: mcs3, graph: 1, generic: 1 } + - { value: 4, descr: mcs4, graph: 1, generic: 2 } + - { value: 5, descr: mcs5, graph: 1, generic: 2 } + - { value: 6, descr: mcs6, graph: 1, generic: 2 } + - { value: 7, descr: mcs7, graph: 1, generic: 2 } + - { value: 8, descr: mcs8, graph: 1, generic: 0 } + - { value: 9, descr: mcs9, graph: 1, generic: 0 } + - { value: 10, descr: mcs10, graph: 1, generic: 0 } + - { value: 11, descr: mcs10, graph: 1, generic: 0 } + - { value: 12, descr: mcs12, graph: 1, generic: 0 } + - { value: 13, descr: mcs13, graph: 1, generic: 0 } diff --git a/includes/definitions/discovery/moxa-etherdevice.yaml b/includes/definitions/discovery/moxa-etherdevice.yaml index 5cf06e883989..bc0b5b70ce5a 100644 --- a/includes/definitions/discovery/moxa-etherdevice.yaml +++ b/includes/definitions/discovery/moxa-etherdevice.yaml @@ -1,4 +1,3 @@ -mib: IF-MIB modules: mempools: data: @@ -58,7 +57,7 @@ modules: data: - oid: - - ifDescr + - IF-MIB::ifDescr power: data: - @@ -74,13 +73,13 @@ modules: - oid: MOXA-EDSP506E-MIB::poePortConsumption num_oid: '.1.3.6.1.4.1.8691.7.162.1.40.6.1.2.{{ $index }}' - descr: '{{ $ifDescr }} PoE Consumption' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' index: 'poePortConsumption.{{ $index }}' high_limit: 'powerLimit.{{ $index }}' - oid: MOXA-EDSP510A8POE-MIB::poePortConsumption num_oid: '.1.3.6.1.4.1.8691.7.86.1.40.6.1.2.{{ $index }}' - descr: '{{ $ifDescr }} PoE Consumption' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' index: 'poePortConsumption.{{ $index }}' high_limit: 36.0 - @@ -92,124 +91,140 @@ modules: - oid: MOXA-EDSG512E8POE-MIB::poePortConsumption num_oid: '.1.3.6.1.4.1.8691.7.108.1.40.6.1.2.{{ $index }}' - descr: '{{ $ifDescr }} PoE Consumption' + descr: '{{ IF-MIB::ifDescr }} PoE Consumption' index: 'poePortConsumption.{{ $index }}' high_limit: 36.0 temperature: data: - - oid: MOXA-EDSP510A8POE-MIB::sfpTemperature + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpTemperature num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.3.{{ $index }}' - descr: '{{ $ifDescr }} SFP module temperature' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' index: 'sfpTemperature.{{ $index }}' low_limit: -40.0 high_limit: 85.0 - - oid: MOXA-EDSG512E8POE-MIB::fiberTemperature + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberTemperature num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.5.{{ $index }}' - descr: '{{ $ifDescr }} SFP module temperature' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' index: 'fiberTemperature.{{ $index }}' low_limit: -40.0 high_limit: 85.0 - - oid: MOXA-EDSG516E-MIB::fiberTemperature + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberTemperature num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.5.{{ $index }}' - descr: '{{ $ifDescr }} SFP module temperature' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' index: 'fiberTemperature.{{ $index }}' low_limit: -40.0 high_limit: 85.0 - - oid: MOXA-EDSP506E-MIB::fiberTemperature + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberTemperature num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.5.{{ $index }}' - descr: '{{ $ifDescr }} SFP module temperature' + descr: '{{ IF-MIB::ifDescr }} SFP module temperature' index: 'fiberTemperature.{{ $index }}' low_limit: -40.0 high_limit: 85.0 voltage: data: - - oid: MOXA-EDSP510A8POE-MIB::sfpVoltage + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpVoltage num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.4.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Supply Voltage' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' index: 'sfpVoltage.{{ $index }}' low_limit: 3.13 high_limit: 3.47 - - oid: MOXA-EDSG512E8POE-MIB::fiberVoltage + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberVoltage num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.4.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Supply Voltage' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' index: 'fiberVoltage.{{ $index }}' low_limit: 3.13 high_limit: 3.47 - - oid: MOXA-EDSG516E-MIB::fiberVoltage + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberVoltage num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.4.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Supply Voltage' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' index: 'fiberVoltage.{{ $index }}' low_limit: 3.13 high_limit: 3.47 - - oid: MOXA-EDSP506E-MIB::fiberVoltage + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberVoltage num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.4.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Supply Voltage' + descr: '{{ IF-MIB::ifDescr }} SFP module Supply Voltage' index: 'fiberVoltage.{{ $index }}' low_limit: 3.13 high_limit: 3.47 dbm: data: - - oid: MOXA-EDSP510A8POE-MIB::sfpTxPower + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpTxPower num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.5.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Transmit Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' index: 'sfpTxPower.{{ $index }}' low_limit: -9.0 high_limit: -3.0 - - oid: MOXA-EDSP510A8POE-MIB::sfpRXPower + oid: MOXA-EDSP510A8POE-MIB::monitorSFPTable + value: MOXA-EDSP510A8POE-MIB::sfpRXPower num_oid: '.1.3.6.1.4.1.8691.7.86.1.10.7.1.6.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Receive Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' index: 'sfpRxPower.{{ $index }}' low_limit: -21.0 high_limit: -3.0 - - oid: MOXA-EDSG512E8POE-MIB::fiberTxPower + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberTxPower num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.7.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Transmit Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' index: 'fiberTxPower.{{ $index }}' low_limit: -9.0 high_limit: -3.0 - - oid: MOXA-EDSG512E8POE-MIB::fiberRxPower + oid: MOXA-EDSG512E8POE-MIB::monitorFiberCheckTable + value: MOXA-EDSG512E8POE-MIB::fiberRxPower num_oid: '.1.3.6.1.4.1.8691.7.108.1.10.11.1.9.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Receive Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' index: 'fiberRxPower.{{ $index }}' low_limit: -21.0 high_limit: -3.0 - - oid: MOXA-EDSG516E-MIB::fiberTxPower + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberTxPower num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.7.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Transmit Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' index: 'fiberTxPower.{{ $index }}' low_limit: -9.0 high_limit: -3.0 - - oid: MOXA-EDSG516E-MIB::fiberRxPower + oid: MOXA-EDSG516E-MIB::monitorFiberCheckTable + value: MOXA-EDSG516E-MIB::fiberRxPower num_oid: '.1.3.6.1.4.1.8691.7.71.1.10.11.1.9.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Receive Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' index: 'fiberRxPower.{{ $index }}' low_limit: -21.0 high_limit: -3.0 - - oid: MOXA-EDSP506E-MIB::fiberTxPower + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberTxPower num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.7.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Transmit Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Transmit Power' index: 'fiberTxPower.{{ $index }}' low_limit: -9.0 high_limit: -3.0 - - oid: MOXA-EDSP506E-MIB::fiberRxPower + oid: MOXA-EDSP506E-MIB::monitorFiberCheckTable + value: MOXA-EDSP506E-MIB::fiberRxPower num_oid: '.1.3.6.1.4.1.8691.7.162.1.10.11.1.9.{{ $index }}' - descr: '{{ $ifDescr }} SFP module Receive Power' + descr: '{{ IF-MIB::ifDescr }} SFP module Receive Power' index: 'fiberRxPower.{{ $index }}' low_limit: -21.0 high_limit: -3.0 diff --git a/includes/discovery/bgp-peers.inc.php b/includes/discovery/bgp-peers.inc.php index b8509fe822cd..44377dcd4485 100644 --- a/includes/discovery/bgp-peers.inc.php +++ b/includes/discovery/bgp-peers.inc.php @@ -61,7 +61,7 @@ $af_list = []; foreach ($peerlist as $peer) { - $peer['astext'] = get_astext($peer['as']); + $peer['astext'] = \LibreNMS\Util\AutonomousSystem::get($peer['as'])->name(); add_bgp_peer($device, $peer); diff --git a/includes/discovery/bgp-peers/dell-os10.inc.php b/includes/discovery/bgp-peers/dell-os10.inc.php index 6a45bd03b998..922bb3e56a87 100644 --- a/includes/discovery/bgp-peers/dell-os10.inc.php +++ b/includes/discovery/bgp-peers/dell-os10.inc.php @@ -47,7 +47,7 @@ foreach ($peer as $address => $value) { // resolve AS number by DNS_TXT record - $astext = get_astext($value['os10bgp4V2PeerRemoteAs']); + $astext = \LibreNMS\Util\AutonomousSystem::get($value['os10bgp4V2PeerRemoteAs'])->name(); // FIXME - the `devices` table gets updated in the main bgp-peers.inc.php // Setting it here avoids the code that resets it to null if not found in BGP4-MIB. diff --git a/includes/discovery/bgp-peers/firebrick.inc.php b/includes/discovery/bgp-peers/firebrick.inc.php index 1df9af995361..c17eec479433 100644 --- a/includes/discovery/bgp-peers/firebrick.inc.php +++ b/includes/discovery/bgp-peers/firebrick.inc.php @@ -62,7 +62,7 @@ } foreach ($vrf as $address => $value) { $bgpLocalAs = $value['fbBgpPeerLocalAS'] ?? $bgpLocalAs; - $astext = get_astext($value['fbBgpPeerRemoteAS']); + $astext = \LibreNMS\Util\AutonomousSystem::get($value['fbBgpPeerRemoteAS'])->name(); if (! DeviceCache::getPrimary()->bgppeers()->where('bgpPeerIdentifier', $address)->where('vrf_id', $vrfId)->exists()) { $peers = [ 'vrf_id' => $vrfId, diff --git a/includes/discovery/bgp-peers/timos.inc.php b/includes/discovery/bgp-peers/timos.inc.php index e112fed80487..8472349586aa 100644 --- a/includes/discovery/bgp-peers/timos.inc.php +++ b/includes/discovery/bgp-peers/timos.inc.php @@ -44,7 +44,7 @@ $vrfId = dbFetchCell('SELECT vrf_id from `vrfs` WHERE vrf_oid = ?', [$vrfOid]); d_echo($vrfId); foreach ($vrf as $address => $value) { - $astext = get_astext($value['tBgpPeerNgPeerAS4Byte']); + $astext = \LibreNMS\Util\AutonomousSystem::get($value['tBgpPeerNgPeerAS4Byte'])->name(); if (dbFetchCell('SELECT COUNT(*) from `bgpPeers` WHERE device_id = ? AND bgpPeerIdentifier = ? AND vrf_id = ?', [$device['device_id'], $address, $vrfId]) < '1') { $peers = [ diff --git a/includes/discovery/bgp-peers/vrp.inc.php b/includes/discovery/bgp-peers/vrp.inc.php index 5dc7d8695170..b0d8bec4d392 100644 --- a/includes/discovery/bgp-peers/vrp.inc.php +++ b/includes/discovery/bgp-peers/vrp.inc.php @@ -83,7 +83,7 @@ $vrfId = $map_vrf['byName'][$vrfName]['vrf_id']; foreach ($vrf as $address => $value) { - $astext = get_astext($value['hwBgpPeerRemoteAs']); + $astext = \LibreNMS\Util\AutonomousSystem::get($value['hwBgpPeerRemoteAs'])->name(); if (! DeviceCache::getPrimary()->bgppeers()->where('bgpPeerIdentifier', $address)->where('vrf_id', $vrfId)->exists()) { $peers = [ 'device_id' => $device['device_id'], diff --git a/includes/discovery/discovery-arp.inc.php b/includes/discovery/discovery-arp.inc.php index 04060fba477d..ea0a778607bc 100644 --- a/includes/discovery/discovery-arp.inc.php +++ b/includes/discovery/discovery-arp.inc.php @@ -57,12 +57,12 @@ } // Attempt discovery of each IP only once per run. - if (object_is_cached('arp_discovery', $ip)) { + if (Cache::get('arp_discovery:' . $ip)) { echo '.'; continue; } - object_add_cache('arp_discovery', $ip); + Cache::put('arp_discovery:' . $ip, true, 3600); $name = gethostbyaddr($ip); echo '+'; diff --git a/includes/discovery/functions.inc.php b/includes/discovery/functions.inc.php index 7b3b661b15f0..eefdbd96b0f3 100644 --- a/includes/discovery/functions.inc.php +++ b/includes/discovery/functions.inc.php @@ -128,14 +128,13 @@ function discover_device(&$device, $force_module = false) return false; } - $discovery_devices = Config::get('discovery_modules', []); - $discovery_devices = ['core' => true] + $discovery_devices; + $discovery_modules = ['core' => true] + Config::get('discovery_modules', []); /** @var \App\Polling\Measure\MeasurementManager $measurements */ $measurements = app(\App\Polling\Measure\MeasurementManager::class); $measurements->checkpoint(); // don't count previous stats - foreach ($discovery_devices as $module => $module_status) { + foreach ($discovery_modules as $module => $module_status) { $os_module_status = Config::getOsSetting($device['os'], "discovery_modules.$module"); d_echo('Modules status: Global' . (isset($module_status) ? ($module_status ? '+ ' : '- ') : ' ')); d_echo('OS' . (isset($os_module_status) ? ($os_module_status ? '+ ' : '- ') : ' ')); diff --git a/includes/discovery/ports.inc.php b/includes/discovery/ports.inc.php index 7727baacbd2a..1679399c38d3 100644 --- a/includes/discovery/ports.inc.php +++ b/includes/discovery/ports.inc.php @@ -57,6 +57,11 @@ require base_path('includes/discovery/ports/moxa-etherdevice.inc.php'); } +//Cambium cnMatrix port description mapping +if ($device['os'] == 'cnmatrix') { + require base_path('includes/discovery/ports/cnmatrix.inc.php'); +} + // End Building SNMP Cache Array d_echo($port_stats); diff --git a/includes/discovery/ports/cnmatrix.inc.php b/includes/discovery/ports/cnmatrix.inc.php new file mode 100644 index 000000000000..0037005a515a --- /dev/null +++ b/includes/discovery/ports/cnmatrix.inc.php @@ -0,0 +1,6 @@ +$port) { + $port_stats[$index]['ifAlias'] = $int_desc[$index]['ifMainDesc']; +} diff --git a/includes/functions.php b/includes/functions.php index fe3fed59d26d..c9b178585aaf 100755 --- a/includes/functions.php +++ b/includes/functions.php @@ -24,46 +24,6 @@ use LibreNMS\Exceptions\SnmpVersionUnsupportedException; use LibreNMS\Modules\Core; -function array_sort_by_column($array, $on, $order = SORT_ASC) -{ - $new_array = []; - $sortable_array = []; - - if (count($array) > 0) { - foreach ($array as $k => $v) { - if (is_array($v)) { - foreach ($v as $k2 => $v2) { - if ($k2 == $on) { - $sortable_array[$k] = $v2; - } - } - } else { - $sortable_array[$k] = $v; - } - } - - switch ($order) { - case SORT_ASC: - asort($sortable_array); - break; - case SORT_DESC: - arsort($sortable_array); - break; - } - - foreach ($sortable_array as $k => $v) { - $new_array[$k] = $array[$k]; - } - } - - return $new_array; -} - -function only_alphanumeric($string) -{ - return preg_replace('/[^a-zA-Z0-9]/', '', $string); -} - /** * Parse cli discovery or poller modules and set config for this run * @@ -246,7 +206,7 @@ function addHost($host, $snmp_version = '', $port = 161, $transport = 'udp', $po } else { $ip = $host; } - if ($force_add !== true && $existing = device_has_ip($ip)) { + if ($force_add !== true && $existing = Device::findByIp($ip)) { throw new HostIpExistsException($host, $existing->hostname, $ip); } @@ -506,11 +466,6 @@ function snmp2ipv6($ipv6_snmp) return implode(':', $ipv6_2); } -function get_astext(string|int|null $asn): string -{ - return \LibreNMS\Util\AutonomousSystem::get($asn)->name(); -} - /** * Log events to the event table * @@ -530,17 +485,6 @@ function log_event($text, $device = null, $type = null, $severity = 2, $referenc \App\Models\Eventlog::log($text, $device, $type, Severity::tryFrom((int) $severity) ?? Severity::Info, $reference); } -// Parse string with emails. Return array with email (as key) and name (as value) -function parse_email($emails) -{ - return \LibreNMS\Util\Mail::parseEmails($emails); -} - -function send_mail($emails, $subject, $message, $html = false) -{ - return \LibreNMS\Util\Mail::send($emails, $subject, $message, $html); -} - function hex2str($hex) { $string = ''; @@ -564,28 +508,6 @@ function isHexString($str) return (bool) preg_match('/^[a-f0-9][a-f0-9]( [a-f0-9][a-f0-9])*$/is', trim($str)); } -// Include all .inc.php files in $dir -function include_dir($dir, $regex = '') -{ - global $device, $valid; - - if ($regex == '') { - $regex = "/\.inc\.php$/"; - } - - if ($handle = opendir(Config::get('install_dir') . '/' . $dir)) { - while (false !== ($file = readdir($handle))) { - if (filetype(Config::get('install_dir') . '/' . $dir . '/' . $file) == 'file' && preg_match($regex, $file)) { - d_echo('Including: ' . Config::get('install_dir') . '/' . $dir . '/' . $file . "\n"); - - include Config::get('install_dir') . '/' . $dir . '/' . $file; - } - } - - closedir($handle); - } -} - /** * Check if port is valid to poll. * Settings: empty_ifdescr, good_if, bad_if, bad_if_regexp, bad_ifname_regexp, bad_ifalias_regexp, bad_iftype, bad_ifoperstatus @@ -749,29 +671,6 @@ function normalize_snmp_ip_address($data) return preg_replace('/([0-9a-fA-F]{2}):([0-9a-fA-F]{2})/', '\1\2', explode('%', $data, 2)[0]); } -function guidv4($data) -{ - // http://stackoverflow.com/questions/2040240/php-function-to-generate-v4-uuid#15875555 - // From: Jack http://stackoverflow.com/users/1338292/ja%CD%A2ck - assert(strlen($data) == 16); - - $data[6] = chr(ord($data[6]) & 0x0F | 0x40); // set version to 0100 - $data[8] = chr(ord($data[8]) & 0x3F | 0x80); // set bits 6-7 to 10 - - return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4)); -} - -function target_to_id($target) -{ - if ($target[0] . $target[1] == 'g:') { - $target = 'g' . dbFetchCell('SELECT id FROM device_groups WHERE name = ?', [substr($target, 2)]); - } else { - $target = dbFetchCell('SELECT device_id FROM devices WHERE hostname = ?', [$target]); - } - - return $target; -} - function fix_integer_value($value) { if ($value < 0) { @@ -783,17 +682,6 @@ function fix_integer_value($value) return $return; } -/** - * Find a device that has this IP. Checks ipv4_addresses and ipv6_addresses tables. - * - * @param string $ip - * @return \App\Models\Device|false - */ -function device_has_ip($ip) -{ - return Device::findByIp($ip); -} - /** * Checks if the $hostname provided exists in the DB already * @@ -1122,24 +1010,6 @@ function getCIMCentPhysical($location, &$entphysical, &$index) } // end if - Level 1 } // end function -/* idea from https://php.net/manual/en/function.hex2bin.php comments */ -function hex2bin_compat($str) -{ - if (strlen($str) % 2 !== 0) { - trigger_error(__FUNCTION__ . '(): Hexadecimal input string must have an even length', E_USER_WARNING); - } - - return pack('H*', $str); -} - -if (! function_exists('hex2bin')) { - // This is only a hack - function hex2bin($str) - { - return hex2bin_compat($str); - } -} - function q_bridge_bits2indices($hex_data) { /* convert hex string to an array of 1-based indices of the nonzero bits @@ -1182,6 +1052,11 @@ function cache_peeringdb() sleep($rand); $peer_keep = []; $ix_keep = []; + // Exclude Private and reserved ASN ranges + // 64512 - 65534 (Private) + // 65535 (Well Known) + // 4200000000 - 4294967294 (Private) + // 4294967295 (Reserved) foreach (dbFetchRows('SELECT `bgpLocalAs` FROM `devices` WHERE `disabled` = 0 AND `ignore` = 0 AND `bgpLocalAs` > 0 AND (`bgpLocalAs` < 64512 OR `bgpLocalAs` > 65535) AND `bgpLocalAs` < 4200000000 GROUP BY `bgpLocalAs`') as $as) { $asn = $as['bgpLocalAs']; $get = \LibreNMS\Util\Http::client()->get($peeringdb_url . '/net?depth=2&asn=' . $asn); @@ -1210,7 +1085,7 @@ function cache_peeringdb() $ix_data = json_decode($ix_json); $peers = $ix_data->{'data'}; foreach ($peers ?? [] as $index => $peer) { - $peer_name = get_astext($peer->{'asn'}); + $peer_name = \LibreNMS\Util\AutonomousSystem::get($peer->{'asn'})->name(); $tmp_peer = dbFetchRow('SELECT * FROM `pdb_ix_peers` WHERE `peer_id` = ? AND `ix_id` = ?', [$peer->{'id'}, $ixid]); if ($tmp_peer) { $peer_keep[] = $tmp_peer['pdb_ix_peers_id']; diff --git a/includes/html/graphs/device/smokeping_common.inc.php b/includes/html/graphs/device/smokeping_common.inc.php index ce9df8a4e4e1..1e11a4af3623 100644 --- a/includes/html/graphs/device/smokeping_common.inc.php +++ b/includes/html/graphs/device/smokeping_common.inc.php @@ -1,3 +1,4 @@ findFiles(); diff --git a/includes/html/pages/device/graphs/availability.inc.php b/includes/html/pages/device/graphs/availability.inc.php index edca7c6b4984..28690b6546c3 100644 --- a/includes/html/pages/device/graphs/availability.inc.php +++ b/includes/html/pages/device/graphs/availability.inc.php @@ -2,30 +2,26 @@ $graph_type = 'availability'; -$row = 1; - -$duration_list = dbFetchRows('SELECT * FROM `availability` WHERE `device_id` = ? ORDER BY `duration`', [$device['device_id']]); -foreach ($duration_list as $duration) { - if (is_integer($row / 2)) { +$deviceModel = DeviceCache::getPrimary(); +foreach ($deviceModel->availability as $index => $duration) { + if (is_integer($index / 2)) { $row_colour = \LibreNMS\Config::get('list_colour.even'); } else { $row_colour = \LibreNMS\Config::get('list_colour.odd'); } - $graph_array['device'] = $duration['device_id']; + $graph_array['device'] = $duration->device_id; $graph_array['type'] = 'device_' . $graph_type; - $graph_array['duration'] = $duration['duration']; + $graph_array['duration'] = $duration->duration; - $human_duration = \LibreNMS\Util\Time::formatInterval($duration['duration'], parts: 1); - $graph_title = DeviceCache::get($device['device_id'])->displayName() . ' - ' . $human_duration; + $human_duration = \LibreNMS\Util\Time::formatInterval($duration->duration, parts: 1); + $graph_title = $deviceModel->displayName() . ' - ' . $human_duration; echo "
-

" . $human_duration . "
" . round($duration['availability_perc'], 3) . '%

+

" . $human_duration . "
" . round($duration->availability_perc, 3) . '%

'; echo "
"; include 'includes/html/print-graphrow.inc.php'; echo '
'; - - $row++; } diff --git a/includes/html/pages/device/loadbalancer/netscaler_vsvr.inc.php b/includes/html/pages/device/loadbalancer/netscaler_vsvr.inc.php index e9fef93d133a..2039e9c223a3 100644 --- a/includes/html/pages/device/loadbalancer/netscaler_vsvr.inc.php +++ b/includes/html/pages/device/loadbalancer/netscaler_vsvr.inc.php @@ -138,12 +138,12 @@ switch ($sort_key) { case 'vsvr_bps_in': case 'vsvr_bps_out': - $sort_direction = SORT_DESC; + $sort_descending = true; break; default: - $sort_direction = SORT_ASC; + $sort_descending = false; } - $vservers = array_sort_by_column($vservers, $sort_key, $sort_direction); + $vservers = collect($vservers)->sortBy($sort_key, descending: $sort_descending)->all(); $i = '0'; foreach ($vservers as $vsvr) { diff --git a/includes/html/pages/device/routing/bgp.inc.php b/includes/html/pages/device/routing/bgp.inc.php index dfbc389b9b29..be900916c23c 100644 --- a/includes/html/pages/device/routing/bgp.inc.php +++ b/includes/html/pages/device/routing/bgp.inc.php @@ -154,6 +154,12 @@ $peer_type = "iBGP"; } else { $peer_type = "eBGP"; + // Private ASN ranges + // 64512 - 65534 (Private) + // 4200000000 - 4294967294 (Private) + if (($peer['bgpPeerRemoteAs'] >= 64512 && $peer['bgpPeerRemoteAs'] <= 65534) || ($peer['bgpPeerRemoteAs'] >= 4200000000 && $peer['bgpPeerRemoteAs'] <= 4294967294)) { + $peer_type = "Priv eBGP"; + } } $query = 'SELECT * FROM ipv4_addresses AS A, ports AS I, devices AS D WHERE '; diff --git a/includes/html/pages/ports/graph.inc.php b/includes/html/pages/ports/graph.inc.php index 19569a198174..29691b76194e 100644 --- a/includes/html/pages/ports/graph.inc.php +++ b/includes/html/pages/ports/graph.inc.php @@ -111,41 +111,41 @@ switch ($vars['sort'] ?? '') { case 'traffic': - $ports = array_sort_by_column($ports, 'ifOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOctets_rate', descending: true); break; case 'traffic_in': - $ports = array_sort_by_column($ports, 'ifInOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifInOctets_rate', descending: true); break; case 'traffic_out': - $ports = array_sort_by_column($ports, 'ifOutOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOutOctets_rate', descending: true); break; case 'packets': - $ports = array_sort_by_column($ports, 'ifUcastPkts_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifUcastPkts_rate', descending: true); break; case 'packets_in': - $ports = array_sort_by_column($ports, 'ifInUcastOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifInUcastOctets_rate', descending: true); break; case 'packets_out': - $ports = array_sort_by_column($ports, 'ifOutUcastOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOutUcastOctets_rate', descending: true); break; case 'errors': - $ports = array_sort_by_column($ports, 'ifErrors_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifErrors_rate', descending: true); break; case 'speed': - $ports = array_sort_by_column($ports, 'ifSpeed', SORT_DESC); + $ports = collect($ports)->sortBy('ifSpeed', descending: true); break; case 'port': - $ports = array_sort_by_column($ports, 'ifDescr', SORT_ASC); + $ports = collect($ports)->sortBy('ifDescr'); break; case 'media': - $ports = array_sort_by_column($ports, 'ifType', SORT_ASC); + $ports = collect($ports)->sortBy('ifType'); break; case 'descr': - $ports = array_sort_by_column($ports, 'ifAlias', SORT_ASC); + $ports = collect($ports)->sortBy('ifAlias'); break; case 'device': default: - $ports = array_sort_by_column($ports, 'hostname', SORT_ASC); + $ports = collect($ports)->sortBy('hostname'); } foreach ($ports as $port) { diff --git a/includes/html/pages/routing/bgp.inc.php b/includes/html/pages/routing/bgp.inc.php index cd1c4db15be9..381085cad157 100644 --- a/includes/html/pages/routing/bgp.inc.php +++ b/includes/html/pages/routing/bgp.inc.php @@ -249,8 +249,11 @@ $peer_type = "iBGP"; } else { $peer_type = "eBGP"; - if ($peer['bgpPeerRemoteAS'] >= '64512' && $peer['bgpPeerRemoteAS'] <= '65535') { - $peer_type = "Priv eBGP"; + // Private ASN ranges + // 64512 - 65534 (Private) + // 4200000000 - 4294967294 (Private) + if (($peer['bgpPeerRemoteAs'] >= 64512 && $peer['bgpPeerRemoteAs'] <= 65534) || ($peer['bgpPeerRemoteAs'] >= 4200000000 && $peer['bgpPeerRemoteAs'] <= 4294967294)) { + $peer_type = "Priv eBGP"; } } diff --git a/includes/html/pages/routing/mpls-path-map.inc.php b/includes/html/pages/routing/mpls-path-map.inc.php index c8d76a138652..9fb2ecfc9fc1 100644 --- a/includes/html/pages/routing/mpls-path-map.inc.php +++ b/includes/html/pages/routing/mpls-path-map.inc.php @@ -26,20 +26,20 @@ d_echo($ar_list); // first node is host self -$node = device_has_ip($ar_list[0]['mplsTunnelARHopRouterId']); +$node = \App\Models\Device::findByIp($ar_list[0]['mplsTunnelARHopRouterId']); if ($node) { - $node_id = $node['device_id']; - $label = $node['hostname']; + $node_id = $node->device_id; + $label = $node->displayName(); $first_node = $ar_list[0]['mplsTunnelARHopRouterId']; } else { $node_id = $label = $first_node; } foreach ($ar_list as $value) { - $node = device_has_ip($value['mplsTunnelARHopRouterId']); + $node = \App\Models\Device::findByIp($value['mplsTunnelARHopRouterId']); if ($node) { - $remote_node_id = $node['device_id']; - $remote_label = $node['hostname']; + $remote_node_id = $node->device_id; + $remote_label = $node->displayName(); } else { $remote_node_id = $remote_label = $value['mplsTunnelARHopRouterId']; } @@ -107,16 +107,16 @@ $c_list = dbFetchRows('SELECT * from `mpls_tunnel_c_hops` where device_id = ? AND mplsTunnelCHopListIndex = ?', [$device_id, $filtered2]); // first node is host self -$node = device_has_ip($c_list[0]['mplsTunnelCHopRouterId']); +$node = \App\Models\Device::findByIp($c_list[0]['mplsTunnelCHopRouterId']); if ($node) { - $node_id = $node['device_id']; - $label = $node['hostname']; + $node_id = $node->device_id; + $label = $node->displayName(); } else { $node_id = $label = $c_list[0]['mplsTunnelCHopRouterId']; } foreach ($c_list as $value) { - $node = device_has_ip($value['mplsTunnelCHopRouterId']); + $node = \App\Models\Device::findByIp($value['mplsTunnelCHopRouterId']); if ($node) { $remote_node_id = $node['device_id']; $remote_label = $node['hostname']; diff --git a/includes/html/pages/services.inc.php b/includes/html/pages/services.inc.php index 1ab971abf078..45b0dae5a521 100644 --- a/includes/html/pages/services.inc.php +++ b/includes/html/pages/services.inc.php @@ -146,7 +146,7 @@ $header = true; $service_iteration = 0; - $services = dbFetchRows("SELECT * FROM `services` WHERE `device_id` = ? $where ORDER BY service_type", $sql_param); + $services = dbFetchRows("SELECT * FROM `services` WHERE `device_id` = ? $where ORDER BY service_type, service_name", $sql_param); $services_count = count($services); foreach ($services as $service) { if ($service['service_status'] == '2') { diff --git a/includes/html/reports/ports.csv.inc.php b/includes/html/reports/ports.csv.inc.php index fa8de829022f..42ac97cf70bb 100644 --- a/includes/html/reports/ports.csv.inc.php +++ b/includes/html/reports/ports.csv.inc.php @@ -106,52 +106,52 @@ switch ($vars['sort']) { case 'traffic': - $ports = array_sort_by_column($ports, 'ifOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOctets_rate', descending: true); break; case 'traffic_in': - $ports = array_sort_by_column($ports, 'ifInOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifInOctets_rate', descending: true); break; case 'traffic_out': - $ports = array_sort_by_column($ports, 'ifOutOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOutOctets_rate', descending: true); break; case 'packets': - $ports = array_sort_by_column($ports, 'ifUcastPkts_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifUcastPkts_rate', descending: true); break; case 'packets_in': - $ports = array_sort_by_column($ports, 'ifInUcastOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifInUcastOctets_rate', descending: true); break; case 'packets_out': - $ports = array_sort_by_column($ports, 'ifOutUcastOctets_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifOutUcastOctets_rate', descending: true); break; case 'errors': - $ports = array_sort_by_column($ports, 'ifErrors_rate', SORT_DESC); + $ports = collect($ports)->sortBy('ifErrors_rate', descending: true); break; case 'speed': - $ports = array_sort_by_column($ports, 'ifSpeed', SORT_DESC); + $ports = collect($ports)->sortBy('ifSpeed', descending: true); break; case 'port': - $ports = array_sort_by_column($ports, 'ifDescr', SORT_ASC); + $ports = collect($ports)->sortBy('ifDescr'); break; case 'media': - $ports = array_sort_by_column($ports, 'ifType', SORT_ASC); + $ports = collect($ports)->sortBy('ifType'); break; case 'descr': - $ports = array_sort_by_column($ports, 'ifAlias', SORT_ASC); + $ports = collect($ports)->sortBy('ifAlias'); break; case 'device': default: - $ports = array_sort_by_column($ports, 'hostname', SORT_ASC); + $ports = collect($ports)->sortBy('hostname'); }//end switch $csv[] = [ diff --git a/includes/html/table/as-selection.inc.php b/includes/html/table/as-selection.inc.php index 54d84d04109d..8e558b88178c 100644 --- a/includes/html/table/as-selection.inc.php +++ b/includes/html/table/as-selection.inc.php @@ -2,8 +2,10 @@ $param = []; // Exclude Private and reserved ASN ranges -// 64512 - 65535 -// 4200000000 - 4294967295 +// 64512 - 65534 (Private) +// 65535 (Well Known) +// 4200000000 - 4294967294 (Private) +// 4294967295 (Reserved) $sql = ' FROM `devices` WHERE `disabled` = 0 AND `ignore` = 0 AND `bgpLocalAs` > 0 AND (`bgpLocalAs` < 64512 OR `bgpLocalAs` > 65535) AND `bgpLocalAs` < 4200000000 '; if (isset($searchPhrase) && ! empty($searchPhrase)) { @@ -36,7 +38,7 @@ $sql = "SELECT `bgpLocalAs` $sql"; foreach (dbFetchRows($sql, $param) as $asn) { - $astext = get_astext($asn['bgpLocalAs']); + $astext = \LibreNMS\Util\AutonomousSystem::get($asn['bgpLocalAs'])->name(); $response[] = [ 'bgpLocalAs' => $asn['bgpLocalAs'], 'asname' => $astext, diff --git a/includes/polling/applications/bird2.inc.php b/includes/polling/applications/bird2.inc.php index 5bb4d9b9b05a..1203ff668d7c 100644 --- a/includes/polling/applications/bird2.inc.php +++ b/includes/polling/applications/bird2.inc.php @@ -1,7 +1,6 @@ device_id = $device['device_id']; - $bgpPeer->astext = get_astext($protocol['neighbor_as']); + $bgpPeer->astext = \LibreNMS\Util\AutonomousSystem::get($protocol['neighbor_as'])->name(); $bgpPeer->bgpPeerIdentifier = $protocol['neighbor_id'] ?: '0.0.0.0'; $bgpPeer->bgpPeerRemoteAs = $protocol['neighbor_as']; $bgpPeer->bgpPeerState = strtolower($protocol['bgp_state']); diff --git a/includes/polling/availability.inc.php b/includes/polling/availability.inc.php index 4253130d12ed..3f96be38f3e3 100644 --- a/includes/polling/availability.inc.php +++ b/includes/polling/availability.inc.php @@ -1,44 +1,8 @@ enableGraph('availability'); - -$col = dbFetchColumn('SELECT duration FROM availability WHERE device_id = ?', [$device['device_id']]); -foreach (Config::get('graphing.availability') as $duration) { - if (! in_array($duration, $col)) { - $data = ['device_id' => $device['device_id'], - 'duration' => $duration, ]; - dbInsert($data, 'availability'); - } -} - -echo 'Availability: ' . PHP_EOL; - -foreach (dbFetchRows('SELECT * FROM availability WHERE device_id = ?', [$device['device_id']]) as $row) { - //delete not more interested availabilities - if (! in_array($row['duration'], Config::get('graphing.availability'))) { - dbDelete('availability', 'availability_id=?', [$row['availability_id']]); - continue; - } - - $avail = \LibreNMS\Device\Availability::availability($device, $row['duration']); - $human_time = \LibreNMS\Util\Time::formatInterval($row['duration'], parts: 1); - - $rrd_name = ['availability', $row['duration']]; - $rrd_def = RrdDefinition::make() - ->addDataset('availability', 'GAUGE', 0); - - $fields = [ - 'availability' => $avail, - ]; - - $tags = ['name' => $row['duration'], 'rrd_def' => $rrd_def, 'rrd_name' => $rrd_name]; - data_update($device, 'availability', $tags, $fields); - - dbUpdate(['availability_perc' => $avail], 'availability', '`availability_id` = ?', [$row['availability_id']]); - - echo $human_time . ' : ' . $avail . '%' . PHP_EOL; +if (! $os instanceof OS) { + $os = OS::make($device); } -unset($duration); +(new \LibreNMS\Modules\Availability())->poll($os, app('Datastore')); diff --git a/includes/polling/core.inc.php b/includes/polling/core.inc.php index cb82a4f85134..beb47be03ea8 100644 --- a/includes/polling/core.inc.php +++ b/includes/polling/core.inc.php @@ -11,4 +11,4 @@ * See COPYING for more details. */ -(new \LibreNMS\Modules\Core())->poll($os); +(new \LibreNMS\Modules\Core())->poll($os, app('Datastore')); diff --git a/includes/polling/isis.inc.php b/includes/polling/isis.inc.php index f0f3edb8cb72..5102d4855119 100644 --- a/includes/polling/isis.inc.php +++ b/includes/polling/isis.inc.php @@ -28,4 +28,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Isis())->poll($os); +(new \LibreNMS\Modules\Isis())->poll($os, app('Datastore')); diff --git a/includes/polling/mempools.inc.php b/includes/polling/mempools.inc.php index 00d8caced5c5..0eac6515c9b5 100644 --- a/includes/polling/mempools.inc.php +++ b/includes/polling/mempools.inc.php @@ -5,4 +5,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Mempools())->poll($os); +(new \LibreNMS\Modules\Mempools())->poll($os, app('Datastore')); diff --git a/includes/polling/mpls.inc.php b/includes/polling/mpls.inc.php index 28a72a977b39..7988e4080c47 100644 --- a/includes/polling/mpls.inc.php +++ b/includes/polling/mpls.inc.php @@ -28,4 +28,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Mpls())->poll($os); +(new \LibreNMS\Modules\Mpls())->poll($os, app('Datastore')); diff --git a/includes/polling/nac.inc.php b/includes/polling/nac.inc.php index 59cf86a53a46..6c891dea89b4 100644 --- a/includes/polling/nac.inc.php +++ b/includes/polling/nac.inc.php @@ -29,4 +29,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Nac())->poll($os); +(new \LibreNMS\Modules\Nac())->poll($os, app('Datastore')); diff --git a/includes/polling/netstats.inc.php b/includes/polling/netstats.inc.php index 67252cd8066c..211f68a9bb45 100644 --- a/includes/polling/netstats.inc.php +++ b/includes/polling/netstats.inc.php @@ -5,4 +5,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Netstats())->poll($os); +(new \LibreNMS\Modules\Netstats())->poll($os, app('Datastore')); diff --git a/includes/polling/os.inc.php b/includes/polling/os.inc.php index 81a4d869ba33..42618da1d52a 100644 --- a/includes/polling/os.inc.php +++ b/includes/polling/os.inc.php @@ -5,4 +5,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Os())->poll($os); +(new \LibreNMS\Modules\Os())->poll($os, app('Datastore')); diff --git a/includes/polling/ospf.inc.php b/includes/polling/ospf.inc.php index 05c0b47a494d..3f5c89601ca4 100644 --- a/includes/polling/ospf.inc.php +++ b/includes/polling/ospf.inc.php @@ -5,4 +5,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Ospf())->poll($os); +(new \LibreNMS\Modules\Ospf())->poll($os, app('Datastore')); diff --git a/includes/polling/ports/os/cnmatrix.inc.php b/includes/polling/ports/os/cnmatrix.inc.php new file mode 100644 index 000000000000..0037005a515a --- /dev/null +++ b/includes/polling/ports/os/cnmatrix.inc.php @@ -0,0 +1,6 @@ +$port) { + $port_stats[$index]['ifAlias'] = $int_desc[$index]['ifMainDesc']; +} diff --git a/includes/polling/printer-supplies.inc.php b/includes/polling/printer-supplies.inc.php index 1f3eb4820f01..db9e7c90f159 100644 --- a/includes/polling/printer-supplies.inc.php +++ b/includes/polling/printer-supplies.inc.php @@ -23,4 +23,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\PrinterSupplies())->poll($os); +(new \LibreNMS\Modules\PrinterSupplies())->poll($os, app('Datastore')); diff --git a/includes/polling/slas.inc.php b/includes/polling/slas.inc.php index e2705f6b33a9..485fa1668bea 100644 --- a/includes/polling/slas.inc.php +++ b/includes/polling/slas.inc.php @@ -23,4 +23,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Slas())->poll($os); +(new \LibreNMS\Modules\Slas())->poll($os, app('Datastore')); diff --git a/includes/polling/stp.inc.php b/includes/polling/stp.inc.php index af6c98a73d2b..f9dd3739a3a0 100644 --- a/includes/polling/stp.inc.php +++ b/includes/polling/stp.inc.php @@ -20,4 +20,4 @@ $os = OS::make($device); } -(new \LibreNMS\Modules\Stp())->poll($os); +(new \LibreNMS\Modules\Stp())->poll($os, app('Datastore')); diff --git a/includes/polling/xdsl.inc.php b/includes/polling/xdsl.inc.php index 167ce6a093dd..5cb2ce3fc0fe 100644 --- a/includes/polling/xdsl.inc.php +++ b/includes/polling/xdsl.inc.php @@ -5,4 +5,4 @@ if (! $os instanceof OS) { $os = OS::make($device); } -(new \LibreNMS\Modules\Xdsl())->poll($os); +(new \LibreNMS\Modules\Xdsl())->poll($os, app('Datastore')); diff --git a/includes/services/check_dns.inc.php b/includes/services/check_dns.inc.php index 243cae5e83aa..fd709f70b774 100644 --- a/includes/services/check_dns.inc.php +++ b/includes/services/check_dns.inc.php @@ -4,7 +4,7 @@ if ($service['service_param']) { $nsquery = $service['service_param']; } else { - $nsquery = 'localhost'; + $nsquery = 'localhost.'; } if ($service['service_ip']) { $resolver = $service['service_ip']; diff --git a/lang/en/settings.php b/lang/en/settings.php index 2f54f4b65c51..613afee3e4f7 100644 --- a/lang/en/settings.php +++ b/lang/en/settings.php @@ -283,6 +283,14 @@ 'description' => 'Check certificate', 'help' => 'Check certificates for validity. Some servers use self signed certificates, disabling this allows those.', ], + 'auth_ad_debug' => [ + 'description' => 'Debug', + 'help' => 'Show detailed error messages, do not leave this enabled as it can leak data.', + ], + 'auth_ad_domain' => [ + 'description' => 'Active Directory Domain', + 'help' => 'Active Directory Domain Example: example.com', + ], 'auth_ad_group_filter' => [ 'description' => 'Group LDAP filter', 'help' => 'Active Directory LDAP filter for selecting groups', @@ -291,6 +299,10 @@ 'description' => 'Group access', 'help' => 'Define groups that have access and level', ], + 'auth_ad_require_groupmembership' => [ + 'description' => 'Require group membership', + 'help' => 'Only allow users to log in if they are part of a defined group', + ], 'auth_ad_user_filter' => [ 'description' => 'User LDAP filter', 'help' => 'Active Directory LDAP filter for selecting users', @@ -299,10 +311,6 @@ 'description' => 'Active Directory Server(s)', 'help' => 'Set server(s), space separated. Prefix with ldaps:// for ssl. Example: ldaps://dc1.example.com ldaps://dc2.example.com', ], - 'auth_ad_domain' => [ - 'description' => 'Active Directory Domain', - 'help' => 'Active Directory Domain Example: example.com', - ], 'auth_ldap_attr' => [ 'uid' => [ 'description' => 'Attribute to check username against', diff --git a/mibs/LLDP-EXT-DOT1-MIB b/mibs/LLDP-EXT-DOT1-MIB index 6c625733b68e..53078392181b 100644 --- a/mibs/LLDP-EXT-DOT1-MIB +++ b/mibs/LLDP-EXT-DOT1-MIB @@ -1,18 +1,22 @@ -LLDP-EXT-DOT3-MIB DEFINITIONS ::= BEGIN +LLDP-EXT-DOT1-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Integer32 FROM SNMPv2-SMI - TEXTUAL-CONVENTION, TruthValue + TruthValue FROM SNMPv2-TC + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF lldpExtensions, lldpLocPortNum, - lldpRemTimeMark, lldpRemLocalPortNum, lldpRemIndex, + lldpRemTimeMark, lldpRemLocalPortNum, lldpRemIndex, lldpPortConfigEntry - FROM LLDP-MIB; + FROM LLDP-MIB + VlanId + FROM Q-BRIDGE-MIB; -lldpXdot3MIB MODULE-IDENTITY +lldpXdot1MIB MODULE-IDENTITY LAST-UPDATED "200505060000Z" -- May 06, 2005 ORGANIZATION "IEEE 802.1 Working Group" CONTACT-INFO @@ -28,828 +32,790 @@ lldpXdot3MIB MODULE-IDENTITY E-mail: paul_congdon@hp.com" DESCRIPTION "The LLDP Management Information Base extension module for - IEEE 802.3 organizationally defined discovery information. + IEEE 802.1 organizationally defined discovery information. In order to assure the uniqueness of the LLDP-MIB, - lldpXdot3MIB is branched from lldpExtensions using OUI value + lldpXdot1MIB is branched from lldpExtensions using OUI value as the node. An OUI/'company_id' is a 24 bit globally unique assigned number referenced by various standards. Copyright (C) IEEE (2005). This version of this MIB module - is published as Annex G.6.1 of IEEE Std 802.1AB-2005; + is published as Annex F.7.1 of IEEE Std 802.1AB-2005; see the standard itself for full legal notices." REVISION "200505060000Z" -- May 06, 2005 DESCRIPTION "Published as part of IEEE Std 802.1AB-2005 initial version." --- OUI for IEEE 802.3 is 4623 (00-12-0F) - ::= { lldpExtensions 4623 } +-- OUI for IEEE 802.1 is 32962 (00-80-C2) + ::= { lldpExtensions 32962 } +-- ::= { iso std(0) iso8802(8802) ieee802dot1(1) ieee802dot1mibs(1) lldPMIB(2) lldpObjects(1) lldpExtensions(5) 32962} ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -- --- Organizationally Defined Information Extension - IEEE 802.3 +-- Organizationally Defined Information Extension - IEEE 802.1 -- ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ -lldpXdot3Objects OBJECT IDENTIFIER ::= { lldpXdot3MIB 1 } +lldpXdot1Objects OBJECT IDENTIFIER ::= { lldpXdot1MIB 1 } --- LLDP IEEE 802.3 extension MIB groups -lldpXdot3Config OBJECT IDENTIFIER ::= { lldpXdot3Objects 1 } -lldpXdot3LocalData OBJECT IDENTIFIER ::= { lldpXdot3Objects 2 } -lldpXdot3RemoteData OBJECT IDENTIFIER ::= { lldpXdot3Objects 3 } - --- textual conventions - -LldpPowerPortClass ::= TEXTUAL-CONVENTION - STATUS current - DESCRIPTION - "This TC describes the Power over Ethernet (PoE) port class." - SYNTAX INTEGER { - pClassPSE(1), - pClassPD(2) - } - -LldpLinkAggStatusMap ::= TEXTUAL-CONVENTION - STATUS current - DESCRIPTION - "This TC describes the link aggregation status. - - The bit 'aggCapable(0)' indicates the link is capable of being - aggregated. - - The bit 'aggEnabled(1)' indicates the link is currently in - aggregation." - SYNTAX BITS { - aggCapable(0), - aggEnabled(1) - } +-- LLDP IEEE 802.1 extension MIB groups +lldpXdot1Config OBJECT IDENTIFIER ::= { lldpXdot1Objects 1 } +lldpXdot1LocalData OBJECT IDENTIFIER ::= { lldpXdot1Objects 2 } +lldpXdot1RemoteData OBJECT IDENTIFIER ::= { lldpXdot1Objects 3 } ------------------------------------------------------------------------------ --- IEEE 802.3 - Configuration +-- IEEE 802.1 - Configuration ------------------------------------------------------------------------------ +-- +-- lldpXdot1ConfigPortVlanTable : configure the transmission of the +-- Port VLAN-ID TLVs on set of ports. +-- -lldpXdot3PortConfigTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3PortConfigEntry +lldpXdot1ConfigPortVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1ConfigPortVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "A table that controls selection of LLDP TLVs to be transmitted - on individual ports." - ::= { lldpXdot3Config 1 } + "A table that controls selection of LLDP Port VLAN-ID TLVs + to be transmitted on individual ports." + ::= { lldpXdot1Config 1 } -lldpXdot3PortConfigEntry OBJECT-TYPE - SYNTAX LldpXdot3PortConfigEntry +lldpXdot1ConfigPortVlanEntry OBJECT-TYPE + SYNTAX LldpXdot1ConfigPortVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "LLDP configuration information that controls the - transmission of IEEE 802.3 organizationally defined TLVs on - LLDP transmission capable ports. + transmission of IEEE 802.1 organizationally defined Port + VLAN-ID TLV on LLDP transmission capable ports. This configuration object augments the lldpPortConfigEntry of the LLDP-MIB, therefore it is only present along with the port configuration defined by the associated lldpPortConfigEntry entry. - Each active lldpXdot3PortConfigEntry must be from non-volatile + Each active lldpConfigEntry must be restored from non-volatile storage (along with the corresponding lldpPortConfigEntry) after a re-initialization of the management system." AUGMENTS { lldpPortConfigEntry } - ::= { lldpXdot3PortConfigTable 1 } + ::= { lldpXdot1ConfigPortVlanTable 1 } -LldpXdot3PortConfigEntry ::= SEQUENCE { - lldpXdot3PortConfigTLVsTxEnable BITS +LldpXdot1ConfigPortVlanEntry ::= SEQUENCE { + lldpXdot1ConfigPortVlanTxEnable TruthValue } -lldpXdot3PortConfigTLVsTxEnable OBJECT-TYPE - SYNTAX BITS { - macPhyConfigStatus(0), - powerViaMDI(1), - linkAggregation(2), - maxFrameSize(3) - } +lldpXdot1ConfigPortVlanTxEnable OBJECT-TYPE + SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION - "The lldpXdot3PortConfigTLVsTxEnable, defined as a bitmap, - includes the IEEE 802.3 organizationally defined set of LLDP - TLVs whose transmission is allowed on the local LLDP agent by - the network management. Each bit in the bitmap corresponds - to an IEEE 802.3 subtype associated with a specific IEEE - 802.3 optional TLV. The bit 0 is not used since there is - no corresponding subtype. - - The bit 'macPhyConfigStatus(0)' indicates that LLDP agent - should transmit 'MAC/PHY configuration/status TLV'. - - The bit 'powerViaMDI(1)' indicates that LLDP agent should - transmit 'Power via MDI TLV'. - - The bit 'linkAggregation(2)' indicates that LLDP agent should - transmit 'Link Aggregation TLV'. - - The bit 'maxFrameSize(3)' indicates that LLDP agent should - transmit 'Maximum-frame-size TLV'. - - The default value for lldpXdot3PortConfigTLVsTxEnable object - is an empty set, which means no enumerated values are set. + "The lldpXdot1ConfigPortVlanTxEnable, which is defined as + a truth value and configured by the network management, + determines whether the IEEE 802.1 organizationally defined + port VLAN TLV transmission is allowed on a given LLDP + transmission capable port. The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE "IEEE 802.1AB-2005 10.2.1.1" - DEFVAL { { } } - ::= { lldpXdot3PortConfigEntry 1 } + DEFVAL { false } + ::= { lldpXdot1ConfigPortVlanEntry 1 } +-- +-- lldpXdot1LocVlanNameTable : VLAN name information about the local system +-- ------------------------------------------------------------------------------- --- IEEE 802.3 - Local Device Information ------------------------------------------------------------------------------- ---- ---- lldpXdot3LocPortTable: Ethernet Port AutoNeg/Speed/Duplex ---- Information Table ---- ---- -lldpXdot3LocPortTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3LocPortEntry +lldpXdot1LocVlanNameTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1LocVlanNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains one row per port of Ethernet port - information (as a part of the LLDP 802.3 organizational - extension) on the local system known to this agent." - ::= { lldpXdot3LocalData 1 } + "This table contains one or more rows per IEEE 802.1Q VLAN + name information on the local system known to this agent." + ::= { lldpXdot1LocalData 3 } -lldpXdot3LocPortEntry OBJECT-TYPE - SYNTAX LldpXdot3LocPortEntry +lldpXdot1LocVlanNameEntry OBJECT-TYPE + SYNTAX LldpXdot1LocVlanNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a particular port component." - INDEX { lldpLocPortNum } - ::= { lldpXdot3LocPortTable 1 } + "VLAN name Information about a particular port component. + There may be multiple VLANs, identified by a particular + lldpXdot1LocVlanId, configured on the given port." + INDEX { lldpLocPortNum, + lldpXdot1LocVlanId } + ::= { lldpXdot1LocVlanNameTable 1 } -LldpXdot3LocPortEntry ::= SEQUENCE { - lldpXdot3LocPortAutoNegSupported TruthValue, - lldpXdot3LocPortAutoNegEnabled TruthValue, - lldpXdot3LocPortAutoNegAdvertisedCap OCTET STRING, - lldpXdot3LocPortOperMauType Integer32 -} +LldpXdot1LocVlanNameEntry ::= SEQUENCE { + lldpXdot1LocVlanId VlanId, + lldpXdot1LocVlanName SnmpAdminString +} -lldpXdot3LocPortAutoNegSupported OBJECT-TYPE - SYNTAX TruthValue - MAX-ACCESS read-only +lldpXdot1LocVlanId OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The truth value used to indicate whether the given port - (associated with the local system) supports Auto-negotiation." + "The integer value used to identify the IEEE 802.1Q + VLAN IDs with which the given port is compatible." REFERENCE - "IEEE 802.1AB-2005 G.2.1" - ::= { lldpXdot3LocPortEntry 1 } + "IEEE 802.1AB-2005 F.4.2" + ::= { lldpXdot1LocVlanNameEntry 1 } -lldpXdot3LocPortAutoNegEnabled OBJECT-TYPE - SYNTAX TruthValue +lldpXdot1LocVlanName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(1..32)) MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value used to indicate whether port - Auto-negotiation is enabled on the given port associated - with the local system." + "The string value used to identify VLAN name identified by the + Vlan Id associated with the given port on the local system. + + This object should contain the value of the dot1QVLANStaticName + object (defined in IETF RFC 2674) identified with the given + lldpXdot1LocVlanId." REFERENCE - "IEEE 802.1AB-2005 G.2.1" - ::= { lldpXdot3LocPortEntry 2 } + "IEEE 802.1AB-2005 F.4.4" + ::= { lldpXdot1LocVlanNameEntry 2 } -lldpXdot3LocPortAutoNegAdvertisedCap OBJECT-TYPE - SYNTAX OCTET STRING(SIZE(2)) - MAX-ACCESS read-only +-- +-- lldpXdot1ConfigVlanNameTable : configure the transmission of the +-- VLAN name instances on set of ports. +-- + +lldpXdot1ConfigVlanNameTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1ConfigVlanNameEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This object contains the value (bitmap) of the - ifMauAutoNegCapAdvertisedBits object (defined in IETF RFC - 3636) which is associated with the given port on the - local system." - REFERENCE - "IEEE 802.1AB-2005 G.2.2" - ::= { lldpXdot3LocPortEntry 3 } + "The table that controls selection of LLDP VLAN name TLV + instances to be transmitted on individual ports." + ::= { lldpXdot1Config 2 } -lldpXdot3LocPortOperMauType OBJECT-TYPE - SYNTAX Integer32(0..2147483647) - MAX-ACCESS read-only +lldpXdot1ConfigVlanNameEntry OBJECT-TYPE + SYNTAX LldpXdot1ConfigVlanNameEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "An integer value that indicates the operational MAU type - of the given port on the local system. + "LLDP configuration information that specifies the set of + ports (represented as a PortList) on which the Local System + VLAN name instance will be transmitted. + + This configuration object augments the lldpLocVlanEntry, + therefore it is only present along with the VLAN Name instance + contained in the associated lldpLocVlanNameEntry entry. + + Each active lldpXdot1ConfigVlanNameEntry must be restored + from non-volatile storage (along with the corresponding + lldpXdot1LocVlanNameEntry) after a re-initialization of the + management system." + AUGMENTS { lldpXdot1LocVlanNameEntry } + ::= { lldpXdot1ConfigVlanNameTable 1 } + +LldpXdot1ConfigVlanNameEntry ::= SEQUENCE { + lldpXdot1ConfigVlanNameTxEnable TruthValue +} + +lldpXdot1ConfigVlanNameTxEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The boolean value that indicates whether the corresponding + Local System VLAN name instance will be transmitted on the + port defined by the given lldpXdot1LocVlanNameEntry. - This object contains the integer value derived from the - list position of the corresponding dot3MauType as listed - in IETF RFC 3636 (or subsequent revisions) and is equal - to the last number in the respective dot3MauType OID. - - For example, if the ifMauType object is dot3MauType1000BaseTHD - which corresponds to {dot3MauType 29}, the numerical value of - this field will be 29. For MAU types not listed in RFC 3636 - (or subsequent revisions), the value of this field shall be - set to zero." + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." REFERENCE - "IEEE 802.1AB-2005 G.2.3" - ::= { lldpXdot3LocPortEntry 4 } - ---- ---- ---- lldpXdot3LocPowerTable: Power Ethernet Information Table ---- ---- -lldpXdot3LocPowerTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3LocPowerEntry + "IEEE 802.1AB-2005 10.2.1.1" + DEFVAL { false } + ::= { lldpXdot1ConfigVlanNameEntry 1 } + +-- +-- lldpXdot1LocProtoVlanTable: Port and Protocol VLAN information +-- + +lldpXdot1LocProtoVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1LocProtoVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains one row per port of power ethernet - information (as a part of the LLDP 802.3 organizational - extension) on the local system known to this agent." - ::= { lldpXdot3LocalData 2 } + "This table contains one or more rows per Port and Protocol + VLAN information about the local system." + ::= { lldpXdot1LocalData 2 } -lldpXdot3LocPowerEntry OBJECT-TYPE - SYNTAX LldpXdot3LocPowerEntry +lldpXdot1LocProtoVlanEntry OBJECT-TYPE + SYNTAX LldpXdot1LocProtoVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a particular port component." - INDEX { lldpLocPortNum } - ::= { lldpXdot3LocPowerTable 1 } - -LldpXdot3LocPowerEntry ::= SEQUENCE { - lldpXdot3LocPowerPortClass LldpPowerPortClass, - lldpXdot3LocPowerMDISupported TruthValue, - lldpXdot3LocPowerMDIEnabled TruthValue, - lldpXdot3LocPowerPairControlable TruthValue, - lldpXdot3LocPowerPairs Integer32, - lldpXdot3LocPowerClass Integer32 -} + "Port and protocol VLAN ID Information about a particular + port component. There may be multiple port and protocol VLANs, + identified by a particular lldpXdot1LocProtoVlanId, configured + on the given port." + INDEX { lldpLocPortNum, + lldpXdot1LocProtoVlanId } + ::= { lldpXdot1LocProtoVlanTable 1 } -lldpXdot3LocPowerPortClass OBJECT-TYPE - SYNTAX LldpPowerPortClass - MAX-ACCESS read-only +LldpXdot1LocProtoVlanEntry ::= SEQUENCE { + lldpXdot1LocProtoVlanId Integer32, + lldpXdot1LocProtoVlanSupported TruthValue, + lldpXdot1LocProtoVlanEnabled TruthValue +} + +lldpXdot1LocProtoVlanId OBJECT-TYPE + SYNTAX Integer32(0|1..4094) + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The value that identifies the port Class of the given port - associated with the local system." + "The integer value used to identify the port and protocol + VLANs associated with the given port associated with the + local system. A value of zero shall be used if the system + either does not know the protocol VLAN ID (PPVID) or does + not support port and protocol VLAN operation." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3LocPowerEntry 1 } + "IEEE 802.1AB-2005 F.3.2" + ::= { lldpXdot1LocProtoVlanEntry 1 } -lldpXdot3LocPowerMDISupported OBJECT-TYPE +lldpXdot1LocProtoVlanSupported OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value used to indicate whether the MDI power is - supported on the given port associated with the local system." + "The truth value used to indicate whether the given port + (associated with the local system) supports port and protocol + VLANs." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3LocPowerEntry 2 } + "IEEE 802.1AB-2005 F.3.1" + ::= { lldpXdot1LocProtoVlanEntry 2 } -lldpXdot3LocPowerMDIEnabled OBJECT-TYPE +lldpXdot1LocProtoVlanEnabled OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value used to identify whether MDI power is - enabled on the given port associated with the local system." + "The truth value used to indicate whether the port and + protocol VLANs are enabled on the given port associated with + the local system." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3LocPowerEntry 3 } + "IEEE 802.1AB-2005 F.3.1" + ::= { lldpXdot1LocProtoVlanEntry 3 } -lldpXdot3LocPowerPairControlable OBJECT-TYPE - SYNTAX TruthValue - MAX-ACCESS read-only +-- +-- lldpXdot1ConfigProtoVlanTable : configure the transmission of the +-- protocol VLAN instances on set +-- of ports. +-- + +lldpXdot1ConfigProtoVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1ConfigProtoVlanEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The truth value is derived from the value of - pethPsePortPowerPairsControlAbility object (defined in IETF - RFC 3621) and is used to indicate whether the pair selection - can be controlled on the given port associated with the - local system." - REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3LocPowerEntry 4 } + "The table that controls selection of LLDP Port and Protocol + VLAN ID TLV instances to be transmitted on individual ports." + ::= { lldpXdot1Config 3 } -lldpXdot3LocPowerPairs OBJECT-TYPE - SYNTAX Integer32(1|2) - MAX-ACCESS read-only +lldpXdot1ConfigProtoVlanEntry OBJECT-TYPE + SYNTAX LldpXdot1ConfigProtoVlanEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This object contains the value of the pethPsePortPowerPairs - object (defined in IETF RFC 3621) which is associated with - the given port on the local system." - REFERENCE - "IEEE 802.1AB-2005 G.3.2" - ::= { lldpXdot3LocPowerEntry 5 } + "LLDP configuration information that specifies the set of + ports (represented as a PortList) on which the Local System + Protocol VLAN instance will be transmitted. -lldpXdot3LocPowerClass OBJECT-TYPE - SYNTAX Integer32(1|2|3|4|5) - MAX-ACCESS read-only - STATUS current + This configuration object augments the lldpXdot1LocVlanEntry, + therefore it is only present along with the Port and + Protocol VLAN ID instance contained in the associated + lldpXdot1LocVlanEntry entry. + + Each active lldpXdot1ConfigProtoVlanEntry must be restored + from non-volatile storage (along with the corresponding + lldpXdot1LocProtoVlanEntry) after a re-initialization of + the management system." + + AUGMENTS { lldpXdot1LocProtoVlanEntry } + ::= { lldpXdot1ConfigProtoVlanTable 1 } + +LldpXdot1ConfigProtoVlanEntry ::= SEQUENCE { + lldpXdot1ConfigProtoVlanTxEnable TruthValue +} + +lldpXdot1ConfigProtoVlanTxEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current DESCRIPTION - "This object contains the value of the - pethPsePortPowerClassifications object (defined in IETF - RFC 3621) which is associated with the given port on the - local system." + "The boolean value that indicates whether the corresponding + Local System Port and Protocol VLAN instance will + be transmitted on the port defined by the given + lldpXdot1LocProtoVlanEntry. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." REFERENCE - "IEEE 802.1AB-2005 G.3.3" - ::= { lldpXdot3LocPowerEntry 6 } - ---- ---- ---- lldpXdot3LocLinkAggTable: Link Aggregation Information Table ---- ---- -lldpXdot3LocLinkAggTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3LocLinkAggEntry + "IEEE 802.1AB-2005 10.2.1.1" + DEFVAL { false } + ::= { lldpXdot1ConfigProtoVlanEntry 1 } + +-- +-- lldpXdot1LocProtocolTable : Protocol Identity information +-- + +lldpXdot1LocProtocolTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1LocProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains one row per port of link aggregation - information (as a part of the LLDP 802.3 organizational - extension) on the local system known to this agent." - ::= { lldpXdot3LocalData 3 } + "This table contains one or more rows per protocol identity + information on the local system known to this agent." + REFERENCE + "IEEE 802.1AB-2005 F.5" + ::= { lldpXdot1LocalData 4 } -lldpXdot3LocLinkAggEntry OBJECT-TYPE - SYNTAX LldpXdot3LocLinkAggEntry +lldpXdot1LocProtocolEntry OBJECT-TYPE + SYNTAX LldpXdot1LocProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Link Aggregation information about a particular port - component." - INDEX { lldpLocPortNum } - ::= { lldpXdot3LocLinkAggTable 1 } + "Information about particular protocols that are accessible + through the given port component. -LldpXdot3LocLinkAggEntry ::= SEQUENCE { - lldpXdot3LocLinkAggStatus LldpLinkAggStatusMap, - lldpXdot3LocLinkAggPortId Integer32 -} + There may be multiple protocols, identified by particular + lldpXdot1ProtocolIndex, and lldpLocPortNum." + REFERENCE + "IEEE 802.1AB-2005 F.5" + INDEX { lldpLocPortNum, + lldpXdot1LocProtocolIndex } + ::= { lldpXdot1LocProtocolTable 1 } + +LldpXdot1LocProtocolEntry ::= SEQUENCE { + lldpXdot1LocProtocolIndex Integer32, + lldpXdot1LocProtocolId OCTET STRING +} -lldpXdot3LocLinkAggStatus OBJECT-TYPE - SYNTAX LldpLinkAggStatusMap - MAX-ACCESS read-only +lldpXdot1LocProtocolIndex OBJECT-TYPE + SYNTAX Integer32(1..2147483647) + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The bitmap value contains the link aggregation capabilities - and the current aggregation status of the link." - REFERENCE - "IEEE 802.1AB-2005 G.4.1" - ::= { lldpXdot3LocLinkAggEntry 1 } + "This object represents an arbitrary local integer value used + by this agent to identify a particular protocol identity." + ::= { lldpXdot1LocProtocolEntry 1 } -lldpXdot3LocLinkAggPortId OBJECT-TYPE - SYNTAX Integer32(0|1..2147483647) +lldpXdot1LocProtocolId OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..255)) MAX-ACCESS read-only STATUS current DESCRIPTION - "This object contains the IEEE 802.3 aggregated port - identifier, aAggPortID (IEEE 802.3-2002, 30.7.2.1.1), - derived from the ifNumber of the ifIndex for the port - component in link aggregation. - - If the port is not in link aggregation state and/or it - does not support link aggregation, this value should be set - to zero." + "The octet string value used to identify the protocols + associated with the given port of the local system." REFERENCE - "IEEE 802.1AB-2005 G.4.2" - ::= { lldpXdot3LocLinkAggEntry 2 } - ---- ---- ---- lldpXdot3LocMaxFrameSizeTable: Maximum Frame Size information ---- ---- -lldpXdot3LocMaxFrameSizeTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3LocMaxFrameSizeEntry + "IEEE 802.1AB-2005 F.5.3" + ::= { lldpXdot1LocProtocolEntry 2 } + +-- +-- lldpXdot1ConfigProtocolTable : configure the transmission of the +-- protocol instances on set +-- of ports. +-- + +lldpXdot1ConfigProtocolTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1ConfigProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains one row per port of maximum frame - size information (as a part of the LLDP 802.3 organizational - extension) on the local system known to this agent." - ::= { lldpXdot3LocalData 4 } + "The table that controls selection of LLDP Protocol + TLV instances to be transmitted on individual ports." + ::= { lldpXdot1Config 4 } -lldpXdot3LocMaxFrameSizeEntry OBJECT-TYPE - SYNTAX LldpXdot3LocMaxFrameSizeEntry +lldpXdot1ConfigProtocolEntry OBJECT-TYPE + SYNTAX LldpXdot1ConfigProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Maximum Frame Size information about a particular port - component." - INDEX { lldpLocPortNum } - ::= { lldpXdot3LocMaxFrameSizeTable 1 } + "LLDP configuration information that specifies the set of + ports (represented as a PortList) on which the Local System + Protocol instance will be transmitted. -LldpXdot3LocMaxFrameSizeEntry ::= SEQUENCE { - lldpXdot3LocMaxFrameSize Integer32 -} + This configuration object augments the lldpXdot1LocProtoEntry, + therefore it is only present along with the Protocol instance + contained in the associated lldpXdot1LocProtoEntry entry. -lldpXdot3LocMaxFrameSize OBJECT-TYPE - SYNTAX Integer32(0..65535) - MAX-ACCESS read-only - STATUS current + Each active lldpXdot1ConfigProtocolEntry must be restored + from non-volatile storage (along with the corresponding + lldpXdot1LocProtocolEntry) after a re-initialization of the + management system." + AUGMENTS { lldpXdot1LocProtocolEntry } + ::= { lldpXdot1ConfigProtocolTable 1 } + +LldpXdot1ConfigProtocolEntry ::= SEQUENCE { + lldpXdot1ConfigProtocolTxEnable TruthValue +} + +lldpXdot1ConfigProtocolTxEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current DESCRIPTION - "An integer value indicating the maximum supported frame - size in octets on the given port of the local system." - REFERENCE - "IEEE 802.1AB-2005 G.5.1" - ::= { lldpXdot3LocMaxFrameSizeEntry 1 } + "The boolean value that indicates whether the corresponding + Local System Protocol Identity instance will be transmitted + on the port defined by the given lldpXdot1LocProtocolEntry. + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "IEEE 802.1AB-2005 10.2.1.1" + DEFVAL { false } + ::= { lldpXdot1ConfigProtocolEntry 1 } ------------------------------------------------------------------------------ --- IEEE 802.3 - Remote Devices Information +-- IEEE 802.1 - Local System Information ------------------------------------------------------------------------------ ---- ---- ---- lldpXdot3RemPortTable: Ethernet Information Table ---- ---- -lldpXdot3RemPortTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3RemPortEntry +lldpXdot1LocTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1LocEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains Ethernet port information (as a part - of the LLDP 802.3 organizational extension) of the remote - system." - ::= { lldpXdot3RemoteData 1 } + "This table contains one row per port for IEEE 802.1 + organizationally defined LLDP extension on the local system + known to this agent." + ::= { lldpXdot1LocalData 1 } -lldpXdot3RemPortEntry OBJECT-TYPE - SYNTAX LldpXdot3RemPortEntry +lldpXdot1LocEntry OBJECT-TYPE + SYNTAX LldpXdot1LocEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a particular physical network connection." - INDEX { lldpRemTimeMark, - lldpRemLocalPortNum, - lldpRemIndex } - ::= { lldpXdot3RemPortTable 1 } + "Information about IEEE 802.1 organizationally defined + LLDP extension." + INDEX { lldpLocPortNum } + ::= { lldpXdot1LocTable 1 } -LldpXdot3RemPortEntry ::= SEQUENCE { - lldpXdot3RemPortAutoNegSupported TruthValue, - lldpXdot3RemPortAutoNegEnabled TruthValue, - lldpXdot3RemPortAutoNegAdvertisedCap OCTET STRING, - lldpXdot3RemPortOperMauType Integer32 +LldpXdot1LocEntry ::= SEQUENCE { + lldpXdot1LocPortVlanId Integer32 } -lldpXdot3RemPortAutoNegSupported OBJECT-TYPE - SYNTAX TruthValue +lldpXdot1LocPortVlanId OBJECT-TYPE + SYNTAX Integer32(0|1..4094) MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value used to indicate whether the given port - (associated with remote system) supports Auto-negotiation." + "The integer value used to identify the port's VLAN identifier + associated with the local system. A value of zero shall + be used if the system either does not know the PVID or does + not support port-based VLAN operation." REFERENCE - "IEEE 802.1AB-2005 G.2.1" - ::= { lldpXdot3RemPortEntry 1 } + "IEEE 802.1AB-2005 F.2.1" + ::= { lldpXdot1LocEntry 1 } -lldpXdot3RemPortAutoNegEnabled OBJECT-TYPE - SYNTAX TruthValue - MAX-ACCESS read-only +------------------------------------------------------------------------------ +-- IEEE 802.1 - Remote System Information +------------------------------------------------------------------------------ +lldpXdot1RemTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1RemEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The truth value used to indicate whether port - Auto-negotiation is enabled on the given port associated - with the remote system." - REFERENCE - "IEEE 802.1AB-2005 G.2.1" - ::= { lldpXdot3RemPortEntry 2 } + "This table contains one or more rows per physical network + connection known to this agent. The agent may wish to + ensure that only one lldpXdot1RemEntry is present for + each local port, or it may choose to maintain multiple + lldpXdot1RemEntries for the same local port." + ::= { lldpXdot1RemoteData 1 } -lldpXdot3RemPortAutoNegAdvertisedCap OBJECT-TYPE - SYNTAX OCTET STRING(SIZE(2)) - MAX-ACCESS read-only +lldpXdot1RemEntry OBJECT-TYPE + SYNTAX LldpXdot1RemEntry + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This object contains the value (bitmap) of the - ifMauAutoNegCapAdvertisedBits object (defined in IETF RFC - 3636) which is associated with the given port on the - remote system." - REFERENCE - "IEEE 802.1AB-2005 G.2.2" - ::= { lldpXdot3RemPortEntry 3 } + "Information about a particular port component." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXdot1RemTable 1 } -lldpXdot3RemPortOperMauType OBJECT-TYPE - SYNTAX Integer32(0..2147483647) +LldpXdot1RemEntry ::= SEQUENCE { + lldpXdot1RemPortVlanId Integer32 +} + +lldpXdot1RemPortVlanId OBJECT-TYPE + SYNTAX Integer32(0|1..4094) MAX-ACCESS read-only STATUS current DESCRIPTION - "An integer value that indicates the operational MAU type - of the sending device. - - This object contains the integer value derived from the - list position of the corresponding dot3MauType as listed in - in IETF RFC 3636 (or subsequent revisions) and is equal - to the last number in the respective dot3MauType OID. - - For example, if the ifMauType object is dot3MauType1000BaseTHD - which corresponds to {dot3MauType 29}, the numerical value of - this field will be 29. For MAU types not listed in RFC 3636 - (or subsequent revisions), the value of this field shall be - set to zero." + "The integer value used to identify the port's VLAN identifier + associated with the remote system. if the remote system + either does not know the PVID or does not support port-based + VLAN operation, the value of lldpXdot1RemPortVlanId should + be zero." REFERENCE - "IEEE 802.1AB-2005 G.2.3" - ::= { lldpXdot3RemPortEntry 4 } - ---- ---- ---- lldpXdot3RemPowerTable: Power Ethernet Information Table ---- ---- -lldpXdot3RemPowerTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3RemPowerEntry + "IEEE 802.1AB-2005 F.2.1" + ::= { lldpXdot1RemEntry 1 } + +lldpXdot1RemProtoVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1RemProtoVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains Ethernet power information (as a part - of the LLDP 802.3 organizational extension) of the remote - system." - ::= { lldpXdot3RemoteData 2 } + "This table contains one or more rows per Port and Protocol + VLAN information about the remote system, received on the + given port." + ::= { lldpXdot1RemoteData 2 } -lldpXdot3RemPowerEntry OBJECT-TYPE - SYNTAX LldpXdot3RemPowerEntry +lldpXdot1RemProtoVlanEntry OBJECT-TYPE + SYNTAX LldpXdot1RemProtoVlanEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Information about a particular physical network connection." + "Port and protocol VLAN name Information about a particular + port component. There may be multiple protocol VLANs, + identified by a particular lldpXdot1RemProtoVlanId, configured + on the remote system." INDEX { lldpRemTimeMark, lldpRemLocalPortNum, - lldpRemIndex } - ::= { lldpXdot3RemPowerTable 1 } - -LldpXdot3RemPowerEntry ::= SEQUENCE { - lldpXdot3RemPowerPortClass LldpPowerPortClass, - lldpXdot3RemPowerMDISupported TruthValue, - lldpXdot3RemPowerMDIEnabled TruthValue, - lldpXdot3RemPowerPairControlable TruthValue, - lldpXdot3RemPowerPairs Integer32, - lldpXdot3RemPowerClass Integer32 -} + lldpRemIndex, + lldpXdot1RemProtoVlanId } + ::= { lldpXdot1RemProtoVlanTable 1 } + +LldpXdot1RemProtoVlanEntry ::= SEQUENCE { + lldpXdot1RemProtoVlanId Integer32, + lldpXdot1RemProtoVlanSupported TruthValue, + lldpXdot1RemProtoVlanEnabled TruthValue +} -lldpXdot3RemPowerPortClass OBJECT-TYPE - SYNTAX LldpPowerPortClass - MAX-ACCESS read-only +lldpXdot1RemProtoVlanId OBJECT-TYPE + SYNTAX Integer32(0|1..4094) + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The value that identifies the port Class of the given port - associated with the remote system." - REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3RemPowerEntry 1 } + "The integer value used to identify the port and protocol + VLANs associated with the given port associated with the + remote system. -lldpXdot3RemPowerMDISupported OBJECT-TYPE - SYNTAX TruthValue - MAX-ACCESS read-only - STATUS current - DESCRIPTION - "The truth value used to indicate whether the MDI power - is supported on the given port associated with the remote - system." + If port and protocol VLANs are not supported on the given + port associated with the remote system, or if the port is + not enabled with any port and protocol VLAN, the value of + lldpXdot1RemProtoVlanId should be zero." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3RemPowerEntry 2 } + "IEEE 802.1AB-2005 F.3.2" + ::= { lldpXdot1RemProtoVlanEntry 1 } -lldpXdot3RemPowerMDIEnabled OBJECT-TYPE +lldpXdot1RemProtoVlanSupported OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value used to identify whether MDI power is - enabled on the given port associated with the remote system." + "The truth value used to indicate whether the given port + (associated with the remote system) is capable of supporting + port and protocol VLANs." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3RemPowerEntry 3 } + "IEEE 802.1AB-2005 F.3.1" + ::= { lldpXdot1RemProtoVlanEntry 2 } -lldpXdot3RemPowerPairControlable OBJECT-TYPE +lldpXdot1RemProtoVlanEnabled OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION - "The truth value is derived from the value of - pethPsePortPowerPairsControlAbility object (defined in IETF - RFC 3621) and is used to indicate whether the pair selection - can be controlled on the given port associated with the - remote system." + "The truth value used to indicate whether the port and + protocol VLANs are enabled on the given port associated with + the remote system." REFERENCE - "IEEE 802.1AB-2005 G.3.1" - ::= { lldpXdot3RemPowerEntry 4 } + "IEEE 802.1AB-2005 F.3.1" + ::= { lldpXdot1RemProtoVlanEntry 3 } -lldpXdot3RemPowerPairs OBJECT-TYPE - SYNTAX Integer32(1|2) - MAX-ACCESS read-only - STATUS current - DESCRIPTION - "This object contains the value of the pethPsePortPowerPairs - object (defined in IETF RFC 3621) which is associated with - the given port on the remote system." - REFERENCE - "IEEE 802.1AB-2005 G.3.2" - ::= { lldpXdot3RemPowerEntry 5 } -lldpXdot3RemPowerClass OBJECT-TYPE - SYNTAX Integer32(1|2|3|4|5) - MAX-ACCESS read-only - STATUS current - DESCRIPTION - "This object contains the value of the - pethPsePortPowerClassifications object (defined in IETF - RFC 3621) which is associated with the given port on the - remote system." - REFERENCE - "IEEE 802.1AB-2005 G.3.3" - ::= { lldpXdot3RemPowerEntry 6 } - ---- ---- ---- lldpXdot3RemLinkAggTable: Link Aggregation Information Table ---- ---- -lldpXdot3RemLinkAggTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3RemLinkAggEntry +-- +-- lldpXdot1RemVlanNameTable : VLAN name information of the remote +-- systems +-- + +lldpXdot1RemVlanNameTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1RemVlanNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains port link aggregation information - (as a part of the LLDP 802.3 organizational extension) - of the remote system." - ::= { lldpXdot3RemoteData 3 } + "This table contains one or more rows per IEEE 802.1Q VLAN + name information about the remote system, received on the + given port." + REFERENCE + "IEEE 802.1AB-2005 F.4" + ::= { lldpXdot1RemoteData 3 } -lldpXdot3RemLinkAggEntry OBJECT-TYPE - SYNTAX LldpXdot3RemLinkAggEntry +lldpXdot1RemVlanNameEntry OBJECT-TYPE + SYNTAX LldpXdot1RemVlanNameEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Link Aggregation information about remote system's port - component." + "VLAN name Information about a particular port component. + There may be multiple VLANs, identified by a particular + lldpXdot1RemVlanId, received on the given port." INDEX { lldpRemTimeMark, lldpRemLocalPortNum, - lldpRemIndex } - ::= { lldpXdot3RemLinkAggTable 1 } + lldpRemIndex, + lldpXdot1RemVlanId } + ::= { lldpXdot1RemVlanNameTable 1 } -LldpXdot3RemLinkAggEntry ::= SEQUENCE { - lldpXdot3RemLinkAggStatus LldpLinkAggStatusMap, - lldpXdot3RemLinkAggPortId Integer32 -} +LldpXdot1RemVlanNameEntry ::= SEQUENCE { + lldpXdot1RemVlanId VlanId, + lldpXdot1RemVlanName SnmpAdminString +} -lldpXdot3RemLinkAggStatus OBJECT-TYPE - SYNTAX LldpLinkAggStatusMap - MAX-ACCESS read-only +lldpXdot1RemVlanId OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS not-accessible STATUS current DESCRIPTION - "The bitmap value contains the link aggregation capabilities - and the current aggregation status of the link." + "The integer value used to identify the IEEE 802.1Q + VLAN IDs with which the given port of the remote system + is compatible." REFERENCE - "IEEE 802.1AB-2005 G.4.1" - ::= { lldpXdot3RemLinkAggEntry 1 } + "IEEE 802.1AB-2005 F.4.2" + ::= { lldpXdot1RemVlanNameEntry 1 } -lldpXdot3RemLinkAggPortId OBJECT-TYPE - SYNTAX Integer32(0|1..2147483647) +lldpXdot1RemVlanName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(1..32)) MAX-ACCESS read-only STATUS current DESCRIPTION - "This object contains the IEEE 802.3 aggregated port - identifier, aAggPortID (IEEE 802.3-2002, 30.7.2.1.1), - derived from the ifNumber of the ifIndex for the port - component associated with the remote system. - - If the remote port is not in link aggregation state and/or - it does not support link aggregation, this value should be - zero." + "The string value used to identify VLAN name identified by the + VLAN Id associated with the remote system." REFERENCE - "IEEE 802.1AB-2005 G.4.2" - ::= { lldpXdot3RemLinkAggEntry 2 } + "IEEE 802.1AB-2005 F.4.4" + ::= { lldpXdot1RemVlanNameEntry 2 } +-- +-- lldpXdot1RemProtocolTable : Protocol information of the remote systems +-- ---- ---- ---- lldpXdot3RemMaxFrameSizeTable: Maximum Frame Size information ---- ---- -lldpXdot3RemMaxFrameSizeTable OBJECT-TYPE - SYNTAX SEQUENCE OF LldpXdot3RemMaxFrameSizeEntry +lldpXdot1RemProtocolTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXdot1RemProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "This table contains one row per port of maximum frame - size information (as a part of the LLDP 802.3 organizational - extension) of the remote system." - ::= { lldpXdot3RemoteData 4 } + "This table contains one or more rows per protocol information + about the remote system, received on the given port." + ::= { lldpXdot1RemoteData 4 } -lldpXdot3RemMaxFrameSizeEntry OBJECT-TYPE - SYNTAX LldpXdot3RemMaxFrameSizeEntry +lldpXdot1RemProtocolEntry OBJECT-TYPE + SYNTAX LldpXdot1RemProtocolEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION - "Maximum Frame Size information about a particular port - component." + "Protocol information about a particular port component. + There may be multiple protocols, identified by a particular + lldpXdot1ProtocolIndex, received on the given port." INDEX { lldpRemTimeMark, lldpRemLocalPortNum, - lldpRemIndex } - ::= { lldpXdot3RemMaxFrameSizeTable 1 } + lldpRemIndex, + lldpXdot1RemProtocolIndex } + ::= { lldpXdot1RemProtocolTable 1 } -LldpXdot3RemMaxFrameSizeEntry ::= SEQUENCE { - lldpXdot3RemMaxFrameSize Integer32 -} +LldpXdot1RemProtocolEntry ::= SEQUENCE { + lldpXdot1RemProtocolIndex Integer32, + lldpXdot1RemProtocolId OCTET STRING +} + +lldpXdot1RemProtocolIndex OBJECT-TYPE + SYNTAX Integer32(1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object represents an arbitrary local integer value used + by this agent to identify a particular protocol identity." + ::= { lldpXdot1RemProtocolEntry 1 } -lldpXdot3RemMaxFrameSize OBJECT-TYPE - SYNTAX Integer32(0..65535) +lldpXdot1RemProtocolId OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (1..255)) MAX-ACCESS read-only STATUS current DESCRIPTION - "An integer value indicating the maximum supported frame - size in octets on the port component associated with the - remote system." + "The octet string value used to identify the protocols + associated with the given port of remote system." REFERENCE - "IEEE 802.1AB-2005 G.5.1" - ::= { lldpXdot3RemMaxFrameSizeEntry 1 } + "IEEE 802.1AB-2005 F.5.3" + ::= { lldpXdot1RemProtocolEntry 2 } ------------------------------------------------------------------------------ -- Conformance Information ------------------------------------------------------------------------------ -lldpXdot3Conformance OBJECT IDENTIFIER ::= { lldpXdot3MIB 2 } -lldpXdot3Compliances OBJECT IDENTIFIER ::= { lldpXdot3Conformance 1 } -lldpXdot3Groups OBJECT IDENTIFIER ::= { lldpXdot3Conformance 2 } + +lldpXdot1Conformance OBJECT IDENTIFIER ::= { lldpXdot1MIB 2 } +lldpXdot1Compliances OBJECT IDENTIFIER ::= { lldpXdot1Conformance 1 } +lldpXdot1Groups OBJECT IDENTIFIER ::= { lldpXdot1Conformance 2 } -- compliance statements -lldpXdot3Compliance MODULE-COMPLIANCE +lldpXdot1Compliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The compliance statement for SNMP entities which implement - the LLDP 802.3 organizational extension MIB." + the IEEE 802.1 organizationally defined LLDP extension MIB." MODULE -- this module - MANDATORY-GROUPS { lldpXdot3ConfigGroup, - lldpXdot3LocSysGroup, - lldpXdot3RemSysGroup + MANDATORY-GROUPS { lldpXdot1ConfigGroup, + lldpXdot1LocSysGroup, + lldpXdot1RemSysGroup } - ::= { lldpXdot3Compliances 1 } + ::= { lldpXdot1Compliances 1 } -- MIB groupings -lldpXdot3ConfigGroup OBJECT-GROUP +lldpXdot1ConfigGroup OBJECT-GROUP OBJECTS { - lldpXdot3PortConfigTLVsTxEnable + lldpXdot1ConfigPortVlanTxEnable, + lldpXdot1ConfigVlanNameTxEnable, + lldpXdot1ConfigProtoVlanTxEnable, + lldpXdot1ConfigProtocolTxEnable } STATUS current DESCRIPTION "The collection of objects which are used to configure the - LLDP 802.3 organizational extension implementation behavior. + IEEE 802.1 organizationally defined LLDP extension + implementation behavior. This group is mandatory for agents which implement the - LLDP 802.3 organizational extension." - ::= { lldpXdot3Groups 1 } + IEEE 802.1 organizationally defined LLDP extension." + ::= { lldpXdot1Groups 1 } -lldpXdot3LocSysGroup OBJECT-GROUP +lldpXdot1LocSysGroup OBJECT-GROUP OBJECTS { - lldpXdot3LocPortAutoNegSupported, - lldpXdot3LocPortAutoNegEnabled, - lldpXdot3LocPortAutoNegAdvertisedCap, - lldpXdot3LocPortOperMauType, - lldpXdot3LocPowerPortClass, - lldpXdot3LocPowerMDISupported, - lldpXdot3LocPowerMDIEnabled, - lldpXdot3LocPowerPairControlable, - lldpXdot3LocPowerPairs, - lldpXdot3LocPowerClass, - lldpXdot3LocLinkAggStatus, - lldpXdot3LocLinkAggPortId, - lldpXdot3LocMaxFrameSize + lldpXdot1LocPortVlanId, + lldpXdot1LocProtoVlanSupported, + lldpXdot1LocProtoVlanEnabled, + lldpXdot1LocVlanName, + lldpXdot1LocProtocolId } STATUS current DESCRIPTION - "The collection of objects which are used to represent LLDP - 802.3 organizational extension Local Device Information. + "The collection of objects which are used to represent + IEEE 802.1 organizationally defined LLDP extension associated + with the Local Device Information. This group is mandatory for agents which implement the - LLDP 802.3 organizational extension in the TX mode." - ::= { lldpXdot3Groups 2 } + IEEE 802.1 organizationally defined LLDP extension in the + TX mode." + ::= { lldpXdot1Groups 2 } -lldpXdot3RemSysGroup OBJECT-GROUP +lldpXdot1RemSysGroup OBJECT-GROUP OBJECTS { - lldpXdot3RemPortAutoNegSupported, - lldpXdot3RemPortAutoNegEnabled, - lldpXdot3RemPortAutoNegAdvertisedCap, - lldpXdot3RemPortOperMauType, - lldpXdot3RemPowerPortClass, - lldpXdot3RemPowerMDISupported, - lldpXdot3RemPowerMDIEnabled, - lldpXdot3RemPowerPairControlable, - lldpXdot3RemPowerPairs, - lldpXdot3RemPowerClass, - lldpXdot3RemLinkAggStatus, - lldpXdot3RemLinkAggPortId, - lldpXdot3RemMaxFrameSize + lldpXdot1RemPortVlanId, + lldpXdot1RemProtoVlanSupported, + lldpXdot1RemProtoVlanEnabled, + lldpXdot1RemVlanName, + lldpXdot1RemProtocolId } STATUS current DESCRIPTION "The collection of objects which are used to represent LLDP - 802.3 organizational extension Local Device Information. + 802.1 organizational extension Local Device Information. This group is mandatory for agents which implement the - LLDP 802.3 organizational extension in the RX mode." - ::= { lldpXdot3Groups 3 } + LLDP 802.1 organizational extension in the RX mode." + ::= { lldpXdot1Groups 3 } END diff --git a/mibs/LLDP-EXT-DOT3-MIB b/mibs/LLDP-EXT-DOT3-MIB index 30bb091735c7..937f5e434d90 100644 --- a/mibs/LLDP-EXT-DOT3-MIB +++ b/mibs/LLDP-EXT-DOT3-MIB @@ -13,7 +13,7 @@ IMPORTS FROM LLDP-MIB; lldpXdot3MIB MODULE-IDENTITY - LAST-UPDATED "200411220000Z" -- November 22, 2004 + LAST-UPDATED "200505060000Z" -- May 06, 2005 ORGANIZATION "IEEE 802.1 Working Group" CONTACT-INFO " WG-URL: http://grouper.ieee.org/groups/802/1/index.html @@ -35,14 +35,16 @@ lldpXdot3MIB MODULE-IDENTITY as the node. An OUI/'company_id' is a 24 bit globally unique assigned number referenced by various standards. - Copyright (C) IEEE (2004). This version of this MIB module - is published as Annex G.6.1 of IEEE Std 802.1AB-2004; + Copyright (C) IEEE (2005). This version of this MIB module + is published as Annex G.6.1 of IEEE Std 802.1AB-2005; see the standard itself for full legal notices." - REVISION "200411220000Z" -- November 22, 2004 + REVISION "200505060000Z" -- May 06, 2005 DESCRIPTION - "Published as part of IEEE Std 802.1AB-2004 initial version." + "Published as part of IEEE Std 802.1AB-2005 initial version." -- OUI for IEEE 802.3 is 4623 (00-12-0F) ::= { lldpExtensions 4623 } +--UnComment For MIBCOMPLIER TOOL +-- ::= { iso std(0) iso8802(8802) ieee802dot1(1) ieee802dot1mibs(1) lldPMIB(2) lldpObjects(1) lldpExtensions(5) 4623} ------------------------------------------------------------------------------ ------------------------------------------------------------------------------ @@ -158,8 +160,8 @@ lldpXdot3PortConfigTLVsTxEnable OBJECT-TYPE The value of this object must be restored from non-volatile storage after a re-initialization of the management system." REFERENCE - "IEEE 802.1AB-2004 10.2.1.1" - DEFVAL { { } } + "IEEE 802.1AB-2005 10.2.1.1" +-- DEFVAL { { } } ::= { lldpXdot3PortConfigEntry 1 } @@ -205,7 +207,7 @@ lldpXdot3LocPortAutoNegSupported OBJECT-TYPE "The truth value used to indicate whether the given port (associated with the local system) supports Auto-negotiation." REFERENCE - "IEEE 802.1AB-2004 G.2.1" + "IEEE 802.1AB-2005 G.2.1" ::= { lldpXdot3LocPortEntry 1 } lldpXdot3LocPortAutoNegEnabled OBJECT-TYPE @@ -217,7 +219,7 @@ lldpXdot3LocPortAutoNegEnabled OBJECT-TYPE Auto-negotiation is enabled on the given port associated with the local system." REFERENCE - "IEEE 802.1AB-2004 G.2.1" + "IEEE 802.1AB-2005 G.2.1" ::= { lldpXdot3LocPortEntry 2 } lldpXdot3LocPortAutoNegAdvertisedCap OBJECT-TYPE @@ -230,7 +232,7 @@ lldpXdot3LocPortAutoNegAdvertisedCap OBJECT-TYPE 3636) which is associated with the given port on the local system." REFERENCE - "IEEE 802.1AB-2004 G.2.2" + "IEEE 802.1AB-2005 G.2.2" ::= { lldpXdot3LocPortEntry 3 } lldpXdot3LocPortOperMauType OBJECT-TYPE @@ -252,7 +254,7 @@ lldpXdot3LocPortOperMauType OBJECT-TYPE (or subsequent revisions), the value of this field shall be set to zero." REFERENCE - "IEEE 802.1AB-2004 G.2.3" + "IEEE 802.1AB-2005 G.2.3" ::= { lldpXdot3LocPortEntry 4 } --- @@ -296,7 +298,7 @@ lldpXdot3LocPowerPortClass OBJECT-TYPE "The value that identifies the port Class of the given port associated with the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3LocPowerEntry 1 } lldpXdot3LocPowerMDISupported OBJECT-TYPE @@ -307,7 +309,7 @@ lldpXdot3LocPowerMDISupported OBJECT-TYPE "The truth value used to indicate whether the MDI power is supported on the given port associated with the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3LocPowerEntry 2 } lldpXdot3LocPowerMDIEnabled OBJECT-TYPE @@ -318,7 +320,7 @@ lldpXdot3LocPowerMDIEnabled OBJECT-TYPE "The truth value used to identify whether MDI power is enabled on the given port associated with the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3LocPowerEntry 3 } lldpXdot3LocPowerPairControlable OBJECT-TYPE @@ -332,7 +334,7 @@ lldpXdot3LocPowerPairControlable OBJECT-TYPE can be controlled on the given port associated with the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3LocPowerEntry 4 } lldpXdot3LocPowerPairs OBJECT-TYPE @@ -344,7 +346,7 @@ lldpXdot3LocPowerPairs OBJECT-TYPE object (defined in IETF RFC 3621) which is associated with the given port on the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.2" + "IEEE 802.1AB-2005 G.3.2" ::= { lldpXdot3LocPowerEntry 5 } lldpXdot3LocPowerClass OBJECT-TYPE @@ -357,7 +359,7 @@ lldpXdot3LocPowerClass OBJECT-TYPE RFC 3621) which is associated with the given port on the local system." REFERENCE - "IEEE 802.1AB-2004 G.3.3" + "IEEE 802.1AB-2005 G.3.3" ::= { lldpXdot3LocPowerEntry 6 } --- @@ -398,7 +400,7 @@ lldpXdot3LocLinkAggStatus OBJECT-TYPE "The bitmap value contains the link aggregation capabilities and the current aggregation status of the link." REFERENCE - "IEEE 802.1AB-2004 G.4.1" + "IEEE 802.1AB-2005 G.4.1" ::= { lldpXdot3LocLinkAggEntry 1 } lldpXdot3LocLinkAggPortId OBJECT-TYPE @@ -415,7 +417,7 @@ lldpXdot3LocLinkAggPortId OBJECT-TYPE does not support link aggregation, this value should be set to zero." REFERENCE - "IEEE 802.1AB-2004 G.4.2" + "IEEE 802.1AB-2005 G.4.2" ::= { lldpXdot3LocLinkAggEntry 2 } --- @@ -455,7 +457,7 @@ lldpXdot3LocMaxFrameSize OBJECT-TYPE "An integer value indicating the maximum supported frame size in octets on the given port of the local system." REFERENCE - "IEEE 802.1AB-2004 G.5.1" + "IEEE 802.1AB-2005 G.5.1" ::= { lldpXdot3LocMaxFrameSizeEntry 1 } @@ -503,7 +505,7 @@ lldpXdot3RemPortAutoNegSupported OBJECT-TYPE "The truth value used to indicate whether the given port (associated with remote system) supports Auto-negotiation." REFERENCE - "IEEE 802.1AB-2004 G.2.1" + "IEEE 802.1AB-2005 G.2.1" ::= { lldpXdot3RemPortEntry 1 } lldpXdot3RemPortAutoNegEnabled OBJECT-TYPE @@ -515,7 +517,7 @@ lldpXdot3RemPortAutoNegEnabled OBJECT-TYPE Auto-negotiation is enabled on the given port associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.2.1" + "IEEE 802.1AB-2005 G.2.1" ::= { lldpXdot3RemPortEntry 2 } lldpXdot3RemPortAutoNegAdvertisedCap OBJECT-TYPE @@ -528,7 +530,7 @@ lldpXdot3RemPortAutoNegAdvertisedCap OBJECT-TYPE 3636) which is associated with the given port on the remote system." REFERENCE - "IEEE 802.1AB-2004 G.2.2" + "IEEE 802.1AB-2005 G.2.2" ::= { lldpXdot3RemPortEntry 3 } lldpXdot3RemPortOperMauType OBJECT-TYPE @@ -550,7 +552,7 @@ lldpXdot3RemPortOperMauType OBJECT-TYPE (or subsequent revisions), the value of this field shall be set to zero." REFERENCE - "IEEE 802.1AB-2004 G.2.3" + "IEEE 802.1AB-2005 G.2.3" ::= { lldpXdot3RemPortEntry 4 } --- @@ -596,7 +598,7 @@ lldpXdot3RemPowerPortClass OBJECT-TYPE "The value that identifies the port Class of the given port associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3RemPowerEntry 1 } lldpXdot3RemPowerMDISupported OBJECT-TYPE @@ -608,7 +610,7 @@ lldpXdot3RemPowerMDISupported OBJECT-TYPE is supported on the given port associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3RemPowerEntry 2 } lldpXdot3RemPowerMDIEnabled OBJECT-TYPE @@ -619,7 +621,7 @@ lldpXdot3RemPowerMDIEnabled OBJECT-TYPE "The truth value used to identify whether MDI power is enabled on the given port associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3RemPowerEntry 3 } lldpXdot3RemPowerPairControlable OBJECT-TYPE @@ -633,7 +635,7 @@ lldpXdot3RemPowerPairControlable OBJECT-TYPE can be controlled on the given port associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.1" + "IEEE 802.1AB-2005 G.3.1" ::= { lldpXdot3RemPowerEntry 4 } lldpXdot3RemPowerPairs OBJECT-TYPE @@ -645,7 +647,7 @@ lldpXdot3RemPowerPairs OBJECT-TYPE object (defined in IETF RFC 3621) which is associated with the given port on the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.2" + "IEEE 802.1AB-2005 G.3.2" ::= { lldpXdot3RemPowerEntry 5 } lldpXdot3RemPowerClass OBJECT-TYPE @@ -658,7 +660,7 @@ lldpXdot3RemPowerClass OBJECT-TYPE RFC 3621) which is associated with the given port on the remote system." REFERENCE - "IEEE 802.1AB-2004 G.3.3" + "IEEE 802.1AB-2005 G.3.3" ::= { lldpXdot3RemPowerEntry 6 } --- @@ -701,7 +703,7 @@ lldpXdot3RemLinkAggStatus OBJECT-TYPE "The bitmap value contains the link aggregation capabilities and the current aggregation status of the link." REFERENCE - "IEEE 802.1AB-2004 G.4.1" + "IEEE 802.1AB-2005 G.4.1" ::= { lldpXdot3RemLinkAggEntry 1 } lldpXdot3RemLinkAggPortId OBJECT-TYPE @@ -718,7 +720,7 @@ lldpXdot3RemLinkAggPortId OBJECT-TYPE it does not support link aggregation, this value should be zero." REFERENCE - "IEEE 802.1AB-2004 G.4.2" + "IEEE 802.1AB-2005 G.4.2" ::= { lldpXdot3RemLinkAggEntry 2 } @@ -762,7 +764,7 @@ lldpXdot3RemMaxFrameSize OBJECT-TYPE size in octets on the port component associated with the remote system." REFERENCE - "IEEE 802.1AB-2004 G.5.1" + "IEEE 802.1AB-2005 G.5.1" ::= { lldpXdot3RemMaxFrameSizeEntry 1 } diff --git a/mibs/cambium/TERRAGRAPH-RADIO-MIB b/mibs/cambium/TERRAGRAPH-RADIO-MIB new file mode 100644 index 000000000000..7c6150a697e7 --- /dev/null +++ b/mibs/cambium/TERRAGRAPH-RADIO-MIB @@ -0,0 +1,103 @@ +TERRAGRAPH-RADIO-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Gauge32, Integer32, + enterprises FROM SNMPv2-SMI + TEXTUAL-CONVENTION, DisplayString FROM SNMPv2-TC; + +tgRadioMIB MODULE-IDENTITY + LAST-UPDATED "202001080000Z" + ORGANIZATION "Terragraph" + CONTACT-INFO "fbc-terragraph@fb.com" + DESCRIPTION "Terragraph Radio MIB" + REVISION "202001080000Z" + DESCRIPTION "First Draft" + ::= { terragraph 60 } + +-- cnWave identifier +terragraph OBJECT IDENTIFIER ::= { enterprises 17713 } +interfaces OBJECT IDENTIFIER ::= { tgRadioMIB 1 } + +ObjectIndex ::= TEXTUAL-CONVENTION + DISPLAY-HINT "x" + STATUS current + DESCRIPTION "" + SYNTAX Integer32 (-2147483648..2147483647) + +tgRadioInterfacesTable OBJECT-TYPE + SYNTAX SEQUENCE OF TgRadioStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Terragraph Radio Interfaces" + ::= { interfaces 1 } + +tgRadioStatEntry OBJECT-TYPE + SYNTAX TgRadioStatEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "Terragraph Radio Interface" + INDEX { ifIndex } + ::= { tgRadioInterfacesTable 1 } + +TgRadioStatEntry ::= SEQUENCE { + ifIndex ObjectIndex, + ifName DisplayString, +-- TODO: Should be MacAddress + macAddr DisplayString, +-- TODO: Should be MacAddress + remoteMacAddr DisplayString, + mcs Gauge32, + snr Integer32, + rssi Integer32 +} + +ifIndex OBJECT-TYPE + SYNTAX ObjectIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 1 } + +ifName OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 2 } + +macAddr OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 3 } + +remoteMacAddr OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 4 } + +mcs OBJECT-TYPE + SYNTAX Gauge32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 5 } + +snr OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 6 } + +rssi OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION "" + ::= { tgRadioStatEntry 7 } + +END diff --git a/mibs/cambium/cnmatrix/ARICENT-CFA-MIB b/mibs/cambium/cnmatrix/ARICENT-CFA-MIB new file mode 100644 index 000000000000..c5f50440fc6b --- /dev/null +++ b/mibs/cambium/cnmatrix/ARICENT-CFA-MIB @@ -0,0 +1,3699 @@ +-- Copyright (C) 2006-2012 Aricent Group . All Rights Reserved + + ARICENT-CFA-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Counter32,Counter64, + enterprises, IpAddress, Unsigned32, + Integer32, NOTIFICATION-TYPE, TimeTicks FROM SNMPv2-SMI + SnmpAdminString FROM SNMP-FRAMEWORK-MIB + ifIndex,InterfaceIndex,ifEntry,ifType FROM IF-MIB + VlanId,PortList FROM Q-BRIDGE-MIB + TruthValue, MacAddress, RowStatus, + TimeStamp, DisplayString, StorageType FROM SNMPv2-TC; + + +-- futuresoftware OBJECT IDENTIFIER ::= { enterprises 2076 } + + fscfa MODULE-IDENTITY + LAST-UPDATED "202106110000Z" + ORGANIZATION "ARICENT COMMUNICATIONS SOFTWARE" + CONTACT-INFO "support@aricent.com" + + DESCRIPTION + " The MIB module for CFA. " + + REVISION "202106110000Z" + DESCRIPTION + "Cambium update: added read-only ifMainPrevDesc + object to export the previous description for an + interface." + + REVISION "202005240000Z" + DESCRIPTION + "Cambium update: added read-only ifMainName + object to export interface name data that is + used to configure various tables by the + management applications." + + REVISION "201908260000Z" + DESCRIPTION + "Cambium update: added ifMainNeighborId to + support per-interface condensed neighbor + identification. Defined the ifVlanIpTable + to support short-cut interface creation and + IP address configuration." + + REVISION "201209050000Z" + DESCRIPTION + "The revised version of the MIB for CFA + release 1.1.0.0. " + REVISION "199912171330Z" + DESCRIPTION + "The first version of the MIB for CFA + release 1.0.0.0. " + ::= { enterprises futuresoftware (2076) 27 } + + + if OBJECT IDENTIFIER ::= { fscfa 1 } + + ff OBJECT IDENTIFIER ::= { fscfa 2 } + + fm OBJECT IDENTIFIER ::= { fscfa 3 } + + traps OBJECT IDENTIFIER ::= { fscfa 4 } + + pa OBJECT IDENTIFIER ::= { fscfa 5 } + +-- Cfa If Group +-- This group defines objects for Interface Management. + + ifMaxInterfaces OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the maximum number of interfaces that can + be present in the system." + ::= { if 1 } + + ifMaxPhysInterfaces OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the maximum number of physical interfaces + that can be present in the system." + ::= { if 2 } + + ifAvailableIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Shows an ifIndex which is available for creation of + any new virtual (non-physical) interface in the system. + This ifIndex value can be used for creation of interfaces + in the ifMainTable or any media-specif MIB. For creation + of physical interfaces, any free ifIndex between 1 and + ifMaxPhysInterfaces can be used." + ::= { if 3 } + + +-- ifMainTable +-- This table is used for the management of all the interfaces in the +-- system. + + ifMainTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfMainEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of all the interface entries in the system. + This table contains objects which are applicable to all + types of interfaces in the system. This table is a + proprietary extension to the standard ifTable and + ifXTable. The index to this table has the semantics of + the MIB-2 ifIndex." + ::= { if 4 } + + ifMainEntry OBJECT-TYPE + SYNTAX IfMainEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing management information applicable + to a particular interface." + INDEX { ifMainIndex } + ::= { ifMainTable 1 } + + IfMainEntry ::= + SEQUENCE { + ifMainIndex InterfaceIndex, + ifMainType INTEGER, + ifMainMtu Integer32, + ifMainAdminStatus INTEGER, + ifMainOperStatus INTEGER, + ifMainEncapType INTEGER, + ifMainBrgPortType INTEGER, + ifMainRowStatus RowStatus, + ifMainSubType INTEGER, + ifMainNetworkType INTEGER, + ifMainWanType INTEGER, + ifMainDesc DisplayString, + ifMainStorageType StorageType, + ifMainExtSubType INTEGER, + ifMainPortRole INTEGER, + ifMainUfdOperStatus INTEGER, + ifMainUfdGroupId Integer32, + ifMainUfdDownlinkDisabledCount Counter32, + ifMainUfdDownlinkEnabledCount Counter32, + ifMainDesigUplinkStatus TruthValue, + ifMainEncapDot1qVlanId Integer32, + ifMainNeighborId SnmpAdminString, + ifMainName SnmpAdminString, + ifMainPrevDesc DisplayString + } + + ifMainIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A unique value, greater than zero, for each + interface. This object is identical to the ifIndex + of the standard MIB-2 ifTable." + ::= { ifMainEntry 1 } + + ifMainType OBJECT-TYPE + SYNTAX INTEGER { + rfc877x25(5), -- X.25 + ethernetCsmacd(6), -- Ethernet/802.3 + iso88025TokenRing(9), -- Token Ring + ppp(23), -- PPP link + softwareLoopback(24), -- Loopback Interface + frameRelay(32), -- Frame Relay DTE port + miox25(38), -- multiprotocol over x.25 + -- used for X.25 VCs + aal5(49), -- AAL5 over ATM + propVirtual (53), -- Proprietary Virtual Interface + async(84), -- ASYNC + frameRelayMPI(92), -- multiprotocol + -- over FR + -- used for FR VCs + -- and sub-interfaces + pppMultilinkBundle(108), -- PPP Multilink + -- Bundle + ipOverAtm(114), -- IPoA virtual + hdlc(118), -- HDLC port + tunnel(131), -- Encapsulation interface + atmSubInterface(134), -- VCs under IPoA + l3ipvlan(136), -- Layer3 VLAN interface + mplsTunnel (150), -- MPLS Tunnel Virtual Interface + ieee8023ad(161), -- Link Aggregation Mib + mpls (166), -- MPLS + teLink (200), -- TE Link Interface + brgPort(209), -- Bridge port used for creating virtual + -- ports in PBB and EVB + ifPwType (246), -- Pseudowire interface type + ilan(247), -- Internal-lan + pip (248) -- Virtual (Internal) Provider Instance port + } -- These are the currently supported + -- interfaces. More can be added at a + -- later time. + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The type/protocol of interface. Specification of + the object is mandatory for all interfaces. This + value should be specified after the row creation + in the ifMainTable and before setting any other + object in this table. Once the type is specified, + it cannot be changed - the interface should be + deleted for changing the type of the interface. + + The ethernetCsmacd(6), iso88025TokenRing(9), aal5(49), + async(84) and hdlc(118) are physical interfaces while + all other types are virtual or logical interfaces. + + Specific ifIndex ranges are reserved for different interface types. + Creation of different types of interfaces is possible only within + their corresponding ifIndex range. So the ifMainType should be + configured corresponding to the ifIndex range reserved for that + particular interface type. + + For creation of physical interface types, it is mandatory to + specify the handle to the device driver using the ifAlias + object of the standard ifXTable before specifying the type. + This handle could be something like eth1 or /dev/abcd. + + pip interface type will be used vritual Provider Instance port in + PBB bridge mode. physical PIPs can be created using ethernetCsmacd . + + Following is the mapping of different port types and there ifmaintype values. + + External ports + -------------- + Port: ifmaintype Port type + ------------------------------------------------------------------- + CNP- Ctagged 6 - customerNetworkPortCtagged (9) + CNP - Port based 6 - customerNetworkPortPortBased (2) + CNP- Stagged 6 - customerNetworkPortStagged (3) + PNP 6 - providerNetworkPort (1) + PIP 6 - providerInstancePort (11) + CBP 6 - customerBackbonePort (12) + UAP 6 - uplinkAccessPort (13) + + + Internal ports + -------------- + VIP 209 - virtualInstancePort (10) + PIP 248 - providerInstancePort (11) + CBP 209 - customerBackbonePort (12) + SBP 209 - stationFacingBridgePort (14) + + brgPort will be used to create virtual PBB ports other than PIPs. + (ie) brgPort is used to create logical ports VIPs, CBPs and SBPs. + + The propVirtual type denotes properietary logical interfaces. These + type of interfaces can be associated with a {physical interface, + switch instance} for the purpose of sharing the physical interface + to more than one context and thus realising Switch Instance Sharing + of a physical interface." + ::= { ifMainEntry 2 } + + ifMainMtu OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The MTU for the interface as shown to the higher + interface sub-layer (this value should not include + the encapsulation or header added by the interface). + If IP is operating over the interface, then this + value indicates the IP MTU over this interface. + + For changing the MTU of any interface, the interface + must be brought down first - changing MTU while the + interface is administratively up is not permitted. + + If not specified during interface creation, a default + value is assigned based on the ifMainType given to + the particular interface. + + While configuring for logical VLAN interfaces, care + should be taken to, configure this value as the + lowest of the MTU values of the member ports." + ::= { ifMainEntry 3 } + + ifMainAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3), -- in some test mode + loopback(4) --loopback mode + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired state of the interface. This object + can be set only when the ifMainRowStatus of the + interface is active. This object has the semantics + of the ifAdminStatus of the standard ifTable. + + The testing(3) state indicates that no operational + packets can be passed - this state is not currently + supported. + + When a managed system initializes, all + interfaces start with ifMainAdminStatus in the + down(2) state, it's a default state also. As a result + of either explicit management action or per + configuration information retained by the managed + system, ifMainAdminStatus is then changed to + the up (1) state (or remains in the + down(2) state)." + DEFVAL { down } + ::= { ifMainEntry 4 } + + ifMainOperStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), -- ready to pass packets + down(2), + testing(3), -- in some test mode + unknown(4), -- status can not be + -- determined for + -- some reason. + dormant(5), + notPresent(6), -- some component is + -- missing + lowerLayerDown(7) -- down due to state + -- of lower-layer + -- interface(s). + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The current operational state of the interface. + The testing (3) state indicates that no operational + packets can be passed - this state is not supported + currently. + + If ifMainAdminStatus is down (2) + then ifMainOperStatus would be down (2). If + ifMainAdminStatus is changed to up (1) then + ifMainOperStatus should change to up (1) if the + interface is ready to transmit and receive + work traffic; it should change to dormant (5) + the interface is waiting for external actions + (such as a serial line waiting for an incoming + connection); it should change to lowerLayerDown(7) + state if it cannot be made up as the interface sub-layer + below it is down; it should remain in the down (2) state + if and only if there is a fault that prevents it + from going to the up (1) state; it should remain in + the notPresent (6) state if the interface has + missing (typically, hardware) components. + + The status unknown(4) is shown when it is not possible + to determine the exact status of the interface - e.g. + the interface sub-layer is performing negotiations - + during this period the interface is not up but at the + same time, it is not a fault condition and hence it + cannot be shown as down - in such periods the status + is shown as unknown. + + This object has the semantics of the ifOperStatus of the + standard ifTable." + ::= { ifMainEntry 5 } + + ifMainEncapType OBJECT-TYPE + SYNTAX INTEGER { + other(1), + nlpid(2), -- NLPID based encap + -- in the case of FR + -- and multiplexed + -- NLPID encap for X.25 + nlpidSnap(3), -- NLPID-SNAP based + -- encap in the case + -- of FR and multiplexed + -- NLPID-SNAP encap for + -- X.25. + cudNlpid(4), -- dedicated NLPID for + -- X.25 only + cudNlpidSnap(5), -- dedicated + -- NLPID-SNAP for + -- X.25 only + llcSnap(6), -- for ATM VCs only + vcMultiplexed(7), -- for ATM VCs only + ethernetV2(8) -- for Ethernet interfaces + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The encapsulation type to be used over the interface. + + For Ethernet interfaces, the default encapsulation + type is ethernetV2(8). The other possible encapsulation + is llcSnap(6). If other(1) is specified then an + automatic encapsulation type learning method is used + in ARP for determining the encapsulation for unicast + destinations while the multicast and broadcast destinations + use ethernetV2(8). + + For PPP and MLPPP interfaces, the encapsulation type can + only be other(1) and this is the default value. + + For FR VCs, the value can be nlpid(2) (for carrying protocols + which have NLPID) or nlpidSnap(3) (for other protocols). The + default is nlpid(2) and the types of protocols supported are + inferred from the stack-layering implemented over the + interface. + + For X.25 VCs, the value can be nlpid(2) or nlpidSnap(3) + (where the VC can carry multiplexed protocol traffic with + each data packet containing the NLPID or SNAP header) or + cudNlpid(4) or cudNlpidSnap(5) (where the CUD specifies + the NLPID of the protocol or SNAP and the data packets do + not contain these headers - for dedicated VCs). The default + is cudNlpid(4). + + For ATM VCs, the default is llcSnap(6) but the + vcMultiplexed(7) encapsulation is also supported. + + This object is not applicable to other interfaces." + ::= { ifMainEntry 6 } + + ifMainBrgPortType OBJECT-TYPE + SYNTAX INTEGER { + providerNetworkPort (1), + customerNetworkPortPortBased (2), + customerNetworkPortStagged (3), + customerEdgePort (4), + propCustomerEdgePort (5), + propCustomerNetworkPort (6), + propProviderNetworkPort (7), + customerBridgePort (8), + customerNetworkPortCtagged (9), + virtualInstancePort (10), + providerInstancePort (11), + customerBackbonePort (12), + uplinkAccessPort (13), + stationFacingBridgePort (14) + + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Bridge port type of this specified switch port. + Bridge Port type can be specified only for switch ports and not for + router ports, IVR interfaces and I-LAN Interfaces. + + providerNetworkPort - Port Connected to a single Provider. + SVLAN Classification is based on only the PVID configured for the + port for untagged packets. + + customerNetworkPortPortBased - Port in the S-VLAN component that + can transmit or received frames for single customer. + All packets received on this port, are mapped to one single service + instance identified by the PVID of that Port. + Acceptable Port Type will be always Admit only Untagged or Priority + Tagged Frames on this port. + + customerNetworkPortStagged - Port in the S-VLAN component that + can transmit or received frames for single customer. + VLAN classification on this interface will be based on the S-tag + received or on the PVID of the port. Ingress Filtering will be + always enabled on this port. + + customerEdgePort - Port in a Provider Edge Bridge connected to a + single customer. Multiple services can be provide on this port. + The Packets received on this interface will be first classified + to a CVLAN. CVLAN classification can be based on the Vid + in the C-Tag present in the packet (if it C-tagged packet) or from + the pvid of the port. Service instance selection (S-VLAN selection) + for a frame is done based on the entry present in the C-VID + registration table for the pair (C-VID, reception Port). + CustomerEdgePort configuration is allowed only in Provider Edge + Bridges. + + propCustomerEdgePort - Port connected to a single customer, where + multiple services can be provided based on only Proprietary SVLAN + classification tables. S-VLAN classification will not happen based on + C-VID registration table on this port. propCustomerEdgePort + configuration is allowed only in Provider Edge Bridges. + + propCustomerNetworkPort - Port connected to a single customer, where + multiple service can be provided based on CVLANs by assigning one of + the Proprietary SVLAN classification tables to this port. The + services can also be assigned using other proprietary SVLAN + classification tables where CVLAN is not the index of the table. + + propProviderNetworkPort - Port connected to a Q-in-Q Bridge located + inside Provider Network. This port is part of S-VLAN component. + If packets to be tagged and sent out of this port will have 0x8100 + as the ether type. Similarly pakcets with standard Q tag (ether type + as 0x8100) received will be considered as S-Tagged packets. + + customerBridgePort - Type of the port to be used in customer + bridges as well in Provider(Q-in-Q) bridges. This type is not valid + in Provider Core bridges as well as Provider Edge bridge. + + customerNetworkPortCtagged - Port in the I component that + can transmit or received frames for single customer. + VLAN classification on this interface will be based on the C-tag + received or on the default CVID of the port. Ingress Filtering will be + always enabled on this port. + + virtualInstancePort - A Bridge Port on an I-component in a Backbone Edge Bridge + that provides access to a single backbone service instance. + + providerInstancePort - The set of Virtual Instance Ports that are supported + by a single instance of the ISS. + + customerBackbonePort - A Backbone Edge Bridge Port that can receive and transmit + I-tagged frames for multiple customers, and assign B-VIDs and translate I-SID on + the basis of the received I-SID. + + Edge Virtual Briding (EVB) technology is used in Data Center Networks. + The uplinkAccessPort (UAP) and stationFacingBridgePort (SBP) types are + applicable when the bridge operates in EVB environment. + + uplinkAccessPort - A port on a Port-mapping S-VLAN component that + connects an EVB Bridge with an EVB Station. + + stationFacingBridgePort - A port that is part of the C-VLAN component of + EVB Bridge which has one-to-one relationship with a S-Channel Access Port + in the port-mapping S-VLAN component. + + In Customer bridges and in Provider Bridges only customerPort option + is allowed. + + In Provider backbone bridge only customerNetworkPort, providerNetworkPort + and customerBackbonePort type of ports are allowed. + + Bridge Port Type cannot be set for a port-channel port, if some + physical ports are aggregated in it. + Also Bridge Port type cannot be set for a port, if part of a + port-channel. + + Whenever the Bridge port type changes, the previous configuration + associated with the port will be flushed. + + For example. + + whenever CNP(STagged) and PNP port types are changed to any + other port type, + - The unicast entries learnt on this port and + - The VID translation table entries associated with the port + will be flushed. + + Whenever CEP port type is changed to any other port type, + - The unicast entries learnt on this port + - The C-VID registration table entries associated with the port + - The PEP configuration table entries + - The service priority regeneration table entries + will be flushed. + + Even the vlan membership of the port will be removed when the + Pbport type is changed." + + DEFVAL { 8 } + ::= { ifMainEntry 7 } + + ifMainRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "A RowStatus variable for addition, deletion and in-activation + of the interfaces. Specification of the object is mandatory + for all interfaces. + + When the status is active, the interface is created and + ready to use in the respective protocol modules. + + When the status is notInService, the interface has not been + registered with the respective protocol modules and as such + those modules are not aware of the existence of the interface + - creation is hence, incomplete. Setting an active interface + to notInService results in de-registration/deletion of the + interface from the respective protocol modules and all the + configurations associated with that interface in those modules + may be lost. + + Deletion of an interface, may affect the status of other + interfaces which are layered above or below it in the Interface + Stack (ifStackTable) and may result in other interfaces being + made notReady or notInService." + ::= { ifMainEntry 8 } + + ifMainSubType OBJECT-TYPE + SYNTAX INTEGER { + extremeEther(251), + fastEther(252), + gigabitEthernet(253), + xlEthernet(254), + notApplicable(255) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object stores the subType value of the specified interface. + Configuration of this object is not mandatory.By default + Sub type value will be updated based on the hardware link speed. + + For non Ethernet interfaces, the object defaults to notApplicable. + notApplicable is valid only for non Ethernet interfaces." + + ::= { ifMainEntry 9 } + + ifMainNetworkType OBJECT-TYPE + SYNTAX INTEGER { + lan(1), + wan(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object indicates whether this interface is a + WAN or LAN link. + + The default value for this object varies according + to the interface type. All interfaces of type radio (71), + ieee8023ad (161) and l3ipvlan (136) are LAN interfaces. + Fast ethernet interfaces are considered LAN interfaces + while Gigabit ethernet interfaces are considered WAN + interfaces at start-up. + Interfaces of any other type are WAN interfaces. + + This object can be set only for ethernet interfaces or + l3ipvlan. For changing the network type of an ethernet + interface or l3ipvlan, the interface must be brought + down first - changing network type while the interface + is administratively up is not permitted." + ::= { ifMainEntry 10 } + + ifMainWanType OBJECT-TYPE + SYNTAX INTEGER { + other(0), + private(1), + public(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object indicates whether this interface is a + private or public WAN link. + + This object is applicable only for PPP interfaces and + ethernet WAN interfaces. For other interfaces the value + cannot be set and a get always returns the value OTHER. + + For PPP and ethernet WAN interfaces the default value is PUBLIC. + By default, public WAN links, have a default route associated + with them. When the WAN type is set as PRIVATE, no default route + is created for this interface. The value OTHER can never be set. + + For changing the type of a WAN interface, the interface + must be brought down first - changing WAN type while the + interface is administratively up is not permitted." + ::= { ifMainEntry 11 } + + ifMainDesc OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A textual string which contains the description about an interface." + + ::= { ifMainEntry 12 } + + ifMainStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The storage type for this conceptual row in the ifMainTable. + Conceptual rows having the value 'permanent' need not allow + write-access to any columnar object in the row. + only volatile and nonVolatile are allowed for this object" + DEFVAL { nonVolatile } + ::= { ifMainEntry 13 } + + ifMainExtSubType OBJECT-TYPE + SYNTAX INTEGER { + sisp(0), + attachmentCircuit(1), + openflow(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object stores the subType value of the specified interface. + These sub types are specified for the ifMainType-propVirtual." + + ::= { ifMainEntry 14 } + + ifMainPortRole OBJECT-TYPE + SYNTAX INTEGER { + uplink(1), + downlink(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for indicating the port role for each interface. + + A port is termed as uplink port when it is connected to the + network. + + A port is termed as downlink when it is connected towards host + end-points" + + DEFVAL { downlink } + ::= { ifMainEntry 15 } + + ifMainUfdOperStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), + down(2), + ufdErrorDisabled(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is for indicating the Uplink Failure Detection(UFD) + port operational status for each interface. + + Uplink Failure Detection(UFD) operational status of the uplink + port is same as the operational status of the port. + + For the downlink ports this object takes a value which is + dependent on the combined operational status of the uplink ports + present in the group to which this port belongs to. + + If all the uplink ports in the Uplink Failure Detection(UFD) group + are down, the operational status of all the active downlink ports + is ufdErrorDisabled and the operational status of + all the inactive downlink ports is Down. + + When the interface is not in the group and it's ifMainOperStatus + is up, the interface Uplink Failure Detection(UFD) operational + status is up. + + When the interface is not in the group and it's ifMainOperStatus + is not up, the port Uplink Failure Detection(UFD) operational + status is down." + + ::= { ifMainEntry 16 } + + ifMainUfdGroupId OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "An identifier that uniquely identifies the group. Each group has + uplink interfaces to monitor and downlink interfaces to disable. + The UFD group Id value zero indicates that the port is not + present in any group. By setting the UFD Group Id value to zero, + we are deleting the port from the ufd group to which it belongs to." + ::= { ifMainEntry 17 } + + ifMainUfdDownlinkDisabledCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of times + that downlink ports in the group were automatically + disabled because of all uplink ports failure in the group." + ::= { ifMainEntry 18 } + + ifMainUfdDownlinkEnabledCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of times + that downlink ports in the group were automatically + enabled because of any one uplink ports back to function in the group." + ::= { ifMainEntry 19 } + +ifMainDesigUplinkStatus OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies whether this interface is designated uplink + or not. + + A port is termed as designated uplink when the port is connected + to the network and it has more preference over all the uplink + ports. Broadcast/unknown multicast will use this designated + port to reach uplink. + + When the status is set to True, the port acts as designated uplink. + This designated uplink port is used in split horizon feature. + This object is different from the Uplink Failure Detection (UFD) + designated uplink port object called ifUfdGroupDesigUplinkPort. + Where ifUfdGroupDesigUplinkPort is unique per UFD group and in + each group the designated uplink port differs in UFD whereas + this object is specific for all the available physical interfaces. + + This configuration is allowed only on uplink port which is + configured through ifMainPortRole. + Configuring any uplink port as designated uplink port overrides the + previous designated uplink port configuration since it is allowed + to have only one designated uplink port in the system." + DEFVAL { false } + ::= { ifMainEntry 20 } + + ifMainEncapDot1qVlanId OBJECT-TYPE + SYNTAX Integer32 (0..4094) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the VLAN identifier assigned to Layer 3 + Subinterface for association in the porting layer. This object + is available only when the interface is set as Layer3 SubInterface." + + DEFVAL { 0 } + ::= { ifMainEntry 21 } + + ifMainNeighborId OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A string identifying the device connected to the interface. + The neighbor ID is derived from LLDP data that is currently + associated with the interface." + + DEFVAL { "" } + ::= { ifMainEntry 22} + + ifMainName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE(0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A string identifying the device interface that can + be used to unambiguously identify the interface when + configuring interface settings in various tables + that identify ports by name." + + DEFVAL { "" } + ::= { ifMainEntry 23} + + ifMainPrevDesc OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..255)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A textual string which contains the previous + description for the interface." + + DEFVAL { "" } + ::= { ifMainEntry 24} + +-- ifIpTable +-- This table is used for the management of the interfaces in the +-- system which are registered with IP. + + ifIpTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfIpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of all the interface entries in the system which + are registered with IP. + + This table contains objects which are applicable for the + management of IP over the network interfaces + in the system. + + This table is a extension to the ifMainTable. + The index to this table has the semantics of + the ifMainIndex of the ifMainTable. + + Entries are created automatically in this table for + any interface sub-layer which is layer below IP using + the ifStackTable. Similarly, entries are deleted from + this table when the interface's layering below IP is + removed." + ::= { if 5 } + + ifIpEntry OBJECT-TYPE + SYNTAX IfIpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing management information applicable + to a particular interface over which IP is operating." + INDEX { ifMainIndex } + ::= { ifIpTable 1 } + + IfIpEntry ::= + SEQUENCE { + ifIpAddrAllocMethod INTEGER, + ifIpAddr IpAddress, + ifIpSubnetMask IpAddress, + ifIpBroadcastAddr IpAddress, + ifIpForwardingEnable TruthValue, + ifIpAddrAllocProtocol INTEGER, + ifIpDestMacAddress MacAddress, + ifIpUnnumAssocIPIf InterfaceIndex, + ifIpIntfStatsEnable TruthValue, + ifIpPortVlanId Integer32 + } + + ifIpAddrAllocMethod OBJECT-TYPE + SYNTAX INTEGER { + manual(1), -- To be set by Manager + negotiation(2), -- obtained from peer + dynamic(3), + none(4) -- none of the above + } -- Currently only + -- these method possible. + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The mechanism to be used for allocation of IP + address for this interface. + + The value negotiation can be used only for PPP + and MLPPP interfaces which support obtaining of + IP addresses through negotiation. + + The dynamic(3) option takes an IP + address dynamically from the available + server (dhcp/bootp/rarp) according to the + protocol specified in ifIpAddrAllocProtocol. + + If the method specified is manual and the IP + address is not provided (then the interface + would be treated as a un-numbered interface." + DEFVAL { none } + ::= { ifIpEntry 1 } + + ifIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP address given to this + interface. The specification of this object is + mandatory for all network interfaces (Ethernet, + FR VC, IPoA interface, PPP link - not under MP, + MP interface and X.25 VC). If the interface is + not a network interface then the default value + of 0.0.0.0 is assigned and the interface is + treated as a un-numbered interface by IP." + DEFVAL { '00000000'H } + ::= { ifIpEntry 2 } + + ifIpSubnetMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP Subnet Mask for this + interface. The value should be specified only + for network interfaces and any valid VLSM is + accepted. + + If not specified, this object takes the default + subnet mask value based on the class of the IP + address configured for the interface." + ::= { ifIpEntry 3 } + + ifIpBroadcastAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP broadcast address for this + interface. The value should be specified only + for network interfaces and any valid broadcast + address based on a valid VLSM is accepted. + + If not specified, this object takes the default + value based on the class of the IP + address configured for the interface." + ::= { ifIpEntry 4 } + + ifIpForwardingEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies whether IP forwarding is enable on + this interface. Disabling IP forwarding on an + interface will result in packets which are to + be forwarded on that interface being dropped + and ICMP error messages being generated for the + packets." + DEFVAL { true } + ::= { ifIpEntry 5 } + + ifIpAddrAllocProtocol OBJECT-TYPE + SYNTAX INTEGER { + rarp(1), + dhcp(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the protocol to be used to obtain + IP address for this interface. This object is + valid only when ifIpAddrAllocMethod is set to + dynamic (3). + + When ifIpAddrAllocMethod option is dhcp(2) + dhcp-client tries for dynamic IP address from + server for maximum number of retries. If couldn't + able to receive any IP address, then sets back to + default IP address. + + Currently rarp (1) option is not + supported. The assigned value will be effective + only when the interface admin status changes" + DEFVAL { dhcp } + ::= { ifIpEntry 6 } + + ifIpDestMacAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The unicast Peer MacAddress for unnumbered interface. + This Object needs to be configured mandatorily for proper + forwarding of IP packets over unnumbered interfaces.This object + needs to be set to avoid ARP resolution failure on corresponding + interfaces. For MPLS-TP networks, MacAddress can be unicast or + multicast (01:00:5E:90:00:00) Mac Address." + ::= { ifIpEntry 7 } + + ifIpUnnumAssocIPIf OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object stores the interface index of the interface associated + with the unnumbered interface. The source IP addresses used over + the Unnumbered interface in relation to the destination IP address + are borrowed from the associated interface." + ::= { ifIpEntry 8 } + + ifIpIntfStatsEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies whether statistics collection is enabled on the IP + interface. + + When the status is set to True, statistics collection will be started on the IP interface. + Retrieval of statistics on the L3 interface is possible only when the status is + set to True. + + When the status is set to False, statistics collection will be stopped on the IP interface. + Retrieval of statistics on the L3 interface is not be possible when the status is + set to False." + DEFVAL { false } + ::= { ifIpEntry 9 } + + ifIpPortVlanId OBJECT-TYPE + SYNTAX Integer32 (0..4094) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the VLAN identifier assigned to router-ports + for association in the porting layer. This object is meant for the + chipsets when the porting layer demands VLAN identifier association + to realize router ports. This object is available only when the + physical interface is set as router-port. + + The default value 0 is applicable for L3 VLAN interfaces and for + chipsets that do not support this MIB feature" + DEFVAL { 0 } + ::= { ifIpEntry 10 } + +-- ifWanTable +-- This table is used for specification of media specific configuration +-- parameters which are applicable to WAN interfaces. + + ifWanTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfWanEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A list of all the WAN interfaces in the system. + + This table contains objects which are applicable for the + management of WAN interfaces like PPP, MP bundle and + FR/X.25/ATM VCs in the system. + + This table is a extension to the ifMainTable. + The index to this table has the semantics of + the ifMainIndex of the ifMainTable. + + Entries are created automatically in this table when + any WAN interface is created in the ifMainTable. The + ppp(23), miox25(38), frameRelayMPI(92), + pppMultilinkBundle(108) and atmSubInterface(134) + interfaces have entries in this table. The entries + in this table are deleted when the interfaces are + deleted from the ifMainTable." + ::= { if 6 } + + ifWanEntry OBJECT-TYPE + SYNTAX IfWanEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "An entry containing management information applicable + to a WAN interface." + INDEX { ifMainIndex } + ::= { ifWanTable 1 } + + IfWanEntry ::= + SEQUENCE { + ifWanInterfaceType INTEGER, + ifWanConnectionType INTEGER, + ifWanVirtualPathId Integer32, + ifWanVirtualCircuitId Integer32, + ifWanPeerMediaAddress OCTET STRING, + ifWanSustainedSpeed Integer32, + ifWanPeakSpeed Integer32, + ifWanMaxBurstSize Integer32, + ifWanIpQosProfileIndex Integer32, + ifWanIdleTimeout Integer32, + ifWanPeerIpAddr IpAddress, + ifWanRtpHdrComprEnable TruthValue, + ifWanPersistence INTEGER + } + + ifWanInterfaceType OBJECT-TYPE + SYNTAX INTEGER { + ppp(23), -- PPP link + miox25(38), -- multiprotocol over x.25 + -- used for X.25 VCs + frameRelayMPI(92), -- multiprotocol + -- over FR + -- used for FR VCs + -- and sub-interfaces + pppMultilinkBundle(108), -- PPP Multilink + -- Bundle + atmSubInterface(134) -- VCs under IPoA + -- for QoS purpose + } + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The type of the WAN interface. This is + same as if MIB-2 ifType and ifMainType." + ::= { ifWanEntry 1 } + + ifWanConnectionType OBJECT-TYPE + SYNTAX INTEGER { + other(0), + permanent(1), + switched(2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The type of WAN connection. This object + will not be applicable to PPP and MLPPP + interfaces and will have the value other(0). + For all other interfaces the default value + is permanent(1). + + It is possible to pre-configure a SVC through + this table. The actual SVC establishment may + take place when there is data to be sent or + through some other system policy." + ::= { ifWanEntry 2 } + + ifWanVirtualPathId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The VPI for ATM VCs. This object + will not be applicable to other + interfaces and will have the value 0." + DEFVAL { 0 } + ::= { ifWanEntry 3 } + + ifWanVirtualCircuitId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The VCI for ATM VCs, DLCI for Frame Relay VCs and + the channel identifier for X.25 VCs. + + For SVCs this object is read-only, the value will be + assigned after the SVC establishment. + + This object will not be applicable to PPP and + MLPPP interfaces and will have the value 0." + DEFVAL { 0 } + ::= { ifWanEntry 4 } + + ifWanPeerMediaAddress OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..40)) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The Media Address of the peer to whom this + connection is to be established. + + For ATM VCs this can be in E.164, NSAP or either of these along + with the subaddress. For Frame Relay VCs this is in + E.164 and for X.25 VCs it is in X.121 format. + + For SVCs this object is mandatory, for PVCs it is + optional. + + This object will not be applicable to PPP and + MLPPP interfaces and will have the value 0." + ::= { ifWanEntry 5 } + + ifWanSustainedSpeed OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The sustained or minimum gauranteed speed of + the interface. This is semantically similar to + the CIR for FR and SCR for ATM. The value to be + assigned is the CIR or SCR as the case may be. + This value is used by IP-QoS. + + For PPP links this object should be given the value + of the speed of the lower link. For MP this value + is the sum of the speed of all the lower PPP links. + + If the value is not specified then the system default + values are taken based on the type of the interface." + ::= { ifWanEntry 6 } + + ifWanPeakSpeed OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The maximum speed available on the interface. + This is semantically similar to the CIR+EIR for FR + and PCR for ATM. This value is used by IP-QoS. + + For PPP links this object should be given the value + of the speed of the lower link. For MP this value + is the sum of the speed of all the lower PPP links. + + If the value is not specified then the ifWanSustatinedSpeed + values are taken as the peak speed values." + ::= { ifWanEntry 7 } + + ifWanMaxBurstSize OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The maximum burst size in bytes that the interface + can sustain. This is semantically similar to the Bc for FR + and MBS for ATM. This value is used by IP-QoS. + + For PPP links this object should be given the value + of the speed of the lower link. For MP this value + is the sum of the speed of all the lower PPP links. + + If the value is not specified then the system default + values are taken based on the type of interface." + ::= { ifWanEntry 8 } + + ifWanIpQosProfileIndex OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The index of an IP-QoS profile which is configured + in the IP-QoS MIB. Assigning the index of the profile + results in instantiation of that profile for the + interface. + + This object is optional and may be specified only for + assigning an IP-QoS profile - if not specified then no + profile is applied to this interface - default value + is then the invalid index 0." + DEFVAL { 0 } + ::= { ifWanEntry 9 } + + ifWanIdleTimeout OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The minimum duration (in seconds) to wait before + disconnecting an idle established circuit/interface. (a + default value of 0 where not required) Specification + of the object is optional for all interfaces; if not + specified the system default value is assumed on the basis + of the IfType specified." + DEFVAL { 0 } + ::= { ifWanEntry 10 } + + ifWanPeerIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The IP address of the peer to whom this interface is + established with. Specification of this value is optional + for all interfaces. + + For PPP and MLPPP interfaces, this value if specified + is used during IPCP negotiation for assigning IP address + to the peer. This object stores the configured peer IP + address and this object is not updated with the actual + IP address of the peer. + + For other interfaces, this value is either configured + for peers who do not have InARP support or this object + is instantiated after the peer IP address is obtained + after InARP." + DEFVAL { '00000000'H } + ::= { ifWanEntry 11 } + + ifWanRtpHdrComprEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Enable or disable the RTP header compression on the + WAN interface. This object is writable for only those + interface which are registered with IP. If the RTP + header compression negotiation with the peer fails then + this object is reset to false." + DEFVAL { false } + ::= { ifWanEntry 12 } + + ifWanPersistence OBJECT-TYPE + SYNTAX INTEGER { + other(1), + demand(2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The persistence of the WAN interface in the system. + + Demand(2) circuits are pre-configured but are opened only + when there is some data to be sent (these interfaces are + administratively UP, but operationally DORMANT and they are + made UP dynamically whenever there is any data to be sent + over the interface). The demand circuit configuration + continues to persist in the system. + + Alll other WAN interface which do not fall under the above + categories are to be configured as other(1) which is the + default value." + DEFVAL { other } + ::= { ifWanEntry 13 } + + +-- ifAutoCktProfileTable +-- This table is used for the specification of the automatic circuit +-- profile for the WAN interface in the system. + + ifAutoCktProfileTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfAutoProfileEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A list of all the automatic circuit profiles in the system. + This table contains objects which are useful for configuration + of an automatic circuit profile for a given interface. + The profile specified here is used for the configuration of + all the incoming calls on the specified interface. The new + interfaces are assigned MIB-2 ifIndex upon creation. The + interface is deleted once the circuit is closed." + ::= { if 7 } + + ifAutoProfileEntry OBJECT-TYPE + SYNTAX IfAutoProfileEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing information applicable + to an automatic circuit profile for an interface." + INDEX { ifAutoProfileIfIndex } + ::= { ifAutoCktProfileTable 1 } + + IfAutoProfileEntry ::= + SEQUENCE { + ifAutoProfileIfIndex InterfaceIndex, + ifAutoProfileIfType INTEGER, + ifAutoProfileIpAddrAllocMethod INTEGER, + ifAutoProfileDefIpSubnetMask IpAddress, + ifAutoProfileDefIpBroadcastAddr IpAddress, + ifAutoProfileIdleTimeout Integer32, + ifAutoProfileEncapType INTEGER, + ifAutoProfileIpQosProfileIndex Integer32, + ifAutoProfileRowStatus RowStatus + } + + ifAutoProfileIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "The MIB-2 ifIndex of the interface for which + this automatic circuit profile is applicable. + All incoming calls on this interface will be + handled/configured according to this profile." + ::= { ifAutoProfileEntry 1 } + + ifAutoProfileIfType OBJECT-TYPE + SYNTAX INTEGER { + rfc877x25(5), -- X.25 + frameRelay(32), -- Frame Relay DTE port + aal5(49), -- AAL5 over ATM + ipOverAtm(114) -- IPoA virtual + } + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "The type of the WAN interface. This is + same as if MIB-2 ifType and ifMainType." + ::= { ifAutoProfileEntry 2 } + + ifAutoProfileIpAddrAllocMethod OBJECT-TYPE + SYNTAX INTEGER { + other(1), -- obtained by other + -- means or not required + negotiation(2), -- obtained from peer + localAddressPool(3) + } -- Currently only + -- these method possible. + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "The mechanism to be used for allocation of IP + address for this interface. + + The value negotiation can be used only if PPP + or MLPPP interfaces are to run over the automatic + circuits. + + The localAddressPool(3) option takes an IP + address dynamically from the IP address pool + specified by the ifAutoProfileIpAddrPoolIndex. + + If the method specified is other(1) then either + the IP address is not required or is obtained + by some other method." + DEFVAL { other } + ::= { ifAutoProfileEntry 3 } + + ifAutoProfileDefIpSubnetMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "Specifies the default IP Subnet Mask for this + profile. The value should be specified only + for network interfaces and any valid VLSM is + accepted. + + If not specified, this object takes the default + subnet mask value based on the class of the IP + address configured for the interface." + ::= { ifAutoProfileEntry 4 } + + ifAutoProfileDefIpBroadcastAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "Specifies the default IP broadcast address for this + interface. Any valid broadcast + address based on a valid VLSM is accepted. + + If not specified, this object takes the default + value based on the class of the IP + address configured for the interface." + ::= { ifAutoProfileEntry 5 } + + ifAutoProfileIdleTimeout OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "The minimum duration (in seconds) to wait before + disconnecting an idle automatic circuit. Specification + of the object is mandatory." + ::= { ifAutoProfileEntry 6 } + + ifAutoProfileEncapType OBJECT-TYPE + SYNTAX INTEGER { + other(1), + nlpid(2), -- NLPID based encap + -- in the case of FR + -- and multiplexed + -- NLPID encap for X.25 + nlpidSnap(3), -- NLPID-SNAP based + -- encap in the case + -- of FR and multiplexed + -- NLPID-SNAP encap for + -- X.25. + cudNlpid(4), -- dedicated NLPID for + -- X.25 only + cudNlpidSnap(5), -- dedicated + -- NLPID-SNAP for + -- X.25 only + llcSnap(6), -- for ATM VCs only + vcMultiplexed(7) -- for ATM VCs only + } + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "The encapsulation type to be used over the automatic + circuit. + + For FR interface, the value can be nlpid(2) (for carrying protocols + which have NLPID) or nlpidSnap(3) (for other protocols). The + default is nlpid(2) and the types of protocols supported are + inferred from the stack-layering implemented over the + interface. + + For X.25 interface, the value can be nlpid(2) or nlpidSnap(3) + (where the VC can carry multiplexed protocol traffic with + each data packet containing the NLPID or SNAP header) or + cudNlpid(4) or cudNlpidSnap(5) (where the CUD specifies + the NLPID of the protocol or SNAP and the data packets do + not contain these headers - for dedicated VCs). The default + is cudNlpid(4). + + For ATM interface, the default is llcSnap(6) but the + vcMultiplexed(7) encapsulation is also supported." + ::= { ifAutoProfileEntry 7 } + + ifAutoProfileIpQosProfileIndex OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "The index of an IP-QoS profile which is configured + in the IP-QoS MIB. Assigning the index of the profile + results in instantiation of that profile for any + automatic circuit which is instantiated based on this + profile (and a corresponding profile is instantiated + in the IP-QoS table also). + + This object is optional and may be specified only for + assigning an IP-QoS profile - if not specified then no + profile is applied to this interface - default value + is then the invalid index 0." + DEFVAL { 0 } + ::= { ifAutoProfileEntry 8 } + + ifAutoProfileRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "A RowStatus object for creation of automatic circuit + profile on a per interface basis. + + It is necessary to create the parent FR,X.25 or ATM/IPoA + interface before creating the automatic circuit profile + for that interface. + + The profile is deleted once the parent interface is + deleted from the system. + + Setting this object to notInService for an active profile + will result in the profile being not applied to any new + automatic circuit, but the existing circuits would not + be affected. Similarly, deleting a profile would not affect + existing circuits which have used that profile." + ::= { ifAutoProfileEntry 9 } + + +-- ifIvrTable +-- This table is used for the Inter VLAN Routing related +-- configurations for each interface such as converting Bridged interfaces +-- to Routed interfaces and vice-versa. + + ifIvrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfIvrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of all the interfaces in the system with IVR related + configurations. + + This table is an extension to the ifMainTable. The index to + this table has the semantics of the ifMainIndex of the + ifMainTable." + ::= { if 8 } + + ifIvrEntry OBJECT-TYPE + SYNTAX IfIvrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing IVR-related information applicable + to a interface." + INDEX { ifMainIndex } + ::= { ifIvrTable 1 } + + IfIvrEntry ::= + SEQUENCE { + ifIvrBridgedIface + TruthValue + } + + ifIvrBridgedIface OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates if this interface is a Bridged interface + or not. + A value of 'TRUE' indicates that this interface is + a Bridged interface and is capable of performing + bridging of packets through this interface. + A value of 'FALSE' indicates that this + interface is a Routed interface and is capable of + performing routing of packets through this interface." + ::= { ifIvrEntry 1 } + +-- Added the following two scalars for setting or resetting the VLAN +-- List for the management interface. + + ifSetMgmtVlanList OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..512)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A string of octets containing one bit per VLAN. The + first octet corresponds to VLANs with VlanId values + 1 through 8; the second octet to VLANs 9 through + 16 etc. The most significant bit of each octet + corresponds to the lowest VlanId value in that octet. + This is the set of vlans configured by management to associate + with the management interface." + ::= { if 9 } + + ifResetMgmtVlanList OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..512)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A string of octets containing one bit per VLAN. The + first octet corresponds to VLANs with VlanId values + 1 through 8; the second octet to VLANs 9 through + 16 etc. The most significant bit of each octet + corresponds to the lowest VlanId value in that octet. + This is the set of vlans configured by management to dis-associate + from the management interface. + Get operation is not allowed for this object." + + ::= { if 10 } + +-- ifSecondaryIpAddressTable +-- This table is to configure secondary ip address over the interfaces +-- registered with IP. + + ifSecondaryIpAddressTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfSecondaryIpAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of secondary IP addresses configured over the + interfaces registered with IP. + + This table is a extension to the ifMainTable. + The index to this table has the semantics of + the ifMainIndex of the ifMainTable. + + Secondary IpAddress configuration should not override the + primary ip address configured for any of the interface + + Updation of entries in this table are not allowd when + RowStatus is active" + + ::= { if 11 } + + ifSecondaryIpAddressEntry OBJECT-TYPE + SYNTAX IfSecondaryIpAddressEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry contains the information associated with the + secondary(additional) ip address configured to a particular + interface." + INDEX { ifMainIndex , ifSecondaryIpAddress} + ::= { ifSecondaryIpAddressTable 1 } + + IfSecondaryIpAddressEntry ::= + SEQUENCE { + ifSecondaryIpAddress IpAddress, + ifSecondaryIpSubnetMask IpAddress, + ifSecondaryIpBroadcastAddr IpAddress, + ifSecondaryIpRowStatus RowStatus + } + + ifSecondaryIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the Secondary IP address associated with the + interface" + ::= {ifSecondaryIpAddressEntry 1 } + + ifSecondaryIpSubnetMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP Subnet Mask associted with the + secondary ip address configuration. The value should be + specified only for network interfaces and any valid + VLSM is accepted. + + If not specified, this object takes the default + subnet mask value based on the class of the IP + address configured for the interface." + ::= { ifSecondaryIpAddressEntry 2 } + + ifSecondaryIpBroadcastAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP broadcast address associated with + the configured secondary IP address. The value should be + specified only for network interfaces and any valid + broadcast address based on a valid VLSM is accepted. + + If not specified, this object takes the default + value based on the class of the IP + address configured for the interface." + ::= { ifSecondaryIpAddressEntry 3 } + + ifSecondaryIpRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to manage creation and deletion of rows + in this table." + ::= { ifSecondaryIpAddressEntry 4 } + +-- ---------------------------------------------------------------------------- +-- ifMainExtTable +-- This table is used for the additional management of the interfaces in the +-- system. +-- ---------------------------------------------------------------------------- + +ifMainExtTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfMainExtEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is an extension to the ifMainTable." + ::= { if 12 } + +ifMainExtEntry OBJECT-TYPE + SYNTAX IfMainExtEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing additional management information + applicable to a particular interface." + AUGMENTS { ifMainEntry } + ::= { ifMainExtTable 1 } + +IfMainExtEntry ::= + SEQUENCE { + ifMainExtMacAddress MacAddress, + ifMainExtSysSpecificPortID Unsigned32, + ifMainExtInterfaceType INTEGER, + ifMainExtPortSecState INTEGER, + ifMainExtInPkts Counter32, + ifMainExtLinkUpEnabledStatus INTEGER, + ifMainExtLinkUpDelayTimer Unsigned32, + ifMainExtLinkUpRemainingTime Unsigned32 + + } + + ifMainExtMacAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The unicast MacAddress for each interface. + The Macaddress can be set only when ifMainAdminStatus for the + interface is down(2). The object is valid only for + interfaces that have the ifMainType set as ethernetCsmacd(6) or + ieee8023ad(161). + Configuration of this object is not mandatory. If this object is + not configured, the default Macaddress for the interface is obtained + from the system." + ::= { ifMainExtEntry 8 } + + ifMainExtSysSpecificPortID OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "System specific index configured for the port. + It provides a different numbering space other than the + IfIndex to identify ports. + Valid range for this object is from 1 to 16384. + The value 0 is not allowed to be set. On reading the object + 0 is returned only if no other value has been configured." + DEFVAL { 0 } + ::= { ifMainExtEntry 9 } + + ifMainExtInterfaceType OBJECT-TYPE + SYNTAX INTEGER { + frontpanelport (1), + backplaneport (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object reflects the usage of this interface, whether it is a + frontpanel interface or a backplane interface used for interswitching + in distributed environments. + + frontpanelport - + The interface behaves as a normal interface visible to the management + and other protocols. + + backplaneport - + This port operates as back plane interface in the system enabling + communication across the line cards present in the system. This + interface will be masked from the management control for all the + protocol related operations. This can be used in distributed + environments wherein protocols are ran over every individual line + cards to achieve better CPU utilization and performance. Proprietary + PDU and tailored control PDU flow out of this interface to keep the + system information intact across the line cards present in the system. + This can be enabled only over the physical interface and not over any + other interface." + + DEFVAL { 1 } + ::= { ifMainExtEntry 10} + + ifMainExtPortSecState OBJECT-TYPE + SYNTAX INTEGER { + untrusted (0), + trusted (1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The interface port security state says whether the port is connected + to trusted hosts or not. If a port is trusted, the packets coming + on that ports will also be trusted. By default all the ports will be + untrusted. If the interface is part of a port channel it cannot be set." + + DEFVAL { trusted } + ::={ ifMainExtEntry 11 } + + ifMainExtInPkts OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Total number of packets received on this interface. This includes the + total of Unicast, Multicast and Broadcast packets received on a interface." + + ::={ ifMainExtEntry 12 } + + ifMainExtLinkUpEnabledStatus OBJECT-TYPE + SYNTAX INTEGER { enabled(1), disabled(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This enables or disables Link Up Delay functionality in this port. + A value of 'enabled'(1) indicates that, operational status of the + link is suspended for a configured delay time 'ifMainExtLinkUpDelayTimer'. + A value of 'disabled' (2) indicates that the operational status of the + link is not delayed and indicated to the higher layers immediately." + + DEFVAL { disabled } + ::= { ifMainExtEntry 13} + + ifMainExtLinkUpDelayTimer OBJECT-TYPE + SYNTAX Unsigned32 + UNITS "seconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This configures the delay timer for the link up enabled interface. + It takes the timer value (in seconds) minimum value as 1 and + maximum value as 1000." + + DEFVAL { 2 } + ::= { ifMainExtEntry 14} + + ifMainExtLinkUpRemainingTime OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is for displaying the pending time left + for the link Operation Status to be made UP." + + ::= { ifMainExtEntry 15} +-- ---------------------------------------------------------------------------- +-- CFA Custom TLV Table +-- ---------------------------------------------------------------------------- + +ifCustTLVTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfCustTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table allows generic TLV data to be configured per-port. + It may be used to store any port-specific information that + is required by any application." + + ::= { if 13 } + +ifCustTLVEntry OBJECT-TYPE + SYNTAX IfCustTLVEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Entry about the TLV information" + INDEX { ifMainIndex, ifCustTLVType } + ::= { ifCustTLVTable 1 } + +IfCustTLVEntry ::= + SEQUENCE { + ifCustTLVType Unsigned32, + ifCustTLVLength Unsigned32, + ifCustTLVValue DisplayString, + ifCustTLVRowStatus RowStatus + } + +ifCustTLVType OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Type of the TLV Information." + ::= { ifCustTLVEntry 1 } + +ifCustTLVLength OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Length of the TLV Information. + Specification of this object is mandatory for ifCustTLVRowStatus to + be made active. Length should be configured after the row creation in + ifCustTLVTable and before configuring the ifCustTLVValue. + The value 0 is not allowed to be set." + ::= { ifCustTLVEntry 2 } + +ifCustTLVValue OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Value of the TLV Information. The default value is 0." + ::= { ifCustTLVEntry 3 } + +ifCustTLVRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "RowStatus of the Corresponding Entry." + ::= { ifCustTLVEntry 4 } + +-- ---------------------------------------------------------------------------- +-- CFA Custom OpaqueAttributes Table +-- ---------------------------------------------------------------------------- + +ifCustOpaqueAttrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfCustOpaqueAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table allows generic integer attributes to be configured + per-port. These attributes will be opaque from ISS's point of + view and will not be processed/understood by ISS." + ::= { if 14 } + +ifCustOpaqueAttrEntry OBJECT-TYPE + SYNTAX IfCustOpaqueAttrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Entry for every opaque attribute on each port." + INDEX { ifMainIndex, ifCustOpaqueAttributeID } + ::= { ifCustOpaqueAttrTable 1 } + +IfCustOpaqueAttrEntry ::= + SEQUENCE { + ifCustOpaqueAttributeID INTEGER, + ifCustOpaqueAttribute Unsigned32, + ifCustOpaqueRowStatus RowStatus + } + +ifCustOpaqueAttributeID OBJECT-TYPE + SYNTAX INTEGER{ + opaqueAttr1 (1), + opaqueAttr2 (2), + opaqueAttr3 (3), + opaqueAttr4 (4) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "OpaqueAttribute ID configured on the port. Four opaque attributes are + supported on each port" + ::= { ifCustOpaqueAttrEntry 1 } + +ifCustOpaqueAttribute OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Value for the Opaque attribute.This value can be altered when + ifCustOpaqueRowStatus is ACTIVE." + DEFVAL { 0 } + ::= { ifCustOpaqueAttrEntry 2 } + + +ifCustOpaqueRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "RowStatus of the Corresponding Entry. NOT_IN_SERVICE value is not + supported." + ::= { ifCustOpaqueAttrEntry 3 } + +-- =========================================================== +-- I-LAN Interface configuration table +-- =========================================================== + +ifBridgeILanIfTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfBridgeILanIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to read the status of an I-Lan interface + created from Iftable. An I-LAN Interface is + used to create internal connections between bridge ports in a + 802.1 device. An I-LAN Interfaces can be directly associated + with a set of bridge ports. An I-LAN Interfaces can also be + used as a stacking interface to relate other interfaces before + association to bridge ports. + + For example, an I-LAN interface can be created to link traffic + between a PIP and a CBP. This involves creation of an interface + of type iLan with a corresponding entry made in the ifTable. + + The IfIndex corresponding to the ILAN is put in the IlanifTable. + A CBP is created in a B Component of IfType internal and CBP + related IfEntry is stacked upon the IfEntry of the I-LAN using + the IfStackTable. Similarly, a PIP is created in a I Component + of IfType internal and PIP related IfEntry is stacked upon the + IfEntry of the I-LAN using the IfStackTable. + Finally, a VIP is created with ifType internal on the I-Component + and is associated with the PIP, thus completing the path from + the I-Component's MAC relay to the CBP on the B-Component. + + Entries in this table must be persistent over power up + restart/reboot." + ::= { if 15 } + +ifBridgeILanIfEntry OBJECT-TYPE + SYNTAX IfBridgeILanIfEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry consists of a Status to get the I-Lan interface status" + INDEX { ifIndex } + ::= { ifBridgeILanIfTable 1 } + +IfBridgeILanIfEntry ::= + SEQUENCE { + ifBridgeILanIfStatus + INTEGER + } + +ifBridgeILanIfStatus OBJECT-TYPE + SYNTAX INTEGER + { + active (1), + outOfService (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is used to read the status of an I-Lan interface + created from Iftable." + ::= { ifBridgeILanIfEntry 1 } +-- ====================================================== +-- IfType Protocol Deny Table. +-- ====================================================== +ifTypeProtoDenyTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfTypeProtoDenyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to configure the interface types and bridge port types accessible + to various protocol(s). This table will indicate whether + a particular type of interface is to be created or be visible + in the given protocol module. An entry in this table will cause the + particular type of interface to be denied from being accessed by the + protocol i.e. the particular type of interface will not be created + (i.e. visible) in the given protocol." + ::= { if 16 } + +ifTypeProtoDenyEntry OBJECT-TYPE + SYNTAX IfTypeProtoDenyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry in this table will give the interface type and bridge port type + that will not be accessible to the protocol for the mentioned context. + Only valid and allowed combinations of ifTypeProtoDenyMainType and + ifTypeProtoDenyBrgPortType must be configured by the administrator." + INDEX { ifTypeProtoDenyContextId, ifTypeProtoDenyMainType, + ifTypeProtoDenyBrgPortType, ifTypeProtoDenyProtocol } + ::= { ifTypeProtoDenyTable 1 } + +IfTypeProtoDenyEntry ::= + SEQUENCE { + ifTypeProtoDenyContextId Unsigned32, + ifTypeProtoDenyMainType INTEGER, + ifTypeProtoDenyBrgPortType INTEGER, + ifTypeProtoDenyProtocol INTEGER, + ifTypeProtoDenyRowStatus RowStatus + } + +ifTypeProtoDenyContextId OBJECT-TYPE + SYNTAX Unsigned32 (0..255) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identifies a virtual context in which to deny access of the given interface + type and bridge port type to a protocol." + ::= { ifTypeProtoDenyEntry 1 } + +ifTypeProtoDenyMainType OBJECT-TYPE + SYNTAX INTEGER { + ethernetCsmacd(6), -- Ethernet/802.3 + propVirtual (53), -- Proprietary Virtual Interface + ieee8023ad(161), -- Link Aggregation Mib + brgPort(209), -- Bridge port used for creating virtual ports in PBB + pip (248) -- Virtual (Internal) Provider Instance port + + } -- These are the currently supported + -- interfaces. More can be added at a + -- later time. + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object type refers to the ifMainType. + The interface types that are currently supported by this table are + ethernetCsmacd(6), propVirtual(53), ieee8023ad(161), brgPort(209) and + pip(248)." + ::= { ifTypeProtoDenyEntry 2 } + +ifTypeProtoDenyBrgPortType OBJECT-TYPE + SYNTAX INTEGER { + providerNetworkPort (1), + customerNetworkPortPortBased (2), + customerNetworkPortStagged (3), + customerEdgePort (4), + propCustomerEdgePort (5), + propCustomerNetworkPort (6), + propProviderNetworkPort (7), + customerBridgePort (8), + customerNetworkPortCtagged (9), + virtualInstancePort (10), + providerInstancePort (11), + customerBackbonePort (12) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object type refers to ifMainBrgPortType." + ::= { ifTypeProtoDenyEntry 3 } + +ifTypeProtoDenyProtocol OBJECT-TYPE + SYNTAX INTEGER { + pnac(1), + la(2), + xstp(3), + vlan(4), + garp(5), + mrp(6), + pbb(7), + ecfm(8), + elmi(9), + snoop(10), + lldp(11), + bridge(12), + qos(13) + } + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Identifies the protocol for which the corresponding interface type and + bridge port type will not be accessible/visible." + ::= {ifTypeProtoDenyEntry 4 } + +ifTypeProtoDenyRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the status of the row. Valid values are 'createAndGo' and + 'destroy'. A row can be created in this table by assigning the value + 'createAndGo' for the status object which will cause the entry to become + active. An 'active' entry will identify the interface type and bridge port + type that will not be acccessible to the specified protocol for the context. + In other words, interfaces of the given interface type and bridge port + type will not be visible/created in the given protocol. + An 'active' row can be deleted by assigning the value 'destroy' to + the status. Once the entry is destroyed then all the interfaces of the + specified interface type and bridge port type will be accessible to the + specified protocol for the context." + ::= {ifTypeProtoDenyEntry 5 } + +-- Debug Trace SCALAR object +ifmDebug OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Enables the tracing in the selected submodule in CFA. A 32 bit + integer is used to store the Tracing level in the specified module. + Different Tracing Levels - + BIT 0 - Initialisation and Shutdown Trace. + BIT 1 - Management trace. + BIT 2 - Data path trace. + BIT 3 - Control Plane trace. + BIT 4 - Packet Dump. + BIT 5 - OS Resource trace. + BIT 6 - All Failure trace (All failures including Packet Validation) + BIT 7 - Buffer Trace. + + Different submodule tracing. + BIT 25 - ENET packet dump. + BIT 26 - IP packet dump. + BIT 27 - ARP packet dump. + BIT 28 - Exit Trace used during intialization. + BIT 29 - Error messages. + + The remaining bits are reserved. The combination of levels and + submodules are allowed i.e. Tracing can be allowed at all failure + and data path level in All submodules by setting the BIT + appropriately. + For Example, setting the debug value to the following bit stream, + 00000000000000010000000000000100 will enable data path trace + prints in CFA module. Multiple submodules and multiple levels can + be combined by setting the corresponding bits. + For Example, setting the debug value to the following bit stream, + 00000000000000110000000000001100 will enable data path and + control plane trace prints in CFA and CFA Priority modules. + + Note : BIT0 is the least significant bit and BIT31 is the most + significant bit." + ::= { if 17 } + +-- ifIvrMappingTable +-- Mapping of multiple Vlans to IVR interfaces. + + ifIvrMappingTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfIvrMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to configure the list of vlans to be + associated for an IVR interface. + The primary Index to this table can only be a IVR interface." + ::= { if 18 } + + ifIvrMappingEntry OBJECT-TYPE + SYNTAX IfIvrMappingEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry in this table gives an assoicated vlan to an IVR + interface." + INDEX { ifMainIndex, ifIvrAssociatedVlan } + ::= { ifIvrMappingTable 1 } + + IfIvrMappingEntry ::= + SEQUENCE { + ifIvrAssociatedVlan VlanId, + ifIvrMappingRowStatus RowStatus + } + + ifIvrAssociatedVlan OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object specifies one of the associated VLANs for a given + IVR interface. Vlan Id associated with an IVR interface during + IVR interface creation, should not be configured as + ifIvrAssociatedVlan for that IVR interface. + ifIvrAssociatedVlan and the primary vlan (vlan associated with + IVR during IVR creation) for an IVR interface should be in the + same Layer 2 context." + ::= { ifIvrMappingEntry 1 } + + ifIvrMappingRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes the Row Status for port isolation table entry. + Only 'CreateAndGo' and 'destroy' values are allowed for this + object. 'CreateAndWait' and 'notInService' values are not allowed. + Example: + To add vlans 2, 3 as associated vlans to an IVR interface with + interface index as 10 in this table, the following sequence + to be followed: + + 1. Set the ifIvrMappingRowStatus as 'CreateAndGo' for the + entry with index + (ifMainIndex = 10, ifIvrAssociatedVlan = 2) + 2. Set the ifIvrMappingRowStatus as 'CreateAndGo' for the + entry with index + (ifMainIndex = 10, ifIvrAssociatedVlan = 3) + + To delete vlan 3 from the list of associated vlans for an IVR + interface with IfIndex = 10 ports, do the following: + Set the ifIvrMappingRowStatus as 'destroy' for the + entry with index + (ifMainIndex = 10, ifIvrAssociatedVlan = 3)." + ::= { ifIvrMappingEntry 2 } + +-- Cfa Ff Group +-- This group defines objects for Management of the Fast Forwarding +-- feature of the CFA. + + ffFastForwardingEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "This object permits the enabling and disabling of + the Fast Forwarding feature in the router. Setting of + this variable to TRUE(1) enables fast-forwarding and + setting it to FALSE(2) disables it." + DEFVAL { false } + ::= { ff 1 } + + ffCacheSize OBJECT-TYPE + SYNTAX Integer32 (10..65535) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "This object permits the resizing of the Host + Cache. This object can be changed only when + the Fast Forwarding Mechanism is disabled. + For changing the Cache Size, The Fast-Forwarding + Mechanism should be disabled first (this will + result in loss of all current entries in the + cache) and then enabled again after specifying + the new size." + ::= { ff 2 } + + ffIpChecksumValidationEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "This object permits the enabling and disabling of + the validation of the IP Checksum for incoming + IP packets. Setting of this variable to TRUE(1) enables + the checksum validation and setting it to FALSE(2) + disables it." + DEFVAL { true } + ::= { ff 3 } + + ffCachePurgeCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of times the + entries in the Host Cache Table were purged due + to cache overflow." + ::= { ff 4 } + + ffCacheLastPurgeTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Indicates the SysUpTime when the last purging of + entries in the Host Cache Table took place." + ::= { ff 5 } + + ffStaticEntryInvalidTrapEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Permits enabling and disabling of the generation of + ffStaticEntryInvalid SNMP Enterprise Trap when a static + entry becomes invalid. When its value is TRUE(1), the + trap is generated when a static entry become invalid." + DEFVAL { true } + ::= { ff 6 } + + ffCurrentStaticEntryInvalidCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of static + entries in the Host Cache Table that are + currently invalid." + ::= { ff 7 } + + ffTotalEntryCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the total number of + entries in the Host Cache Table." + ::= { ff 8 } + + ffStaticEntryCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of static + entries in the Host Cache Table." + ::= { ff 9 } + + ffTotalPktsFastForwarded OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "A counter which indicates the number of packets + that were successfully fast-forwarded by the + host cache mechanism." + ::= { ff 10 } + +-- ffTable +-- This table shows the current status of the Host Cache in the +-- system. + + ffHostCacheTable OBJECT-TYPE + SYNTAX SEQUENCE OF FfHostCacheEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "This table has entries corresponding to the current + entries in the Host Cache. The entries in this table + can be added, deleted or modified." + ::= { ff 11 } + + ffHostCacheEntry OBJECT-TYPE + SYNTAX FfHostCacheEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "An Entry consisting of all the information + about an entry in the Host Cache." + INDEX { ffHostCacheDestAddr } + ::= { ffHostCacheTable 1 } + + FfHostCacheEntry ::= + SEQUENCE { + ffHostCacheDestAddr IpAddress, + ffHostCacheNextHopAddr IpAddress, + ffHostCacheIfIndex InterfaceIndex, + ffHostCacheNextHopMediaAddr OCTET STRING, + ffHostCacheHits Counter32, + ffHostCacheLastHitTime TimeStamp, + ffHostCacheEntryType INTEGER, + ffHostCacheRowStatus RowStatus + } + + ffHostCacheDestAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "The IP address of the destination host. " + ::= { ffHostCacheEntry 1 } + + ffHostCacheNextHopAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "The IP address of the next-hop to which a packet + for this host are forwarded. This could be same as + ffHostCacheDestAddr if the next-hop is the end-host + as well. + + When creating a static entry, this object + should be set with the IP address of the next-hop + (router) for a host which is not directly connected + to our system and with the IP address of the host + itself for a host which is directly connected to us. + + A set on this object for an entry whose + ffHostCacheEntryType is dynamic is not permitted." + ::= { ffHostCacheEntry 2 } + + ffHostCacheIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "Identifies the MIB-2 ifIndex of the outgoing + interface over which packets to this host are sent. + When creating a static entry, this object should be + set with the ifIndex of our network interface + for reaching the specified next-hop. + + It is mandatory to specify the next-hop IP address + using the ffHostCacheNextHopAddr before setting this + value. The specified ifIndex should be that of an + interface which is registered with IP. + + A set on this object for an entry + whose ffHostCacheEntryType is dynamic is not + permitted." + ::= { ffHostCacheEntry 3 } + + ffHostCacheNextHopMediaAddr OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..6)) + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "Provides the media address of the next-hop + to which the packet for this host is to be sent to. + + It is mandatory to specify the next-hop IP address + and the outgoing ifIndex using the + ffHostCacheNextHopAddr and ffHostCacheIfIndex + respectively before setting this value. + + This object must be specified for hosts, which are + reached through the interfaces of ethernetCsmacd(6) + and iso88025TokenRing(9) type. The value for such + interfaces would be the MAC address as per the + representation used for the particular media. + + For interfaces of type ppp(23) and + pppMultilinkBundle(108), this object must have the + default value 0. + + For virtual circuit interfaces (type miox25(38) and + frameRelayMPI(92)), this object must have the MIB-2 + ifIndex assigned to the respective virtual circuit. + + For virtual interfaces (type ipOverAtm(114) and + frameRelay(32)), this object MAY be used to (optionally) + specify the MIB-2 ifIndex assigned to the outgoing + virtual circuit. If not specified the value would be + obtained automatically from the respective modules. + + A set on this object for an entry whose + ffHostCacheEntryType is dynamic is not permitted." + ::= { ffHostCacheEntry 4 } + + ffHostCacheHits OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Indicates the total number of packets fast- + forwarded to this host." + ::= { ffHostCacheEntry 5 } + + ffHostCacheLastHitTime OBJECT-TYPE + SYNTAX TimeStamp + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Indicates the SysUpTime when the last packet + was fast-forwarded to this host." + ::= { ffHostCacheEntry 6 } + + ffHostCacheEntryType OBJECT-TYPE + SYNTAX INTEGER { + static(1), + dynamic (2) + } + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "An object, which indicates the type of this Host Cache + entry. + + A static entry is an entry created by the Network + Manager and is not purged by the system. Such entries + would be invalidated due to route or other changes + but will continue to remain in the Host Cache. + + Dynamic entries are those entries which have been learnt by + the system and which can be purged in the event of + a cache overflow or invalidation due to route or other + changes. + + All entries created through SNMP must set this object to + static otherwise." + DEFVAL { static } + ::= { ffHostCacheEntry 7 } + + ffHostCacheRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "A RowStatus object for addition/deletion of Host + Cache entries. It also indicates the status of the + entry. + + Set action is not allowed for notInService(2). An entry, + which has become invalid due to a route failure or + address resolution failure, would have the status + 'notInService'. + + An entry for a host for which the link layer + information can be cached but the information is + not currently available would have the status 'notReady'. + + All active entries with all possible information + complete would have the value 'active'." + ::= { ffHostCacheEntry 8 } + + +-- Cfa Fm Group +-- This group defines objects for Fault Management features. + + fmMemoryResourceTrapEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Permits the enabling and disabling of + fmLowMemoryResource Trap when a memory + allocation failure is encountered in the + module." + DEFVAL { true } + ::= { fm 1 } + + fmTimersResourceTrapEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Permits the enabling and disabling of + fmLowTimerResource Trap when a request + for a timer fails in the module." + DEFVAL { true } + ::= { fm 2 } + + fmTracingEnable OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Permits the enabling and disabling of + the generation of the log/trace messages + throughout the module. This object acts + as a Tracing Level Flag and specifies + the level of trace or log to be enabled in + the module." + DEFVAL { 0 } + ::= { fm 3 } + + fmMemAllocFailCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Maintains a count of the number of times + when a failure was encountered while memory + allocation operation in the module." + ::= { fm 4 } + + fmTimerReqFailCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Maintains a count of the number of times + when a failure was encountered while requesting + a timer in the module." + ::= { fm 5 } + + + -- Notifications or Traps + + trapPrefix OBJECT IDENTIFIER ::= { traps 0 } + + fmLowTimerResource NOTIFICATION-TYPE + OBJECTS { + fmTimerReqFailCount + } + STATUS deprecated + DESCRIPTION + "This trap is generated whenever there is a failure in + a timer related operation in the module. + + This trap is generated only when the value of the + fmTimersResouceTrapEnable object is TRUE(1)." + ::= { trapPrefix 1 } + + fmLowBufferResource NOTIFICATION-TYPE + OBJECTS { + fmMemAllocFailCount + } + STATUS deprecated + DESCRIPTION + "This trap is generated when a memory allocation + failure occurs in the module. This + trap is generated only when the value of the + fmMemoryResourceTrapEnable object is TRUE(1)." + ::= { trapPrefix 2 } + + ffStaticEntryInvalid NOTIFICATION-TYPE + OBJECTS { + ffHostCacheIfIndex, + ffHostCacheEntryType + } + STATUS deprecated + DESCRIPTION + "This trap is generated when a static entry + in the ffHostCacheTable becomes invalid + due to a route deletion or address resolution failure. This + trap is generated only when the value of the + ffStaticEntryInvalidTrapEnable object is TRUE (1)." + ::= { trapPrefix 3 } + + ifCreated NOTIFICATION-TYPE + OBJECTS { + ifMainIndex + } + STATUS current + DESCRIPTION + "This trap is generated when interface Row Status + is Active or interface is created." + ::= { trapPrefix 4 } + + ifDeleted NOTIFICATION-TYPE + OBJECTS { + ifMainIndex + } + STATUS current + DESCRIPTION + "This trap is generated when interface Row Status + is Destroy or interface is deleted." + ::= { trapPrefix 5 } + + + ifUfdEnabled NOTIFICATION-TYPE + OBJECTS { + ifMainIndex, + ifMainUfdOperStatus + } + STATUS current + DESCRIPTION + "This trap is generated when the interface's Uplink Failure + Detection(UFD) operational status is moved from UFD error + disabled to Up state" + ::= { trapPrefix 6 } + + ifUfdErrorDisabled NOTIFICATION-TYPE + OBJECTS { + ifMainIndex, + ifMainUfdOperStatus + } + STATUS current + DESCRIPTION + "This trap is generated when the interface's Uplink Failure + Detection(UFD) operational status is moved from Up to UFD + error disabled state" + ::= { trapPrefix 7 } + + -- Implementation of the of 64 bit Error Counters + + + ifHCErrorTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfHCErrorEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of interface entries. The number of entries is + given by the value of ifNumber. This table contains + additional objects for the interface table." + ::= { if 19 } + + ifHCErrorEntry OBJECT-TYPE + SYNTAX IfHCErrorEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing additional management information + applicable to a particular interface." + AUGMENTS { ifEntry } + ::= { ifHCErrorTable 1 } + + + IfHCErrorEntry ::= + SEQUENCE { + + ifHCInDiscards Counter64, + ifHCInErrors Counter64, + ifHCInUnknownProtos Counter64, + ifHCOutDiscards Counter64, + ifHCOutErrors Counter64 + } + + + ifHCInDiscards OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of inbound packets which were chosen to be + discarded even though no errors had been detected to prevent + their being deliverable to a higher-layer protocol. One + possible reason for discarding such a packet could be to + free up buffer space. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of ifCounterDiscontinuityTime. + This object is a 64-bit version of ifInDiscards" + ::= { ifHCErrorEntry 1 } + + ifHCInErrors OBJECT-TYPE + + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of inbound + packets that contained errors preventing them from being + deliverable to a higher-layer protocol. For character- + oriented or fixed-length interfaces, the number of inbound + transmission units that contained errors preventing them + from being deliverable to a higher-layer protocol. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of ifCounterDiscontinuityTime. + This object is a 64-bit version of ifInErrors" + ::= { ifHCErrorEntry 2 } + + ifHCInUnknownProtos OBJECT-TYPE + + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of packets + received via the interface which were discarded because of + an unknown or unsupported protocol. For character-oriented + or fixed-length interfaces that support protocol + multiplexing the number of transmission units received via + the interface which were discarded because of an unknown or + unsupported protocol. For any interface that does not + support protocol multiplexing, this counter will always be + 0. + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of ifCounterDiscontinuityTime. + This object is a 64-bit version of ifInUnknownProtos" + ::= {ifHCErrorEntry 3 } + + ifHCOutDiscards OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The number of outbound packets which were chosen to be + discarded even though no errors had been detected to prevent + their being transmitted. One possible reason for discarding + such a packet could be to free up buffer space. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of ifCounterDiscontinuityTime. + This object is a 64-bit version of ifOutDiscards" + ::= { ifHCErrorEntry 4 } + + ifHCOutErrors OBJECT-TYPE + SYNTAX Counter64 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "For packet-oriented interfaces, the number of outbound + packets that could not be transmitted because of errors. + For character-oriented or fixed-length interfaces, the + number of outbound transmission units that could not be + transmitted because of errors. + + Discontinuities in the value of this counter can occur at + re-initialization of the management system, and at other + times as indicated by the value of ifCounterDiscontinuityTime. + This object is a 64-bit version of ifHCOutErrors" + ::= { ifHCErrorEntry 5} + + ifSecurityBridging OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Enables or Disables Security for Bridged Packets globally." + DEFVAL { disabled } + ::= { if 20 } + + ifSetSecVlanList OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..512)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A string of octets containing one bit per VLAN. The + first octet corresponds to VLANs with VlanId values + 1 through 8; the second octet to VLANs 9 through + 16 etc. The most significant bit of each octet + corresponds to the lowest VlanId value in that octet. + Packets Bridged on these VLAN's should be Secured" + ::= { if 21 } + + ifResetSecVlanList OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..512)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A string of octets containing one bit per VLAN. The + first octet corresponds to VLANs with VlanId values + 1 through 8; the second octet to VLANs 9 through + 16 etc. The most significant bit of each octet + corresponds to the lowest VlanId value in that octet. + This is the set of vlans to dis-associate security + for Packets Bridged on these VLAN's" + + ::= { if 22 } + + ifSecIvrIfIndex OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "An Integer which Indicates the IfIndex of IVR Interface used in + Security Processing of Bridged Traffic " + ::= {if 23} + +-- ifAvailableIndexTable Table +-- This is to get the next available index for a given iftype + + ifAvailableIndexTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfAvailableIndexEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table returns the next available free interface + index for the given interface type" + ::= {if 24} + + ifAvailableIndexEntry OBJECT-TYPE + SYNTAX IfAvailableIndexEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This is an entry in the ifAvailableFreeIndex Table" + INDEX { ifType } + ::= { ifAvailableIndexTable 1 } + + IfAvailableIndexEntry ::= + SEQUENCE{ + ifAvailableFreeIndex InterfaceIndex + } + + ifAvailableFreeIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This is the next available free interfac index for a given ifType" + ::= { ifAvailableIndexEntry 1 } + + +-- Cfa Packet Analyser Group +-- This group defines objects for Packet Analyser + +-- This table is used for analysing the incoming packet and to increment +-- the counter if pattern is matching as per given input + + fsPacketAnalyserTable OBJECT-TYPE + SYNTAX SEQUENCE OF FsPacketAnalyserTable + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " This table is used by the Packet Analyser for + Pattern matching on particular ports" + ::= { pa 1 } + + fsPacketAnalyserEntry OBJECT-TYPE + SYNTAX FsPacketAnalyserTable + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing Pattern matching information + used by the Packet analyser" + INDEX { fsPacketAnalyserIndex } + ::= { fsPacketAnalyserTable 1 } + + FsPacketAnalyserTable ::= + SEQUENCE { + fsPacketAnalyserIndex Unsigned32, + fsPacketAnalyserWatchValue DisplayString, + fsPacketAnalyserWatchMask DisplayString, + fsPacketAnalyserWatchPorts PortList, + fsPacketAnalyserMatchPorts PortList, + fsPacketAnalyserCounter Counter32, + fsPacketAnalyserTime TimeTicks, + fsPacketAnalyserCreateTime TimeTicks, + fsPacketAnalyserStatus RowStatus + } + + fsPacketAnalyserIndex OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " An arbitrary integer value, greater than zero, + which uniquely identifies a pattern to be matched" + ::= { fsPacketAnalyserEntry 1 } + + fsPacketAnalyserWatchValue OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..1600)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " This represents the pattern which is to be matched + in the packet to be analysed by the packet analyser" + ::= { fsPacketAnalyserEntry 2 } + + fsPacketAnalyserWatchMask OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..1600)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " The mask for the pattern to be matched by the packet analyser" + ::= { fsPacketAnalyserEntry 3 } + + fsPacketAnalyserWatchPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Specifies the complete set of ports over which the pattern is + to be matched by the packet analyser" + ::= { fsPacketAnalyserEntry 4 } + + fsPacketAnalyserMatchPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Specifies the complete set of ports over which the pattern is + matched by the packet analyser" + ::= { fsPacketAnalyserEntry 5 } + + fsPacketAnalyserCounter OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " Number of times the pattern was matched over the watched ports" + ::= { fsPacketAnalyserEntry 6 } + + fsPacketAnalyserTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The value of sysUpTime when the pattern was last matched" + ::= { fsPacketAnalyserEntry 7 } + + fsPacketAnalyserCreateTime OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-only + STATUS current + DESCRIPTION + " The value of sysUpTime when the system was initiated" + ::= { fsPacketAnalyserEntry 8 } + + fsPacketAnalyserStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Specifies the Row Status for the entry in this table" + ::= { fsPacketAnalyserEntry 9 } + + fsPacketTransmitterTable OBJECT-TYPE + SYNTAX SEQUENCE OF FsPacketTransmitterTable + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " This table is used by the Packet Transmitter for + sending the packets on particular ports" + ::= { pa 2 } + + fsPacketTransmitterEntry OBJECT-TYPE + SYNTAX FsPacketTransmitterTable + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing Packet information + used by the Packet Transmitter" + INDEX { fsPacketTransmitterIndex } + ::= { fsPacketTransmitterTable 1 } + + FsPacketTransmitterTable ::= + SEQUENCE { + fsPacketTransmitterIndex Unsigned32, + fsPacketTransmitterValue DisplayString, + fsPacketTransmitterPort PortList, + fsPacketTransmitterInterval TimeTicks, + fsPacketTransmitterCount Unsigned32, + fsPacketTransmitterStatus RowStatus + } + + fsPacketTransmitterIndex OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " An arbitrary integer value, greater than zero, + which uniquely identifies a packet to be sent" + ::= { fsPacketTransmitterEntry 1 } + + fsPacketTransmitterValue OBJECT-TYPE + SYNTAX DisplayString (SIZE (0..1600)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " This represents the pattern which is to be sent + through the given port by the packet transmitter" + ::= { fsPacketTransmitterEntry 2 } + + fsPacketTransmitterPort OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Specifies the port over which the packet is to be sent by + the packet transmitter" + ::= { fsPacketTransmitterEntry 3 } + + fsPacketTransmitterInterval OBJECT-TYPE + SYNTAX TimeTicks + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " The Time interval for sending the packet over the port in seconds" + ::= { fsPacketTransmitterEntry 4 } + + fsPacketTransmitterCount OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Number of packet to be sent over the ports " + ::= { fsPacketTransmitterEntry 5 } + + fsPacketTransmitterStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Specifies the Row Status for the entry in this table" + ::= { fsPacketTransmitterEntry 6 } + +-- ifACTable +-- This table is used for the Attachment Circuit related +-- configurations. + + ifACTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfACEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of Attachment Circuit interface related + configurations. Attachment Circuit is a virtual interface + that is a combination of physical port and customer vlan + identifier or it is a virtual interface that contains + underlying physical port alone. + + This table is an extension to the ifMainTable. The index to + this table has the semantics of the ifMainIndex of the + ifMainTable." + ::= { if 25 } + + ifACEntry OBJECT-TYPE + SYNTAX IfACEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing AC-related information applicable + to attachment cirucit interface only." + INDEX { ifMainIndex } + ::= { ifACTable 1 } + + IfACEntry ::= + SEQUENCE { + ifACPortIdentifier InterfaceIndex, + ifACCustomerVlan VlanId + } + + ifACPortIdentifier OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This is the physical interface on which the attachment + circuit interface is present. The operational status of the + attachment circuit interface depends on this port's operational + status. That is if the operational status of ifACPortIdentifier's + is UP or DOWN, then the operational status of the AC interface + will be UP or DOWN respectively." + ::= { ifACEntry 1 } + + ifACCustomerVlan OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This is the customer vlan present for the attachment circuit + interface. This object alone can not determine the attachment + circuit interface. To determine that, this object should be together + present with the ifACPortIdentifier.This is the optional paramater." + ::= { ifACEntry 2 } + + + ifUfdSystemControl OBJECT-TYPE + SYNTAX INTEGER { + start(1), + shutdown(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative system control status of the Uplink Failure + Detection(UFD) module. + The value 'start' (1) indicates that the Uplink Failure + Detection(UFD) feature should be started in the system and all + resources required by Uplink Failure Detection(UFD) module should + be allocated. + The value 'shutdown' (2) indicates that the Uplink Failure + Detection(UFD) feature should be shutdown in the device and all + allocated memory must be released." + DEFVAL { shutdown } + ::= { if 26 } + + + ifUfdModuleStatus OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This read write objects gives actual status of the Uplink + Failure Detection(UFD). + When Uplink Failure Detection(UFD) is enabled, UFD starts + functioning. When the UFD is disabled all the dynamically + allocated memory will be freed and Uplink Failure Detection + (UFD) stops functioning." + DEFVAL { disabled } + ::= { if 27 } + + ifSplitHorizonSysControl OBJECT-TYPE + SYNTAX INTEGER { start(1), shutdown(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative system control status + requested by management for Split Horizon. + The value 'start' (1) indicates that all + resources required for split horizon + should be allocated and Split horizon + should be supported in the device on all + ports. The value 'shutdown' (2) indicates + that Split Horizon should be shutdown in + the device on all ports and all allocated + memory must be released." + DEFVAL { shutdown } + ::= { if 28 } + + ifSplitHorizonModStatus OBJECT-TYPE + SYNTAX + INTEGER { enabled(1), disabled(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The administrative module status requested + by management for Split Horizon.This + enables or disables Split horizon in the + system. A value of 'enabled'(1) indicates + that split horizon must be enabled in all the + ports in the system.A value of 'disabled' (2) + indicates that split horizon must be + disabled in all the ports in the system ." + DEFVAL { disabled } + ::= { if 29 } + + +-- ifUfdGroupTable +-- This table is used for the Uplink Failure Detection(UFD) Group information + + ifUfdGroupTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfUfdGroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains a list of all the Uplink Failure Detection + (UFD). Group entries in the system. + + This table is a extension to the ifMainTable. The index to this + table is the group id. Entries are created when the group id is + created in this table." + ::= { if 30 } + + ifUfdGroupEntry OBJECT-TYPE + SYNTAX IfUfdGroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry containing group information with + uplink/downlink port count and status of the group." + + INDEX { ifUfdGroupId } + ::= { ifUfdGroupTable 1 } + + IfUfdGroupEntry ::= + SEQUENCE { + ifUfdGroupId Integer32, + ifUfdGroupName DisplayString, + ifUfdGroupStatus INTEGER, + ifUfdGroupUplinkPorts PortList, + ifUfdGroupDownlinkPorts PortList, + ifUfdGroupDesigUplinkPort InterfaceIndex, + ifUfdGroupUplinkCount Integer32, + ifUfdGroupDownlinkCount Integer32, + ifUfdGroupRowStatus RowStatus + } + + ifUfdGroupId OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An identifier that uniquely identifies the + group Entry in this table." + ::= { ifUfdGroupEntry 1 } + + ifUfdGroupName OBJECT-TYPE + SYNTAX DisplayString (SIZE (1..32)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to identity the Uplink Failure Detection + (UFD) Group-name." + ::= { ifUfdGroupEntry 2 } + + ifUfdGroupStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), + down(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object for indicating the status of the group. + The group status can be set 'up' only when any one uplink + port is in admin and operationally 'UP' state in the group. + The group status can be set 'down' only when all uplink + ports within the group is in admin and operationally 'DOWN' or + none uplink ports assigned in the group." + DEFVAL { down } + ::= { ifUfdGroupEntry 3 } + + ifUfdGroupUplinkPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the complete set of uplink ports which are mapped with + group" + ::= { ifUfdGroupEntry 4 } + + ifUfdGroupDownlinkPorts OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the complete set of downlink ports which are mapped + with group" + ::= { ifUfdGroupEntry 5 } + + ifUfdGroupDesigUplinkPort OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "A port is termed as designated uplink when the port is connected + to the network and it has more preference to a particular set of + uplink ports. + + Broadcast/unknown multicast will use this designated port to + reach uplink." + + ::= { ifUfdGroupEntry 6 } + + ifUfdGroupUplinkCount OBJECT-TYPE + SYNTAX Integer32 (1..48) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A counter which indicates the number of + Uplink ports within the group" + ::= { ifUfdGroupEntry 7 } + + ifUfdGroupDownlinkCount OBJECT-TYPE + SYNTAX Integer32 (1..48) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A counter which indicates the number of + Downlink ports within the group" + ::= { ifUfdGroupEntry 8 } + + + ifUfdGroupRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object is used to manage creation and deletion of rows + in this Uplink Failure Detection(UFD) group table." + ::= { ifUfdGroupEntry 9 } + + ifLinkUpEnabledStatus OBJECT-TYPE + SYNTAX + INTEGER { enabled(1), disabled(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This enables or disables Link Up Delay functionality in the System. + A value of 'enabled'(1) indicates that, operational status of the + link is suspended for a configured delay time 'ifMainExtLinkUpDelayTimer'. + A value of 'disabled' (2) indicates that the operational status of the + link is not delayed and indicated to the higher layers immediately." + + DEFVAL { disabled } + ::= { if 31 } + +-- Secondary IP address configuration for OOB interface for local node and remote node + + ifOOBNode0SecondaryIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the secondary IP address associated with the + OOB interface of Node0" + DEFVAL { '00000000'H } + ::= { if 32 } + + ifOOBNode0SecondaryIpMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP Subnet Mask associted with the + secondary ip address of OOB interface in node0. + + If not specified, this object takes the default + subnet mask value based on the class of the IP + address configured for the interface." + ::= { if 33 } + + + + ifOOBNode1SecondaryIpAddress OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the secondary IP address associated with the + OOB interface of Node1 " + + DEFVAL { '00000000'H } + ::= { if 34 } + + ifOOBNode1SecondaryIpMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the IP Subnet Mask associted with the + secondary ip address of OOB interface in node1. + + If not specified, this object takes the default + subnet mask value based on the class of the IP + address configured for the interface." + ::= { if 35 } + +-- +-- Interface VLAN IP Table support +-- + +ifVlanIpTable OBJECT-TYPE + SYNTAX SEQUENCE OF IfVlanIpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains L3 interface attributes + that are used for manipulating entries in + various tables. + + ifVlanIpTable entry creation, modification and + deletion results in related actions being + performed for the ifMainTable and the ifIpTable. + Likewise, data returned through ifVlanIpTable + table queries is derived from these tables." + + ::= { if 36 } + +ifVlanIpEntry OBJECT-TYPE + SYNTAX IfVlanIpEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about the L3 interface settings + for a specific VLAN on the device." + + INDEX { ifVlanIpVlanId } + ::= { ifVlanIpTable 1 } + +IfVlanIpEntry ::= SEQUENCE { + ifVlanIpVlanId VlanId, + ifVlanIpIfIndex InterfaceIndex, + ifVlanIpAdminStatus INTEGER, + ifVlanIpAddrAllocMethod INTEGER, + ifVlanIpAddr IpAddress, + ifVlanIpSubnetMask IpAddress, + ifVlanIpRowStatus RowStatus +} + +ifVlanIpVlanId OBJECT-TYPE + SYNTAX VlanId + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "VLAN ID for the L3 interface specification." + + ::= { ifVlanIpEntry 1 } + +ifVlanIpIfIndex OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The ifIndex associated with the VLAN ID for + this L3 interface specification. An ifIndex + is automatically allocated when a new entry + is created. The ifIndex and related settings + are automatically deleted when an entry is + destroyed." + + ::= { ifVlanIpEntry 2 } + +ifVlanIpAdminStatus OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The desired state of the interface. This + attribute has similar semantics to the + ifAdminStatus object of the standard ifTable." + + DEFVAL { enabled } + ::= { ifVlanIpEntry 3 } + +ifVlanIpAddrAllocMethod OBJECT-TYPE + SYNTAX INTEGER { + manual(1), + dynamic(2) + } + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "The mechanism to be used for allocation of + the IPv4 address for this L3 VLAN interface." + + ::= { ifVlanIpEntry 4 } + +ifVlanIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies the IPv4 address assigned to + this L3 VLAN interface. + + A valid IpAddress value is required when + creating a new entry and the associated + address allocation method is 'manual'. A + zero IpAddress value is required when + creating a new entry and the associated + address allocation method is 'dynamic'." + + ::= { ifVlanIpEntry 5 } + +ifVlanIpSubnetMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Specifies the IPv4 address subnet mask + assigned to this L3 VLAN interface. + + A valid subnet mask value is required when + creating a new entry and the associated + address allocation method is 'manual'. A + zero subnet mask value is required when + creating a new entry and the associated + address allocation method is 'dynamic'." + + ::= { ifVlanIpEntry 6 } + +ifVlanIpRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object allows entries to be created, modified + and deleted in the ifVlanIpTable. Values 'createAndWait', + 'active' and 'destroy' are supported for Sets. + + The rowStatus value of the underlying ifMainEntry is + returned when entry data is queried. + + Entry creation requires data for all read-create + attributes to be specified with a 'createAndWait' + RowStatus value. + + The ifVlanIpAdminStatus is the only value that can + be modified in an existing entry. This action is + performed by specifying the requested admin status + with a 'active' RowStatus value. + + Table entries are deleted with a 'destroy' RowStatus. + No other attributes need to be specified for this + action to be performed." + + ::= { ifVlanIpEntry 10 } + +END diff --git a/mibs/cambium/cnmatrix/ARICENT-ISS-MIB b/mibs/cambium/cnmatrix/ARICENT-ISS-MIB new file mode 100644 index 000000000000..cc0cfff5006b --- /dev/null +++ b/mibs/cambium/cnmatrix/ARICENT-ISS-MIB @@ -0,0 +1,5052 @@ +-- Copyright (C) 2006-2012 Aricent Group . All Rights Reserved + +ARICENT-ISS-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, + Counter32,enterprises, IpAddress, Integer32, Unsigned32, NOTIFICATION-TYPE + FROM SNMPv2-SMI + InterfaceIndex FROM IF-MIB + RowStatus, TruthValue, DisplayString, + TEXTUAL-CONVENTION, MacAddress, StorageType FROM SNMPv2-TC + InetAddress, InetAddressType FROM INET-ADDRESS-MIB; + + iss MODULE-IDENTITY + LAST-UPDATED "202203310000Z" + ORGANIZATION "ARICENT COMMUNICATIONS SOFTWARE" + CONTACT-INFO "support@aricent.com" + DESCRIPTION + "The MIB for ISS." + + REVISION "202203310000Z" + DESCRIPTION + "The object issPortCtrlForceSpeed was added" + + REVISION "202201210000Z" + DESCRIPTION + "Was added object issHttpMaxSessions for setting HTTP max sessions" + + REVISION "202201120000Z" + DESCRIPTION + "The default value of MIB 'issLoginLockTime' was changed from 30 to 600." + + REVISION "201209050000Z" + DESCRIPTION + "The MIB for ISS." + + ::= { enterprises futuresoftware (2076) 81 } + + +PortList ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Each octet within this value specifies a set of eight + ports, with the first octet specifying ports 1 through + 8, the second octet specifying ports 9 through 16, etc. + Within each octet, the most significant bit represents + the lowest numbered port, and the least significant bit + represents the highest numbered port. Thus, each port + of the bridge is represented by a single bit within the + value of this object. If that bit has a value of '1' + then that port is included in the set of ports; the port + is not included if its bit has a value of '0'." + SYNTAX OCTET STRING + + +-- ----------------------------------------------------------------- -- +-- groups in the MIB +-- ----------------------------------------------------------------- -- + + issNotifications OBJECT IDENTIFIER ::= { iss 0 } + issSystem OBJECT IDENTIFIER ::= { iss 1 } + issConfigControl OBJECT IDENTIFIER ::= { iss 2 } + issMirror OBJECT IDENTIFIER ::= { iss 3 } + issRateControl OBJECT IDENTIFIER ::= { iss 4 } + issL2Filter OBJECT IDENTIFIER ::= { iss 5 } + issL3Filter OBJECT IDENTIFIER ::= { iss 6 } + issIpAuthMgr OBJECT IDENTIFIER ::= { iss 7 } + issExt OBJECT IDENTIFIER ::= { iss 8 } + issL4Switching OBJECT IDENTIFIER ::= { iss 9 } + issSystemTrap OBJECT IDENTIFIER ::= { iss 10 } + issAuditTrap OBJECT IDENTIFIER ::= { iss 11 } + issModule OBJECT IDENTIFIER ::= { iss 12 } + issSwitchFan OBJECT IDENTIFIER ::= { iss 13 } + issAclNp OBJECT IDENTIFIER ::= { iss 14 } + issAclTrafficControl OBJECT IDENTIFIER ::= { iss 15 } + issLogTrap OBJECT IDENTIFIER ::= { iss 16 } + issHealthCheckGroup OBJECT IDENTIFIER ::= { iss 17 } + +-- ---------------------------------------------------------------- -- + +-- System Group + +-- System Information + +issSwitchName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..15)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "System name used for identification of the device." + DEFVAL { "ISS" } + ::= { issSystem 1 } +issHardwareVersion OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..15)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Version number of the Hardware." + DEFVAL { "" } + ::= { issSystem 2 } +issFirmwareVersion OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..15)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Version number of the Firmware." + DEFVAL { "" } + ::= { issSystem 3 } + +issDefaultIpAddrCfgMode OBJECT-TYPE + SYNTAX INTEGER { + manual(1), + dynamic(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the means by which the default interface in the device + gets the IP address. + + If 'manual' mode is selected, the default interface takes the + 'issDefaultIpAddr' configured in the system. + + If 'dynamic' mode is selected, the default interface gets the IP address + through dynamic IP address configuration protocols such as RARP client, + BootP client, DHCP Client, etc. + + If the system fails to get the IP address dynamically through all the + above protocols, the default interface uses the 'issDefaultIpAddr' + configured in the system." + DEFVAL { manual } + ::= { issSystem 4 } + +issDefaultIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Default IP Address of the system. + + This IP address, if modified, will take effect only when the + configuration is stored & restored." + ::= { issSystem 5 } + +issDefaultIpSubnetMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "IP subnet mask for the default IP address. + + This subnet mask, if modified, will take effect only when the + configuration is stored & restored." + ::= { issSystem 6 } + +issEffectiveIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Effective IP address of the switch to be used for contacting + through SNMP interface or web interface. + + This IP address will be same as the default IP address if the + device fails to get the IP address dynamically or the + 'DefaultIpAddrCfgMode' is 'manual'. + + This IP address will be different from the default IP address + if the device manages to get the IP address dynamically. + + In either condition, this is the effective IP address to be + used for contacting the switch." + ::= { issSystem 7 } + +issDefaultInterface OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..24)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Name of the default interface that can be used for + communicating with the system for configuration through SNMP + or WebInterface. + + The default interface, if modified, will take effect only when + the configuration is stored & restored." + DEFVAL { "eth0" } + ::= { issSystem 8 } + +issRestart OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object allows the user to restart the Switch + (i.e)the entire switch will operationally go down and + start again. Setting a value of 'true' causes the switch + to be restarted. + + When the switch operationally goes down, configuration + save operation is initiated based on the configuration save + option chosen. + + When the switch operationally come up, the saved configurations + are restored based on the restore option chosen. + + Once the switch is restarted, the value of this object reverts + to 'false'." + DEFVAL { false } + ::= { issSystem 9 } + +-- Configurtion Save related configuration / information + +issConfigSaveOption OBJECT-TYPE + SYNTAX INTEGER { + noSave(1), + flashSave(2), + remoteSave(3), + startupConfig(4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies whether the configurations of the switch has to be + saved or not. + + The value 'noSave' specifies that the configurations need + not be saved. + + The value 'flashSave' specifies that the configurations need + to be saved in flash in the specified file name issConfigSaveFileName. + + The value 'remoteSave' specifies that the configurations need + to be saved in specified remote system. + + The value 'startupConfig' specifies that the configurations need + to be saved in flash in the 'Startup Configuration File'. + + When the issConfigIncrSaveFlag and the issConfigAutoSaveTrigger are set + as true then the default value of issConfigSaveOption is startupConfig. + When issConfigIncrSaveFlag is set as false or when + issConfigAutoSaveTrigger is set as false then the default value of + issConfigSaveOption is noSave." + DEFVAL { noSave } + ::= { issSystem 10 } + +issConfigSaveIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "IP Address of the remote system to which the switch + configurations have to be saved. + + This object is valid only if 'issConfigSaveOption' is chosen to be + 'remoteSave'. This object is deprecated, as this object supports only + IPv4, this IP can be set through issConfigSaveIpvxAddr object and object + issConfigSaveIpvxAddrType will be set to 1 i.e. IPv4" + ::= { issSystem 11 } + +issConfigSaveFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Name of the file in which the switch configurations are + to be saved. + + This object is valid only if 'issConfigSaveOption' is chosen + to be 'flashSave' or 'remoteSave'." + DEFVAL { "iss.conf" } + ::= { issSystem 12 } + +issInitiateConfigSave OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When set as 'true' switch configurations save operation is + initiated. + As soon as the configuration save operation is completed, the value + of this object reverts back to 'false'. + + All the configurations made via the three interfaces + viz. + -> commandline interface + -> Web Interface + -> SNMP interface + are saved either in 'Startup Configuration File' in the flash or + in the specified 'issConfigSaveFileName' in the flash or + in the chosen remote system, depending upon 'ConfigSaveOption'." + DEFVAL { false } + ::= { issSystem 13 } + +issConfigSaveStatus OBJECT-TYPE + SYNTAX INTEGER { + saveInProgress(1), + saveSuccessful(2), + saveFailed(3), + notInitiated(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of configuration save operation." + DEFVAL { notInitiated } + ::= { issSystem 14 } + + +-- Configuration Restoration related configuration / information + +issConfigRestoreOption OBJECT-TYPE + SYNTAX INTEGER { + noRestore(1), + restore(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies whether the switch configurations have to be restored + or not. + + The value 'noRestore' specifies that the switch configurations + need not be restored when the system is restarted. + + The value 'restore' specifies that the configurations + need to be restored from the 'Startup Configuration File' in the flash + when the system is restarted." + DEFVAL { noRestore } + ::= { issSystem 15 } + +issConfigRestoreIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "IP Address of the remote system from where the switch configurations + have to be downloaded to the 'Startup Configuration File' in the flash. + This object is deprecated, as this object supports only IPv4, + this IP can be set through issConfigRestoreIpvxAddr object and object + issConfigRestoreAddrType will be set to 1 i.e. IPv4" + ::= { issSystem 16 } + +issConfigRestoreFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The configuration file name in the remote system which has to be + downloaded to the 'Startup Configuration File' in the flash." + DEFVAL { "iss.conf" } + ::= { issSystem 17 } + +issInitiateConfigRestore OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When set as 'true', the switch configurations will be downloaded + from the specified remote system to the 'Startup Configuration File' + in the flash. + + As soon as the configuration download operation is completed, the value + of this object reverts back to 'false'." + + DEFVAL { false } + ::= { issSystem 18 } + + +issConfigRestoreStatus OBJECT-TYPE + SYNTAX INTEGER { + restoreInprogress(1), + restoreSuccessful(2), + restoreFailed(3), + notInitiated(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The status of the switch configuration restore operation." + DEFVAL { notInitiated } + ::= { issSystem 19 } + + +-- Image Downloading related configuration / information + +issDlImageFromIp OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The Ip Address of machine from where the image has to be downloaded. + This object is deprecated, as this object supports only + IPv4, this IP can be set through issDlImageFromIpvxAddr object and object + issDlImageFromIpAddrType will be set to 1 i.e. IPv4" + ::= { issSystem 20 } + +issDlImageName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The image name which is to be downloaded to the switch." + DEFVAL { "iss.exe" } + ::= { issSystem 21 } + +issInitiateDlImage OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Initiates the Image Download operation." + ::= { issSystem 22 } + + + +-- Event logging related configuration / information + +issLoggingOption OBJECT-TYPE + SYNTAX INTEGER { + console(1), + file(2), + flash(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Logging option specifying whether the logging is to be + done at console or to a file(system buffer) in the system. + Flash specifies the logging of traces into a file." + DEFVAL { console } + ::= { issSystem 23 } + +issUploadLogFileToIp OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The Ip Address of machine to which the log file is to be uploaded. + This object is deprecated, as this object supports only + IPv4, this IP can be set through issUploadLogFileToIpvxAddr object and + object issUploadLogFileToAddrType will be set to 1 i.e. IPv4" + ::= { issSystem 24 } + +issLogFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The file name to be used for uploading the logs from 'file' to the + remote system. + + This object is useful only when the 'LogOption' is chosen as 'file'." + DEFVAL { "iss.log" } + ::= { issSystem 25 } + +issInitiateUlLogFile OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Initiates uploading of Log File to the specified IP address in + 'issUploadLogFileToIp'. + + The logs will be uploaded in the specified 'issLogFileName'." + ::= { issSystem 26 } + +-- Remote save status + +issRemoteSaveStatus OBJECT-TYPE + SYNTAX INTEGER { + inprogress(1), + successful(2), + failed(3), + notInitiated(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of remote save operation. + + The remote save operation could be a + a) configuration file save to remote system + b) log file upload to remote system." + DEFVAL { notInitiated } + ::= { issSystem 27 } + +-- Download status + +issDownloadStatus OBJECT-TYPE + SYNTAX INTEGER { + inprogress(1), + successful(2), + failed(3), + configDefaultNeeded(4), + configDefaultInProgress(5), + configDeafultAborted(6), + notInitiated(7) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The status of the Image download operation to the switch." + DEFVAL { notInitiated } + ::= { issSystem 28 } + +issSysContact OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..50)) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The textual identification of the contact person for this + managed node, together with information on how to contact + this person. If no contact information is known, the value + is the zero-length string." + ::= { issSystem 29 } + +issSysLocation OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..50)) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The physical location of this node (e.g., `telephone + closet, 3rd floor'). If the location is unknown, the value + is the zero-length string." + ::= { issSystem 30 } + +-- Login Authentication mechanism + +issLoginAuthentication OBJECT-TYPE + SYNTAX INTEGER { + local(1), + remoteRadius(2), + remoteTacacs(3), + radiusFallbackToLocal(4), + tacacsFallbackToLocal(5), + ldap(6) + + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configures the mechanism by which the user login has to be authenticated + for accessing the GUI to manage the switch. Authentication is done + either locally or in the remote side through a RADIUS Server or TACACS. + If Authentication is configured as radiusLocal or tacacsLocal then + Local authentication provides a back door or a secondary option + for authentication if the server fails." + + DEFVAL { local } + ::= { issSystem 31 } + +issSwitchBaseMacAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Ethernet address (base address) of the Switch. + This base Mac Address, if modified, will take effect only when the + Switch is restarted." + + DEFVAL { '000102030405'h } + ::= { issSystem 32 } + + + +-- OOB Interface Existence + +issOOBInterface OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates wheteher OOB Interface Exists in the System" + ::= { issSystem 33 } + + + + issSwitchDate OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..40)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + + " The date is configured in the switch in the format, + Hours:Minutes:Seconds Day Month Year + e.g 19:10:31 11 08 2005 + + 01-12 Month - beginning from January to December + The railway time 00 to 24 hours can be configured and + displayed. + The Display of the date is in the format , + WeekDay Month Day Hours:Minutes:Seconds Year + e.g 04 09 21 18:11:30 2005 + + 01-07 WeekDay - beginning from Sunday to Saturday + 01-12 Month - beginning from January to December " + + ::= { issSystem 34 } + +issNoCliConsole OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether the CLI console prompt will be made available + to the user for the session through serial console. When set to + TRUE CLI prompt will be available in serial console, when set to + FALSE CLI prompt will NOT be available in serial console session, + for the value to take effect, the switch must be restarted, + the value does not affect the availability of ISS CLI prompt in + sessions established through Telnet." + ::= { issSystem 35 } + +issDefaultIpAddrAllocProtocol OBJECT-TYPE + SYNTAX INTEGER { + rarp(1), + dhcp(2), + bootp(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the protocol to be used to obtain IP address for this + interface. This object is valid only when issDefaultIpAddrCfgMode + is set to dynamic (2). Currently rarp (1) option is not supported." + DEFVAL { dhcp } + ::= { issSystem 36 } + +issHttpPort OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The port to be used by the hosts/PC to configure ISS using the Web Interface. + The HTTP server must be disabled before this configuration is done" + DEFVAL { 80 } + + ::= { issSystem 37 } + +issHttpStatus OBJECT-TYPE + SYNTAX INTEGER { + enable(1), + disable(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for enabling or disabling HTTP in the system." + + DEFVAL { enable } + ::= { issSystem 38 } + +issConfigRestoreFileVersion OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..12)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Config Restoration file version. This version will be compared in each + reboot against version stored in restoration file. Restoration + will occur only if the first field in restoration file is this OID and the + RestoreFileVersion value also matches." + ::= { issSystem 39 } + +issDefaultRmIfName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..23)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Name of the default RM interface that can be used for + communication between the Active and Standby nodes for + providing redundancy support.The default RM interface, + if modified, will take effect only when the switch is + restarted" + DEFVAL { "NONE" } + ::= { issSystem 40 } + +issDefaultVlanId OBJECT-TYPE + SYNTAX Integer32 (1..4094) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Default VLAN Identifier to be used at system startup. + The VLAN Module creates this vlan as the default vlan. + The Default VLAN Identifier, if modified, will take effect + only when the switch is restarted. + + It is not advisable to change the default VLAN ID when some + configurations are already saved. + + Once the Default VLAN Id is configured, the switch has to + be restarted before saving any configuration. + " + DEFVAL { 1 } + ::= { issSystem 41 } + +issNpapiMode OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..15)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Mode of NPAPI Processing. It can be + 1. Synchronous, 2. Asynchronous." + DEFVAL { "Synchronous" } + ::= { issSystem 42 } + + +issConfigAutoSaveTrigger OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When set as 'true', automatic save operation is enabled. i.e., every + configuration is saved automatically. + When set as 'false', automatic save operation is disabled. i.e., + configuration done will not be save automatically. + IncrSave is ON : auto save can be enabled /disabled in the system. + IncrSave is OFF : auto save can be enabled /disabled in the system, + No effect in the system behaviour(in this case no + update trigger is generated towards MSR). + ============================================================================ + issConfig issConfig + incrSaveFlag AutoSaveOption Behaviour + ============================================================================ + TRUE TRUE Data is added to RB Tree and based on save option + data is added to remote/local incremental file. + + TRUE FALSE Data is added to RB tree only. + + FALSE xx in this case no update trigger is generated towards + MSR. + ============================================================================ + + To enable issConfigAutoSaveTrigger, the issConfigIncrSaveFlag has to be + enabled. + The configuration update to issConfigIncrSaveFlag will become applicable + only after switch restart. + When issConfigIncrSaveFlag is enabled, the configuration of + issConfigAutoSaveTrigger will be immediately reflected in the system. + + " + + DEFVAL { false } + ::= { issSystem 43 } + +issConfigIncrSaveFlag OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether SNMP Update Trigger for Incremental Save shall be generated or not. + 'True' value implies that the update trigger shall be generated each time a nmhSet + operation is successful. + 'False' value implies that the update trigger shall not be generated at all. + + Following table explains the combinations of various configurations + ============================================================================ + issConfig issConfig issConfig + IncrSaveFlag AutoSaveTrigger SaveOption Behaviour + ============================================================================ + TRUE TRUE Remote Save tftp to remote (on every update trigger) + TRUE FALSE Remote Save tftp to remote (operator triggered) + FALSE xx Remote Save tftp to remote (operator triggered) + TRUE TRUE Flash Save save to local (on every update trigger) + TRUE FALSE Flash Save save to local (operator triggered) + FALSE xx Flash Save save to local (operator triggered) + TRUE TRUE No Save Data added to RB Tree + TRUE FALSE No Save Data added to RB Tree + FALSE xx No Save No Update trigger is sent to MSR + ============================================================================ + + The configuration of the issConfigIncrSaveFlag object from true to false + or vice versa will be used only after switch restart. + + As the auto save of configurations cannot be used when the + issConfigIncrSaveFlag is set to false, the issConfigAutoSaveTrigger + has to be set to false before setting the issConfigIncrSaveFlag + to false." + DEFVAL { false } + ::= { issSystem 44 } + + +issConfigRollbackFlag OBJECT-TYPE + SYNTAX INTEGER { + disabled(1), + enabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether SNMP Rollback feature is enabled or disabled. + + 'enabled' value implies that failure in set operation for any varbind will result in rollback of all varbinds whose value has been set in this SET PDU + + 'disabled' value implies that failure in set operation will simply return error." + DEFVAL { enabled } + ::= { issSystem 45 } + +issConfigSyncUpOperation OBJECT-TYPE + SYNTAX INTEGER { + syncup(1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates that sync operation is to be performed. + Incremental save OFF: RB tree, incremental file/buffer are not present in + the system, sync operation is not allowed in the system. + Incremental save ON : On receiving this event, MSR deletes the data present + in the RB tree and configuration data at MSR shall be + made In sync with data store at protocols. + + Following table explains the combinations of various configurations + ============================================================================ + issConfig issConfig + IncrSaveFlag SaveOption Behaviour + ============================================================================ + TRUE Remote Save RB Tree data made in sync with the data stored + at protocols, same data Is updated at remote + system, incremental file (at remote) is emptied. + + TRUE Local Save RB Tree data made in sync with the data stored at + protocols, same data Is updated in local + configuration file and incremental file + (issinc.conf) is emptied. + + FALSE xx Event is not allowed in the system, + MSR returns failure. + ============================================================================" + + DEFVAL { syncup } + ::= { issSystem 46 } + +issFrontPanelPortCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The object defines the number of physical ports configured + in a device for the purpose of switching/routing. The value + of the object should not exceed system defined MAX physical + interfaces, when the configured value is less than the MAX + physical interfaces, the difference in port count shall be + used for stacking purpose only when the stacking object + issColdStandbyStacking is enabled else the ports are considered + as physically not present and would not be initialized. + + It is not advisable to change the Front panel port count when some + configurations are already saved. + + Once the Front panel port count is configured, the switch has to + be restarted before saving any configuration." + + ::= { issSystem 47 } + +issAuditLogStatus OBJECT-TYPE + SYNTAX INTEGER { enable (1) , disable(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION "To Enable or disable Audit Logging" + DEFVAL { disable } + + ::= { issSystem 48 } + +issAuditLogFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION "The name of the file to which Audit log is saved" + DEFVAL { "config.txt" } + + ::= { issSystem 49 } + +issAuditLogFileSize OBJECT-TYPE + SYNTAX Unsigned32 (1024 .. 1048576) + MAX-ACCESS read-write + STATUS current + DESCRIPTION "This is the maximum file size in bytes of the config.txt file" + DEFVAL { 1048576 } + + ::= { issSystem 50 } +issAuditLogReset OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION "Setting this to true ,erases the contents in configs.txt + fileand start logging" + DEFVAL { false } + ::= { issSystem 51 } + +issAuditLogRemoteIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION "IP Address of the remote system to which the + Audit file has to be transfered from flash. + This object is deprecated, as this object supports only + IPv4, this IP can be set through issAuditLogRemoteIpvxAddr object + and object issAuditLogRemoteAddrType will be set to 1 i.e. IPv4" + ::= { issSystem 52 } + +issAuditLogInitiateTransfer OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION "Setting this will start transfer of the file indicated by + issAuditLogFileName from flash + to remote Address mentioned by issAuditLogRemoteIpAddr" + DEFVAL { false } + ::= { issSystem 53 } +issAuditTransferFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION "The name of the file to be retrieved from flash" + DEFVAL { "config.txt" } + + ::= { issSystem 54 } + +issDownLoadTransferMode OBJECT-TYPE + SYNTAX INTEGER { + tftp (1), + sftp (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "To select the Transfer mode for downloading image." + DEFVAL { tftp } + ::= { issSystem 55 } + +issDownLoadUserName OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting User name required for downloading + image. When Transfer Mode is selected as tftp, contents of this + mib-object becomes irrelevant." + ::= { issSystem 56 } + +issDownLoadPassword OBJECT-TYPE +SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting password required for downloading + image. When Transfer Mode is selected as tftp, contents of this + mib-object becomes irrelevant." + ::= { issSystem 57 } + +issUploadLogTransferMode OBJECT-TYPE + SYNTAX INTEGER { + tftp (1), + sftp (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "To select the Transfer mode for uploading log file." + DEFVAL { tftp } + ::= { issSystem 58 } + + +issUploadLogUserName OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting User name required for uploading + log file. When Transfer Mode is selected as tftp, contents of this + mib-object becomes irrelevant." + ::= { issSystem 59 } + +issUploadLogPasswd OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting password required for uploading log file. + When Transfer Mode is selected as tftp, contents of this mib-object becomes + irrelevant." + ::= { issSystem 60 } + +issConfigSaveTransferMode OBJECT-TYPE + SYNTAX INTEGER { + tftp (1), + sftp (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "To select the Transfer mode for saving the configurations on to a + remote system. Contents of this mib is relevant only when + issConfigSaveOption is remote save." + DEFVAL { tftp } + ::= { issSystem 61 } + +issConfigSaveUserName OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting User name required for saving + configurations onto a remote site. Contents of this mib is relevant only + when issConfigSaveOption is remote save and issConfigSaveTransferMode is + SFTP." + ::= { issSystem 62 } + +issConfigSavePassword OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..20)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This mib-object is used for setting Password required for saving + configurations onto a remote site. Contents of this mib is relevant + only when the value of issConfigSaveOption is remote save and + issConfigSaveTransferMode is SFTP." + ::= { issSystem 63 } + +issSwitchMinThresholdTemperature OBJECT-TYPE + SYNTAX Integer32 (-15..30) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the minimum threshold temperature of the switch in celsius. + When the current temperature drops below the threshold, + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 10 } + ::= { issSystem 64 } + +issSwitchMaxThresholdTemperature OBJECT-TYPE + SYNTAX Integer32 (35..40) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the maximum threshold temperature of the switch in celsius. + When the current temperature rises above the threshold, + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 40 } + ::= { issSystem 65 } + +issSwitchCurrentTemperature OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the current temperature of the switch in celsius." + + ::= { issSystem 66 } + +issSwitchMaxCPUThreshold OBJECT-TYPE + SYNTAX Integer32 (1..100) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the maximum CPU usage of the switch in percentage. + When CPU load exceeds the threshold value, + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 95 } + ::= { issSystem 67 } + +issSwitchCurrentCPUThreshold OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the current CPU threshold of the switch in percentage" + + ::= { issSystem 68 } + +issSwitchPowerSurge OBJECT-TYPE + SYNTAX Integer32 (1..255) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the maximum power supply of the switch in volts. + When the current voltage exceeds the threshold value, + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 230 } + ::= { issSystem 69 } + +issSwitchPowerFailure OBJECT-TYPE + SYNTAX Integer32 (1..255) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the minimum power supply of the switch in volts. + When the current voltage drops below the threshold value, + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 100 } + ::= { issSystem 70 } + +issSwitchCurrentPowerSupply OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the current power supply in volts." + + ::= { issSystem 71 } + +issSwitchMaxRAMUsage OBJECT-TYPE + SYNTAX Integer32 (1..100) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the maximum RAM usage of the switch in percentage. + When the RAM usage crosses the threshold percentage + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 90 } + ::= { issSystem 72 } + +issSwitchCurrentRAMUsage OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the current RAM usage of the switch in percentage" + + ::= { issSystem 73 } + +issSwitchMaxFlashUsage OBJECT-TYPE + SYNTAX Integer32 (1..100) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates the maximum flash usage of the switch in percentage. + When the flash usage crosses the threshold percentage + an SNMP trap with maximum severity will be sent to the manager." + + DEFVAL { 95 } + ::= { issSystem 74 } + +issSwitchCurrentFlashUsage OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the current flash usage of the switch in percentage" + + ::= { issSystem 75 } + + +issConfigRestoreFileFormatVersion OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..12)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Config Save Restoration file format Version.This issConfigRestoreFile + FormatVersion value will be compared in each reboot against file format + version value stored in restoration file.Restoration will occur only if + the Restore file format version OID in restoration file matches this + OID and the value of Restore file format version field in restoration + file matches this OID's value. + + The current value of this issConfigRestoreFileFormatVersion is 1.1. + If any change happens in Restore File Format,then the value of this object + will be updated like this 1.2,1.3,1.4,1.5,...." + + ::= { issSystem 76 } + +issDebugOption OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..288)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object stores the trace option string input given by the user. + To enable particular trace the user has to enter + the corresponding string(given below) assigned for that. + And for enabling more than once traces the user has to enter the + corresponding strings with SPACE delimiter between each string. + enable - Enables the corresponding option. + disable - Disables the corresponding option. + init-shut - Init and Shutdown traces + failure - All Failure Traces + func-entry-exit - Funtion entry and exit + for example to enable init-shut and failure trace the input string + should be enable init-shut failure" + ::= { issSystem 77 } + +issConfigDefaultValueSaveOption OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Indicates whether default values needs to be saved or not when + incremental save option is true.'enabled' value implies, MSR stores + default values also when Incremental save is true.'disabled' value + implies, MSR does not store default values when Incremental save is + true. + + Configuring this object value will update in issnvram.txt file. + The configured value will get into effect only after rebooting the ISS." + + DEFVAL { disabled } + + ::= { issSystem 78 } + +issConfigSaveIpAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the address type of the remote system to which + the switch configurations have to be saved.The address type can be + IPv4 or IPv6 unicast address or DNS. + + This object is valid only if 'issConfigSaveOption' is chosen to be + 'remoteSave'." + ::= { issSystem 79 } + +issConfigSaveIpvxAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the IP Address of the remote system to which the switch + configurations have to be saved. It supports DNS host name + when 'issConfigSaveIpAddrType' is of DNS Type. + + This object is valid only if 'issConfigSaveOption' is chosen to be + 'remoteSave'." + ::= { issSystem 80 } + +issConfigRestoreIpAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the IP Address type of the remote system from where + the switch configurations have to be downloaded to the + 'Startup Configuration File' in the flash. + The address type can be IPv4 or IPv6 unicast address or DNS." + ::= { issSystem 81 } + +issConfigRestoreIpvxAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the IP Address of the remote system from where + the switch configurations have to be downloaded to the + 'Startup Configuration File' in the flash. + The address type can be IPv4 or IPv6 unicast address or DNS type." + ::= { issSystem 82 } + +issDlImageFromIpAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the address type of machine from where the image + has to be downloaded. The address type can be IPv4 or IPv6 + unicast address or DNS." + ::= { issSystem 83 } + +issDlImageFromIpvx OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The IP Address of machine from where the image has to be downloaded." + ::= { issSystem 84 } + +issUploadLogFileToIpAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the address Type of machine to which the log file is + to be uploaded.The address type can be IPv4 or IPv6 unicast address or DNS." + ::= { issSystem 85 } + +issUploadLogFileToIpvx OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the address type of machine to which the log file is to be uploaded." + ::= { issSystem 86 } + +issAuditLogRemoteIpAddrType OBJECT-TYPE + SYNTAX InetAddressType + MAX-ACCESS read-write + STATUS current + DESCRIPTION "IP Address Type of the remote system to which the + Audit file has to be transfered from flash." + ::= { issSystem 87 } + +issAuditLogRemoteIpvxAddr OBJECT-TYPE + SYNTAX InetAddress + MAX-ACCESS read-write + STATUS current + DESCRIPTION "IP Address of the remote system to which the + Audit file has to be transfered from flash." + ::= { issSystem 88 } + +-- Set System Timer speed configuration + +issSystemTimerSpeed OBJECT-TYPE + SYNTAX Unsigned32 (1..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION "Configures the system timer speed. This is for testing purpose. + Value - 1 enables the timer to run in real time speed. + Values from (2 - 1000), enables the timer to run + (2x - 1000x) faster." + ::= { issSystem 89 } + +issMgmtInterfaceRouting OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " Enables / Disables Routing over the Management Interface. + + This object can be configured only if the Management Port + is used for IP Access. " + + DEFVAL { disabled } + + ::= { issSystem 90 } + +issMacLearnRateLimit OBJECT-TYPE + SYNTAX Integer32 (0..2147483647) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Maximum number of unicast dynamic MAC (L2) entries hardware can learn + in the system, in a configured time interval 'issMacLearnRateLimitInterval'. + In next subsequent time interval, hardware can learn number of previously + learnt MAC entries plus present 'issMacLearnRateLimit' value, this + cycle will continue until MAC learning reaches to maximum number of L2 + unicast dynamic entries learning capacity of the system. If rate limit is + changed while 'issMacLearnLimitRateInterval' timer is running, new rate + limit value takes effect on next timer restart. + + This limit is to control the number of MAC entries indication to control + plane from hardware, when hardware MAC learning is enabled. + + Configuration value '0' disables this feature in the system. + This configuration does not impose any restrictions on multicast/broadcast + and dynamic/static/protocol(MMRP) MAC learning capability limits." + DEFVAL { 1000 } + ::= { issSystem 91 } + +issMacLearnRateLimitInterval OBJECT-TYPE + SYNTAX Unsigned32 (1..100000) + UNITS "milliseconds" + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Number of MAC entries,'issMacLearnRateLimit' that can be learnt in + the system in this configured time interval. Any changed timer interval + value will take effect in next timer restart." + DEFVAL { 1000 } + ::= { issSystem 92 } + +issVrfUnqMacFlag OBJECT-TYPE + SYNTAX INTEGER { + disable (0), + enable (1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Unique mac address can be assigned to each virtual router by enabling + this flag. Configuring this object value will result in updation to + issnvram.file. The configured value will take effect in ISS on next reboot." + + DEFVAL { disable } + ::= {issSystem 93} + +issLoginAttempts OBJECT-TYPE + SYNTAX Integer32(1..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Number of times a user may be allowed to login using + wrong password in the login prompt." + DEFVAL {3} + ::= {issSystem 94} + +issLoginLockTime OBJECT-TYPE + SYNTAX Integer32(30..900) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time in seconds a user is blocked following unsuccessful logins." + DEFVAL {600} + ::= {issSystem 95} + +issAuditLogSizeThreshold OBJECT-TYPE + SYNTAX Unsigned32 (1..99) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This is the threshold value of the Log storage space with respect + to the maximum Log Storage Space. It is entered as a percentage value." + DEFVAL { 70 } + ::= { issSystem 96} + + +issTelnetStatus OBJECT-TYPE + SYNTAX INTEGER { + enable(1), + disable(2), + enableInProgress(3), + disableInProgress(4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for enabling or disabling the TELNET in the system. + Set operation of enable will move this object to the enableInProgress + first then to the enable on successfull transition. Otherwise it will + move back to the old state. Same applies to the disable also. + + CAUTION: enableInProgress and disableInProgress are not admin + configurable values" + DEFVAL { enable } + ::= { issSystem 97 } + +issWebSessionTimeOut OBJECT-TYPE + SYNTAX Integer32 (1..300) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Set the Web Session Time Out Value in Seconds" + DEFVAL { 300 } + ::= { issSystem 98 } + +issWebSessionMaxUsers OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Set the maximum number of web sessions" + DEFVAL { 7 } + ::= { issSystem 99 } + +issHeartBeatMode OBJECT-TYPE + SYNTAX INTEGER { + internal (1), + external (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The object is for setting the method for Redundancy manager election + mechanism, it can be internal election logic or it can be a external + logic. When this object is set to be internal, proprietary + election logic called as HearBeat mechanism is applied for electing the + Active/Standby card in a redundant systems. When this object is set + to be external, external election logic should be applied for electing + Active/Standby card in a redundant systems. + + By default this object is set to Internal." + DEFVAL { internal } + ::= {issSystem 100} + +issRmRType OBJECT-TYPE + SYNTAX INTEGER { + hot (1), + cold(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The object is for setting the type of the Redundancy manager, it can be + Hot or Cold. When this object is set to be cold, whenever there is node + state transition from Standby to Active, the node needs to re-start, + re-initialized the hardware completely. When this object is set to be + Hot, whenever there is node state transition from Standby to Active, + the hardware should not be re-initialized. When the configurations are + saved in a file in Active node, then this needs to be transferred to + the standby node in both the redundancy modes. + + By default this is set to Hot." + DEFVAL { hot } + ::= {issSystem 101} + +issRmDType OBJECT-TYPE + SYNTAX INTEGER { + shared (1), + separate (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the type of the dataplane/hardware, it can be a + shared dataplane or a separate dataplane. When this object is set to + be shared, standby card in a redundancy system should not program the + hardware and hardware audit should be conducted to sync the hardware + and software after switchover/node-transition. When this object is set + to be separate, it specifies that the nodes have separate hardware, + therefore standby card in a redundant system should program the + hardware and hardware audit is not required, since the hardware and + software are in sync always. + + By default this is set to Shared." + DEFVAL { shared } + ::= {issSystem 102} + +issClearConfig OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When the object is set to TRUE, configurations will be cleared and + default configurations will be restored. The value will be reset to + FALSE again." + + DEFVAL { false } + ::= { issSystem 103 } + +issClearConfigFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This is the name of the file, which contains the default configurations + to be restored once configurations are cleared. This is optional. When + this file name is given, configurations in this file are assumed to be + default configurations. This configuration will be restored once the + configurations are cleared in ISS data base. When this file name is not + given, default configurations will not be restored. Only default + interface and VLAN will be brought up for management connectivity. + + When default configurations are to be restored, this object should be + configured first before configuring the issClearConfig object." + + DEFVAL { "clear.conf" } + ::= { issSystem 104 } + +issTelnetClientStatus OBJECT-TYPE + SYNTAX INTEGER { + disabled(0), + enabled(1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for enabling or disabling the TELNET client functionality + in the system. Set operation of enable will allow to establish new Telnet + client sessions. Set operation of disable will not allow a new Telnet client + session, also terminates the active client sessions which are already running. + By default it will be enabled" + + DEFVAL { enabled } + ::= { issSystem 105 } + +issSshClientStatus OBJECT-TYPE + SYNTAX INTEGER { + disabled(0), + enabled(1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for enabling or disabling the SSH client functionality + in the system. Set operation of enable will allow to establish new SSH client + sessions. Set operation of disable will not allow a new SSH client sessions, + also terminates the active client sessions which are already running. + By default it will be enabled" + DEFVAL { enabled } + ::= { issSystem 106 } + +issActiveTelnetClientSessions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of active Telnet client sessions running" + ::= { issSystem 107 } + +issActiveSshClientSessions OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of active SSH client sessions running" + ::= { issSystem 108 } + +issLogFileSize OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION "This is the maximum file size in bytes of the log file" + DEFVAL { 1048576 } + + ::= { issSystem 109 } + +issLogReset OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION "Setting this to true ,erases the contents in configs.txt + fileand start logging" + DEFVAL { false } + ::= { issSystem 110 } + +issLogSizeThreshold OBJECT-TYPE + SYNTAX Unsigned32 (1..99) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This is the threshold value of the Log storage space with respect + to the maximum Log Storage Space. It is entered as a percentage value." + DEFVAL { 70 } + ::= { issSystem 111 } + + issAutomaticPortCreate OBJECT-TYPE + SYNTAX INTEGER { + enabled (1), + disabled (2) + } + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for enabling and disabling automatic + port create feature.When set to enabled the ports in + will be automatically created in RSTP module when it + is mapped to a context.When set to disabled ports + are not created automatically and ports can be created + at rstp module level. " + DEFVAL { enabled } + ::= { issSystem 112 } + + issUlRemoteLogFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to specify the filename/filename with path + to which the local file need to be copied in the remote system. + + This object is useful only when the 'LogOption' is chosen as 'file'." + DEFVAL { "iss.log" } + ::= { issSystem 113 } + + + issDefaultExecTimeOut OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is for configuring the default idle time out for + ISS Prompt (exec-time out)." + ::= { issSystem 114 } + + issRmStackingInterfaceType OBJECT-TYPE + SYNTAX INTEGER { + oob (1), + inband (2) + } + + MAX-ACCESS read-write + STATUS current + DESCRIPTION + " This object is used to specify the type of stacking Interface used for + RM communication . Interface can be either an Out of Band port (or) + an Inband Ethernet port. This will be specified in issnvram.txt. + + If an Out of Band port is used,RM Interface should be specified in + issnvram.txt . RM Heartbeat and synchronization messages will be + transmitted as IP packets. Native Linux TCP/IP stack is used to + achieve Transport protocol functionality. + + If an Inband Ethernet port is used, RM Stack Interface will be + specified in Nodeid file . RM Heartbeat messages will be transmitted + as Ethernet packets and synchronization messages will be transmitted + as IP packets .Aricent TCP/IP stack is used to achieve Transport + protocol functionality.IP Address and the subnet Mask to be used for + this TCP/IP communication will be specified in NodeId file. + + Configuring this object will result in updation to issnvram.txt file. + The configured value will take effect in ISS on next reboot." + + DEFVAL { oob } + ::= { issSystem 115 } + + +issPeerLoggingOption OBJECT-TYPE + SYNTAX INTEGER { + console(1), + file(2), + flash(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Logging option specifying whether the Standby logging is to be + done at console or to a file(system buffer) in the system. + Flash specifies the logging of traces into a file." + DEFVAL { console } + ::= { issSystem 116 } + +issStandbyRestart OBJECT-TYPE +SYNTAX TruthValue +MAX-ACCESS read-write +STATUS current +DESCRIPTION + " In a High Availability System, this object allows the user to restart the + Standby switch (i.e) the entire Standby switch will operationally go down and + start again. + + Setting a value of 'true' causes the Standby switch to be restarted. This + configuration will be done in the Active switch in order to restart the + Standby switch. + + This configuration will not have any impact on the Active switch. + Active switch can be restarted using issRestart object." + +DEFVAL { false } +::= { issSystem 117 } + +issRestoreType OBJECT-TYPE + SYNTAX INTEGER { + msr (1), + csr (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + + "Specifies whether the restoration type is MIB based save and restore + or CLI based save and restore. + + The value 'msr' specifies that the configuration restore will be + in the format of MIB OID. + + The value 'csr' specifies that the configuration restore will be + in the format of CLI commands" + + + DEFVAL { msr } + ::= { issSystem 118 } + +issSwitchModeType OBJECT-TYPE + SYNTAX INTEGER { + cutThroughSameSpeed (1), + storeForward (2), + cutThroughSlowToFast (3), + cutThroughFastToSlow (4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This MIB object configures switching mode configuration at + switch level. The switching mode configuration done at switch + level will be applied on all the ports in the system including + stacking ports. + + When configured as StoreForward(2), the switch operates in a + store-and-forward mode and the switch checks each frame for + cyclic redundancy check (CRC) errors before forwarding them + to the network. Each frame is stored until the entire frame + has been received and checked. Because the switch waits for + forwarding the frame until the entire frame has been received + and checked, the switching speed in Store-Forward switching + mode is slower than the switching speed in Cut-Through + switching modes. + + When configured any of the cut-through modes, the switch + operates in Cut-Through switching mode and start forwarding + the frame as soon as the switch has read the destination + details in the packet header. A switch in Cut-Through mode + forwards the data before it has completedreceiving the entire + frame. The switching speed in Cut-Through mode is faster than + the switching speed in Store-Forward switching mode. + + Switching mode configuration: + CutThroughSameSpeed(1) : Cut-through forwarding between same speed + ports + StoreForward(2) : Store and forward switching mode + CutThroughSlowToFast(3): Cut-through forwarding between slower to + faster speed ports. + CutThroughFastToSlow(4): Cut-through forwarding between faster to + slower speed ports. + NOTE: + Few platforms supports extended Cut-Through mode for ports with + mismatched speeds.(eg. slow-to-fast, fast-to-slow). + Platforms which doesn't support extended Cut-Through mode, + Cut-Through same speed shall be considered as Cut-Through + switching mode" + DEFVAL { storeForward } + ::={ issSystem 119 } + +issConfigRestoreRetries OBJECT-TYPE + SYNTAX Integer32 (1..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used for configuring the number of retry attempts + for establishing connection with server during remote restore + operation" + DEFVAL { 1 } + ::= { issSystem 120 } + +issPauseFloodSamplingInterval OBJECT-TYPE +SYNTAX Unsigned32 (10..300) +UNITS "seconds" +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This object is used to set the sampling interval rate in seconds for pause + flood detection and protection feature." +DEFVAL { 30 } +::= { issSystem 121 } + +issPauseFloodProtect OBJECT-TYPE +SYNTAX INTEGER { + enabled (1), + disabled (2) + } +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This Object is used to Enable or disable the pause flood detection and + protection feature on all the ports in the system. Enabling this feature + avoids the resource exhaustion condition caused by pause frames/priority-based + pause frames. + The pause flood detection and protection feature is disabled by default." +DEFVAL { disabled } +::= { issSystem 122 } + +issPauseFloodMode OBJECT-TYPE +SYNTAX INTEGER { + disabled (1), + detectionOnly (2), + enabled (3) + } +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This Object specifies the pause flood mode as disabled/detected-only/enabled + for all the ports in the system. + + 'disabled' - In this mode, system is not monitored for pause flood + condition. + + 'detectionOnly' - In this mode, all system ports are monitored for pause + flood condition. All the system ports pause flood status + and statistics counters are updated. No protection action + is taken and no SNMP trap are generated. All the ports + in the system are allowed to operate normally and the + pause flood status is continually monitored and updated. + + 'enabled' - In this mode, all system ports are monitored for pause + flood condition. When pause flood condition is detected, + protective action is taken by disabling the administrator + status of those ports. The pause flood of those ports status + will be updated to indicate the existence of such condition. + Ports for which protective action is taken are remains in + disabled state until an administrative action is taken." +DEFVAL { disabled } +::= { issSystem 123 } + +issPauseFloodReset OBJECT-TYPE +SYNTAX TruthValue +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This object is used to recover or re-eanble the pause-flood + detection-only/enabled condition. + + Recovery action in Detection-only mode has to log every sampling and clear + the status and stats. + + Recovery action in enabled mode has to re-enable the ports + that were disabled due to the pause flood protective action." +DEFVAL { false } +::= { issSystem 124 } + +issPauseFloodTraceSeverityLevel OBJECT-TYPE +SYNTAX INTEGER { + emergency (0), + alert (1), + critical (2), + error (3), + warning (4), + notice (5), + informational (6), + debug (7) + } + +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This object specifies the value of severity level been configured for pause flood + module's debug tracing. It uses the value 0 (emergency) to 7 (debug). The value 0 is + given to higher priority trace messages and 7 given to lower priority traces messages. + The trace messages defined at or numerically lower than the value configured in + this MIB object are logged." +DEFVAL { 4 } +::= { issSystem 125 } + +issPauseFloodTraceOption OBJECT-TYPE +SYNTAX Integer32 +MAX-ACCESS read-write +STATUS current +DESCRIPTION + "This object is used to store the debug trace types that are enable by the user + for all the interfaces in the system. The bit positions of the traces is shown below. + Bit 0 - no trace + Bit 1 - init-shut + Bit 2 - mgmt + Bit 3 - sampling + Bit 4 - os resource + Bit 5 - entry + Bit 6 - exit " +DEFVAL { 0 } +::= { issSystem 126 } + +issPortsSwitchingModeStatus OBJECT-TYPE +SYNTAX PortList +MAX-ACCESS read-only +STATUS current +DESCRIPTION + "This object is used to reflect the switching mode + configuration of each physical port in the hardware. + + The switching mode is updated as bit-wise representation. + + Each bit position represents the interface index. + That is bit position 0 is for IfIndex 1, + bit position 1 is for IfIndex 2 and so on. + + The bit value represents the switching mode. + That is bit value 1 represent Cut-Through and + bit value 0 represent Store-Forward." +::= { issSystem 127 } + +issDebugTimeStampOption OBJECT-TYPE + SYNTAX INTEGER { + enabled (1), + disabled (2) + + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to set the time stamp value in debug trace. + When time stamp is ENABLED, debug traces will be printed with timestamp and + when it is DISABLED, time stamp will not be displayed with the traces" + + DEFVAL { disabled } + + ::= { issSystem 128 } + +issLdapLoginPrivilege OBJECT-TYPE + SYNTAX INTEGER + MAX-ACCESS read-write + STATUS current + DESCRIPTION "This object specifies the default privilege for users authenticated using LDAP." + +DEFVAL { 0 } +::= { issSystem 129 } + +issLdapAttributeName OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-write + STATUS current + DESCRIPTION "This object specifies the attribute name of the field to be authenticated using LDAP." + +DEFVAL { "" } +::= { issSystem 130 } + +issConfigRestoreFileSkuManifest OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION "This object specifies the switch models againts which the config file can be used for restoring configuration + String contains supported model numbers separated by ; (e.g. 1;2;3;4)" + +DEFVAL { "" } +::= { issSystem 131 } + +issDlImageType OBJECT-TYPE + SYNTAX INTEGER { + agent(1), + diagnostic(2), + firmware-cpld(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION "This object specifies the image type which will be downloaded" + +DEFVAL { 1 } +::= { issSystem 132 } + +issFirmwareCpldVersion OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION "This object specifies the cpld firmware version on the switch" + +DEFVAL { "" } +::= { issSystem 133 } + +issHttpMaxSessions OBJECT-TYPE + SYNTAX Integer32 (1..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to set HTTP max sessions. + If the max sessions is being reduced, http(s) system is disabled, + are closed all the sessions and enabled again." + DEFVAL { 10 } + ::= { issSystem 134 } + +------ Config Control Group ------------------------------------ + +issConfigCtrlTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssConfigCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to control device features like egress traffic control, + stats collection, etc. either for the entire switch or for each + interface in the switch." + ::= { issConfigControl 1 } + +issConfigCtrlEntry OBJECT-TYPE + SYNTAX IssConfigCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each interface in the system. + + In addition to that an entry with index '0' is created in this + table by default. + + If 'issConfigCtrlStatus' of the entry '0' is made 'valid', then + global control is chosen and the values against entry '0' is + applicable for all the interfaces of the switch. + + If 'issConfigCtrlStatus' of the entry '0' is made 'invalid', + then interface-wise control is chosen & the values against each + interface index is applicable for that interface. + + At a particular point of time, either global control will be + applicable or interface-wise control is applicable. + Both will not be considered together. + + Index to the table is the interface index of the port." + + INDEX { issConfigCtrlIndex } + ::= { issConfigCtrlTable 1 } + +IssConfigCtrlEntry ::= + SEQUENCE { + issConfigCtrlIndex + Integer32, + issConfigCtrlEgressStatus + INTEGER, + issConfigCtrlStatsCollection + INTEGER, + issConfigCtrlStatus + INTEGER + } + +issConfigCtrlIndex OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface index of the port for which the configuration + in this entry applies. + + If any configuration is made in this table for the index '0', + that configuration will be considered as global configuration + and is applicable for all the interfaces of the switch." + ::= { issConfigCtrlEntry 1 } + +issConfigCtrlEgressStatus OBJECT-TYPE + SYNTAX INTEGER { + enabled (1), + disabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Controls the transmission of egress traffic over this interface. + + This value for entry '0' controls the egress traffic over all + interfaces." + DEFVAL { enabled } + ::= { issConfigCtrlEntry 2 } + + +issConfigCtrlStatsCollection OBJECT-TYPE + SYNTAX INTEGER { + enabled (1), + disabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Enables or disables statistics collection for this interface. + + This value for entry '0' controls the stats collection for all + interfaces." + DEFVAL { enabled } + ::= { issConfigCtrlEntry 3 } + +issConfigCtrlStatus OBJECT-TYPE + SYNTAX INTEGER { + valid (1), + invalid (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Speficies the validity of the entry. + + If the 'Config Control Status' for entry '0' is made 'valid', + then global control is chosen in the system. + It signifies that the values against entry '0' is applicable + for all the interfaces of the switch. + + If the 'Config Control Status' for entry '0' is made 'invalid', + then interface-wise control is chosen. + Then the values against each interface index is applicable + for that interface. + + By default, 'issConfigCtrlStatus' will be 'invalid' for + entry '0' and 'valid' for all other entries. + (ie) by default, interface-wise configuration is enabled + in the system. + + The status of entries other than the zeroth(0th) entry can not be + made 'invalid'." + ::= { issConfigCtrlEntry 4 } + + +-- Port Control Table + +issPortCtrlTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssPortCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to control the port specific parameters of the device like speed, + duplex mode, etc." + ::= { issConfigControl 2 } + +issPortCtrlEntry OBJECT-TYPE + SYNTAX IssPortCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each interface in the system. + + Index to the table is the interface index of the port." + + INDEX { issPortCtrlIndex } + ::= { issPortCtrlTable 1 } + +IssPortCtrlEntry ::= + SEQUENCE { + issPortCtrlIndex + Integer32, + issPortCtrlMode + INTEGER, + issPortCtrlDuplex + INTEGER, + issPortCtrlSpeed + INTEGER, + issPortCtrlFlowControl + INTEGER, + issPortCtrlRenegotiate + INTEGER, + issPortCtrlMaxMacAddr + Integer32, + issPortCtrlMaxMacAction + INTEGER, + issPortHOLBlockPrevention + INTEGER, + issPortAutoNegAdvtCapBits + OCTET STRING, + issPortCpuControlledLearning + INTEGER, + issPortMdiOrMdixCap + INTEGER, + issPortCtrlFlowControlMaxRate + Integer32, + issPortCtrlFlowControlMinRate + Integer32, + issPortCtrlPauseFloodProtect + INTEGER, + issPortCtrlPauseFloodMode + INTEGER, + issPortCtrlPauseFloodStatus + INTEGER, + issPortCtrlPauseFloodReset + TruthValue, + issPortCtrlPauseFloodStats + Unsigned32, + issPortCtrlPauseFloodStatsClear + TruthValue, + issPortCtrlPauseFloodTraceOption + Integer32, + issPortCtrlSwitchModeType + INTEGER, + issPortCtrlSwitchModeStatus + INTEGER, + issPortCtrlInbandAutoNeg + INTEGER, + issPortCtrlBypassInbandAutoNeg + INTEGER, + issPortCtrlForceSpeed + INTEGER +} + +issPortCtrlIndex OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Interface index of the port for which the configuration + in this entry applies." + + ::= { issPortCtrlEntry 1 } + +issPortCtrlMode OBJECT-TYPE + SYNTAX INTEGER { + auto (1), + noNegotiation (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Speficies the mode in which the speed, duplex modes and flow control + of the interface is determined. + + If set as 'auto', the hardware senses speed and negotiates with the port + on the other end of the link for data transfer operation as + 'full-duplex' or 'half-duplex' and about flow contol. + + If set as 'nonegotiation', the configured values for interface + speed, duplex mode and flow control will be effective." + + DEFVAL { auto } + ::= { issPortCtrlEntry 2 } + +issPortCtrlDuplex OBJECT-TYPE + SYNTAX INTEGER { + full (1), + half (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configures interface data transfer mode as full-duplex or half-duplex. + + This object can be configured only if the 'PortCtrlMode' is 'nonegotiation'. + If the 'PortCtrlMode' is 'auto', it obtains the value from Hardware + after negotiating with its peer" + + ::= { issPortCtrlEntry 3 } + +issPortCtrlSpeed OBJECT-TYPE + SYNTAX INTEGER { + tenMBPS (1), + hundredMBPS (2), + oneGB (3), + tenGB (4), + fortyGB (5), + fiftyGB (6), + twothousandfivehundredMBPS (7), + twentyfiveGB (8), + onehundredGB (9) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configures interface speed. + + This object can be configured only if the 'PortCtrlMode' is 'nonegotiation'. + If the 'PortCtrlMode' is 'auto', it obtains the value from Hardware + after negotiating with its peer" + + ::= { issPortCtrlEntry 4 } + +issPortCtrlFlowControl OBJECT-TYPE + SYNTAX INTEGER { + enable (1), + disable (2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Enables / disables flow control for the interface. + + This object be configured only if the 'PortCtrlMode' is 'nonegotiation'. + If the 'PortCtrlMode' is 'auto', it obtains the value from Hardware + after negotiating with its peer. + + Since this object is deprecated, corresponding functionality can be + realised by dot3PauseAdminMode from stdether.mib" + + ::= { issPortCtrlEntry 5 } + +issPortCtrlRenegotiate OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "When configured as 'true', restarts autonegotiation on the interface. + + Once autonegotiation is restarted, the value of this object reverts + to 'false'." + + DEFVAL { false } + ::= { issPortCtrlEntry 6 } + +issPortCtrlMaxMacAddr OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the maximum number of new MAC addresses that can be + learnt over the interface." + ::= { issPortCtrlEntry 7 } + +issPortCtrlMaxMacAction OBJECT-TYPE + SYNTAX INTEGER { + drop (1), + purgeLRU (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the action to be taken when the maximum number of new MAC + addresses that can be learnt over the interface is exceeded. + + If the action is 'drop', the packet with new mac address will be + dropped once the maximum number of new MAC addresses that can be + learnt over the interface is exceeded. + + If the action is 'purgeLRU', the 'Least Recently Used' mac address + will be deleted from the MAC table and the new mac address will be + added." + ::= { issPortCtrlEntry 8 } + +issPortHOLBlockPrevention OBJECT-TYPE + SYNTAX INTEGER { + disabled (1), + enabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Enables or disables Head-Of-Line Blocking prevention on a port." + DEFVAL { enabled } + ::= { issPortCtrlEntry 9 } +issPortAutoNegAdvtCapBits OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A value uniquely identifies the set of capabilities advertised + by the local auto negotiation entity other than the standard + capabilities supported by ifMauAutoNegCapAdvertisedBits. + When this object is needed to be configured, one of the capabilities + from the standard object should be set to bOther." + ::= { issPortCtrlEntry 10 } + +issPortCpuControlledLearning OBJECT-TYPE + SYNTAX INTEGER { + disabled (1), + enabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Enables or disables the CPU controlled learning on a port. + The default behavior is hardware learning. By enabling this object + software learning on that particular port is enabled. + + When CPU controlled learning is enabled, for the first time, packet + will be copied to CPU and source MAC address learning will not happen + in the hardware. When packet is received at PNAC - if the source MAC + address is authorized, the packet will be allowed to go through further + processing. Else, the packet will be dropped. When packets from + authorized MAC address are received at VLAN, MAC learning will happen + at VLAN and the same entry will be programmed in the hardware. Once the + MAC address is learnt, further forwarding will happen at driver itself. + + The Mac address entries which are added through software learning are + checked in periodical intervals for the HIT entry. If there is no + traffic for that entry, the HIT flag won't be set. The entry will be + removed from the hardware if the hit flag is not set. + Note: When software learning is enabled, rate limiting to the port + needs to be configured" + + DEFVAL { disabled } + ::= { issPortCtrlEntry 11 } + +issPortMdiOrMdixCap OBJECT-TYPE + SYNTAX INTEGER { + auto (1), + mdi (2), + mdix (3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the port should be in Auto-Mdix mode or Mdi/Mdix. + + Setting the value to `auto` enables the Auto MDIX in the port - + issPortCtrlIndex. This will be effective only when the speed of the + particular port is auto negotiable. + + Setting the value to `mdi` disables the Auto MDIX in the port and the + port will be in mdi mode. + + Setting the value to `mdix` disables the Auto MDIX in the port and the + port will be in mdix mode." + DEFVAL { auto } + ::= { issPortCtrlEntry 12 } + +issPortCtrlFlowControlMaxRate OBJECT-TYPE + SYNTAX Integer32 (0..80000000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configures the maximum rate (kbps) - a high water mark beyond which + pause frames will be generated to flow control the ingress traffic. + This value should be set to 0 if no pause frame generation is required. + In chipsets that does not support seperate rate configuration for + pause frame generation, this object's value will take effect on + the interface ingress speed." + ::= { issPortCtrlEntry 13 } + +issPortCtrlFlowControlMinRate OBJECT-TYPE + SYNTAX Integer32 (0..80000000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Configures the minimum rate (kbps) - a low water mark below which pause + frames generation will be stopped. This value should be set to a value + lesser that of 'issPortCtrlFlowControlMaxRate'. This value should be set + to zero only when flow control is disabled. Chipsets on which this low + water mark is not supported, the 'issPortCtrlFlowControlMaxRate' will + alone be used." + ::= { issPortCtrlEntry 14 } + +issPortCtrlPauseFloodProtect OBJECT-TYPE + SYNTAX INTEGER { + enabled (1), + disabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to enable or disable the pause flood detection-only + or detection and protection feature on a port. The default behavior is + to have this feature disabled on a port. Enabling the feature avoid + resource exhaustion condition caused by pause frames/priority-based + pause frames" + DEFVAL { disabled } + ::= { issPortCtrlEntry 15 } + +issPortCtrlPauseFloodMode OBJECT-TYPE + SYNTAX INTEGER { + disabled (1), + detectionOnly (2), + enabled (3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the pause flood mode as disabled/detected-only/enabled + + 'disabled' - In this mode, port is not monitored for pause flood condition. + + 'detectionOnly' - In this mode, port is monitored for pause flood condition. + The port's pause flood status and statistics counters are updated. No protection + action is taken and no SNMP traps are generated. The port is allowed to + operate normally and the pause flood status is continually monitored and updated. + + 'enabled' - In this mode, port is monitored for pause flood condition. + When pause flood condition is detected, protective action is taken by disabling + the administrator status of the port. The pause flood port status will be + updated to indicate the existence of such a condition. The port remains in + disabled state until an administrative action is taken." + DEFVAL { disabled } + ::= { issPortCtrlEntry 16 } + +issPortCtrlPauseFloodStatus OBJECT-TYPE + SYNTAX INTEGER { + normal (1), + detected (2), + blocked (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object specifies the pause flood status. + + 'normal' - This status specifies that the pause flood condition has not + been detected or the feature is disabled. + + 'detected' - This status specifies that the pause flood condition being + detected. This is applicable only when the pause flood mode + is 'detection-only'. + + 'blocked' - This status specifies the pause flood condition being detected + and protective action taken. This is applicable only when + the pause flood mode is 'enabled'" + ::= { issPortCtrlEntry 17 } + +issPortCtrlPauseFloodReset OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to recover or re-eanble the pause-flood + detection-only/enabled condition. + Recovery action in Detection-only mode has to log every sampling and clear + the status and stats. + + Recovery action in enabled mode has to recovers/re-enables a port + that was disabled due to the pause flood protective action." + DEFVAL { false } + ::= { issPortCtrlEntry 18 } + +issPortCtrlPauseFloodStats OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is used to hold the number of times the port entered pause flood condition." + ::= { issPortCtrlEntry 19 } + +issPortCtrlPauseFloodStatsClear OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to clear the number of times the port entered pause flood condition." + DEFVAL { false } + ::= { issPortCtrlEntry 20 } + +issPortCtrlPauseFloodTraceOption OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to store the debug trace types that are enable by the user + for particular Interface. The bit positions of the traces is shown below. + Bit 0 - no trace + Bit 1 - init-shut + Bit 2 - mgmt + Bit 3 - sampling + Bit 4 - os resource + Bit 5 - entry + Bit 6 - exit" + DEFVAL { 0 } + ::= { issPortCtrlEntry 21 } + +issPortCtrlSwitchModeType OBJECT-TYPE + SYNTAX INTEGER { + cutThroughSameSpeed (1), + storeForward (2), + cutThroughSlowToFast (3), + cutThroughFastToSlow (4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to configure switching mode configuration + per port-level. + + Switching mode can be configured only for physical ports. + + When configured as StoreForward(2), the port operates in a + store-and-forward mode and the switch checks each frame for + cyclic redundancy check (CRC) errors before forwarding them + to the network. Each frame is stored until the entire frame + has been received and checked. Because the switch waits for + forwarding the frame until the entire frame has been received + and checked, the switching speed in Store-Forward switching + mode is slower than the switching speed in Cut-Through + switching modes. + + When configured any of the cut-through modes, the switch + operates in Cut-Through switching mode and start forwarding + the frame as soon as the switch has read the destination + details in the packet header. A switch in Cut-Through mode + forwards the data before it has completed receiving the + entire frame. The switching speed in Cut-Through mode is + faster than the switching speed in Store-Forward switching + mode. + + Switching mode configuration: + CutThroughSameSpeed(1) : Cut-through forwarding between same speed + ports + StoreForward(2) : Store and forward switching mode + CutThroughSlowToFast(3): Cut-through forwarding between slower to + faster speed ports. + CutThroughFastToSlow(4): Cut-through forwarding between faster to + slower speed ports. + NOTE: + Few platforms supports extended Cut-Through mode for ports with + mismatched speeds.(eg. slow-to-fast, fast-to-slow). + Platforms which doesn't support extended Cut-Through mode, + Cut-Through same speed shall be considered as Cut-Through + switching mode" + DEFVAL { storeForward } + ::={ issPortCtrlEntry 22 } + +issPortCtrlSwitchModeStatus OBJECT-TYPE + SYNTAX INTEGER { + cutThroughSameSpeed (1), + storeForward (2), + cutThroughSlowToFast (3), + cutThroughFastToSlow (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object is a read-only scalar MIB object to reflect the switching + mode configuration of the port in the hardware. + + Switching mode configuration: + CutThroughSameSpeed(1) : Cut-through forwarding between same speed + ports + StoreForward(2) : Store and forward switching mode + CutThroughSlowToFast(3): Cut-through forwarding between slower to + faster speed ports. + CutThroughFastToSlow(4): Cut-through forwarding between faster to + slower speed ports. + NOTE: + Few platforms supports extended Cut-Through mode for ports with + mismatched speeds.(eg. slow-to-fast, fast-to-slow). + Platforms which doesn't support extended Cut-Through mode, + Cut-Through same speed shall be considered as Cut-Through + switching mode" + + ::={ issPortCtrlEntry 23 } + +issPortCtrlInbandAutoNeg OBJECT-TYPE + SYNTAX INTEGER { + on(1), + off(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to enable or disable the CPSS inband auto-negotiation. + This is required by certain 1G transceivers." + ::={ issPortCtrlEntry 24 } + +issPortCtrlBypassInbandAutoNeg OBJECT-TYPE + SYNTAX INTEGER { + on(1), + off(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to enable or disable the CPSS bypass inband auto-negotiation. + When this is enabled auto-negotiation may be bypassed when negotiating link if one side does not respond. + This is required by certain 1G transceivers." + ::={ issPortCtrlEntry 25 } + +issPortCtrlForceSpeed OBJECT-TYPE + SYNTAX INTEGER { + on(1), + off(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to detect manual speed settings on sfp ports." + ::={ issPortCtrlEntry 26 } +-- ------------------------------------------------------------------ +-- Port Isolation Table +-- ------------------------------------------------------------------ + +issPortIsolationTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssPortIsolationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table is used to configure the port isolation feature. + For a given port, user can configure the list of allowed + forwarding/egress ports, where the packets for particular vlan that + ingress the port can be forwarded. If the Vlan is not given, then + the rule will be applied for all packets that ingress the given port. + + This table can be configured only for physical and link aggregated + ports. + + Before a packet is sent out of a port (after all L2/L3 processing), port + isolation table entry is referred for the ingress port of that packet. + If an entry is present for that ingress port and if the outgoing port + is configured as one of the egress ports , then the packet + will be transmitted out of that outgoing port. Otherwise the packet + will be dropped. + + If there is no entry configured for that ingress port in this + table, then the packet will be transmitted on that outgoing port." + ::= { issConfigControl 3 } + +issPortIsolationEntry OBJECT-TYPE + SYNTAX IssPortIsolationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each etnry in this table gives a ingress port to egress port mapping." + INDEX { issPortIsolationIngressPort, issPortIsolationInVlanId, issPortIsolationEgressPort} + ::= { issPortIsolationTable 1 } + +IssPortIsolationEntry ::= + SEQUENCE { + issPortIsolationIngressPort + InterfaceIndex, + issPortIsolationInVlanId + Integer32, + issPortIsolationEgressPort + InterfaceIndex, + issPortIsolationStorageType + StorageType, + issPortIsolationRowStatus + RowStatus + } + +issPortIsolationIngressPort OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object speficies the IfIndex of the ingress port. This port can + be a physical or link aggregated port." + ::= { issPortIsolationEntry 1 } + +issPortIsolationInVlanId OBJECT-TYPE + SYNTAX Integer32 (0..4094) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "If this object value is non-zero, then the port isolation rule is + applied for all packets received on the given ingress port. + Otherwise the rule is applied for this vlan packets received on the + given ingress port." + ::= { issPortIsolationEntry 2 } + +issPortIsolationEgressPort OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object specifies one of the allowed egress ports for the given + ingress port identified by the first index for this row. + This port can be either a physical or link aggregated port." + ::= { issPortIsolationEntry 3 } + +issPortIsolationStorageType OBJECT-TYPE + SYNTAX StorageType + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the storage type of this entry. + Only 'volatile' and 'nonVolatile' values are allowed for this object. + 'readOnly', 'permenant' and 'other' values are not allowed for this + object. + + If this table is configured for an ingress port and InVlanId via + management, then the issPortIsolationStorageType for all the entries + with this ingress port as primary index and this InVlanId as + secondary index will have the values as 'nonVolatile'. + Otherwise it will be set to 'volatile'. + + Entries in this table will be restored on reboot, only if the + corresponding issPortIsolationStorageType object is set as + nonVolatile." + ::= { issPortIsolationEntry 4 } + + +issPortIsolationRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "Denotes the Row Status for port isolation table entry. + Only 'CreateAndGo' and 'destroy' values are allowed for this + object. 'CreateAndWait' and 'notInService' values are not allowed. + Example: + To add ports 2, 3 as egress ports for ingress port 1 in this table, + the following sequence to be followed: + + 1. Set the issPortIsolationRowStatus as 'CreateAndGo' for the + entry with index + (issPortIsolationIngressPort = 1, issPortIsolationInVlanId =0, + issPortIsolationEgressPort = 2) + 2. Set the issPortIsolationRowStatus as 'CreateAndGo' for the + entry with index + (issPortIsolationIngressPort = 1, issPortIsolationInVlanId =0, + issPortIsolationEgressPort = 3) + + To add ports 5, 6 as egress ports for ingress port 7 and for vlan 5 + in this table, the following sequence to be followed: + + 1. Set the issPortIsolationRowStatus as 'CreateAndGo' for the + entry with index + (issPortIsolationIngressPort = 7, issPortIsolationInVlanId =5, + issPortIsolationEgressPort = 5) + 2. Set the issPortIsolationRowStatus as 'CreateAndGo' for the + entry with index + (issPortIsolationIngressPort = 7, issPortIsolationInVlanId =5, + issPortIsolationEgressPort = 6) + + To delete a egress port 3 from the list of egress ports for ingress + port 1 do the following: + Set the issPortIsolationRowStatus as 'destroy' for the + entry with index + (issPortIsolationIngressPort = 1, issPortIsolationEgressPort = 3)" + + ::= { issPortIsolationEntry 5 } + +-- Mirror Group ------------------------------------------------------ + +issMirrorStatus OBJECT-TYPE + SYNTAX INTEGER { + disabled (1), + enabled (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to enable/disable mirroring + feature in hardware. + When set to 'disabled (1)', all mirroring configurations will be + removed from hardware. + When set to 'enabled (2)', all mirroring configurations + present in software will be programmed in hardware." + + DEFVAL { enabled } + ::= { issMirror 1 } + +issMirrorToPort OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the port to which the active mirrored traffic controlled + by issMirrorCtrlTable is to be copied." + ::= { issMirror 2 } + +-- Mirror Control Table + +issMirrorCtrlTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssMirrorCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to control mirroring features for each interface + in the switch. + + Parameters in this table are valid only when the + 'issMirrorStatus' for the switch is not 'disabled'." + ::= { issMirror 3 } + +issMirrorCtrlEntry OBJECT-TYPE + SYNTAX IssMirrorCtrlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each interface + in the system." + INDEX { issMirrorCtrlIndex } + ::= { issMirrorCtrlTable 1 } + +IssMirrorCtrlEntry ::= + SEQUENCE { + issMirrorCtrlIndex + Integer32, + issMirrorCtrlIngressMirroring + INTEGER, + issMirrorCtrlEgressMirroring + INTEGER, + issMirrorCtrlStatus + INTEGER + } + +issMirrorCtrlIndex OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The interface index of the port for which the configuration + in this entry applies." + ::= { issMirrorCtrlEntry 1 } + +issMirrorCtrlIngressMirroring OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Provides control to enable or disable mirroring of ingress + traffic over this interface to the mirrored-to port." + DEFVAL { disabled } + ::= { issMirrorCtrlEntry 2 } + +issMirrorCtrlEgressMirroring OBJECT-TYPE + SYNTAX INTEGER { + enabled(1), + disabled(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Provides control to enable or disable mirroring of egress + traffic over this interface to the mirrored-to port." + DEFVAL { disabled } + ::= { issMirrorCtrlEntry 3 } + +issMirrorCtrlStatus OBJECT-TYPE + SYNTAX INTEGER { + valid(1), + invalid(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the validity of the entry." + ::= { issMirrorCtrlEntry 4 } + +-- Mirror Control Extension Table + +issMirrorCtrlRemainingSrcRcrds OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of source records remaining in the system. + Each record can store at least one source information. In case + consecutive source id are configured then record will store the range" + ::= { issMirror 4 } + +issMirrorCtrlRemainingDestRcrds OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the number of destination records remaining in the system. + Each record can store at least one destination information. In case + consecutive destination id are configured then record will store the + range" + ::= { issMirror 5 } + +issMirrorCtrlExtnTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssMirrorCtrlExtnEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This Table is used to configure advanced mirroring features like + - Port Based Mirroring: + - flow based mirroring + - vlan based mirroring + + Following are the configuration details for Port based mirroring: + To configure source ports in a session + - issMirrorCtrlExtnMirrType - is set to portBased + - issMirrorCtrlExtnSrcTable - should be used to configure list + of source ports to be mirrored + in a session + - issMirrorCtrlExtnSrcId - represents the source port. + The port Id to be mirrored + should be given here. + - issMirrorCtrlExtnSrcCfg - this object is used to + add/remove a port in the + source port list + + Example + To create a session 1 with source ports 5,6 following + sequence of configuration should be followed + For table issMirrorCtrlExtnTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnMirrType = portBased + + For table issMirrorCtrlExtnSrcTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnSrcId = 5 as index + issMirrorCtrlExtnSrcCfg = add + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnSrcId = 6 as index + issMirrorCtrlExtnSrcCfg = add + + To configure destination ports in a session + - issMirrorCtrlExtnDestinationTable - should be used to + configure list of + destination ports to be + mirrored in a session + - issMirrorCtrlExtnDestination - represents the + destination port. The + port Id to which packets + should be mirrored should + be given here. + - issMirrorCtrlExtnDestCfg - this object is used to + add/remove a port in the + source port list. + Example + To create a session 1 with destination port 10,11 following + sequence of configuration should be followed + For table issMirrorCtrlExtnTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnMirrType = portBased + + For table issMirrorCtrlExtnDestinationTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnDestination = 10 as index + issMirrorCtrlExtnDestCfg = add + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnDestination = 11 as index + issMirrorCtrlExtnDestCfg = add + + To Activate a session + - issMirrorCtrlExtnStatus - should be used to + activate/deactivate mirroring for a + session + Example + To enable mirroring for a session following sequence of + configuration should be followed + For table issMirrorCtrlExtnTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnStatus = active + + Above configurations applies to flow based mirroring also, the + issMirrorCtrlExtnSrcId used above for configuratin ports + should be used to configure flow Id + + To enable remote monitoring of sources for a session + - issMirrorCtrlExtnRSpanStatus - should be used to + enable/disable remote + monitoring for a session + it can be used to set a + session as source rspan + session which implies source + entities for this session are + monitored remotely or can be + used to set a session + as destination rspan session + which implies that mirrored + data is received for this + session should be forwarded to + destination entities of this + session + - issMirrorCtrlExtnRSpanVlanId - it is the vlan id which is + reserved in the network to + carry Mirrored data,if the + session is configured as + source rspan session then data + mirrored for the source + entities will be forwarded on + this vlan if the session is + configured as destination + rspan session then data + received on this vlan will be + forwarded to the destination + entities of this session + + Following are the configuration details for configurating Vlan + based mirroring: + To configure vlans as source for a session + - issMirrorCtrlExtnMirrType - is set to vlanBased + - issMirrorCtrlExtnSrcVlanTable - should be used to configure + list of source vlans to be + mirrored in a session + - issMirrorCtrlExtnSrcVlanId - represents a source vlan. The + vlan to be mirrored should be + given here. + - issMirrorCtrlExtnSrcVlanCfg - this object is used to + add/remove a vlan in the + source vlan list + Example + To create a session 1 with source list as vlan 5,6 + belonging to context 1 following sequence of configuration + should be followed + For table issMirrorCtrlExtnTable + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnMirrType = vlanBased + + For table issMirrorCtrlExtnSrcVlanTable + issMirrorCtrlExtnSrcVlanContext = 1 as index + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnSrcVlanId = 5 as index + issMirrorCtrlExtnSrcVlanCfg = add + issMirrorCtrlExtnSrcVlanContext = 1 as index + issMirrorCtrlExtnSessionIndex = 1 as index + issMirrorCtrlExtnSrcVlanId = 6 as index + issMirrorCtrlExtnSrcVlanCfg = add + + Entries for this table can be configured only when issMirrorStatus + is set to enabled. + Configurations done through 'issMirrorCtrlTable' will change the + following for the first session on this table: + - Mirroring type will be changed to port-based + - Mode and Source entities will be overwritten + with the values configured through 'issMirrorCtrlTable' + - Destination entities will be overwritten + with the value configured through 'issMirrorToPort' object " + ::= { issMirror 6 } + +issMirrorCtrlExtnEntry OBJECT-TYPE + SYNTAX IssMirrorCtrlExtnEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each session + in the system." + INDEX { issMirrorCtrlExtnSessionIndex} + ::= { issMirrorCtrlExtnTable 1 } + +IssMirrorCtrlExtnEntry ::= + SEQUENCE { + issMirrorCtrlExtnSessionIndex + Integer32, + issMirrorCtrlExtnMirrType + INTEGER, + issMirrorCtrlExtnRSpanStatus + INTEGER, + issMirrorCtrlExtnRSpanVlanId + Integer32, + issMirrorCtrlExtnRSpanContext + Integer32, + issMirrorCtrlExtnStatus + RowStatus + } + +issMirrorCtrlExtnSessionIndex OBJECT-TYPE + SYNTAX Integer32 (1..20) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The index of the mirroring session for which the configuration + in this entry applies." + ::= { issMirrorCtrlExtnEntry 1 } + +issMirrorCtrlExtnMirrType OBJECT-TYPE + SYNTAX INTEGER{ + portBased(1), + macflowBased(2), + vlanBased(3), + invalid(4), + ipflowBased(5) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object tells the type of mirroring this session supports. + This object needs to be set before doing any configuration for + a mirroring session" + DEFVAL { invalid } + ::= { issMirrorCtrlExtnEntry 2 } + +issMirrorCtrlExtnRSpanStatus OBJECT-TYPE + SYNTAX INTEGER{ + sourceRSpanVlan(1), + destinationRSpanVlan(2), + disabled(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object indicates session is enabled or disabled for + Remote monitoring. + If set as 'source-rspan-vlanid' indicates that the session is + enabled for Remote monitoring and the source entities for this + session will be remotely monitored. + If set as 'destination-rspan-vlanid' indicates that the session + should monitor remote traffic mirrored with RSPAN VLAN ID tag. + RSPAN VLAN ID should be configured through object + 'issMirrorCtrlExtnRSpanVlanId'. + If set as 'disabled' Remote monitoring is disabled for this + mirroring session." + + DEFVAL { disabled } + ::= { issMirrorCtrlExtnEntry 3 } + +issMirrorCtrlExtnRSpanVlanId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Vlan Id used for Remote monitoring for this session. + If issMirrorCtrlExtnRSpanStatus is set to disabled, then + this object will have an invalid value (zero)" + DEFVAL { 0 } + ::= { issMirrorCtrlExtnEntry 4 } + +issMirrorCtrlExtnRSpanContext OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the Context Id to which the RSpan Vlan belongs. + Value '0' mean this object is not considered for this + mirroring session." + DEFVAL { 0 } + ::= { issMirrorCtrlExtnEntry 5 } + +issMirrorCtrlExtnStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of the entry. The entry can be + made active only if issMirrorCtrlExtnMirrType is configured and + source and destination entries for this sesion is also configured" + ::= { issMirrorCtrlExtnEntry 6 } + +issMirrorCtrlExtnSrcTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssMirrorCtrlExtnSrcEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to configure list of source entities for mirroring sessions" + ::= { issMirror 7 } + +issMirrorCtrlExtnSrcEntry OBJECT-TYPE + SYNTAX IssMirrorCtrlExtnSrcEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each mirroring session." + INDEX { issMirrorCtrlExtnSessionIndex, issMirrorCtrlExtnSrcId } + ::= { issMirrorCtrlExtnSrcTable 1 } + +IssMirrorCtrlExtnSrcEntry ::= + SEQUENCE { + issMirrorCtrlExtnSrcId + Integer32, + issMirrorCtrlExtnSrcCfg + INTEGER, + issMirrorCtrlExtnSrcMode + INTEGER + } + +issMirrorCtrlExtnSrcId OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the source id which participates in a mirroring session. + For Port based mirroring this object can be port IfIndex. + To mirror Tunnel and Trunk ports the same Id can be used for + specifying Tunnel/Trunk Id. + For Flow based mirroring this object can be Acl Ids." + ::= { issMirrorCtrlExtnSrcEntry 1 } + +issMirrorCtrlExtnSrcCfg OBJECT-TYPE + SYNTAX INTEGER{ + add(1), + delete(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to create/delete a source entry for a session." + ::= { issMirrorCtrlExtnSrcEntry 2 } + +issMirrorCtrlExtnSrcMode OBJECT-TYPE + SYNTAX INTEGER { + ingress(1), + egress(2), + both(3), + disable(4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Provides control to set the mode of mirroring. + It can be ingress, egress, both or disable." + DEFVAL { both } + ::= { issMirrorCtrlExtnSrcEntry 3 } + +issMirrorCtrlExtnSrcVlanTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssMirrorCtrlExtnSrcVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to configure list of vlan source entities for mirroring sessions" + ::= { issMirror 8 } + +issMirrorCtrlExtnSrcVlanEntry OBJECT-TYPE + SYNTAX IssMirrorCtrlExtnSrcVlanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each mirroring session." + INDEX { issMirrorCtrlExtnSessionIndex, issMirrorCtrlExtnSrcVlanContext, issMirrorCtrlExtnSrcVlanId } + ::= { issMirrorCtrlExtnSrcVlanTable 1 } + +IssMirrorCtrlExtnSrcVlanEntry ::= + SEQUENCE { + issMirrorCtrlExtnSrcVlanContext + Integer32, + issMirrorCtrlExtnSrcVlanId + Integer32, + issMirrorCtrlExtnSrcVlanCfg + INTEGER, + issMirrorCtrlExtnSrcVlanMode + INTEGER + } + +issMirrorCtrlExtnSrcVlanContext OBJECT-TYPE + SYNTAX Integer32 (1..64) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the Context Id to which the source entity belongs, this + is used in case of specifying vlan as source. + Value '-1' mean this object is not considered for this mirroring + session." + ::= { issMirrorCtrlExtnSrcVlanEntry 1 } + +issMirrorCtrlExtnSrcVlanId OBJECT-TYPE + SYNTAX Integer32 (1..4094) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the Vlan id which participates in a mirroring session." + ::= { issMirrorCtrlExtnSrcVlanEntry 2 } + +issMirrorCtrlExtnSrcVlanCfg OBJECT-TYPE + SYNTAX INTEGER{ + add(1), + delete(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to create/delete a vlan entry for a session." + ::= { issMirrorCtrlExtnSrcVlanEntry 3 } + +issMirrorCtrlExtnSrcVlanMode OBJECT-TYPE + SYNTAX INTEGER { + ingress(1), + egress(2), + both(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Provides control to set the mode of mirroring. + It can be ingerss,Egress or Both." + DEFVAL { both } + ::= { issMirrorCtrlExtnSrcVlanEntry 4 } + +issMirrorCtrlExtnDestinationTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssMirrorCtrlExtnDestinationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to configure list of destination entities" + ::= { issMirror 9 } + +issMirrorCtrlExtnDestinationEntry OBJECT-TYPE + SYNTAX IssMirrorCtrlExtnDestinationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry appears in this table for each destination entity + in a mirroring session." + INDEX { issMirrorCtrlExtnSessionIndex, issMirrorCtrlExtnDestination } + ::= { issMirrorCtrlExtnDestinationTable 1 } + +IssMirrorCtrlExtnDestinationEntry ::= + SEQUENCE { + issMirrorCtrlExtnDestination + Integer32, + issMirrorCtrlExtnDestCfg + INTEGER + } + +issMirrorCtrlExtnDestination OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the destination port id which participates in a mirroring + session." + ::= { issMirrorCtrlExtnDestinationEntry 1 } + +issMirrorCtrlExtnDestCfg OBJECT-TYPE + SYNTAX INTEGER{ + add (1), + delete (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to create/delete a destination entry for a session." + ::= { issMirrorCtrlExtnDestinationEntry 2 } + +issCpuMirrorType OBJECT-TYPE + SYNTAX INTEGER { + ingress (1), + egress (2), + both (3), + disable (4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is used to set the type of mirroring + to be done for CPU traffic. + When set to 'ingress(1)', enables mirroring of ingress + traffic over CPU port to the CPU mirrored-to port + specified in 'issCpuMirrorToPort'. + When set to 'egress(2)', enables mirroring of egress + traffic over CPU port to the CPU mirrored-to port. + specified in 'issCpuMirrorToPort'. + When set to 'both(3)', enables mirroring of egress and ingress + traffic over CPU port to the CPU mirrored-to port + specified in 'issCpuMirrorToPort'. + When set to 'disable(4)', CPU mirroring configuration will be + removed." + + DEFVAL { disable } + ::= { issMirror 10 } + +issCpuMirrorToPort OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object specifies the physical port to which the CPU traffic specified + by issCpuMirrorType are mirrored." + DEFVAL { 0 } + ::= { issMirror 11 } + +-- ------------------------------------------------------------------ +-- IP Authorized Manager + +issIpAuthMgrTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssIpAuthMgrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table to configure IP authorized managers in the system." + ::= { issIpAuthMgr 1 } + +issIpAuthMgrEntry OBJECT-TYPE + SYNTAX IssIpAuthMgrEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Each entry in this table represents rules for particular + IP authorized manager." + INDEX { issIpAuthMgrIpAddr, issIpAuthMgrIpMask } + ::= { issIpAuthMgrTable 1 } + +IssIpAuthMgrEntry ::= + SEQUENCE { + issIpAuthMgrIpAddr + IpAddress, + issIpAuthMgrIpMask + IpAddress, + issIpAuthMgrPortList + PortList, + issIpAuthMgrVlanList + OCTET STRING, + issIpAuthMgrOOBPort + TruthValue, + issIpAuthMgrAllowedServices + Integer32, + issIpAuthMgrRowStatus + RowStatus + } + +issIpAuthMgrIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies either the Network or Host address from which the switch + can be managed. + An address 0.0.0.0 indicates 'Any Manager'." + ::= { issIpAuthMgrEntry 1 } + +issIpAuthMgrIpMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Specifies the IP address mask to be applied on issIpAuthMgrIpAddr. + Value 0.0.0.0 indicates mask for 'Any Manager'." + ::= { issIpAuthMgrEntry 2 } + +issIpAuthMgrPortList OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the port numbers through which the authorized manager can + access the switch. + + By default the authorized manager is allowed to access the switch + through all the ports. + + If a set of ports are configured in the 'PortList', the manager can + access the switch only through the configured ports." + ::= { issIpAuthMgrEntry 3 } + +issIpAuthMgrVlanList OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the Vlan's in which the IP authorized manager can reside. + By default the manager is allowed to reside in any vlan. + + If a set of vlans are configured in the 'VlanList', the manager can + reside only in the configured vlan set. Access to the switch + will be denied from any other vlan." + ::= { issIpAuthMgrEntry 4 } + +issIpAuthMgrOOBPort OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies whether the authorized manager can access the switch + through OOB Port + By default the manager is denied access to reside on OOB Interface" + DEFVAL { false } + ::= { issIpAuthMgrEntry 5 } + +issIpAuthMgrAllowedServices OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Specifies the allowed services through which the authorized manager can + access the switch. + This object takes bit mask values. The services represented by each bit + position is as given below: + + With bit 0 being the Least Significant Bit, + + Bit0 --> snmp + Bit1 --> telnet + Bit2 --> http + Bit3 --> https + Bit4 --> ssh + + If the particular bit is set to 1,corresponding service is allowed for + the configured manager. + + By default all services are allowed for the configured manager." + + DEFVAL { '1F'h } + ::= { issIpAuthMgrEntry 6 } + +issIpAuthMgrRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of this entry." + ::= { issIpAuthMgrEntry 7 } + + +-- Iss Extension Group ------------------------------------ +-- Rate Control Group --------------------------------------------- -- + +issRateCtrlTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssRateCtrlEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A table to control the rate limiting parameters + either for the entire switch or for each interface in the switch. + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + ::= { issRateControl 1 } + +issRateCtrlEntry OBJECT-TYPE + SYNTAX IssRateCtrlEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "An entry appears in this table for each physical + interface in the switch. + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + INDEX { issRateCtrlIndex } + ::= { issRateCtrlTable 1 } + +IssRateCtrlEntry ::= + SEQUENCE { + issRateCtrlIndex + Integer32, + issRateCtrlDLFLimitValue + Integer32, + issRateCtrlBCASTLimitValue + Integer32, + issRateCtrlMCASTLimitValue + Integer32, + issRateCtrlPortRateLimit + Integer32, + issRateCtrlPortBurstSize + Integer32 + } + +issRateCtrlIndex OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "The interface index for which the configuration in this + entry applies. + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + ::= { issRateCtrlEntry 1 } + +issRateCtrlDLFLimitValue OBJECT-TYPE + SYNTAX Integer32 (0..2147483647) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Allows to configure the limiting value for the maximum number + of dlf packets that can be transmitted per second over this interface. + Setting this object to the value zero disables rate limiting for + Destination lookup failure packets on this interface. The value that + can be set for this object is limited by the underlying hardware + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + + DEFVAL {0} + ::= { issRateCtrlEntry 2 } + +issRateCtrlBCASTLimitValue OBJECT-TYPE + SYNTAX Integer32 (0..2147483647) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Allows to configure the limiting value for the maximum number + of broadcast packets that can be transmitted per second over this + interface. Setting this object to the value zero disables rate + limiting for Broadcast packets on this interface. The value that + can be set for this object is limited by the underlying hardware + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + + DEFVAL {0} + ::= { issRateCtrlEntry 3 } + + +issRateCtrlMCASTLimitValue OBJECT-TYPE + SYNTAX Integer32 (0..2147483647) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Allows to configure the limiting value for the maximum number + of multicast packets that can be transmitted per second over this + interface. Setting this object to the value zero disables rate + limiting for Multicast packets on this interface. The value that + can be set for this object is limited by the underlying hardware + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + + DEFVAL {0} + ::= { issRateCtrlEntry 4} + +issRateCtrlPortRateLimit OBJECT-TYPE + SYNTAX Integer32 (0..80000000) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Configures interface Rate Limit (Packet that can be transferred + on a port at a particular second). + + This object's value will take effect on the interface speed. Based + on the operating speed of the port, the rate limit will be applied. + This value can also be affected by the metering. A value of zero(0) + disable rate limiting i.e. sets the port to full speed. + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + + ::= { issRateCtrlEntry 5 } + +issRateCtrlPortBurstSize OBJECT-TYPE + SYNTAX Integer32 (0..80000000) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Configures interface Burst Pkt Rate. (Packet Burst that can be + transferred on a port at a particular second) + + This object's value will take effect on the interface speed. Based + on the operating speed of the port, the burst size of the port + will be applied. This value can also be affected by the metering. A + value of zero(0) disable burst rate limiting i.e. sets the port burst + rate limit to full speed. + This object is deprecated and the corresponding functionality is + met with issRateControl objects in fsissext.mib." + + ::= { issRateCtrlEntry 6 } + + + + +-- ------------------------------------------------------------------ +-- L2 Filter Group -------------------------------------------------- + +issL2FilterTable OBJECT-TYPE + + SYNTAX SEQUENCE OF IssL2FilterEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "A table to configure L2 filter rules in the system. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2Filter 1 } + +issL2FilterEntry OBJECT-TYPE + SYNTAX IssL2FilterEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "Each entry in this table is a L2 filter rule.Index to the table + is the L2 filter number.This object is deprecated and the + corresponding functionality is met with issL2Filter objects + in fsissext.mib." + + INDEX { issL2FilterNo} + ::= { issL2FilterTable 1 } + +IssL2FilterEntry ::= + SEQUENCE { + issL2FilterNo + Integer32, + issL2FilterPriority + Integer32, + issL2FilterEtherType + Integer32, + issL2FilterProtocolType + Unsigned32, + issL2FilterDstMacAddr + MacAddress, + issL2FilterSrcMacAddr + MacAddress, + issL2FilterVlanId + Integer32, + issL2FilterInPortList + PortList, + issL2FilterAction + INTEGER, + issL2FilterMatchCount + Counter32, + issL2FilterStatus + RowStatus, + issL2FilterOutPortList + PortList, + issL2FilterDirection + INTEGER + + } + +issL2FilterNo OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "L2 Filter rule number. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 1 } + +issL2FilterPriority OBJECT-TYPE + SYNTAX Integer32 (1..255) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The priority of the L2 filter can be used to decide which filter rule + is applicable when + --> the packet matches with more than one filter rules + --> All the filter rules result in 'allow'ing the packet + + Higher value of 'filter priority' implies a higher priority. + + Usage of 'L2FilterPriority' is implementation dependant. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { 1 } + ::= { issL2FilterEntry 2 } + +issL2FilterEtherType OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The value in the Type/Len field of a frame that will + be matched to trigger this filter. The default value of + this object is '0'. When this object is SET with the default + value, frames are not matched for the value in the Type/Len + field with the value set for this object. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { 0 } + ::= { issL2FilterEntry 3 } + + +issL2FilterProtocolType OBJECT-TYPE + SYNTAX Unsigned32 (0..65535) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the non IP protocol type to be filtered. + aarp | amber | dec-spanning | decnet-iv | + diagnostic | dsm |etype-6000 | etype-8042 | + lat | lavc-sca | mop-console | mop-dump | + msdos | mumps | netbios | vines-echo | + vines-ip | xns-idp: A non-IP protocol. + + A value of '0' means, the filter is applicable for all protocols. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { 0 } + ::= { issL2FilterEntry 4 } + +issL2FilterDstMacAddr OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Destination MAC address to be matched with the packet. By Default, the + Destination Mac Address will be zero which means dont care condition ie) + any Dst Mac Address .This object is deprecated and the corresponding + functionality is met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 5 } + +issL2FilterSrcMacAddr OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Source MAC address to be matched with the packet. By Default, the Source + Mac Address will be zero which means dont care condition ie) any Src Mac + address This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 6 } + + +issL2FilterVlanId OBJECT-TYPE + SYNTAX Integer32 (0..4094) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Vlan Id to be filtered. In case of Provider bridges, This Vlan Id will + be treated as customer Vlan Id. + A value of '0' means, this object is unused. Configuring this value is not + allowed. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { 0 } + ::= { issL2FilterEntry 7 } + + +issL2FilterInPortList OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the complete set of ports over which this filter is applied + for packets ingress at ports in this list. + If the In port list is '0', the filter rule is applicable for the + incoming packets on all ports. + Even though the issL2FilterInPortList is configured, It is applicable only + if issL2FilterDirection is configured as 'in'. + By default inport list is maintained as '0'. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 8 } + +issL2FilterAction OBJECT-TYPE + SYNTAX INTEGER { + allow (1), + drop (2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the action to be taken on the packet if the filter + rule matches. + If the action is 'allow', the packet will be forwarded according + to the forwarding rules. + If the action is 'drop', the packet will be discarded. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { allow } + ::= { issL2FilterEntry 9 } + +issL2FilterMatchCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Number of times this filter is matched. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + + ::= { issL2FilterEntry 10 } + +issL2FilterStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "This object indicates the status of this entry. An entry is + created in this table when this object is SET to 'createAndWait'. + The entry in this table is used when the status of this object + is SET 'active'. The entry in this table is not used when this + object is SET 'notInService'. An entry created in this table is + be deleted when this object is SET 'destroy'. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 11 } + +issL2FilterOutPortList OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the complete set of ports over which this filter is applied + for packets egress at Ports in this list. + If the Out port list is '0', the filter rule is applicable for the + outgoing packets on all ports. + Even though the issL2FilterOutPortList is configured, It is applicable only + if issL2FilterDirection is configured as 'out'. + By default outport list is maintained as '0'. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + ::= { issL2FilterEntry 12 } + +issL2FilterDirection OBJECT-TYPE + SYNTAX INTEGER { + in (1), + out (2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the direction of this filter to be applied. By Default the + filter will be applied on ingress direction. + When the direction of this filter is 'in', It is applied on specified + ports of the issL2FilterInPortList. + When the direction of this filter is 'out', It is applied on specified + ports of the issL2FilterOutPortList. + This object is deprecated and the corresponding functionality is + met with issL2Filter objects in fsissext.mib." + DEFVAL { in } + ::= { issL2FilterEntry 13 } + +-- ------------------------------------------------------------------ +-- L3 Filter Group -------------------------------------------------- + + +issL3FilterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssL3FilterEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + " A table to configure L3 filter rules in the system. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3Filter 1 } + +issL3FilterEntry OBJECT-TYPE + SYNTAX IssL3FilterEntry + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + " Each entry in this table is a L3 filter rule. + Index to the table is L3 filter number. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + INDEX { issL3FilterNo} + ::= { issL3FilterTable 1 } + +IssL3FilterEntry ::= + SEQUENCE { + issL3FilterNo + Integer32, + issL3FilterPriority + Integer32, + issL3FilterProtocol + Integer32, + issL3FilterMessageType + Integer32, + issL3FilterMessageCode + Integer32, + issL3FilterDstIpAddr + IpAddress, + issL3FilterSrcIpAddr + IpAddress, + issL3FilterDstIpAddrMask + IpAddress, + issL3FilterSrcIpAddrMask + IpAddress, + issL3FilterMinDstProtPort + Unsigned32, + issL3FilterMaxDstProtPort + Unsigned32, + issL3FilterMinSrcProtPort + Unsigned32, + issL3FilterMaxSrcProtPort + Unsigned32, + issL3FilterInPortList + PortList, + issL3FilterOutPortList + PortList, + issL3FilterAckBit + INTEGER, + issL3FilterRstBit + INTEGER, + issL3FilterTos + Integer32, + issL3FilterDscp + Integer32, + issL3FilterDirection + INTEGER, + issL3FilterAction + INTEGER, + issL3FilterMatchCount + Counter32, + issL3FilterStatus + RowStatus + } + +issL3FilterNo OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS deprecated + DESCRIPTION + "L3 Filter rule number. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3FilterEntry 1 } + +issL3FilterPriority OBJECT-TYPE + SYNTAX Integer32 (1..255) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The priority of the filter can be used to decide which filter rule + is applicable when + --> the packet matches with more than one filter rules + --> All the filter rules result in 'allow'ing the packet + Higher value of 'L3 filter priority' implies a higher priority. + Usage of 'L3FilterPriority' is implementation dependant. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 1 } + ::= { issL3FilterEntry 2 } + +issL3FilterProtocol OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + " The type of protocol to be checked against the packet. The + default value is 255. If the value is 255, it means that the + protocol type can be anything and it will not be checked to + decide the action. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 255 } + ::= { issL3FilterEntry 3 } + +issL3FilterMessageType OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + " The message type to be checked against the packet. If the + message type matches with the packet, then the packet will be + dropped / allowed based on the action set in issL3FilterAction. + The default value is 255. It means that message type is not + configured and need not be checked. + Generally the value zero is given as default. But here + zero can be an ICMP Type value. Hence 255 is given as the + default value. + Some ICMP message types are: + echoReply(0), + destinationUnreachable(3), + sourceQuench(4), + redirect(5), + echoRequest(8), + timeExceeded(11), + parameterProblem(12), + timestampRequest(13), + timestampReply(14), + informationRequest(15), + informationReply(16), + addressMaskRequest(17), + addressMaskReply (18), + noICMPType(255) + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 255 } + ::= { issL3FilterEntry 4 } + +issL3FilterMessageCode OBJECT-TYPE + SYNTAX Integer32 (0..65535) + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + " The message code to be checked against the packet. If the + packet matches with the message code, then the packet will + be dropped / allowed based on the action set in issL3FilterAction. + The default value is 255. It means that message code is not + configured and need not be checked. Generally the value zero + will be given as default. But here, zero can be an ICMP Code + value. Hence 255 is given as the default value. + Some ICMP message codes are : + networkUnreachable(0), + hostUnreachable(1), + protocolUnreachable(2), + portUnreachable(3), + fragmentNeed(4), + sourceRouteFail(5), + destNetworkUnknown(6), + destHostUnknown(7), + srcHostIsolated(8), + destNetworkAdminProhibited(9), + destHostAdminProhibited(10), + networkUnreachableTOS(11), + hostUnreachableTOS(12), + noICMPCode(255) + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 255 } + ::= { issL3FilterEntry 5 } + +issL3FilterDstIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Destination IP address to be matched with the packet. + This object is valid only if the 'issFilterType' is 'l3filter'. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { '00000000'h } + ::= { issL3FilterEntry 6 } + +issL3FilterSrcIpAddr OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Source IP address to be matched with the packet. + This object is valid only if the 'issFilterType' is 'l3filter' + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { '00000000'h } + ::= { issL3FilterEntry 7 } + +issL3FilterDstIpAddrMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The IP subnet mask for Destination IP address. + This object is valid only if the 'issFilterType' is 'l3filter' + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 'FFFFFFFF'h } + ::= { issL3FilterEntry 8 } + +issL3FilterSrcIpAddrMask OBJECT-TYPE + SYNTAX IpAddress + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The IP subnet mask for Source IP address. + This object is valid only if the 'issFilterType' is 'l3filter'. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 'FFFFFFFF'h } + ::= { issL3FilterEntry 9 } + +issL3FilterMinDstProtPort OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The minimum port in the destination port range. Please note + these ports are the TCP / UDP ports. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 0 } + ::= { issL3FilterEntry 10 } + +issL3FilterMaxDstProtPort OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The maximum port in the destination port range. Please note + these ports are the TCP / UDP ports. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 65535 } + ::= { issL3FilterEntry 11 } + +issL3FilterMinSrcProtPort OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The minimum port in the source port range. Please note + these ports are the TCP / UDP ports. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 0 } + ::= { issL3FilterEntry 12 } + +issL3FilterMaxSrcProtPort OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "The maximum port in the source port range. Please note + these ports are the TCP / UDP ports. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { 65535 } + ::= { issL3FilterEntry 13 } + +issL3FilterInPortList OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the complete set of ports over which if the packet arrives + this filter rule will be applicable. + If the incoming port list is '0', the filter rule is applicable for all the + incoming ports. + By default inport list is maintained as '0'. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3FilterEntry 14 } + +issL3FilterOutPortList OBJECT-TYPE + SYNTAX PortList + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the complete set of ports over which if the packet goes out, + this filter rule will be applicable. + If the outgoing port list is '0',the filter rule is applicable for all the + outgoing packets in all ports. + By default outport list is maintained as '0' + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3FilterEntry 15 } + +issL3FilterAckBit OBJECT-TYPE + SYNTAX INTEGER { + establish(1), + notEstablish(2), + any(3) + } + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + " The TCP ACK bit to be checked against the packet. The default + value is 'any'(3). It means that ACK bit will not be checked + to decide the action. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { any } + ::= { issL3FilterEntry 16 } + +issL3FilterRstBit OBJECT-TYPE + SYNTAX INTEGER { + set(1), + notSet(2), + any(3) + } + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + " The TCP RST bit to be checked against the packet. The default + value is 'any'(3). It means that RST bit will not be checked to + decide the action. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { any } + ::= { issL3FilterEntry 17 } + +issL3FilterTos OBJECT-TYPE + SYNTAX Integer32 (-1..7) + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + " The IP TOS bit to be checked against the packet. This is a + single byte integer of which the last three bits (least + significant bits) indicate Delay, Throughput and Reliability + i.e 'uuuuudtr', u-unused, d-delay, t-throughput, r-reliability. + For example '6' indicates low delay and high throughput. + A value of '-1' means, the Tos Field becomes dont care + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { -1 } + ::= { issL3FilterEntry 18 } + +issL3FilterDscp OBJECT-TYPE + SYNTAX Integer32 (-1..63) + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + " The IP Dscp value to be checked against the packet. + A value of '-1' means, the Dscp Field becomes dont care. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { -1 } + ::= { issL3FilterEntry 19 } + +issL3FilterDirection OBJECT-TYPE + SYNTAX INTEGER { + in (1), + out(2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the direction of this filter to be applied. By Default the + filter will be applied on ingress direction. + When the direction of this filter is 'in', It is applied on specified + ports of the issL3FilterInPortList. + When the direction of this filter is 'out', It is applied on specified + ports of the issL3FilterOutPortList.This object is deprecated and + the corresponding functionality is met with issL3Filter objects in + fsissext.mib." + DEFVAL { in } + ::= { issL3FilterEntry 20 } + +issL3FilterAction OBJECT-TYPE + SYNTAX INTEGER { + allow (1), + drop (2) + } + MAX-ACCESS read-write + STATUS deprecated + DESCRIPTION + "Specifies the action to be taken on the packet if the filter + rule matches. + If the action is 'allow', the packet will be sent to the + ports in 'out port list'. If the out port list is '0', + the port over which the packet is to be switched will be decided + based on further processing on the packet. + If the action is 'drop', the packet will be discardedThis object is + deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + DEFVAL { allow } + ::= { issL3FilterEntry 21 } + +issL3FilterMatchCount OBJECT-TYPE + SYNTAX Counter32 + MAX-ACCESS read-only + STATUS deprecated + DESCRIPTION + "Number of times this filter is matched. + This object is deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3FilterEntry 22 } + +issL3FilterStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS deprecated + DESCRIPTION + "This object indicates the status of this entry. An entry is + created in this table when this object is SET to 'createAndWait'. + The entry in this table is used when the status of this object + is SET 'active'. The entry in this table is not used when this + object is SET 'notInService'. An entry created in this table is + be deleted when this object is SET 'destroy.This object is + deprecated and the corresponding functionality is + met with issL3Filter objects in fsissext.mib." + ::= { issL3FilterEntry 23 } + + +-- ------------------------------------------------------------------ +------------------------------------------------------------------ +-- Layer 4 Switching + + +issL4SwitchingFilterTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssL4SwitchingFilterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " A table to L4 Switching rules in the system. + " + ::= { issL4Switching 1 } + +issL4SwitchingFilterEntry OBJECT-TYPE + SYNTAX IssL4SwitchingFilterEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Each entry in this table is a L4 Switching rule. + Index to the table is L4 filter number. " + INDEX { issL4SwitchingFilterNo} + ::= { issL4SwitchingFilterTable 1 } + +IssL4SwitchingFilterEntry ::= + SEQUENCE { + issL4SwitchingFilterNo + Integer32, + issL4SwitchingProtocol + Integer32, + issL4SwitchingPortNo + Unsigned32, + issL4SwitchingCopyToPort + Integer32, + issL4SwitchingFilterStatus + RowStatus + } + +issL4SwitchingFilterNo OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "L4 Switching Filter rule number." + ::= { issL4SwitchingFilterEntry 1 } + + +issL4SwitchingProtocol OBJECT-TYPE + SYNTAX Integer32 (0..255) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The type of protocol to be checked against the packet. The + default value is 255. If the value is 255, it means that the + protocol type can be anything and it will not be checked to + decide the action. " + DEFVAL { 255 } + ::= { issL4SwitchingFilterEntry 2 } + + +issL4SwitchingPortNo OBJECT-TYPE + SYNTAX Unsigned32 + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The Layer 4 port no. Please note + these ports are the TCP / UDP ports." + DEFVAL { 0 } + ::= { issL4SwitchingFilterEntry 3 } + +issL4SwitchingCopyToPort OBJECT-TYPE + SYNTAX Integer32(0..65535) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object is Port to which the packet would be switched" + + ::= { issL4SwitchingFilterEntry 4 } + +issL4SwitchingFilterStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of this entry." + + ::= { issL4SwitchingFilterEntry 5 } + +-- issModule Group BEGINS + +issModuleTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssModuleEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " A table for triggering Graceful shutdown and Start" + ::= { issModule 1 } + +issModuleEntry OBJECT-TYPE + SYNTAX IssModuleEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + " Each entry in this table corresponding to one protocol" + INDEX { issModuleId } + ::= { issModuleTable 1 } + +IssModuleEntry ::= + SEQUENCE { + issModuleId + Integer32, + issModuleSystemControl + INTEGER + } + +issModuleId OBJECT-TYPE + SYNTAX Integer32 (1..65535) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This object indicates the ID of the protocol. + Following IDs are supported. + 1. OSPF + 2. OSPFV3 + 3. BGP + 4. ISIS + 5. RSVPTE + 6. LDP " + + ::= { issModuleEntry 1 } + +issModuleSystemControl OBJECT-TYPE + SYNTAX INTEGER { + idle (0), + shutdown (1), -- shutdown the process + start (2) -- start the process + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object shuts and starts the process" + DEFVAL { start } + ::= { issModuleEntry 2 } + +-- issModule Group ENDS + +-- ------------------------------------------------------------------ +--- FAN Table +issSwitchFanTable OBJECT-TYPE + SYNTAX SEQUENCE OF IssSwitchFanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Table containing the Fan information." + ::= { issSwitchFan 1 } + +issSwitchFanEntry OBJECT-TYPE + SYNTAX IssSwitchFanEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Indicates information related to fan status of + the switch." + INDEX { issSwitchFanIndex } + ::= { issSwitchFanTable 1 } + +IssSwitchFanEntry ::= + SEQUENCE { + issSwitchFanIndex Integer32, + issSwitchFanStatus INTEGER + } + +issSwitchFanIndex OBJECT-TYPE + SYNTAX Integer32 (1..5) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the fan number in the switch" + ::= { issSwitchFanEntry 1 } + +issSwitchFanStatus OBJECT-TYPE + SYNTAX INTEGER { + up(1), + down(2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates the fan status of the switch." + ::= { issSwitchFanEntry 2 } + +----------------------------------------------------------------------- +-- Trap Objects + +issMsrFailedOid OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Indicates the OID for which updation failure has occured at MSR" + ::= { issSystemTrap 1 } + +issMsrFailedValue OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Indicates the value of corresponding OID for which updation failure + has occured at MSR" + ::= { issSystemTrap 2 } + +-- Audit Trap Objects + + issAuditTrapEvent OBJECT-TYPE + SYNTAX INTEGER { + openFailed(1), + writeFailed(2), + sizeExceeded(3), + sizeThresholdHit(4) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + " openFailed - Open operation on Audit File failed. + writeFailed - Write operation on Audit File failed. + sizeExceeded - Audit File Size exceeded. + sizeThresholdHit - Audit Log Size Hit the threshold value." + ::= { issAuditTrap 1 } + + issAuditTrapEventTime OBJECT-TYPE + SYNTAX DisplayString(SIZE(24)) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "This object specifies the date and time at which fsAuditTrapEvent + was performed." + ::= { issAuditTrap 2 } + + issAuditTrapFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Audit File name in the trap message." + ::= { issAuditTrap 3 } + +-- Log Trap Objects + + issLogTrapEvent OBJECT-TYPE + SYNTAX INTEGER { + openFailed(1), + writeFailed(2), + sizeExceeded(3), + sizeThresholdHit(4) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + " openFailed - Open operation on Log File failed. + writeFailed - Write operation on Log File failed. + sizeExceeded - Log File Size exceeded. + sizeThresholdHit - Log Size Hit the threshold value." + ::= { issLogTrap 1 } + + issLogTrapEventTime OBJECT-TYPE + SYNTAX DisplayString(SIZE(24)) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "This object specifies the date and time at which fsLogTrapEvent + was performed." + ::= { issLogTrap 2 } + + issLogTrapFileName OBJECT-TYPE + SYNTAX DisplayString (SIZE(1..128)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Log File name in the trap message." + ::= { issLogTrap 3 } + +-- ------------------------------------------------------------------ +-- Iss Notifications + +issTrapConfigRestore NOTIFICATION-TYPE + OBJECTS { + issConfigRestoreStatus + } + STATUS current + DESCRIPTION + "This trap signifies the successful restoration of + the saved configuration" + ::= { issNotifications 1 } + +issMsrUpdateEventFail NOTIFICATION-TYPE + OBJECTS { + issMsrFailedOid, + issMsrFailedValue + } + STATUS current + DESCRIPTION + "An MsrUpdateEventFail notification is sent when there is some + failure in configuration change event received from SNMP Agent. + issMsrFailedOid indicates the OID for which configuration change + event has failed. + issMsrFailedValue indicates the value of the corresponding OID for + which configuration change event failure has occured." + ::= { issNotifications 2 } + +-- AUDIT TRAP MESSAGE +issAuditTrapMessage NOTIFICATION-TYPE + OBJECTS { + issAuditTrapEvent, + issAuditTrapEventTime, + issAuditTrapFileName + } + STATUS current + DESCRIPTION + "This trap notifies the erros on + Audit file." + ::= { issNotifications 3 } + +issTrapTemperature NOTIFICATION-TYPE + OBJECTS { + issSwitchMinThresholdTemperature, + issSwitchMaxThresholdTemperature, + issSwitchCurrentTemperature + } + STATUS current + DESCRIPTION + "This notification is sent when the current + temperature rises above or drops below the threshold." + ::= { issNotifications 4 } + +issTrapCPUThreshold NOTIFICATION-TYPE + OBJECTS { + issSwitchMaxCPUThreshold, + issSwitchCurrentCPUThreshold + } + STATUS current + DESCRIPTION + "This notification is sent when CPU load exceeds + the threshold value" + ::= { issNotifications 5 } + +issTrapPowerSupply NOTIFICATION-TYPE + OBJECTS { + issSwitchPowerSurge, + issSwitchPowerFailure, + issSwitchCurrentPowerSupply + } + STATUS current + DESCRIPTION + "This notification is sent when the current + voltage drops below or exceeds the threshold value" + ::= { issNotifications 6 } + +issTrapRAMUsage NOTIFICATION-TYPE + OBJECTS { + issSwitchMaxRAMUsage, + issSwitchCurrentRAMUsage + } + STATUS current + DESCRIPTION + "This notification is sent when the RAM usage crosses + the threshold percentage." + ::= { issNotifications 7 } + +issTrapFlashUsage NOTIFICATION-TYPE + OBJECTS { + issSwitchMaxFlashUsage, + issSwitchCurrentFlashUsage + } + STATUS current + DESCRIPTION + "This notification is sent when the flash + usage crosses the threshold." + ::= { issNotifications 8 } + +issTrapFanStatus NOTIFICATION-TYPE + OBJECTS { + issSwitchFanIndex, + issSwitchFanStatus + } + STATUS current + DESCRIPTION + "This notification is sent when the fan status is changed + from down state to up state or vice versa." + ::= { issNotifications 9 } + +-- LOG TRAP MESSAGE +issLogTrapMessage NOTIFICATION-TYPE + OBJECTS { + issLogTrapEvent, + issLogTrapEventTime, + issLogTrapFileName + } + STATUS current + DESCRIPTION + "This trap notifies the erros on + System Log file." + ::= { issNotifications 10 } + +-- PAUSE FLOOD SNMP TRAP MESSAGE +issPauseFloodSnmpTrapMessage NOTIFICATION-TYPE + OBJECTS { + issPortCtrlPauseFloodStatus + } + STATUS current + DESCRIPTION + "This object is used to notify the pause flood condition when the pause + flood mode is 'enabled'" + ::= { issNotifications 11 } + +issAclProvisionMode OBJECT-TYPE + SYNTAX INTEGER { + immediate(1), + consolidated(2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The MIB object issAclProvisionMode is used to configure the + mode for provisioning active Filter Rules to the hardware. + This object takes values immediate/consolidated. When this + object is set to immediate, active ACL rules are programmed + to hardware immediately. This is the default mode. In this + mode, the sequence of configuration determines the order of + provisioning the Filter rule to the hardware. + When this object is set to consolidated, active Filter Rules + are provisioned whenever a commit is triggered using MIB + object issAclTriggerCommit. In the consolidated mode, the + Filter rules are programmed/re-programmed to hardware in + the order of configured priority." + DEFVAL { immediate } + ::= { issAclNp 1 } + + +issAclTriggerCommit OBJECT-TYPE + SYNTAX INTEGER { + false(0), + true(1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The MIB object issAclTriggerCommit takes values true(1)/false (0). + A SET on this object ( only true is allowed) triggers the + programming of active ACL entries to the device based on + configured priority.After completion of the operation, this MIB object + is reset to false( 0) .This object is applicable only when the MIB + object issAclProvisionMode is set to ' consolidated. + A set on this object will impact the existing traffic flow as existing + Filter entries are deleted + and re-programmed to hardware based on configured priority. + Filter entries that are associated with quality-of-service configurations + will also be impacted when this object + triggers the re-programming of the active ACL entries to the hardware. + The administrator needs to ensure that corresponding Filter entries are + de-provisioned before triggering commit." + DEFVAL { false } + ::= { issAclNp 2 } + +-- Traffic Control Group ------------------------------------------ -- + +issAclTrafficSeperationCtrl OBJECT-TYPE + SYNTAX INTEGER { + systemdefault (1), + userconfig (2), + none(3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object provides control to administrator, to have system default or + user defined ACL/QoS rules to carry control traffic to CPU. + + system-default: ACL/QoS rules for all the control packets will be + automatically installed by the ISS software at system init time.Either a + 'switch-and-copy-to-cpu'filter (or) 'drop-and-copy-to-cpu' filter will be + installed, as appropriate, for getting the control packets to CPU, for + processing. Each ACL rule will be associated with class-map, meter and + policy map with protocol ID, and CPU queue number + + user-config: The ACL/QoS rules for receiving all the control packets to + CPU for processing, will NOT be automatically installed by the the ISS + software.The administrator is expected to install required rules for the + control packets as requried. + + none: ACL/QoS rules for all the control packets will be automatically + installed by the ISS software at system init time.Either a 'switch-and-co + py-to-cpu'filter (or) 'drop-and-copy-to-cpu' filter will be installed, + as appropriate, for getting the control packets to CPU, for processing. + Default mode is none + + If the configuration is changed from 'systemdefault' to 'userconfig' + option, then all the default ACL/QoS rules for carrying protocol control + packets to CPU are removed.Then user has to install the specific ACL/QoS + rules, to carry the intended control packets to CPU for the processing. + + If the configuration is changed from 'userconfig' to 'systemdefault', + all the default ACL/QoS rules are installed. Already existing(if any) + user configured ACL rules in the system are not removed. + + If the configuration is changed from 'none' to 'systemdefault' + option, then all the default ACL filters for carrying protocol control + packets to CPU are removed and new set of filters will be installed. + Each filter will be associated with Qos rules. + + If the configuration is changed from 'none' to 'userconfig' + option, then all the default ACL filters for carrying protocol control + packets to CPU are removed.Then user has to install the specific ACL/QoS + rules, to carry the intended control packets to CPU for the processing. + + If the configuration is changed from 'userconfig' to 'none' + all the default ACL filters are installed. Already existing(if any) + user configured ACL rules in the system are not removed. + + Above three options can be configured during system runtime." + + DEFVAL { none } + ::= { issAclTrafficControl 1 } + +--ISShealthchk-- + +issHealthChkStatus OBJECT-TYPE + SYNTAX INTEGER { upAndRunning(1), + downNonRecoverableErr(2), + upRecoverableRuntimeErr(3) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "upAndRunning(1), This status indicates that ISS is up and running + and carrying out its job smoothly. + + downNonRecoverableErr(2), This indicates that the health status of ISS is down + due to occurence of some non-recoverable error. + + upRecoverableRuntimeErr(3), This indicates that the health status of ISS is up + but indicates the occurence of a runtime error that is recoverable." + + + ::= { issHealthCheckGroup 1 } + +issHealthChkErrorReason OBJECT-TYPE + SYNTAX INTEGER { nonRecovTaskInitializationFailure(1), + nonRecovInsufficientStartupMemory(2), + recovCruBuffExhausted(3), + recovConfigRestoreFailed(4), + recovProtocolMemPoolExhausted(5) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "When the MIB object 'issHealthChkStatus' indicates health as down, this object provides the + reason for errors encountered. + + nonRecovTaskInitializationFailure(1), Indicates the occurence of non-recoverable failure during + Task initialization. + + nonRecovInsufficientStartupMemory(2), Indicates that there is insufficient memory for successful + startup. This error is non-recoverable and requires sufficient memory to be available in the system + for successful ISS startup. + + recovCruBuffExhausted(3), Indicates that CRU Buffer Exhausted. + + recovConfigRestoreFailed(4), Indicates that config-restore failed for ISS. This is a recoverable error. + + recovProtocolMemPoolExhausted(5), Indicates that a mem-pool associated with a specific module in ISS has + drained out. This error may affect the functioning of the specific protocol alone and is treated as + a recoverable error. + + By default issHealthChkErrorReason is 0." + + + ::= { issHealthCheckGroup 2 } + +issHealthChkMemAllocErrPoolId OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object retrieves the mem-pool identifier for which memory allocation + failure was encountered at run-time.This object will get updated when + MIB object fsISSHealthChkErrorReason takes value of recovProtocolMemPoolExhausted (5)." + + ::= { issHealthCheckGroup 3} + +issHealthChkConfigRestoreStatus OBJECT-TYPE + SYNTAX INTEGER { configRestoreSuccess(1), + configRestoreFailed(2), + configRestoreInProgress(3), + configRestoreDefault(4) } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "configRestoreSuccess(1), Indicates that configuration restore operation + was successfully done. + + configRestoreFailed(2),Indicates that configuration restoration was unsuccessful. + + configRestoreInProgress(3), Indicates that configuration restore operation is in-progress for ISS. + + configRestoreDefault(4), Indicates the absence of config-restore file (iss.conf) + and that ISS was started with default values. + + By default issHealthChkConfigRestoreStatus is 4." + + + ::= { issHealthCheckGroup 4} + +issHealthChkClearCtr OBJECT-TYPE + SYNTAX BITS{ + bgp(1), + ospf(2), + rip(3), + rip6(4), + ospf3(5), + ipv4(6), + ipv6(7) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object clears the counters + associated with the following protocols - + BGP, OSPFv2, RIPv2/ng, OSPFv3, RTMv4/v6, ARP/ND, NETIP(v4/v6) + All the bit is set as 1, it clears the specified protocol counters. + bgp(1) When this bit is set,clears bgp protocol counters. + ospf(2) When this bit is set,clears ospf protocol counters. + rip(3) When this bit is set,clears rip protocol counters. + rip6(4) When this bit is set,clears rip6 protocol counters. + ospf3(5) When this bit is set,clears ospf3 protocol counters. + ipv4(6) When this bit is set,clears ipv4 protocol counters. + ipv6(7) When this bit is set,clears ipv6 protocol counters." + + ::= { issHealthCheckGroup 5} + + + + +END diff --git a/mibs/cambium/cnmatrix/ARICENT-POE-MIB b/mibs/cambium/cnmatrix/ARICENT-POE-MIB new file mode 100644 index 000000000000..c53ed1fa6549 --- /dev/null +++ b/mibs/cambium/cnmatrix/ARICENT-POE-MIB @@ -0,0 +1,306 @@ +-- Copyright (C) 2006-2012 Aricent Group . All Rights Reserved + + ARICENT-POE-MIB DEFINITIONS ::= BEGIN + + IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, enterprises, Integer32 + FROM SNMPv2-SMI + RowStatus, MacAddress, DisplayString + FROM SNMPv2-TC + InterfaceIndex + FROM IF-MIB; + + fspoe MODULE-IDENTITY + LAST-UPDATED "202112200000Z" + ORGANIZATION "ARICENT COMMUNICATIONS SOFTWARE" + CONTACT-INFO "support@aricent.com" + DESCRIPTION + " The proprietary MIB module for POE. " + + REVISION "202112200000Z" + DESCRIPTION + "Added fsPethPsPortPowerPriorityStatic object + supporting the export of static (vs dynamic) + port power priority settings." + + REVISION "201906240000Z" + DESCRIPTION + "Added fsPowerModeDCinVoltageRange object + which allows user to specify in which input voltage + range will the TX1012-P-DC be powered." + + REVISION "201209050000Z" + DESCRIPTION + " The proprietary MIB module for POE. " + ::= { enterprises futuresoftware (2076) 103 } + +-- ------------------------------------------------------------ +-- groups in the MIB +-- ------------------------------------------------------------ + + fsPoeSystem OBJECT IDENTIFIER ::= { fspoe 1 } + +-- ------------------------------------------------------------------ +-- The Poe System Group +-- ------------------------------------------------------------------ + fsPoeGlobalAdminStatus OBJECT-TYPE + SYNTAX INTEGER { start(1), shutdown(2)} + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Start or shutdown PoE Module in the system + + When set as 'start' PoE module initializes data structures and + gets the power supply status. + + When shutdown, all resources used by PoE module + will be released back to the system and also power will + be shut on all PoE enabled ports" + ::= { fsPoeSystem 1 } + +-- Poe Mac Table + + fsPoeMacTable OBJECT-TYPE + SYNTAX SEQUENCE OF FsPoeMacEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains information associated MAC Addresses for which + Power has to be applied." + ::= { fsPoeSystem 2 } + + + fsPoeMacEntry OBJECT-TYPE + SYNTAX FsPoeMacEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Powered Device(PD)s MAC address, the port through which its + been learnt" + INDEX { fsPoePdMacAddress } + ::= { fsPoeMacTable 1 } + + FsPoeMacEntry ::= + SEQUENCE { + fsPoePdMacAddress + MacAddress, + fsPoePdMacPort + InterfaceIndex, + fsPoePdMacRowStatus + RowStatus + } + + fsPoePdMacAddress OBJECT-TYPE + SYNTAX MacAddress + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "MAC address of the PD." + ::= { fsPoeMacEntry 1 } + + fsPoePdMacPort OBJECT-TYPE + SYNTAX InterfaceIndex + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object stores the port through which the fsPoePdMacAddress + has been learnt " + ::= { fsPoeMacEntry 2 } + + fsPoePdMacRowStatus OBJECT-TYPE + SYNTAX RowStatus + MAX-ACCESS read-create + STATUS current + DESCRIPTION + "This object indicates the status of this entry." + ::= { fsPoeMacEntry 3 } + +-- Fs Poe Port Table + fsPethPsePortTable OBJECT-TYPE + SYNTAX SEQUENCE OF FsPethPsePortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table of objects that display and control non-standard power + characteristics of power Ethernet ports on a Power Source + Entity (PSE) device. This group will be implemented in + managed power Ethernet switches and mid-span devices. + Values of all read-write objects in this table are + persistent at restart/reboot." + ::= { fsPoeSystem 3 } + + fsPethPsePortEntry OBJECT-TYPE + SYNTAX FsPethPsePortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A set of objects that display and control non-standard power + characteristics of a power Ethernet PSE port." + INDEX { fsPethPsePortGroupIndex , fsPethPsePortIndex } + ::= { fsPethPsePortTable 1 } + + FsPethPsePortEntry ::= SEQUENCE { + fsPethPsePortGroupIndex + Integer32, + fsPethPsePortIndex + Integer32, + fsPethPsPortPowerMeasurementsAmperage + Integer32, + fsPethPsPortPowerMeasurementsVoltage + Integer32, + fsPethPsPortPowerMeasurementsWattage + Integer32, + fsPethPsPortPowerPriorityStatic + INTEGER, + fsPethPsPortPowerMode + INTEGER, + fsPethPsPortPowerModeDynamic + INTEGER + } + + fsPethPsePortGroupIndex OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This variable uniquely identifies the group + containing the port to which a power Ethernet PSE is + connected. Group means box in the stack, module in a + rack and the value 1 MUST be used for non-modular devices." + ::= { fsPethPsePortEntry 1 } + + fsPethPsePortIndex OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This variable uniquely identifies the power Ethernet PSE + port within group fsPethPsePortGroupIndex to which the + power Ethernet PSE entry is connected." + ::= { fsPethPsePortEntry 2 } + fsPethPsPortPowerMeasurementsAmperage OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable contains the amperage value of a power Ethernet PSE port on which a device is connected" + ::= { fsPethPsePortEntry 3 } + fsPethPsPortPowerMeasurementsVoltage OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable contains the voltage value of a power Ethernet PSE port on which a device is connected" + ::= { fsPethPsePortEntry 4 } + fsPethPsPortPowerMeasurementsWattage OBJECT-TYPE + SYNTAX Integer32 (1..2147483647) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This variable contains the wattage value of a power Ethernet PSE port on which a device is connected" + ::= { fsPethPsePortEntry 5 } + + fsPethPsPortPowerPriorityStatic OBJECT-TYPE + SYNTAX INTEGER { + critical(1), + high(2), + low(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object controls the priority of the port from the point + of view of a power management algorithm. The priority that + is set by this variable could be used by a control mechanism + that prevents over current situations by disconnecting first + ports with lower power priority. Ports that connect devices + critical to the operation of the network - like the E911 + telephones ports - should be set to higher priority. + + This object represents the static Port Power Priority value. + When the standard pethPsePortPowerPriority value is different + than the value of this object, a dynamic setting is currently + applied." + + ::= { fsPethPsePortEntry 6 } + + fsPethPsPortPowerMode OBJECT-TYPE + SYNTAX INTEGER { + std802d3(1), + passive-24v(2), + passive-54v(3), + force-power(4) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This object controls the power mode configured by the user. + It is port dependant, based on the capabilities of the port. + 802d3 is standards based PoE, passive-24v is 24V passive PoE (no detection, no classification), + passive-54v is 54V passive PoE (no detection, no classification), + force is 54V passive PoE (with detection, no classification)." + + ::= { fsPethPsePortEntry 7 } + + fsPethPsPortPowerModeDynamic OBJECT-TYPE + SYNTAX INTEGER { + nonDynamic(0), + dynamic(1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This objects informs if a power mode has been dynamically changed on a port via the auto-detect mechanism." + + ::= { fsPethPsePortEntry 8 } + + fsPowerModeAutoDetect OBJECT-TYPE + SYNTAX BITS { cnMedusaOn(0), cnMedusaOff(1), cnWaveOn(2), cnWaveOff(3) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This setting enables auto-detection of certain devices via LLDP and applies a specific power-mode for them. + For cnMedusa we will automatically change power-mode to force-power. + This is possible becuase cnMedusa/cnWave boots in 802d3 mode, but then it requires force-mode to function properly. + The 802d3 boot-up mode allows it to transmit the LLDP TLV by which it is recognised as a cnMedusa/cnWave. + Depending on the device, this setting will only apply on corresponding capable ports" + + ::= { fsPoeSystem 4 } + + fsPowerModePassiveSafe OBJECT-TYPE + SYNTAX INTEGER { enable(1), disable(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This setting enables PoE passive-safe mode, which offers a certain degree of protection against accidental insertion + of non-compatible devices in ports already configured in a passive PoE mode (passive-low or passive-high). Passive modes + can damage certain devices since it automatically puts voltage out on the port, w/o any sort of 802.3 detection." + + ::= { fsPoeSystem 5 } + + fsPowerModeHighTemperature OBJECT-TYPE + SYNTAX INTEGER { enable(1), disable(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This setting enables high temperature mode, which offers the posibility to reduce the PoE budget to a predetermined value + when the switch is running in a high temperature environment." + ::= { fsPoeSystem 6 } + + fsPowerFirmwareVersion OBJECT-TYPE + SYNTAX DisplayString (SIZE(0..127)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Specifies the PoE MCU firmware version" + ::= { fsPoeSystem 7 } + + fsPowerModeDCinVoltageRange OBJECT-TYPE + SYNTAX INTEGER { range9-29V(1), range30-60V(2) } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "This setting allows the user to specifiy in which range the DC input voltage is located so that the PoE power budget can be + accordingly adjusted. Currently, only necessary and available on the TX1012-P-DC" + ::= { fsPoeSystem 8 } +END diff --git a/mibs/cambium/cnmatrix/LLDP-EXT-MED-CAMBIUM-MIB b/mibs/cambium/cnmatrix/LLDP-EXT-MED-CAMBIUM-MIB new file mode 100644 index 000000000000..18ce714fd85f --- /dev/null +++ b/mibs/cambium/cnmatrix/LLDP-EXT-MED-CAMBIUM-MIB @@ -0,0 +1,1678 @@ +LLDP-EXT-MED-CAMBIUM-MIB DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, OBJECT-TYPE, Integer32, Gauge32, Unsigned32, + NOTIFICATION-TYPE + FROM SNMPv2-SMI + TEXTUAL-CONVENTION, TruthValue + FROM SNMPv2-TC + MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP + FROM SNMPv2-CONF + lldpExtensions, lldpLocPortNum, + lldpRemTimeMark, lldpRemLocalPortNum, lldpRemIndex, + lldpPortConfigEntry, lldpRemChassisIdSubtype, lldpRemChassisId + FROM LLDP-MIB + Dscp + FROM DIFFSERV-DSCP-TC + SnmpAdminString + FROM SNMP-FRAMEWORK-MIB; + +lldpXMedMIB MODULE-IDENTITY + LAST-UPDATED "200507280000Z" -- July 28th, 2005 + ORGANIZATION "TIA TR41.4 Working Group" + CONTACT-INFO +" WG-URL: http://www.tiaonline.org/standards/sfg/scope.cfm#TR-41.4 + WG-EMail: tr41@tiacomm.org + Contact: Chair, TIA TR-41 + Postal: Telecommunications Industry Association + 2500 Wilson Blvd., Suite 300 + Arlington, VA 22201 USA + Tel: (703) 907-7700 + E-mail: tr41@tiacomm.org" + DESCRIPTION + "The LLDP Management Information Base extension module for + TIA-TR41.4 media endpoint discovery information. + + In order to assure the uniqueness of the LLDP-MIB, + lldpXMedMIB is branched from lldpExtensions using the TIA OUI + value as the node. An OUI/'company_id' is a 24 bit globally + unique assigned number referenced by various standards. + + Copyright (C) TIA (2005). This version of this MIB module + is published as Section 13.3 of ANSI/TIA-1057. + + See the standard itself for full legal notices." + REVISION "200507280000Z" -- July 28th, 2005 + DESCRIPTION + "Published as part of ANSI/TIA-1057." + ::= { lldpExtensions 4795 } +-- editor note: replace xxxxx with real number at standard publication + +------------------------------------------------------------------------------ +------------------------------------------------------------------------------ +-- +-- LLDP-MED Information +-- +------------------------------------------------------------------------------ +------------------------------------------------------------------------------ + +lldpXMedNotifications OBJECT IDENTIFIER ::= { lldpXMedMIB 0 } +lldpXMedObjects OBJECT IDENTIFIER ::= { lldpXMedMIB 1 } + + +-- LLDP MED extension MIB groups + +lldpXMedConfig OBJECT IDENTIFIER ::= { lldpXMedObjects 1 } +lldpXMedLocalData OBJECT IDENTIFIER ::= { lldpXMedObjects 2 } +lldpXMedRemoteData OBJECT IDENTIFIER ::= { lldpXMedObjects 3 } + +-- textual conventions + +LldpXMedDeviceClass ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Device Class to which the device is a member. + + A value of notDefined(0) indicates that the device + has capabilities not covered by any of the LLDP-MED classes. + + A value of endpointClass1(1) indicates that the device + has endpoint class 1 capabilities. + + A value of endpointClass2(2) indicates that the device + has endpoint class 2 capabilities. + + A value of endpointClass3(3) indicates that the device + has endpoint class 3 capabilities. + + A value of networkConnectivity(4) indicates that the device + has network connectivity device capabilities. + " + + SYNTAX INTEGER { + notDefined(0), + endpointClass1(1), + endpointClass2(2), + endpointClass3(3), + networkConnectivity(4) + } + +-- LLDP-MED Capabilities TC + +LldpXMedCapabilities ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Bitmap that includes the MED organizationally defined set of LLDP + TLVs the device is capable of and whose transmission is allowed on + the local LLDP agent by network management. + + Each bit in the bitmap corresponds to an LLDP-MED subtype associated + with a specific TIA TR41.4 MED TLV. + + Having the bit 'capabilities(0)' set indicates that the LLDP + agent refers to the Capabilities TLVs. + + Having the bit 'networkPolicy(1)' set indicates that the LLDP + agent refers to the Network Policy TLVs. + + Having the bit 'location(2)' set indicates that + the LLDP agent refers to the Emergency Communications + System Location TLVs. + + Having the bit 'extendedPSE(3)' set indicates that + the LLDP agent refers to the Extended PoE TLVs with PSE + capabilities. + + Having the bit 'extendedPD(4)' set indicates that + the LLDP agent refers to the Extended PoE TLVs with PD + capabilities. + + Having the bit 'inventory(5)' set indicates that + the LLDP agent refers to the Hardware Revision, Firmware + Revision, Software Revision, Serial Number, Manufacturer Name, + Model Name, and Asset ID TLVs." + + SYNTAX BITS { + capabilities(0), + networkPolicy(1), + location(2), + extendedPSE(3), + extendedPD(4), + inventory(5) + } + + +-- Location Subtype Textual Convention + +LocationSubtype ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The location subtype advertised by the remote endpoint. + + A value coordinateBased(2) indicates that the location subtype + advertised by the endpoint is defined to use the relevant sub- + fields of the DHCP option for Coordinate LCI as specified in + ANSI/TIA-1057, Section 10.2.4.3.1. + + A value civicAddress(3) indicates that the location subtype + advertised by the endpoint is defined to use the relevant sub- + fields of the DHCP option for Civic Address as specified in + ANSI/TIA-1057, Section 10.2.4.3.2. + + A value elin(4) indicates that the location subtype + advertised by the endpoint is defined to use the Emergency + Location Information Number (ELIN) as specified in + ANSI/TIA-1057, Section 10.2.4.3.3." + SYNTAX INTEGER { + unknown(1), + coordinateBased(2), + civicAddress(3), + elin(4) + } + +-- Policy Application Type Textual Convention + +PolicyAppType ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "The media type that defines the primary function of the + application for the policy advertised by an endpoint. + + Having the bit voice(1) set indicates that the media type defining + a primary function of the application for the policy advertised on + the local port is voice. + + Having the bit voiceSignaling(3) set indicates that the media type + defining a primary function of the application for the policy + advertised on the local port is voice signaling. + + Having the bit guestVoice(4) set indicates that the media type + Defining a primary function of the application for the policy + advertised on the local port is guest voice. + + Having the bit guestVoiceSignaling(5) set indicates that the media + type defining a primary function of the application for the policy + advertised on the local port is guest voice signaling. + + Having the bit softPhoneVoice(6) set indicates that the media type + Defining a primary function of the application for the policy + advertised on the local port is softphone voice. + + Having the bit videoConferencing(7) set indicates that the media + type defining a primary function of the application for the policy + advertised on the local port is voice. + + Having the bit streamingVideo(8) set indicates that the media type + defining a primary function of the application for the policy + advertised on the local port is streaming video. + + Having the bit videoSignaling(2) set indicates that the media type + defining a primary function of the application for the policy + advertised on the local port is video signaling." + SYNTAX BITS { + unknown(0), + voice(1), + voiceSignaling(2), + guestVoice(3), + guestVoiceSignaling(4), + softPhoneVoice(5), + videoconferencing(6), + streamingVideo(7), + videoSignaling(8) + } + + +------------------------------------------------------------------------------ +-- MED - Configuration +------------------------------------------------------------------------------ + +lldpXMedLocDeviceClass OBJECT-TYPE + SYNTAX LldpXMedDeviceClass + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Local Device Class." + REFERENCE + " ANSI/TIA-1057, Section 10.2.2.2" + ::= { lldpXMedConfig 1 } + + +lldpXMedPortConfigTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedPortConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that controls selection of LLDP TLVs to be transmitted + on individual ports." + ::= { lldpXMedConfig 2 } + +lldpXMedPortConfigEntry OBJECT-TYPE + SYNTAX LldpXMedPortConfigEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP configuration information that controls the + transmission of the MED organizationally defined TLVs on + LLDP transmission capable ports. + + This configuration object augments the lldpPortConfigEntry of + the LLDP-MIB, therefore it is only present along with the port + configuration defined by the associated lldpPortConfigEntry + entry. + + Each active lldpXMedPortConfigEntry must be stored and + retrieved from non-volatile storage (along with the + corresponding lldpPortConfigEntry) after a re-initialization + of the management system." + AUGMENTS { lldpPortConfigEntry } + ::= { lldpXMedPortConfigTable 1 } + +LldpXMedPortConfigEntry ::= SEQUENCE { + lldpXMedPortCapSupported LldpXMedCapabilities, + lldpXMedPortConfigTLVsTxEnable LldpXMedCapabilities, + lldpXMedPortConfigNotifEnable TruthValue +} + +lldpXMedPortCapSupported OBJECT-TYPE + SYNTAX LldpXMedCapabilities + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap includes the MED organizationally defined set of LLDP + TLVs whose transmission is possible for the respective port + on the LLDP agent of the device. Each bit in the bitmap corresponds + to an LLDP-MED subtype associated with a specific TIA TR41.4 MED + optional TLV. If the bit is set, the agent supports the + corresponding TLV." + REFERENCE + "ANSI/TIA-1057, Section 10.2.2.3" + ::= { lldpXMedPortConfigEntry 1 } + +lldpXMedPortConfigTLVsTxEnable OBJECT-TYPE + SYNTAX LldpXMedCapabilities + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The lldpXMedPortConfigTLVsTxEnable, defined as a bitmap, + includes the MED organizationally defined set of LLDP + TLVs whose transmission is allowed on the local LLDP agent by + the network management. Each bit in the bitmap corresponds + to an LLDP-MED subtype associated with a specific TIA TR41.4 MED + optional TLV. If the bit is set, the agent will send the + corresponding TLV if the respective capability is supported per + port. + + Setting a bit with in this object for a non-supported capability + shall have no functional effect and will result in an inconsistent + value error returned to the management application. + + There are other rules and restrictions that prevent arbitrary + combinations of TLVs to be enabled on LLDP-MED devices according to + the device classes. These rules are defined in Section 10.2.1, + Tables 5 - 9 of ANSI/TIA-1057. In case a management application + attempts to set this object to a value that does not follow the rules, + the set operation shall have and will result in an inconsistent + value error returned to the management application. + + Setting this object to an empty set is valid and effectively + disables LLDP-MED on a per-port basis by disabling transmission of + all MED organizational TLVs. In this case the remote tables objects + in the LLDP-MED MIB corresponding to the respective port will not + be populated. + + The default value for lldpXMedPortConfigTLVsTxEnable object + is an empty set, which means no enumerated values are set. + + The value of this object must be restored from non-volatile + storage after a re-initialization of the management system." + REFERENCE + "ANSI/TIA-1057, Section 10.2.2.3" + ::= { lldpXMedPortConfigEntry 2 } + +lldpXMedPortConfigNotifEnable OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A value of 'true(1)' enables sending the topology change + traps on this port. + A value of 'false(2)' disables sending the topology change + traps on this port." + REFERENCE + " ANSI/TIA-1057, Section 12.3" + DEFVAL { false } + ::= { lldpXMedPortConfigEntry 3 } + + + +lldpXMedFastStartRepeatCount OBJECT-TYPE + SYNTAX Unsigned32 (1..10) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The number of times the fast start LLDPDU are being sent during the + activation of the fast start mechanism defined by LLDP-MED." + REFERENCE + " ANSI/TIA-1057, Section 11.2.1" + DEFVAL { 3 } + ::= { lldpXMedConfig 3 } + + + + +------------------------------------------------------------------------------ +-- LLDP-MED - Local Device Information +------------------------------------------------------------------------------ +--- +--- lldpXMedLocMediaPolicyTable: Local Media Policy +--- Information Table +--- +--- +lldpXMedLocMediaPolicyTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedLocMediaPolicyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one row per policy type per port + of media policy information (as a part of the MED + organizational extension) on the local system known + to this agent." + ::= { lldpXMedLocalData 1 } + +lldpXMedLocMediaPolicyEntry OBJECT-TYPE + SYNTAX LldpXMedLocMediaPolicyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a particular policy on a specific + port component." + INDEX { lldpLocPortNum, lldpXMedLocMediaPolicyAppType } + ::= { lldpXMedLocMediaPolicyTable 1 } + +LldpXMedLocMediaPolicyEntry ::= SEQUENCE { + lldpXMedLocMediaPolicyAppType PolicyAppType, + lldpXMedLocMediaPolicyVlanID Integer32, + lldpXMedLocMediaPolicyPriority Integer32, + lldpXMedLocMediaPolicyDscp Dscp, + lldpXMedLocMediaPolicyUnknown TruthValue, + lldpXMedLocMediaPolicyTagged TruthValue +} + +lldpXMedLocMediaPolicyAppType OBJECT-TYPE + SYNTAX PolicyAppType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The media type that defines the primary function of the + application for the policy advertised by an endpoint." + REFERENCE + "ANSI/TIA-1057, Section 10.2.3.1" + ::= { lldpXMedLocMediaPolicyEntry 1 } + +lldpXMedLocMediaPolicyVlanID OBJECT-TYPE + SYNTAX Integer32 (0|1..4094|4095) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An extension of the VLAN Identifier for the port, + as defined in IEEE 802.1P-1998. + + A value of 1 through 4094 is used to define a valid PVID. + + A value of 0 shall be used if the device is using priority tagged + frames, meaning that only the 802.1p priority level is significant + and the default VID of the ingress port is being used instead. + + A value of 4095 is reserved for implementation use." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.5" + ::= { lldpXMedLocMediaPolicyEntry 2 } + +lldpXMedLocMediaPolicyPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the 802.1p priority + which is associated with the given port on the + local system." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.6 " + ::= { lldpXMedLocMediaPolicyEntry 3 } + +lldpXMedLocMediaPolicyDscp OBJECT-TYPE + SYNTAX Dscp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the Differentiated Service + Code Point (DSCP) as defined in IETF RFC 2474 and RFC 2475 + which is associated with the given port on the local system." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.7" + ::= { lldpXMedLocMediaPolicyEntry 4 } + +lldpXMedLocMediaPolicyUnknown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value of 'true' indicates that the + network policy for the specified application type is + currently unknown. In this case, the VLAN ID, the + layer 2 priority and the DSCP value fields are ignored. + A value of 'false' indicates that this network policy + is defined " + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.2" + ::= { lldpXMedLocMediaPolicyEntry 5 } + +lldpXMedLocMediaPolicyTagged OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value of 'true' indicates that the application is using a + tagged VLAN. + A value of 'false' indicates that for the specific application + the device either is using an untagged VLAN or does not + support port based VLAN operation. In this case, both the + VLAN ID and the Layer 2 priority fields are ignored and + only the DSCP value has relevance " + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.3" + ::= { lldpXMedLocMediaPolicyEntry 6 } + + + +--- Inventory Information +--- Local Inventory Information transmitted by an endpoint + +lldpXMedLocHardwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific hardware revision string + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.1" + ::= { lldpXMedLocalData 2 } + +lldpXMedLocFirmwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific firmware revision string + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.2" + ::= { lldpXMedLocalData 3 } + +lldpXMedLocSoftwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific software revision string + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.3" + ::= { lldpXMedLocalData 4 } + +lldpXMedLocSerialNum OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific serial number + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.4" + ::= { lldpXMedLocalData 5 } + +lldpXMedLocMfgName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific manufacturer name + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.5" + ::= { lldpXMedLocalData 6 } + +lldpXMedLocModelName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific model name + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.6" + ::= { lldpXMedLocalData 7 } + +lldpXMedLocAssetID OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific asset tracking identifier + as advertised by the endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.7" + ::= { lldpXMedLocalData 8 } + + + +--- Location Information +--- Local Location Information transmitted by an endpoint +--- lldpXMedLocLocationTable - Location Information +--- + +lldpXMedLocLocationTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedLocLocationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains Location information as advertised + by the local system. + + The information may be configured per port by a Location + Information Server (LIS) or other management application. + + Multiple Location TLVs of different subtypes may be transmitted + in the same PDU. + + The information in this table MUST be stored in non-volatile-memory + and persist over restart/reboot sequences." + ::= { lldpXMedLocalData 9 } + +lldpXMedLocLocationEntry OBJECT-TYPE + SYNTAX LldpXMedLocLocationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about Location information for the local device." + INDEX { lldpLocPortNum, lldpXMedLocLocationSubtype} + ::= { lldpXMedLocLocationTable 1 } + +LldpXMedLocLocationEntry ::= SEQUENCE { + lldpXMedLocLocationSubtype LocationSubtype, + lldpXMedLocLocationInfo OCTET STRING + } + + + +lldpXMedLocLocationSubtype OBJECT-TYPE + SYNTAX LocationSubtype + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The location subtype advertised by the local device." + REFERENCE + "ANSI/TIA-1057, Section 10.2.4.2" + ::= { lldpXMedLocLocationEntry 1 } + + +lldpXMedLocLocationInfo OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..256)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "The location information. Parsing of this information is + dependent upon the location subtype, as defined by the value of the + lldpXMedLocLocationSubtype object. " + REFERENCE + "ANSI/TIA-1057, Section 10.2.4.3" + DEFVAL { "" } + ::= { lldpXMedLocLocationEntry 2 } + +--- Extended Power over Ethernet objects +--- + +lldpXMedLocXPoEDeviceType OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + pseDevice(2), + pdDevice(3), + none(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of Power-via-MDI (Power over Ethernet) advertised + by the local device. + + A value pseDevice(2) indicates that the device is advertised as a + Power Sourcing Entity (PSE). + + A value pdDevice(3) indicates that the device is advertised as a + Powered Device (PD). + + A value of none(4) indicates that the device does not support PoE." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.1" + ::= { lldpXMedLocalData 10 } + +--- Extended PoE - PSE objects + + + +--- PSE Port Table + +lldpXMedLocXPoEPSEPortTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedLocXPoEPSEPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains one row per port of PSE PoE + information on the local system known to this agent." + ::= { lldpXMedLocalData 11 } + +lldpXMedLocXPoEPSEPortEntry OBJECT-TYPE + SYNTAX LldpXMedLocXPoEPSEPortEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about a particular port PoE information." + INDEX { lldpLocPortNum } + ::= { lldpXMedLocXPoEPSEPortTable 1 } + +LldpXMedLocXPoEPSEPortEntry ::= SEQUENCE { + lldpXMedLocXPoEPSEPortPowerAv Gauge32, + lldpXMedLocXPoEPSEPortPDPriority INTEGER +} + +lldpXMedLocXPoEPSEPortPowerAv OBJECT-TYPE + SYNTAX Gauge32 (0..1023) + UNITS "tenth of watt" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the power available from the + PSE via this port expressed in units of 0.1 watts." + REFERENCE + " ANSI/TIA-1057, Section 10.2.5.4 " + ::= { lldpXMedLocXPoEPSEPortEntry 1 } + +lldpXMedLocXPoEPSEPortPDPriority OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + critical(2), + high(3), + low(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Reflects the PD power priority that is being advertised on this + PSE port. + + If both locally configure priority and + ldpXMedRemXPoEPDPowerPriority are available on this port, it is + a matter of local policy which one takes precedence. This object + reflects the active value on this port. + + If the priority is not configured or known by the PD, the value + unknown(1) will be returned. + + A value critical(2) indicates that the device advertises its power + Priority as critical, as per RFC 3621. + + A value high(3) indicates that the device advertises its power + Priority as high, as per RFC 3621. + + A value low(4) indicates that the device advertises its power + Priority as low, as per RFC 3621." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.3" + ::= { lldpXMedLocXPoEPSEPortEntry 2 } + + + +lldpXMedLocXPoEPSEPowerSource OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + primary(2), + backup(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of PSE Power Source advertised + by the local device. + + A value primary(2) indicates that the device advertises its power + source as primary. + + A value backup(3) indicates that the device advertises its power + Source as backup." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.2" + ::= { lldpXMedLocalData 12 } + + +--- Extended PoE - PD objects + +lldpXMedLocXPoEPDPowerReq OBJECT-TYPE + SYNTAX Gauge32 (0..1023) + UNITS "tenth of watt" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the power required by a + PD expressed in units of 0.1 watts." + REFERENCE + " ANSI/TIA-1057, Section 10.2.4.3 " + ::= { lldpXMedLocalData 13 } + +lldpXMedLocXPoEPDPowerSource OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + fromPSE(2), + local(3), + localAndPSE(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of Power Source advertised as being used + by the local device. + + A value fromPSE(2) indicates that the device advertises its power + source as received from a PSE. + + A value local(3) indicates that the device advertises its power + source as local. + + A value localAndPSE(4) indicates that the device advertises its + power source as using both local and PSE power." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.2" + ::= { lldpXMedLocalData 14 } + +lldpXMedLocXPoEPDPowerPriority OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + critical(2), + high(3), + low(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the priority advertised as being required by this PD. + + A value critical(2) indicates that the device advertises its power + Priority as critical, as per RFC 3621. + + A value high(3) indicates that the device advertises its power + Priority as high, as per RFC 3621. + + A value low(4) indicates that the device advertises its power + Priority as low, as per RFC 3621." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.3" + ::= { lldpXMedLocalData 15 } + + + +------------------------------------------------------------------------------ +-- LLDP-MED - Remote Devices Information +------------------------------------------------------------------------------ + + + +-- LLdpXMedRemCapabilitiesTable +-- this table is read by a manager to determine what capabilities +-- exists and are enabled on the remote system connected to the port + +-- The information in this table is based upon the information advertised +-- by the remote device and received on each port in the capabilities TLV + +lldpXMedRemCapabilitiesTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemCapabilitiesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A table that displays LLDP-MED capabilities of remote devices + connected to individual ports." + ::= { lldpXMedRemoteData 1 } + +lldpXMedRemCapabilitiesEntry OBJECT-TYPE + SYNTAX LldpXMedRemCapabilitiesEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "LLDP-MED capabilities of remote devices connected to the device + ports and communicating via LLDP-MED. + + The remote tables in the LLDP-MED MIB excepting this table may be + sparsely populate. An entry in one of these table is meaningful + and shall be populated by the agent only if the corresponding bits + for the respective function are set in the objects in this table. " + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXMedRemCapabilitiesTable 1 } + +LldpXMedRemCapabilitiesEntry ::= SEQUENCE { + lldpXMedRemCapSupported LldpXMedCapabilities, + lldpXMedRemCapCurrent LldpXMedCapabilities, + lldpXMedRemDeviceClass LldpXMedDeviceClass +} + +lldpXMedRemCapSupported OBJECT-TYPE + SYNTAX LldpXMedCapabilities + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap includes the MED organizationally defined set of LLDP + TLVs whose transmission is possible on the LLDP agent of the remote + device connected to this port. Each bit in the bitmap corresponds + to an LLDP-MED subtype associated with a specific TIA TR41.4 MED + optional TLV. If the bit is set, the agent has the capability + to support the corresponding TLV." + REFERENCE + "ANSI/TIA-1057, Sections 10.2.2.1" + ::= { lldpXMedRemCapabilitiesEntry 1 } + +lldpXMedRemCapCurrent OBJECT-TYPE + SYNTAX LldpXMedCapabilities + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The bitmap includes the MED organizationally defined set of LLDP + TLVs whose transmission is possible on the LLDP agent of the remote + device connected to this port. Each bit in the bitmap corresponds + to an LLDP-MED subtype associated with a specific TIA TR41.4 MED + optional TLV. If the bit is set, the agent currently supports the + corresponding TLV." + REFERENCE + "ANSI/TIA-1057, Sections 10.2.2.1" + ::= { lldpXMedRemCapabilitiesEntry 2 } + +lldpXMedRemDeviceClass OBJECT-TYPE + SYNTAX LldpXMedDeviceClass + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Device Class as advertised by the device remotely connected to the + port." + REFERENCE + " ANSI/TIA-1057, Section 10.2.2.2" + ::= { lldpXMedRemCapabilitiesEntry 3 } + + + + +--- +--- +--- lldpXMedRemMediaPolicyTable: Media Policy Table +--- +--- +lldpXMedRemMediaPolicyTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemMediaPolicyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains media policy information as advertised + by the remote system. + + This table may be sparsely populated. Entries in this table are + relevant only if the networkPolicy(0) bits in the + lldpXMedRemCapSupported and lldpXMedRemCapCurrent objects of the + corresponding ports are set." + ::= { lldpXMedRemoteData 2 } + +lldpXMedRemMediaPolicyEntry OBJECT-TYPE + SYNTAX LldpXMedRemMediaPolicyEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about the per port per policy type policy + information for a particular physical network connection." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex, + lldpXMedRemMediaPolicyAppType } + ::= { lldpXMedRemMediaPolicyTable 1 } + + +LldpXMedRemMediaPolicyEntry ::= SEQUENCE { + lldpXMedRemMediaPolicyAppType PolicyAppType, + lldpXMedRemMediaPolicyVlanID Integer32, + lldpXMedRemMediaPolicyPriority Integer32, + lldpXMedRemMediaPolicyDscp Dscp, + lldpXMedRemMediaPolicyUnknown TruthValue, + lldpXMedRemMediaPolicyTagged TruthValue +} + +lldpXMedRemMediaPolicyAppType OBJECT-TYPE + SYNTAX PolicyAppType + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The media type that defines the primary function of the + application for the policy advertised by the endpoint connected + remotely to this port." + REFERENCE + "ANSI/TIA-1057, Section 10.2.3.1" + ::= { lldpXMedRemMediaPolicyEntry 1 } + +lldpXMedRemMediaPolicyVlanID OBJECT-TYPE + SYNTAX Integer32 (0|1..4094|4095) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An extension of the VLAN Identifier for the remote system + connected to this port, as defined in IEEE 802.1P-1998. + + A value of 1 through 4094 is used to define a valid PVID. + + A value of 0 shall be used if the device is using priority tagged + frames, meaning that only the 802.1p priority level is significant + and the default VID of the ingress port is being used instead. + + A value of 4095 is reserved for implementation use." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.5" + ::= { lldpXMedRemMediaPolicyEntry 2 } + +lldpXMedRemMediaPolicyPriority OBJECT-TYPE + SYNTAX Integer32 (0..7) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the 802.1p priority + which is associated with the remote system connected at + given port." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.6" + ::= { lldpXMedRemMediaPolicyEntry 3 } + +lldpXMedRemMediaPolicyDscp OBJECT-TYPE + SYNTAX Dscp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the Differentiated Service + Code Point (DSCP) as defined in IETF RFC 2474 and RFC 2475 + which is associated with remote system connected at the port." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.7" + ::= { lldpXMedRemMediaPolicyEntry 4 } + +lldpXMedRemMediaPolicyUnknown OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value of 'true' indicates that the + network policy for the specified application type is + currently unknown. In this case, the VLAN ID, the + layer 2 priority and the DSCP value fields are ignored. + A value of 'false' indicates that this network policy + is defined." + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.2" + ::= { lldpXMedRemMediaPolicyEntry 5 } + +lldpXMedRemMediaPolicyTagged OBJECT-TYPE + SYNTAX TruthValue + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A value of 'true' indicates that the application is using a + tagged VLAN. + A value of 'false' indicates that for the specific application + the device either is using an untagged VLAN or does not + support port based VLAN operation. In this case, both the + VLAN ID and the Layer 2 priority fields are ignored and + only the DSCP value has relevance " + REFERENCE + " ANSI/TIA-1057, Section 10.2.3.3" + ::= { lldpXMedRemMediaPolicyEntry 6 } + + + + +--- lldpXMedRemInventoryTable - Remote Inventory Information +--- + +lldpXMedRemInventoryTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemInventoryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains inventory information as advertised + by the remote system. + + This table may be sparsely populated. Entries in this table are + relevant only if the inventory(2) bits in the + lldpXMedRemCapSupported and lldpXMedRemCapCurrent objects of the + corresponding ports are set " + ::= { lldpXMedRemoteData 3 } + +lldpXMedRemInventoryEntry OBJECT-TYPE + SYNTAX LldpXMedRemInventoryEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about inventory information for the remote devices + connected to the ports." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXMedRemInventoryTable 1 } + +LldpXMedRemInventoryEntry ::= SEQUENCE { + lldpXMedRemHardwareRev SnmpAdminString, + lldpXMedRemFirmwareRev SnmpAdminString, + lldpXMedRemSoftwareRev SnmpAdminString, + lldpXMedRemSerialNum SnmpAdminString, + lldpXMedRemMfgName SnmpAdminString, + lldpXMedRemModelName SnmpAdminString, + lldpXMedRemAssetID SnmpAdminString + } + +lldpXMedRemHardwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific hardware revision string + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.1" + ::= { lldpXMedRemInventoryEntry 1 } + +lldpXMedRemFirmwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific firmware revision string + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.2" + ::= { lldpXMedRemInventoryEntry 2 } + +lldpXMedRemSoftwareRev OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific software revision string + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.3" + ::= { lldpXMedRemInventoryEntry 3 } + +lldpXMedRemSerialNum OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific serial number + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.4" + ::= { lldpXMedRemInventoryEntry 4 } + +lldpXMedRemMfgName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific manufacturer name + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.5" + ::= { lldpXMedRemInventoryEntry 5 } + +lldpXMedRemModelName OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific model name + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.6" + ::= { lldpXMedRemInventoryEntry 6 } + +lldpXMedRemAssetID OBJECT-TYPE + SYNTAX SnmpAdminString (SIZE (0..32)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The vendor-specific asset tracking identifier + as advertised by the remote endpoint." + REFERENCE + " ANSI/TIA-1057, Section 10.2.6.7" + ::= { lldpXMedRemInventoryEntry 7 } + + +--- lldpXMedRemLocationTable - Remote Location Information +--- + +lldpXMedRemLocationTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemLocationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains Location information as advertised + by the remote system. + + This table may be sparsely populated. Entries in this table are + relevant only if the Location(3) bits in the + lldpXMedRemCapSupported and lldpXMedRemCapCurrent objects of the + corresponding ports are set " + ::= { lldpXMedRemoteData 4 } + +lldpXMedRemLocationEntry OBJECT-TYPE + SYNTAX LldpXMedRemLocationEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about Location information for the remote devices + connected to the ports." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex, + lldpXMedRemLocationSubtype} + ::= { lldpXMedRemLocationTable 1 } + +LldpXMedRemLocationEntry ::= SEQUENCE { + lldpXMedRemLocationSubtype LocationSubtype, + lldpXMedRemLocationInfo OCTET STRING + } + + +lldpXMedRemLocationSubtype OBJECT-TYPE + SYNTAX LocationSubtype + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "The location subtype advertised by the remote endpoint." + REFERENCE + "ANSI/TIA-1057, Section 10.2.4.2 " + ::= { lldpXMedRemLocationEntry 1 } + + +lldpXMedRemLocationInfo OBJECT-TYPE + SYNTAX OCTET STRING (SIZE (0..256)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The location information advertised by the remote endpoint. + Parsing of this information is dependent upon the location + subtype, as defined by the value of the corresponding + lldpXMedRemLocationSubType object. " + REFERENCE + "ANSI/TIA-1057, Section 10.2.4.3 " + ::= { lldpXMedRemLocationEntry 2 } + + +--- lldpXMedRemXPoETable - Information about Remote PoE Device Type +--- + +lldpXMedRemXPoETable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemXPoEEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains information about the PoE device type + as advertised by the remote system. + + This table is densely populated." + ::= { lldpXMedRemoteData 5 } + +lldpXMedRemXPoEEntry OBJECT-TYPE + SYNTAX LldpXMedRemXPoEEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about PoE type of the remote devices + connected to the ports." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXMedRemXPoETable 1 } + +LldpXMedRemXPoEEntry ::= SEQUENCE { + lldpXMedRemXPoEDeviceType INTEGER + } + + +lldpXMedRemXPoEDeviceType OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + pseDevice(2), + pdDevice(3), + none(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of Power-via-MDI (Power over Ethernet) advertised + by the remote device. + + A value pseDevice(2) indicates that the device is advertised as a + Power Sourcing Entity (PSE). + + A value pdDevice(3) indicates that the device is advertised as a + Powered Device (PD). + + A value none(4) indicates that the device does not support PoE." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.1" + ::= { lldpXMedRemXPoEEntry 1 } + + +--- lldpXMedRemXPoEPDTable - Extended PoE PSE Information from the remote device +--- + +lldpXMedRemXPoEPSETable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemXPoEPSEEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains extended PoE information as advertised + by the remote devices of PSE type. + + This table may be sparsely populated. Entries in this table are + relevant only if the extendedPSE(4) bits in the + lldpXMedRemCapSupported and lldpXMedRemCapCurrent objects of the + corresponding ports are set " + ::= { lldpXMedRemoteData 6 } + +lldpXMedRemXPoEPSEEntry OBJECT-TYPE + SYNTAX LldpXMedRemXPoEPSEEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about Extended PoE PSE information for + the remote devices connected to the ports." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXMedRemXPoEPSETable 1 } + +LldpXMedRemXPoEPSEEntry ::= SEQUENCE { + lldpXMedRemXPoEPSEPowerAv Gauge32, + lldpXMedRemXPoEPSEPowerSource INTEGER, + lldpXMedRemXPoEPSEPowerPriority INTEGER + } + + +lldpXMedRemXPoEPSEPowerAv OBJECT-TYPE + SYNTAX Gauge32 (0..1023) + UNITS "tenth of watt" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the power available from the + PSE via this port expressed in units of 0.1 watts on the remote + device." + REFERENCE + " ANSI/TIA-1057, Section 10.2.5.4" + ::= { lldpXMedRemXPoEPSEEntry 1 } + +lldpXMedRemXPoEPSEPowerSource OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + primary(2), + backup(3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of PSE Power Source advertised + by the remote device. + + A value primary(2) indicates that the device advertises its power + source as primary. + + A value backup(3) indicates that the device advertises its power + Source as backup." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.2" + ::= { lldpXMedRemXPoEPSEEntry 2 } + +lldpXMedRemXPoEPSEPowerPriority OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + critical(2), + high(3), + low(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the PSE power priority + advertised by the remote device. + + A value critical(2) indicates that the device advertises its power + priority as critical, as per RFC 3621. + + A value high(3) indicates that the device advertises its power + priority as high, as per RFC 3621. + + A value low(4) indicates that the device advertises its power + priority as low, as per RFC 3621." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.3" + ::= { lldpXMedRemXPoEPSEEntry 3 } + + + + +--- lldpXMedRemXPoEPDTable - Extended PoE PD Information from the remote device +--- + +lldpXMedRemXPoEPDTable OBJECT-TYPE + SYNTAX SEQUENCE OF LldpXMedRemXPoEPDEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "This table contains extended PoE information as advertised + by the remote devices of PD type. + + This table may be sparsely populated. Entries in this table are + relevant only if the extendedPD(5) bits in the + lldpXMedRemCapSupported and lldpXMedRemCapCurrent objects of the + corresponding ports are set " + ::= { lldpXMedRemoteData 7 } + +lldpXMedRemXPoEPDEntry OBJECT-TYPE + SYNTAX LldpXMedRemXPoEPDEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "Information about XPoEPD information for the remote devices + connected to the ports." + INDEX { lldpRemTimeMark, + lldpRemLocalPortNum, + lldpRemIndex } + ::= { lldpXMedRemXPoEPDTable 1 } + +LldpXMedRemXPoEPDEntry ::= SEQUENCE { + lldpXMedRemXPoEPDPowerReq Gauge32, + lldpXMedRemXPoEPDPowerSource INTEGER, + lldpXMedRemXPoEPDPowerPriority INTEGER + } + + +lldpXMedRemXPoEPDPowerReq OBJECT-TYPE + SYNTAX Gauge32 (0..1023) + UNITS "tenth of watt" + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "This object contains the value of the power required by a + PD connected remotely to the port + expressed in units of 0.1 watts." + REFERENCE + " ANSI/TIA-1057, Section 10.2.5.4 " + ::= { lldpXMedRemXPoEPDEntry 1 } + +lldpXMedRemXPoEPDPowerSource OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + fromPSE(2), + local(3), + localAndPSE(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the type of Power Source advertised as being used + by the device connected remotely to the port. + + A value fromPSE(2) indicates that the device advertises its power + source as received from a PSE. + + A value local(3) indicates that the device advertises its power + source as local. + + A value localAndPSE(4) indicates that the device advertises its + power source as using both local and PSE power." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.2" + ::= { lldpXMedRemXPoEPDEntry 2 } + +lldpXMedRemXPoEPDPowerPriority OBJECT-TYPE + SYNTAX INTEGER { + unknown(1), + critical(2), + high(3), + low(4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Defines the priority advertised as being required by the PD + connected remotely to the port. + + A value critical(2) indicates that the device advertises its power + Priority as critical, as per RFC 3621. + + A value high(3) indicates that the device advertises its power + Priority as high, as per RFC 3621. + + A value low(4) indicates that the device advertises its power + Priority as low, as per RFC 3621." + REFERENCE + "ANSI/TIA-1057, Section 10.2.5.3" + ::= { lldpXMedRemXPoEPDEntry 3 } + + + + + + + +--- + + +-- conformance information + +lldpXMedConformance OBJECT IDENTIFIER ::= { lldpXMedMIB 2 } +lldpXMedCompliances OBJECT IDENTIFIER ::= { lldpXMedConformance 1 } +lldpXMedGroups OBJECT IDENTIFIER ::= { lldpXMedConformance 2 } + +-- compliance statements + +lldpXMedCompliance MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The compliance statement for SNMP entities which implement + the LLDP MED extension MIB." + + MODULE -- this module + MANDATORY-GROUPS { lldpXMedConfigGroup, + lldpXMedRemSysGroup, + lldpXMedNotificationsGroup + } + GROUP lldpXMedOptMediaPolicyGroup + DESCRIPTION + "This group represents the information associated with + the LLDP-MED optional Media Policy TLVs, + therefore the agent may not implement them." + GROUP lldpXMedOptInventoryGroup + DESCRIPTION + "This group represents the information associated with + the LLDP-MED optional inventory TLVs, + therefore the agent may not implement them." + GROUP lldpXMedOptLocationGroup + DESCRIPTION + "This group represents the information associated with + the LLDP-MED optional Location TLVs, + therefore the agent may not implement them." + GROUP lldpXMedOptPoEPSEGroup + DESCRIPTION + "This group represents the information associated with + the LLDP-MED optional extended PoE PolicyTLVs, carrying + PSE information, therefore the agent may + not implement them." + GROUP lldpXMedOptPoEPDGroup + DESCRIPTION + " This group represents the information associated with + the LLDP-MED optional extended PoE Policy TLVs, carrying + PD information, therefore the agent may + not implement them." + ::= { lldpXMedCompliances 1 } + +-- MIB groupings + +lldpXMedConfigGroup OBJECT-GROUP + OBJECTS { + lldpXMedPortCapSupported, + lldpXMedPortConfigTLVsTxEnable, + lldpXMedPortConfigNotifEnable, + lldpXMedFastStartRepeatCount, + lldpXMedLocXPoEDeviceType, + lldpXMedLocDeviceClass + } + STATUS current + DESCRIPTION + "The collection of objects which are used to configure or + describe the configuration or behavior of the LLDP-MED + organizational extension implementation." + ::= { lldpXMedGroups 1 } + +lldpXMedOptMediaPolicyGroup OBJECT-GROUP + OBJECTS { + lldpXMedLocMediaPolicyVlanID, + lldpXMedLocMediaPolicyPriority, + lldpXMedLocMediaPolicyDscp, + lldpXMedLocMediaPolicyUnknown, + lldpXMedLocMediaPolicyTagged + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + MED organizational extensions for Media Policy Information." + ::= { lldpXMedGroups 2 } + + + +lldpXMedOptInventoryGroup OBJECT-GROUP + OBJECTS { + lldpXMedLocHardwareRev, + lldpXMedLocFirmwareRev, + lldpXMedLocSoftwareRev, + lldpXMedLocSerialNum, + lldpXMedLocMfgName, + lldpXMedLocModelName, + lldpXMedLocAssetID + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + MED organizational extension for inventory Information." + ::= { lldpXMedGroups 3 } +lldpXMedOptLocationGroup OBJECT-GROUP + OBJECTS { + lldpXMedLocLocationInfo + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + MED organizational extension for Location Information." + ::= { lldpXMedGroups 4 } + + +lldpXMedOptPoEPSEGroup OBJECT-GROUP + OBJECTS { + lldpXMedLocXPoEPSEPortPowerAv, + lldpXMedLocXPoEPSEPortPDPriority, + lldpXMedLocXPoEPSEPowerSource + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + MED organizational extensions for PoE PSE Information." + ::= { lldpXMedGroups 5 } + +lldpXMedOptPoEPDGroup OBJECT-GROUP + OBJECTS { + lldpXMedLocXPoEPDPowerReq, + lldpXMedLocXPoEPDPowerSource, + lldpXMedLocXPoEPDPowerPriority + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP + MED organizational extensions for PoE PD Information." + ::= { lldpXMedGroups 6 } + +lldpXMedRemSysGroup OBJECT-GROUP + OBJECTS { + lldpXMedRemCapSupported, + lldpXMedRemCapCurrent, + lldpXMedRemDeviceClass, + lldpXMedRemMediaPolicyVlanID, + lldpXMedRemMediaPolicyPriority, + lldpXMedRemMediaPolicyDscp, + lldpXMedRemMediaPolicyUnknown, + lldpXMedRemMediaPolicyTagged, + lldpXMedRemHardwareRev, + lldpXMedRemFirmwareRev, + lldpXMedRemSoftwareRev, + lldpXMedRemSerialNum, + lldpXMedRemMfgName, + lldpXMedRemModelName, + lldpXMedRemAssetID, + lldpXMedRemLocationInfo, + lldpXMedRemXPoEDeviceType, + lldpXMedRemXPoEPSEPowerAv, + lldpXMedRemXPoEPSEPowerSource, + lldpXMedRemXPoEPSEPowerPriority, + lldpXMedRemXPoEPDPowerReq, + lldpXMedRemXPoEPDPowerSource, + lldpXMedRemXPoEPDPowerPriority + } + STATUS current + DESCRIPTION + "The collection of objects which are used to represent LLDP- + MED organizational extension Remote Device Information." + ::= { lldpXMedGroups 7 } + + +-- LLDP MED Extension Notifications +-- Transmission of LLDP MED Extension Notification is controlled by the +-- lldpNotificationInterval object in the LLDP MIB defined in +-- IEEE 802.1AB-2005 + +lldpXMedTopologyChangeDetected NOTIFICATION-TYPE + OBJECTS { lldpRemChassisIdSubtype, + lldpRemChassisId, + lldpXMedRemDeviceClass + } + STATUS current +DESCRIPTION + "A notification generated by the local device sensing + a change in the topology that indicates that a new remote + device attached to a local port, or a remote device disconnected + or moved from one port to another." + ::= { lldpXMedNotifications 1 } + + + +lldpXMedNotificationsGroup NOTIFICATION-GROUP + NOTIFICATIONS { lldpXMedTopologyChangeDetected } + STATUS current + DESCRIPTION + "Notifications sent by an LLDP-MED agent." + ::= { lldpXMedGroups 8 } + + + + +END diff --git a/misc/config_definitions.json b/misc/config_definitions.json index 407b90096d10..6b2581d51702 100644 --- a/misc/config_definitions.json +++ b/misc/config_definitions.json @@ -6,7 +6,7 @@ "units": "days", "group": "auth", "section": "ad", - "order": 2, + "order": 20, "type": "integer" }, "addhost_alwayscheckip": { @@ -377,12 +377,6 @@ }, "type": "array" }, - "auth_ad_base_dn": { - "group": "auth", - "section": "ad", - "order": 1, - "type": "text" - }, "auth.socialite.redirect": { "group": "auth", "section": "socialite", @@ -397,7 +391,6 @@ "type": "boolean", "default": false }, - "auth.socialite.configs": { "group": "auth", "section": "socialite", @@ -406,34 +399,51 @@ "validate": { "value": "array", "value.*": "array", - "value.*.listener": ["not_regex:/[:|@]/"], - "value.*.listener": ["regex:/^\\\\SocialiteProviders\\\\[^\\\\]+\\\\[^\\\\]+ExtendSocialite$/"], + "value.*.listener": ["not_regex:/[:|@]/", "regex:/^\\\\SocialiteProviders\\\\[^\\\\]+\\\\[^\\\\]+ExtendSocialite$/"], "value.*.redirect": "url", "value.saml.metadata": "url_or_xml", "value.saml.acs": "url", "value.saml.entityid": "url" } }, - + "auth_ad_base_dn": { + "group": "auth", + "section": "ad", + "order": 3, + "type": "text" + }, "auth_ad_check_certificates": { "default": false, "group": "auth", "section": "ad", - "order": 1, + "order": 5, "type": "boolean" }, + "auth_ad_debug": { + "default": false, + "group": "auth", + "section": "ad", + "order": 20, + "type": "boolean" + }, + "auth_ad_domain": { + "group": "auth", + "section": "ad", + "order": 2, + "type": "text" + }, "auth_ad_group_filter": { "default": "(objectclass=group)", "group": "auth", "section": "ad", - "order": 1, + "order": 7, "type": "text" }, "auth_ad_groups": { "default": {}, "group": "auth", "section": "ad", - "order": 4, + "order": 8, "type": "group-role-map", "options": { "groupPlaceholder": "Group Name" @@ -449,19 +459,19 @@ "default": "(objectclass=user)", "group": "auth", "section": "ad", - "order": 0, + "order": 6, "type": "text" }, "auth_ad_binddn": { "group": "auth", "section": "ad", - "order": 9, + "order": 11, "type": "text" }, "auth_ad_bindpassword": { "group": "auth", "section": "ad", - "order": 8, + "order": 12, "type": "password" }, "auth_ad_binduser": { @@ -473,20 +483,24 @@ "auth_ad_url": { "group": "auth", "section": "ad", - "order": 11, - "type": "text" + "order": 1, + "type": "text", + "validate": { + "value": "regex:#(ldaps?://[\\w.]+\\s+)+#" + } }, - "auth_ad_domain": { + "auth_ad_require_groupmembership": { + "default": false, "group": "auth", "section": "ad", - "order": 12, - "type": "text" + "order": 8, + "type": "boolean" }, "auth_ad_starttls": { "default": "disabled", "group": "auth", "section": "ad", - "order": 13, + "order": 4, "type": "select", "options": { "disabled": "Disabled", @@ -1066,6 +1080,13 @@ "default": false, "type": "boolean" }, + "discovery_modules.core": { + "default": true, + "type": "boolean", + "validate": { + "value": "boolean|accepted" + } + }, "discovery_modules.os": { "order": 230, "group": "discovery", @@ -1413,12 +1434,16 @@ "section": "availability", "order": 1, "default": [ - "86400", - "604800", - "2592000", - "31536000" + 86400, + 604800, + 2592000, + 31536000 ], - "type": "array" + "type": "array", + "validate": { + "value": "array", + "value.*": "int" + } }, "graphing.availability_consider_maintenance": { "group": "poller", @@ -4680,6 +4705,13 @@ "plugin_dir": { "type": "directory" }, + "poller_modules.core": { + "default": true, + "type": "boolean", + "validate": { + "value": "boolean|accepted" + } + }, "poller_modules.unix-agent": { "order": 420, "group": "poller", diff --git a/resources/views/layouts/librenmsv1.blade.php b/resources/views/layouts/librenmsv1.blade.php index 80f400ad720c..8d65f5d3f65d 100644 --- a/resources/views/layouts/librenmsv1.blade.php +++ b/resources/views/layouts/librenmsv1.blade.php @@ -42,7 +42,7 @@ - + @foreach(LibreNMS\Config::get('webui.custom_css', []) as $custom_css) diff --git a/tests/CommonFunctionsTest.php b/tests/CommonFunctionsTest.php index a27c1c49865f..89bb12ab5e2a 100644 --- a/tests/CommonFunctionsTest.php +++ b/tests/CommonFunctionsTest.php @@ -29,6 +29,7 @@ use LibreNMS\Config; use LibreNMS\Enum\PortAssociationMode; use LibreNMS\Util\Clean; +use LibreNMS\Util\StringHelpers; use LibreNMS\Util\Validate; class CommonFunctionsTest extends TestCase @@ -106,11 +107,11 @@ public function testDisplay(): void public function testStringToClass(): void { - $this->assertSame('LibreNMS\OS\Os', str_to_class('OS', 'LibreNMS\\OS\\')); - $this->assertSame('SpacesName', str_to_class('spaces name')); - $this->assertSame('DashName', str_to_class('dash-name')); - $this->assertSame('UnderscoreName', str_to_class('underscore_name')); - $this->assertSame('LibreNMS\\AllOfThemName', str_to_class('all OF-thEm_NaMe', 'LibreNMS\\')); + $this->assertSame('LibreNMS\OS\Os', StringHelpers::toClass('OS', 'LibreNMS\\OS\\')); + $this->assertSame('SpacesName', StringHelpers::toClass('spaces name', null)); + $this->assertSame('DashName', StringHelpers::toClass('dash-name', null)); + $this->assertSame('UnderscoreName', StringHelpers::toClass('underscore_name', null)); + $this->assertSame('LibreNMS\\AllOfThemName', StringHelpers::toClass('all OF-thEm_NaMe', 'LibreNMS\\')); } public function testIsValidHostname(): void diff --git a/tests/Feature/SnmpTraps/BgpTrapTest.php b/tests/Feature/SnmpTraps/BgpTrapTest.php index 11388376b727..e428af0286f0 100644 --- a/tests/Feature/SnmpTraps/BgpTrapTest.php +++ b/tests/Feature/SnmpTraps/BgpTrapTest.php @@ -31,6 +31,7 @@ use LibreNMS\Config; use LibreNMS\Enum\Severity; use LibreNMS\Tests\Traits\RequiresDatabase; +use LibreNMS\Util\AutonomousSystem; class BgpTrapTest extends SnmpTrapTestCase { @@ -53,7 +54,7 @@ public function testBgpUp(): void SNMPv2-MIB::snmpTrapOID.0 BGP4-MIB::bgpEstablished BGP4-MIB::bgpPeerLastError.$bgppeer->bgpPeerIdentifier \"04 00 \" BGP4-MIB::bgpPeerState.$bgppeer->bgpPeerIdentifier established\n", - "SNMP Trap: BGP Up $bgppeer->bgpPeerIdentifier " . get_astext($bgppeer->bgpPeerRemoteAs) . ' is now established', + "SNMP Trap: BGP Up $bgppeer->bgpPeerIdentifier " . AutonomousSystem::get($bgppeer->bgpPeerRemoteAs)->name() . ' is now established', 'Could not handle bgpEstablished', [Severity::Ok, 'bgpPeer', $bgppeer->bgpPeerIdentifier], $device, @@ -79,7 +80,7 @@ public function testBgpDown(): void SNMPv2-MIB::snmpTrapOID.0 BGP4-MIB::bgpBackwardTransition BGP4-MIB::bgpPeerLastError.$bgppeer->bgpPeerIdentifier \"04 00 \" BGP4-MIB::bgpPeerState.$bgppeer->bgpPeerIdentifier idle\n", - "SNMP Trap: BGP Down $bgppeer->bgpPeerIdentifier " . get_astext($bgppeer->bgpPeerRemoteAs) . ' is now idle', + "SNMP Trap: BGP Down $bgppeer->bgpPeerIdentifier " . AutonomousSystem::get($bgppeer->bgpPeerRemoteAs)->name() . ' is now idle', 'Could not handle bgpBackwardTransition', [Severity::Error, 'bgpPeer', $bgppeer->bgpPeerIdentifier], $device, diff --git a/tests/data/aviat-wtm.json b/tests/data/aviat-wtm.json index 9b05094ef381..6896ae2fd2fe 100644 --- a/tests/data/aviat-wtm.json +++ b/tests/data/aviat-wtm.json @@ -14,7 +14,7 @@ "os": "aviat-wtm", "type": "wireless", "serial": "AAA9999A999", - "icon": "aviat.png" + "icon": "aviat.svg" } ] }, diff --git a/tests/data/cnmatrix.json b/tests/data/cnmatrix.json new file mode 100644 index 000000000000..9c5514683816 --- /dev/null +++ b/tests/data/cnmatrix.json @@ -0,0 +1,3510 @@ +{ + "os": { + "discovery": { + "devices": [ + { + "sysName": null, + "sysObjectID": ".1.3.6.1.4.1.17713.24", + "sysDescr": "Cambium Networks cnMatrix TX1012-P-DC Ethernet Switch HW:01 SW:5.0.1-r4", + "sysContact": "", + "version": "5.0.1-r4", + "hardware": "TX1012-P-DC", + "features": null, + "location": "", + "os": "cnmatrix", + "type": "network", + "serial": "ABCDEF0123456789", + "icon": "cambium.svg" + } + ] + }, + "poller": "matches discovery" + }, + "ports": { + "discovery": { + "ports": [ + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 1", + "ifName": "Gi0/1", + "portName": null, + "ifIndex": 1, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 2", + "ifName": "Gi0/2", + "portName": null, + "ifIndex": 2, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 3", + "ifName": "Gi0/3", + "portName": null, + "ifIndex": 3, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "POP1-Power", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 4", + "ifName": "Gi0/4", + "portName": null, + "ifIndex": 4, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 5", + "ifName": "Gi0/5", + "portName": null, + "ifIndex": 5, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 6", + "ifName": "Gi0/6", + "portName": null, + "ifIndex": 6, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 7", + "ifName": "Gi0/7", + "portName": null, + "ifIndex": 7, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 8", + "ifName": "Gi0/8", + "portName": null, + "ifIndex": 8, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 25", + "ifName": "Ex0/1", + "portName": null, + "ifIndex": 25, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Link to Lab NCS", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 26", + "ifName": "Ex0/2", + "portName": null, + "ifIndex": 26, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "POP1-Data", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 27", + "ifName": "Ex0/3", + "portName": null, + "ifIndex": 27, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 27", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 28", + "ifName": "Ex0/4", + "portName": null, + "ifIndex": 28, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 28", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "L3IPVLAN Interface", + "ifName": "vlan1", + "portName": null, + "ifIndex": 61, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "l3ipvlan", + "ifAlias": "L3IPVLAN Interface", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "L3IPVLAN Interface", + "ifName": "vlan200", + "portName": null, + "ifIndex": 62, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "l3ipvlan", + "ifAlias": "L3IPVLAN Interface", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + } + ] + }, + "poller": { + "ports": [ + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 1", + "ifName": "Gi0/1", + "portName": null, + "ifIndex": 1, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "1", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 2", + "ifName": "Gi0/2", + "portName": null, + "ifIndex": 2, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "1", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 3", + "ifName": "Gi0/3", + "portName": null, + "ifIndex": 3, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "POP1-Power", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "200", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 4", + "ifName": "Gi0/4", + "portName": null, + "ifIndex": 4, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "999", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 5", + "ifName": "Gi0/5", + "portName": null, + "ifIndex": 5, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "999", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 6", + "ifName": "Gi0/6", + "portName": null, + "ifIndex": 6, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "999", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 7", + "ifName": "Gi0/7", + "portName": null, + "ifIndex": 7, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "200", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 8", + "ifName": "Gi0/8", + "portName": null, + "ifIndex": 8, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "260", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 25", + "ifName": "Ex0/1", + "portName": null, + "ifIndex": 25, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Link to Lab NCS", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "1", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 26", + "ifName": "Ex0/2", + "portName": null, + "ifIndex": 26, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "POP1-Data", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "3297", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 27", + "ifName": "Ex0/3", + "portName": null, + "ifIndex": 27, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 27", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "1", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Ethernet Interface Port 28", + "ifName": "Ex0/4", + "portName": null, + "ifIndex": 28, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Ethernet Interface Port 28", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": "1", + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "L3IPVLAN Interface", + "ifName": "vlan1", + "portName": null, + "ifIndex": 61, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "l3ipvlan", + "ifAlias": "L3IPVLAN Interface", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "L3IPVLAN Interface", + "ifName": "vlan200", + "portName": null, + "ifIndex": 62, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "l3ipvlan", + "ifAlias": "L3IPVLAN Interface", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + } + ] + } + }, + "processors": { + "discovery": { + "processors": [ + { + "entPhysicalIndex": 0, + "hrDeviceIndex": 0, + "processor_oid": ".1.3.6.1.4.1.2076.81.1.68.0", + "processor_index": "0", + "processor_type": "cpuUsage", + "processor_usage": 1, + "processor_descr": "Processor", + "processor_precision": 1, + "processor_perc_warn": 75 + } + ] + }, + "poller": "matches discovery" + }, + "mempools": { + "discovery": { + "mempools": [ + { + "mempool_index": "0", + "entPhysicalIndex": null, + "mempool_type": "cnmatrix", + "mempool_class": "system", + "mempool_precision": 1, + "mempool_descr": "Memory", + "mempool_perc": 58, + "mempool_perc_oid": ".1.3.6.1.4.1.2076.81.1.73.0", + "mempool_used": 58, + "mempool_used_oid": null, + "mempool_free": 42, + "mempool_free_oid": null, + "mempool_total": 100, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 90 + } + ] + }, + "poller": "matches discovery" + }, + "sensors": { + "discovery": { + "sensors": [ + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.1", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.1", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 1 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.2", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.2", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 2 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.3", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.3", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 3 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0.456, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.4", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.4", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 4 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.5", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.5", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 5 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.6", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.6", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 6 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.7", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.7", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 7 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "current", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.3.1.8", + "sensor_index": "fsPethPsPortPowerMeasurementsAmperage.1.8", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 8 Amperage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.1", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.1", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 1 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.2", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.2", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 2 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.3", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.3", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 3 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 24.5, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.4", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.4", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 4 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.5", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.5", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 5 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.6", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.6", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 6 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.7", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.7", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 7 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "power", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.5.1.8", + "sensor_index": "fsPethPsPortPowerMeasurementsWattage.1.8", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 8 Wattage", + "group": null, + "sensor_divisor": 1000, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "temperature", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.81.1.66.0", + "sensor_index": "issSwitchCurrentTemperature.0", + "sensor_type": "cnmatrix", + "sensor_descr": "System Temperature", + "group": null, + "sensor_divisor": 1, + "sensor_multiplier": 1, + "sensor_current": 43, + "sensor_limit": 63, + "sensor_limit_warn": null, + "sensor_limit_low": 33, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.1", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.1", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 1 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.2", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.2", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 2 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.3", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.3", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 3 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 53.6, + "sensor_limit": 61.64, + "sensor_limit_warn": null, + "sensor_limit_low": 45.56, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.4", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.4", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 4 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.5", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.5", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 5 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.6", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.6", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 6 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.7", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.7", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 7 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "voltage", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.2076.103.1.3.1.4.1.8", + "sensor_index": "fsPethPsPortPowerMeasurementsVoltage.1.8", + "sensor_type": "cnmatrix", + "sensor_descr": "Port 8 Voltage", + "group": null, + "sensor_divisor": 10, + "sensor_multiplier": 1, + "sensor_current": 0, + "sensor_limit": 0, + "sensor_limit_warn": null, + "sensor_limit_low": 0, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + } + ] + }, + "poller": "matches discovery" + } +} diff --git a/tests/data/cnwave60.json b/tests/data/cnwave60.json new file mode 100644 index 000000000000..1f71a6db9373 --- /dev/null +++ b/tests/data/cnwave60.json @@ -0,0 +1,9835 @@ +{ + "os": { + "discovery": { + "devices": [ + { + "sysName": null, + "sysObjectID": ".1.3.6.1.4.1.17713.60.1", + "sysDescr": "Cambium cnWave V3000 Distribution Node, Version 1.2.2.1", + "sysContact": "", + "version": "1.2.2.1", + "hardware": "V3000", + "features": null, + "location": "", + "os": "cnwave60", + "type": "wireless", + "serial": null, + "icon": "cambium.svg" + } + ] + }, + "poller": "matches discovery" + }, + "ports": { + "discovery": { + "ports": [ + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "lo", + "ifName": "lo", + "portName": null, + "ifIndex": 1, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "softwareLoopback", + "ifAlias": "lo", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic1", + "ifName": "nic1", + "portName": null, + "ifIndex": 2, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic2", + "ifName": "nic2", + "portName": null, + "ifIndex": 3, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic3", + "ifName": "nic3", + "portName": null, + "ifIndex": 4, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "sit0", + "ifName": "sit0", + "portName": null, + "ifIndex": 5, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "tunnel", + "ifAlias": "sit0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "ip6tnl0", + "ifName": "ip6tnl0", + "portName": null, + "ifIndex": 6, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "tunnel", + "ifAlias": "ip6tnl0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "ip6gre0", + "ifName": "ip6gre0", + "portName": null, + "ifIndex": 7, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "other", + "ifAlias": "ip6gre0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "br0", + "ifName": "br0", + "portName": null, + "ifIndex": 8, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "br0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Qualcomm Device 1201", + "ifName": "wlan0", + "portName": null, + "ifIndex": 9, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Qualcomm Device 1201", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "br0.260", + "ifName": "br0.260", + "portName": null, + "ifIndex": 10, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "br0.260", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra0", + "ifName": "terra0", + "portName": null, + "ifIndex": 11, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra1", + "ifName": "terra1", + "portName": null, + "ifIndex": 12, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra2", + "ifName": "terra2", + "portName": null, + "ifIndex": 13, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra3", + "ifName": "terra3", + "portName": null, + "ifIndex": 14, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra4", + "ifName": "terra4", + "portName": null, + "ifIndex": 15, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra5", + "ifName": "terra5", + "portName": null, + "ifIndex": 16, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra6", + "ifName": "terra6", + "portName": null, + "ifIndex": 17, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra7", + "ifName": "terra7", + "portName": null, + "ifIndex": 18, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra8", + "ifName": "terra8", + "portName": null, + "ifIndex": 19, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra9", + "ifName": "terra9", + "portName": null, + "ifIndex": 20, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra9", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra10", + "ifName": "terra10", + "portName": null, + "ifIndex": 21, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra10", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra11", + "ifName": "terra11", + "portName": null, + "ifIndex": 22, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra11", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra12", + "ifName": "terra12", + "portName": null, + "ifIndex": 23, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra12", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra13", + "ifName": "terra13", + "portName": null, + "ifIndex": 24, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra13", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra14", + "ifName": "terra14", + "portName": null, + "ifIndex": 25, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra14", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra15", + "ifName": "terra15", + "portName": null, + "ifIndex": 26, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra15", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre0", + "ifName": "l2gre0", + "portName": null, + "ifIndex": 27, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre1", + "ifName": "l2gre1", + "portName": null, + "ifIndex": 28, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre2", + "ifName": "l2gre2", + "portName": null, + "ifIndex": 29, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre3", + "ifName": "l2gre3", + "portName": null, + "ifIndex": 30, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre4", + "ifName": "l2gre4", + "portName": null, + "ifIndex": 31, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre5", + "ifName": "l2gre5", + "portName": null, + "ifIndex": 32, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre6", + "ifName": "l2gre6", + "portName": null, + "ifIndex": 33, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre7", + "ifName": "l2gre7", + "portName": null, + "ifIndex": 34, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre8", + "ifName": "l2gre8", + "portName": null, + "ifIndex": 35, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre9", + "ifName": "l2gre9", + "portName": null, + "ifIndex": 36, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre9", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre10", + "ifName": "l2gre10", + "portName": null, + "ifIndex": 37, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre10", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre11", + "ifName": "l2gre11", + "portName": null, + "ifIndex": 38, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre11", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre12", + "ifName": "l2gre12", + "portName": null, + "ifIndex": 39, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre12", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre13", + "ifName": "l2gre13", + "portName": null, + "ifIndex": 40, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre13", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre14", + "ifName": "l2gre14", + "portName": null, + "ifIndex": 41, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre14", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre15", + "ifName": "l2gre15", + "portName": null, + "ifIndex": 42, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre15", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre16", + "ifName": "l2gre16", + "portName": null, + "ifIndex": 43, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre16", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre17", + "ifName": "l2gre17", + "portName": null, + "ifIndex": 44, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre17", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre18", + "ifName": "l2gre18", + "portName": null, + "ifIndex": 45, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre18", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre19", + "ifName": "l2gre19", + "portName": null, + "ifIndex": 46, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre19", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre20", + "ifName": "l2gre20", + "portName": null, + "ifIndex": 47, + "ifSpeed": null, + "ifSpeed_prev": null, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": null, + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre20", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": null, + "ifInUcastPkts_prev": null, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": null, + "ifOutUcastPkts_prev": null, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": null, + "ifInErrors_prev": null, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": null, + "ifOutErrors_prev": null, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": null, + "ifInOctets_prev": null, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": null, + "ifOutOctets_prev": null, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": null, + "ifInNUcastPkts_prev": null, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": null, + "ifOutNUcastPkts_prev": null, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": null, + "ifInDiscards_prev": null, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": null, + "ifOutDiscards_prev": null, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": null, + "ifInUnknownProtos_prev": null, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": null, + "ifInBroadcastPkts_prev": null, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": null, + "ifOutBroadcastPkts_prev": null, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": null, + "ifInMulticastPkts_prev": null, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": null, + "ifOutMulticastPkts_prev": null, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + } + ] + }, + "poller": { + "ports": [ + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "lo", + "ifName": "lo", + "portName": null, + "ifIndex": 1, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "softwareLoopback", + "ifAlias": "lo", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic1", + "ifName": "nic1", + "portName": null, + "ifIndex": 2, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic2", + "ifName": "nic2", + "portName": null, + "ifIndex": 3, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "nic3", + "ifName": "nic3", + "portName": null, + "ifIndex": 4, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "nic3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "sit0", + "ifName": "sit0", + "portName": null, + "ifIndex": 5, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "tunnel", + "ifAlias": "sit0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "ip6tnl0", + "ifName": "ip6tnl0", + "portName": null, + "ifIndex": 6, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "tunnel", + "ifAlias": "ip6tnl0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "ip6gre0", + "ifName": "ip6gre0", + "portName": null, + "ifIndex": 7, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "other", + "ifAlias": "ip6gre0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "br0", + "ifName": "br0", + "portName": null, + "ifIndex": 8, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "br0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "Qualcomm Device 1201", + "ifName": "wlan0", + "portName": null, + "ifIndex": 9, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "Qualcomm Device 1201", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "br0.260", + "ifName": "br0.260", + "portName": null, + "ifIndex": 10, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "br0.260", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra0", + "ifName": "terra0", + "portName": null, + "ifIndex": 11, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra1", + "ifName": "terra1", + "portName": null, + "ifIndex": 12, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra2", + "ifName": "terra2", + "portName": null, + "ifIndex": 13, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra3", + "ifName": "terra3", + "portName": null, + "ifIndex": 14, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra4", + "ifName": "terra4", + "portName": null, + "ifIndex": 15, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra5", + "ifName": "terra5", + "portName": null, + "ifIndex": 16, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra6", + "ifName": "terra6", + "portName": null, + "ifIndex": 17, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra7", + "ifName": "terra7", + "portName": null, + "ifIndex": 18, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra8", + "ifName": "terra8", + "portName": null, + "ifIndex": 19, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra9", + "ifName": "terra9", + "portName": null, + "ifIndex": 20, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra9", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra10", + "ifName": "terra10", + "portName": null, + "ifIndex": 21, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra10", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra11", + "ifName": "terra11", + "portName": null, + "ifIndex": 22, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra11", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra12", + "ifName": "terra12", + "portName": null, + "ifIndex": 23, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra12", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra13", + "ifName": "terra13", + "portName": null, + "ifIndex": 24, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra13", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra14", + "ifName": "terra14", + "portName": null, + "ifIndex": 25, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra14", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "terra15", + "ifName": "terra15", + "portName": null, + "ifIndex": 26, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "down", + "ifOperStatus_prev": "down", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "terra15", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre0", + "ifName": "l2gre0", + "portName": null, + "ifIndex": 27, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre0", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre1", + "ifName": "l2gre1", + "portName": null, + "ifIndex": 28, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre1", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre2", + "ifName": "l2gre2", + "portName": null, + "ifIndex": 29, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre2", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre3", + "ifName": "l2gre3", + "portName": null, + "ifIndex": 30, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre3", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre4", + "ifName": "l2gre4", + "portName": null, + "ifIndex": 31, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre4", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre5", + "ifName": "l2gre5", + "portName": null, + "ifIndex": 32, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre5", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre6", + "ifName": "l2gre6", + "portName": null, + "ifIndex": 33, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre6", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre7", + "ifName": "l2gre7", + "portName": null, + "ifIndex": 34, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre7", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre8", + "ifName": "l2gre8", + "portName": null, + "ifIndex": 35, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre8", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre9", + "ifName": "l2gre9", + "portName": null, + "ifIndex": 36, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre9", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre10", + "ifName": "l2gre10", + "portName": null, + "ifIndex": 37, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre10", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre11", + "ifName": "l2gre11", + "portName": null, + "ifIndex": 38, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre11", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre12", + "ifName": "l2gre12", + "portName": null, + "ifIndex": 39, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre12", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre13", + "ifName": "l2gre13", + "portName": null, + "ifIndex": 40, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre13", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre14", + "ifName": "l2gre14", + "portName": null, + "ifIndex": 41, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre14", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre15", + "ifName": "l2gre15", + "portName": null, + "ifIndex": 42, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre15", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre16", + "ifName": "l2gre16", + "portName": null, + "ifIndex": 43, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre16", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre17", + "ifName": "l2gre17", + "portName": null, + "ifIndex": 44, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre17", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre18", + "ifName": "l2gre18", + "portName": null, + "ifIndex": 45, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre18", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre19", + "ifName": "l2gre19", + "portName": null, + "ifIndex": 46, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre19", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + }, + { + "port_descr_type": null, + "port_descr_descr": null, + "port_descr_circuit": null, + "port_descr_speed": null, + "port_descr_notes": null, + "ifDescr": "l2gre20", + "ifName": "l2gre20", + "portName": null, + "ifIndex": 47, + "ifSpeed": null, + "ifSpeed_prev": 0, + "ifConnectorPresent": null, + "ifOperStatus": "up", + "ifOperStatus_prev": "up", + "ifAdminStatus": null, + "ifAdminStatus_prev": null, + "ifDuplex": null, + "ifMtu": null, + "ifType": "ethernetCsmacd", + "ifAlias": "l2gre20", + "ifPhysAddress": null, + "ifLastChange": 0, + "ifVlan": null, + "ifTrunk": null, + "ignore": 0, + "disabled": 0, + "deleted": 0, + "pagpOperationMode": null, + "pagpPortState": null, + "pagpPartnerDeviceId": null, + "pagpPartnerLearnMethod": null, + "pagpPartnerIfIndex": null, + "pagpPartnerGroupIfIndex": null, + "pagpPartnerDeviceName": null, + "pagpEthcOperationMode": null, + "pagpDeviceId": null, + "pagpGroupIfIndex": null, + "ifInUcastPkts": 0, + "ifInUcastPkts_prev": 0, + "ifInUcastPkts_delta": null, + "ifInUcastPkts_rate": null, + "ifOutUcastPkts": 0, + "ifOutUcastPkts_prev": 0, + "ifOutUcastPkts_delta": null, + "ifOutUcastPkts_rate": null, + "ifInErrors": 0, + "ifInErrors_prev": 0, + "ifInErrors_delta": null, + "ifInErrors_rate": null, + "ifOutErrors": 0, + "ifOutErrors_prev": 0, + "ifOutErrors_delta": null, + "ifOutErrors_rate": null, + "ifInOctets": 0, + "ifInOctets_prev": 0, + "ifInOctets_delta": null, + "ifInOctets_rate": null, + "ifOutOctets": 0, + "ifOutOctets_prev": 0, + "ifOutOctets_delta": null, + "ifOutOctets_rate": null, + "poll_prev": null, + "ifInNUcastPkts": 0, + "ifInNUcastPkts_prev": 0, + "ifInNUcastPkts_delta": null, + "ifInNUcastPkts_rate": null, + "ifOutNUcastPkts": 0, + "ifOutNUcastPkts_prev": 0, + "ifOutNUcastPkts_delta": null, + "ifOutNUcastPkts_rate": null, + "ifInDiscards": 0, + "ifInDiscards_prev": 0, + "ifInDiscards_delta": null, + "ifInDiscards_rate": null, + "ifOutDiscards": 0, + "ifOutDiscards_prev": 0, + "ifOutDiscards_delta": null, + "ifOutDiscards_rate": null, + "ifInUnknownProtos": 0, + "ifInUnknownProtos_prev": 0, + "ifInUnknownProtos_delta": null, + "ifInUnknownProtos_rate": null, + "ifInBroadcastPkts": 0, + "ifInBroadcastPkts_prev": 0, + "ifInBroadcastPkts_delta": null, + "ifInBroadcastPkts_rate": null, + "ifOutBroadcastPkts": 0, + "ifOutBroadcastPkts_prev": 0, + "ifOutBroadcastPkts_delta": null, + "ifOutBroadcastPkts_rate": null, + "ifInMulticastPkts": 0, + "ifInMulticastPkts_prev": 0, + "ifInMulticastPkts_delta": null, + "ifInMulticastPkts_rate": null, + "ifOutMulticastPkts": 0, + "ifOutMulticastPkts_prev": 0, + "ifOutMulticastPkts_delta": null, + "ifOutMulticastPkts_rate": null + } + ] + } + }, + "processors": { + "discovery": { + "processors": [ + { + "entPhysicalIndex": 0, + "hrDeviceIndex": 196608, + "processor_oid": ".1.3.6.1.2.1.25.3.3.1.2.196608", + "processor_index": "196608", + "processor_type": "hr", + "processor_usage": 15, + "processor_descr": "Processor", + "processor_precision": 1, + "processor_perc_warn": 75 + }, + { + "entPhysicalIndex": 0, + "hrDeviceIndex": 196609, + "processor_oid": ".1.3.6.1.2.1.25.3.3.1.2.196609", + "processor_index": "196609", + "processor_type": "hr", + "processor_usage": 20, + "processor_descr": "Processor", + "processor_precision": 1, + "processor_perc_warn": 75 + }, + { + "entPhysicalIndex": 0, + "hrDeviceIndex": 196610, + "processor_oid": ".1.3.6.1.2.1.25.3.3.1.2.196610", + "processor_index": "196610", + "processor_type": "hr", + "processor_usage": 1, + "processor_descr": "Processor", + "processor_precision": 1, + "processor_perc_warn": 75 + }, + { + "entPhysicalIndex": 0, + "hrDeviceIndex": 196611, + "processor_oid": ".1.3.6.1.2.1.25.3.3.1.2.196611", + "processor_index": "196611", + "processor_type": "hr", + "processor_usage": 1, + "processor_descr": "Processor", + "processor_precision": 1, + "processor_perc_warn": 75 + } + ] + }, + "poller": "matches discovery" + }, + "mempools": { + "discovery": { + "mempools": [ + { + "mempool_index": "1", + "entPhysicalIndex": null, + "mempool_type": "hrstorage", + "mempool_class": "system", + "mempool_precision": 1024, + "mempool_descr": "Physical memory", + "mempool_perc": 22, + "mempool_perc_oid": null, + "mempool_used": 433192960, + "mempool_used_oid": ".1.3.6.1.2.1.25.2.3.1.6.1", + "mempool_free": 1540894720, + "mempool_free_oid": null, + "mempool_total": 1974087680, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 99 + }, + { + "mempool_index": "3", + "entPhysicalIndex": null, + "mempool_type": "hrstorage", + "mempool_class": "virtual", + "mempool_precision": 1024, + "mempool_descr": "Virtual memory", + "mempool_perc": 29, + "mempool_perc_oid": null, + "mempool_used": 578048000, + "mempool_used_oid": ".1.3.6.1.2.1.25.2.3.1.6.3", + "mempool_free": 1396039680, + "mempool_free_oid": null, + "mempool_total": 1974087680, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 95 + }, + { + "mempool_index": "6", + "entPhysicalIndex": null, + "mempool_type": "hrstorage", + "mempool_class": "buffers", + "mempool_precision": 1024, + "mempool_descr": "Memory buffers", + "mempool_perc": 0, + "mempool_perc_oid": null, + "mempool_used": 0, + "mempool_used_oid": ".1.3.6.1.2.1.25.2.3.1.6.6", + "mempool_free": 1974087680, + "mempool_free_oid": null, + "mempool_total": 1974087680, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 0 + }, + { + "mempool_index": "7", + "entPhysicalIndex": null, + "mempool_type": "hrstorage", + "mempool_class": "cached", + "mempool_precision": 1024, + "mempool_descr": "Cached memory", + "mempool_perc": 7, + "mempool_perc_oid": null, + "mempool_used": 144855040, + "mempool_used_oid": ".1.3.6.1.2.1.25.2.3.1.6.7", + "mempool_free": 1829232640, + "mempool_free_oid": null, + "mempool_total": 1974087680, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 0 + }, + { + "mempool_index": "8", + "entPhysicalIndex": null, + "mempool_type": "hrstorage", + "mempool_class": "shared", + "mempool_precision": 1024, + "mempool_descr": "Shared memory", + "mempool_perc": 3, + "mempool_perc_oid": null, + "mempool_used": 68091904, + "mempool_used_oid": ".1.3.6.1.2.1.25.2.3.1.6.8", + "mempool_free": 1905995776, + "mempool_free_oid": null, + "mempool_total": 1974087680, + "mempool_total_oid": null, + "mempool_largestfree": null, + "mempool_lowestfree": null, + "mempool_deleted": 0, + "mempool_perc_warn": 0 + } + ] + }, + "poller": "matches discovery" + }, + "sensors": { + "discovery": { + "sensors": [ + { + "sensor_deleted": 0, + "sensor_class": "dbm", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.17713.60.1.1.1.7.1", + "sensor_index": "rssi.1", + "sensor_type": "cnwave60", + "sensor_descr": "RSSI", + "group": "[]", + "sensor_divisor": 1, + "sensor_multiplier": 1, + "sensor_current": -64, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "dbm", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.17713.60.1.1.1.6.1", + "sensor_index": "snr.1", + "sensor_type": "cnwave60", + "sensor_descr": "SNR", + "group": "[]", + "sensor_divisor": 1, + "sensor_multiplier": 1, + "sensor_current": 10, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": null + }, + { + "sensor_deleted": 0, + "sensor_class": "state", + "poller_type": "snmp", + "sensor_oid": ".1.3.6.1.4.1.17713.60.1.1.1.5.1", + "sensor_index": "mcs.1", + "sensor_type": "tgRadioInterfacesTable", + "sensor_descr": "MCS", + "group": "[]", + "sensor_divisor": 1, + "sensor_multiplier": 1, + "sensor_current": 13, + "sensor_limit": null, + "sensor_limit_warn": null, + "sensor_limit_low": null, + "sensor_limit_low_warn": null, + "sensor_alert": 1, + "sensor_custom": "No", + "entPhysicalIndex": null, + "entPhysicalIndex_measured": null, + "sensor_prev": null, + "user_func": null, + "rrd_type": "GAUGE", + "state_name": "tgRadioInterfacesTable" + } + ], + "state_indexes": [ + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs0", + "state_draw_graph": 1, + "state_value": 0, + "state_generic_value": 1 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs1", + "state_draw_graph": 1, + "state_value": 1, + "state_generic_value": 1 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs2", + "state_draw_graph": 1, + "state_value": 2, + "state_generic_value": 1 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs3", + "state_draw_graph": 1, + "state_value": 3, + "state_generic_value": 1 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs4", + "state_draw_graph": 1, + "state_value": 4, + "state_generic_value": 2 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs5", + "state_draw_graph": 1, + "state_value": 5, + "state_generic_value": 2 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs6", + "state_draw_graph": 1, + "state_value": 6, + "state_generic_value": 2 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs7", + "state_draw_graph": 1, + "state_value": 7, + "state_generic_value": 2 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs8", + "state_draw_graph": 1, + "state_value": 8, + "state_generic_value": 0 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs9", + "state_draw_graph": 1, + "state_value": 9, + "state_generic_value": 0 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs10", + "state_draw_graph": 1, + "state_value": 10, + "state_generic_value": 0 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs10", + "state_draw_graph": 1, + "state_value": 11, + "state_generic_value": 0 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs12", + "state_draw_graph": 1, + "state_value": 12, + "state_generic_value": 0 + }, + { + "state_name": "tgRadioInterfacesTable", + "state_descr": "mcs13", + "state_draw_graph": 1, + "state_value": 13, + "state_generic_value": 0 + } + ] + }, + "poller": "matches discovery" + }, + "storage": { + "discovery": { + "storage": [ + { + "storage_mib": "hrstorage", + "storage_index": "37", + "storage_type": "hrStorageFixedDisk", + "storage_descr": "/run", + "storage_size": 987041792, + "storage_units": 4096, + "storage_used": 1515520, + "storage_free": 0, + "storage_perc": 0, + "storage_perc_warn": 60, + "storage_deleted": 0 + }, + { + "storage_mib": "hrstorage", + "storage_index": "38", + "storage_type": "hrStorageFixedDisk", + "storage_descr": "/var/volatile", + "storage_size": 987041792, + "storage_units": 4096, + "storage_used": 66506752, + "storage_free": 0, + "storage_perc": 0, + "storage_perc_warn": 60, + "storage_deleted": 0 + } + ] + }, + "poller": { + "storage": [ + { + "storage_mib": "hrstorage", + "storage_index": "37", + "storage_type": "hrStorageFixedDisk", + "storage_descr": "/run", + "storage_size": 987041792, + "storage_units": 4096, + "storage_used": 1515520, + "storage_free": 985526272, + "storage_perc": 0, + "storage_perc_warn": 60, + "storage_deleted": 0 + }, + { + "storage_mib": "hrstorage", + "storage_index": "38", + "storage_type": "hrStorageFixedDisk", + "storage_descr": "/var/volatile", + "storage_size": 987041792, + "storage_units": 4096, + "storage_used": 66506752, + "storage_free": 920535040, + "storage_perc": 7, + "storage_perc_warn": 60, + "storage_deleted": 0 + } + ] + } + } +} diff --git a/tests/snmpsim/cnmatrix.snmprec b/tests/snmpsim/cnmatrix.snmprec new file mode 100644 index 000000000000..1f7214dfb32f --- /dev/null +++ b/tests/snmpsim/cnmatrix.snmprec @@ -0,0 +1,300 @@ +1.0.8802.1.1.2.1.5.4795.1.2.4.0|4|5.0.1-r4 +1.0.8802.1.1.2.1.5.4795.1.2.5.0|4|ABCDEF0123456789 +1.0.8802.1.1.2.1.5.4795.1.2.7.0|4|TX1012-P-DC +1.3.6.1.2.1.1.1.0|4|Cambium Networks cnMatrix TX1012-P-DC Ethernet Switch HW:01 SW:5.0.1-r4 +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.17713.24 +1.3.6.1.2.1.1.4.0|4| +1.3.6.1.2.1.1.6.0|4| +1.3.6.1.2.1.2.2.1.2.1|4|Ethernet Interface Port 1 +1.3.6.1.2.1.2.2.1.2.2|4|Ethernet Interface Port 2 +1.3.6.1.2.1.2.2.1.2.3|4|Ethernet Interface Port 3 +1.3.6.1.2.1.2.2.1.2.4|4|Ethernet Interface Port 4 +1.3.6.1.2.1.2.2.1.2.5|4|Ethernet Interface Port 5 +1.3.6.1.2.1.2.2.1.2.6|4|Ethernet Interface Port 6 +1.3.6.1.2.1.2.2.1.2.7|4|Ethernet Interface Port 7 +1.3.6.1.2.1.2.2.1.2.8|4|Ethernet Interface Port 8 +1.3.6.1.2.1.2.2.1.2.25|4|Ethernet Interface Port 25 +1.3.6.1.2.1.2.2.1.2.26|4|Ethernet Interface Port 26 +1.3.6.1.2.1.2.2.1.2.27|4|Ethernet Interface Port 27 +1.3.6.1.2.1.2.2.1.2.28|4|Ethernet Interface Port 28 +1.3.6.1.2.1.2.2.1.2.61|4|L3IPVLAN Interface +1.3.6.1.2.1.2.2.1.2.62|4|L3IPVLAN Interface +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|6 +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.3.6|2|6 +1.3.6.1.2.1.2.2.1.3.7|2|6 +1.3.6.1.2.1.2.2.1.3.8|2|6 +1.3.6.1.2.1.2.2.1.3.25|2|6 +1.3.6.1.2.1.2.2.1.3.26|2|6 +1.3.6.1.2.1.2.2.1.3.27|2|6 +1.3.6.1.2.1.2.2.1.3.28|2|6 +1.3.6.1.2.1.2.2.1.3.61|2|136 +1.3.6.1.2.1.2.2.1.3.62|2|136 +1.3.6.1.2.1.2.2.1.8.1|2|2 +1.3.6.1.2.1.2.2.1.8.2|2|2 +1.3.6.1.2.1.2.2.1.8.3|2|2 +1.3.6.1.2.1.2.2.1.8.4|2|2 +1.3.6.1.2.1.2.2.1.8.5|2|2 +1.3.6.1.2.1.2.2.1.8.6|2|2 +1.3.6.1.2.1.2.2.1.8.7|2|1 +1.3.6.1.2.1.2.2.1.8.8|2|2 +1.3.6.1.2.1.2.2.1.8.25|2|1 +1.3.6.1.2.1.2.2.1.8.26|2|1 +1.3.6.1.2.1.2.2.1.8.27|2|1 +1.3.6.1.2.1.2.2.1.8.28|2|2 +1.3.6.1.2.1.2.2.1.8.61|2|2 +1.3.6.1.2.1.2.2.1.8.62|2|1 +1.3.6.1.2.1.4.20.1.2.10.36.24.3|2|62 +1.3.6.1.2.1.4.20.1.3.10.36.24.3|64|255.255.255.192 +1.3.6.1.2.1.4.31.1.1.3.1|65|35190 +1.3.6.1.2.1.4.31.1.1.3.2|65|0 +1.3.6.1.2.1.4.31.1.1.4.1|70|35190 +1.3.6.1.2.1.4.31.1.1.4.2|70|0 +1.3.6.1.2.1.4.31.1.1.5.1|65|0 +1.3.6.1.2.1.4.31.1.1.5.2|65|0 +1.3.6.1.2.1.4.31.1.1.6.1|70|0 +1.3.6.1.2.1.4.31.1.1.6.2|70|0 +1.3.6.1.2.1.4.31.1.1.7.1|65|0 +1.3.6.1.2.1.4.31.1.1.7.2|65|0 +1.3.6.1.2.1.4.31.1.1.8.1|65|0 +1.3.6.1.2.1.4.31.1.1.8.2|65|0 +1.3.6.1.2.1.4.31.1.1.9.1|65|0 +1.3.6.1.2.1.4.31.1.1.9.2|65|0 +1.3.6.1.2.1.4.31.1.1.10.1|65|0 +1.3.6.1.2.1.4.31.1.1.10.2|65|0 +1.3.6.1.2.1.4.31.1.1.11.1|65|0 +1.3.6.1.2.1.4.31.1.1.11.2|65|0 +1.3.6.1.2.1.4.31.1.1.12.1|65|0 +1.3.6.1.2.1.4.31.1.1.12.2|65|0 +1.3.6.1.2.1.4.31.1.1.13.1|70|0 +1.3.6.1.2.1.4.31.1.1.13.2|70|0 +1.3.6.1.2.1.4.31.1.1.14.1|65|0 +1.3.6.1.2.1.4.31.1.1.14.2|65|0 +1.3.6.1.2.1.4.31.1.1.15.1|65|0 +1.3.6.1.2.1.4.31.1.1.15.2|65|0 +1.3.6.1.2.1.4.31.1.1.16.1|65|0 +1.3.6.1.2.1.4.31.1.1.16.2|65|0 +1.3.6.1.2.1.4.31.1.1.17.1|65|0 +1.3.6.1.2.1.4.31.1.1.17.2|65|0 +1.3.6.1.2.1.4.31.1.1.18.1|65|35199 +1.3.6.1.2.1.4.31.1.1.18.2|65|0 +1.3.6.1.2.1.4.31.1.1.19.1|70|35199 +1.3.6.1.2.1.4.31.1.1.19.2|70|0 +1.3.6.1.2.1.4.31.1.1.20.1|65|35190 +1.3.6.1.2.1.4.31.1.1.20.2|65|0 +1.3.6.1.2.1.4.31.1.1.21.1|70|35190 +1.3.6.1.2.1.4.31.1.1.21.2|70|0 +1.3.6.1.2.1.4.31.1.1.22.1|65|0 +1.3.6.1.2.1.4.31.1.1.22.2|65|0 +1.3.6.1.2.1.4.31.1.1.23.1|65|0 +1.3.6.1.2.1.4.31.1.1.23.2|65|0 +1.3.6.1.2.1.4.31.1.1.24.1|70|0 +1.3.6.1.2.1.4.31.1.1.24.2|70|0 +1.3.6.1.2.1.4.31.1.1.25.1|65|140 +1.3.6.1.2.1.4.31.1.1.25.2|65|0 +1.3.6.1.2.1.4.31.1.1.26.1|65|0 +1.3.6.1.2.1.4.31.1.1.26.2|65|0 +1.3.6.1.2.1.4.31.1.1.27.1|65|0 +1.3.6.1.2.1.4.31.1.1.27.2|65|0 +1.3.6.1.2.1.4.31.1.1.28.1|65|0 +1.3.6.1.2.1.4.31.1.1.28.2|65|0 +1.3.6.1.2.1.4.31.1.1.29.1|65|0 +1.3.6.1.2.1.4.31.1.1.29.2|65|0 +1.3.6.1.2.1.4.31.1.1.30.1|65|0 +1.3.6.1.2.1.4.31.1.1.30.2|65|0 +1.3.6.1.2.1.4.31.1.1.31.1|70|0 +1.3.6.1.2.1.4.31.1.1.31.2|70|0 +1.3.6.1.2.1.4.31.1.1.32.1|65|0 +1.3.6.1.2.1.4.31.1.1.32.2|65|0 +1.3.6.1.2.1.4.31.1.1.33.1|70|0 +1.3.6.1.2.1.4.31.1.1.33.2|70|0 +1.3.6.1.2.1.4.31.1.1.34.1|65|0 +1.3.6.1.2.1.4.31.1.1.34.2|65|0 +1.3.6.1.2.1.4.31.1.1.35.1|70|0 +1.3.6.1.2.1.4.31.1.1.35.2|70|0 +1.3.6.1.2.1.4.31.1.1.36.1|65|0 +1.3.6.1.2.1.4.31.1.1.36.2|65|0 +1.3.6.1.2.1.4.31.1.1.37.1|70|0 +1.3.6.1.2.1.4.31.1.1.37.2|70|0 +1.3.6.1.2.1.4.31.1.1.38.1|65|0 +1.3.6.1.2.1.4.31.1.1.38.2|65|0 +1.3.6.1.2.1.4.31.1.1.39.1|70|0 +1.3.6.1.2.1.4.31.1.1.39.2|70|0 +1.3.6.1.2.1.4.31.1.1.40.1|65|0 +1.3.6.1.2.1.4.31.1.1.40.2|65|0 +1.3.6.1.2.1.4.31.1.1.41.1|70|0 +1.3.6.1.2.1.4.31.1.1.41.2|70|0 +1.3.6.1.2.1.4.31.1.1.42.1|65|0 +1.3.6.1.2.1.4.31.1.1.42.2|65|0 +1.3.6.1.2.1.4.31.1.1.43.1|70|0 +1.3.6.1.2.1.4.31.1.1.43.2|70|0 +1.3.6.1.2.1.4.31.1.1.44.1|65|0 +1.3.6.1.2.1.4.31.1.1.44.2|65|0 +1.3.6.1.2.1.4.31.1.1.45.1|70|0 +1.3.6.1.2.1.4.31.1.1.45.2|70|0 +1.3.6.1.2.1.4.31.1.1.46.1|67|0 +1.3.6.1.2.1.4.31.1.1.46.2|67|0 +1.3.6.1.2.1.4.31.1.1.47.1|66|1000 +1.3.6.1.2.1.4.31.1.1.47.2|66|1000 +1.3.6.1.2.1.16.1.5.1.1.26|65|0 +1.3.6.1.2.1.17.1.4.1.2.1|2|1 +1.3.6.1.2.1.17.1.4.1.2.2|2|2 +1.3.6.1.2.1.17.1.4.1.2.3|2|3 +1.3.6.1.2.1.17.1.4.1.2.4|2|4 +1.3.6.1.2.1.17.1.4.1.2.5|2|5 +1.3.6.1.2.1.17.1.4.1.2.6|2|6 +1.3.6.1.2.1.17.1.4.1.2.7|2|7 +1.3.6.1.2.1.17.1.4.1.2.8|2|8 +1.3.6.1.2.1.17.1.4.1.2.25|2|25 +1.3.6.1.2.1.17.1.4.1.2.26|2|26 +1.3.6.1.2.1.17.1.4.1.2.27|2|27 +1.3.6.1.2.1.17.1.4.1.2.28|2|28 +1.3.6.1.2.1.17.7.1.2.2.1.2.200.32.207.174.188.100.191|2|25 +1.3.6.1.2.1.17.7.1.2.2.1.2.200.44.200.27.251.170.207|2|25 +1.3.6.1.2.1.17.7.1.2.2.1.2.200.120.94.232.208.17.17|2|27 +1.3.6.1.2.1.17.7.1.2.2.1.2.200.156.149.110.87.157.109|2|7 +1.3.6.1.2.1.17.7.1.2.2.1.2.260.0.4.86.136.58.221|2|26 +1.3.6.1.2.1.17.7.1.2.2.1.2.260.32.207.174.188.100.191|2|25 +1.3.6.1.2.1.17.7.1.2.2.1.2.3297.0.4.86.138.26.221|2|26 +1.3.6.1.2.1.17.7.1.2.2.1.2.3297.108.156.237.122.248.148|2|25 +1.3.6.1.2.1.17.7.1.4.2.1.3.4400.1|66|1 +1.3.6.1.2.1.17.7.1.4.2.1.3.4400.200|66|200 +1.3.6.1.2.1.17.7.1.4.2.1.3.4400.260|66|260 +1.3.6.1.2.1.17.7.1.4.2.1.3.4400.999|66|999 +1.3.6.1.2.1.17.7.1.4.2.1.3.4400.3297|66|3297 +1.3.6.1.2.1.17.7.1.4.5.1.1.1|66|1 +1.3.6.1.2.1.17.7.1.4.5.1.1.2|66|1 +1.3.6.1.2.1.17.7.1.4.5.1.1.3|66|200 +1.3.6.1.2.1.17.7.1.4.5.1.1.4|66|999 +1.3.6.1.2.1.17.7.1.4.5.1.1.5|66|999 +1.3.6.1.2.1.17.7.1.4.5.1.1.6|66|999 +1.3.6.1.2.1.17.7.1.4.5.1.1.7|66|200 +1.3.6.1.2.1.17.7.1.4.5.1.1.8|66|260 +1.3.6.1.2.1.17.7.1.4.5.1.1.25|66|1 +1.3.6.1.2.1.17.7.1.4.5.1.1.26|66|3297 +1.3.6.1.2.1.17.7.1.4.5.1.1.27|66|1 +1.3.6.1.2.1.17.7.1.4.5.1.1.28|66|1 +1.3.6.1.2.1.31.1.1.1.1.1|4|Gi0/1 +1.3.6.1.2.1.31.1.1.1.1.2|4|Gi0/2 +1.3.6.1.2.1.31.1.1.1.1.3|4|Gi0/3 +1.3.6.1.2.1.31.1.1.1.1.4|4|Gi0/4 +1.3.6.1.2.1.31.1.1.1.1.5|4|Gi0/5 +1.3.6.1.2.1.31.1.1.1.1.6|4|Gi0/6 +1.3.6.1.2.1.31.1.1.1.1.7|4|Gi0/7 +1.3.6.1.2.1.31.1.1.1.1.8|4|Gi0/8 +1.3.6.1.2.1.31.1.1.1.1.25|4|Ex0/1 +1.3.6.1.2.1.31.1.1.1.1.26|4|Ex0/2 +1.3.6.1.2.1.31.1.1.1.1.27|4|Ex0/3 +1.3.6.1.2.1.31.1.1.1.1.28|4|Ex0/4 +1.3.6.1.2.1.31.1.1.1.1.61|4|vlan1 +1.3.6.1.2.1.31.1.1.1.1.62|4|vlan200 +1.3.6.1.2.1.31.1.1.1.18.1|4|Gi0/1 +1.3.6.1.2.1.31.1.1.1.18.2|4|Gi0/2 +1.3.6.1.2.1.31.1.1.1.18.3|4|Gi0/3 +1.3.6.1.2.1.31.1.1.1.18.4|4|Gi0/4 +1.3.6.1.2.1.31.1.1.1.18.5|4|Gi0/5 +1.3.6.1.2.1.31.1.1.1.18.6|4|Gi0/6 +1.3.6.1.2.1.31.1.1.1.18.7|4|Gi0/7 +1.3.6.1.2.1.31.1.1.1.18.8|4|Gi0/8 +1.3.6.1.2.1.31.1.1.1.18.25|4|Ex0/1 +1.3.6.1.2.1.31.1.1.1.18.26|4|Ex0/2 +1.3.6.1.2.1.31.1.1.1.18.27|4|Ex0/3 +1.3.6.1.2.1.31.1.1.1.18.28|4|Ex0/4 +1.3.6.1.2.1.31.1.1.1.18.61|4|vlan1 +1.3.6.1.2.1.31.1.1.1.18.62|4|vlan200 +1.3.6.1.2.1.31.1.2.1.3.0.1|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.2|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.3|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.4|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.5|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.6|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.7|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.8|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.25|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.26|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.27|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.28|2|2 +1.3.6.1.2.1.31.1.2.1.3.0.61|2|1 +1.3.6.1.2.1.31.1.2.1.3.0.62|2|1 +1.3.6.1.2.1.31.1.2.1.3.1.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.2.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.3.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.4.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.5.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.6.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.7.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.8.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.25.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.26.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.27.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.28.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.61.0|2|1 +1.3.6.1.2.1.31.1.2.1.3.62.0|2|1 +1.3.6.1.4.1.2076.27.1.4.1.12.1|4| +1.3.6.1.4.1.2076.27.1.4.1.12.2|4| +1.3.6.1.4.1.2076.27.1.4.1.12.3|4|POP1-Power +1.3.6.1.4.1.2076.27.1.4.1.12.4|4| +1.3.6.1.4.1.2076.27.1.4.1.12.5|4| +1.3.6.1.4.1.2076.27.1.4.1.12.6|4| +1.3.6.1.4.1.2076.27.1.4.1.12.7|4| +1.3.6.1.4.1.2076.27.1.4.1.12.8|4| +1.3.6.1.4.1.2076.27.1.4.1.12.25|4|Link to Lab NCS +1.3.6.1.4.1.2076.27.1.4.1.12.26|4|POP1-Data +1.3.6.1.4.1.2076.27.1.4.1.12.27|4| +1.3.6.1.4.1.2076.27.1.4.1.12.28|4| +1.3.6.1.4.1.2076.27.1.4.1.12.61|4| +1.3.6.1.4.1.2076.27.1.4.1.12.62|4| +1.3.6.1.4.1.2076.81.1.66.0|2|43 +1.3.6.1.4.1.2076.81.1.68.0|2|1 +1.3.6.1.4.1.2076.81.1.73.0|2|58 +1.3.6.1.4.1.2076.103.1.3.1.3.1.1|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.2|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.3|2|456 +1.3.6.1.4.1.2076.103.1.3.1.3.1.4|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.5|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.6|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.7|2|0 +1.3.6.1.4.1.2076.103.1.3.1.3.1.8|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.1|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.2|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.3|2|536 +1.3.6.1.4.1.2076.103.1.3.1.4.1.4|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.5|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.6|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.7|2|0 +1.3.6.1.4.1.2076.103.1.3.1.4.1.8|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.1|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.2|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.3|2|24500 +1.3.6.1.4.1.2076.103.1.3.1.5.1.4|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.5|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.6|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.7|2|0 +1.3.6.1.4.1.2076.103.1.3.1.5.1.8|2|0 +1.3.6.1.4.1.2076.103.1.3.1.6.1.1|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.2|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.3|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.4|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.5|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.6|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.7|2|3 +1.3.6.1.4.1.2076.103.1.3.1.6.1.8|2|3 +1.3.6.1.4.1.2076.103.1.3.1.7.1.1|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.2|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.3|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.4|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.5|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.6|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.7|2|1 +1.3.6.1.4.1.2076.103.1.3.1.7.1.8|2|1 +1.3.6.1.4.1.2076.103.1.3.1.8.1.1|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.2|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.3|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.4|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.5|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.6|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.7|2|0 +1.3.6.1.4.1.2076.103.1.3.1.8.1.8|2|0 diff --git a/tests/snmpsim/cnwave60.snmprec b/tests/snmpsim/cnwave60.snmprec new file mode 100644 index 000000000000..44f9b48644b2 --- /dev/null +++ b/tests/snmpsim/cnwave60.snmprec @@ -0,0 +1,730 @@ +1.3.6.1.2.1.1.1.0|4|Cambium cnWave V3000 Distribution Node, Version 1.2.2.1 +1.3.6.1.2.1.1.2.0|6|1.3.6.1.4.1.17713.60.1 +1.3.6.1.2.1.1.4.0|4| +1.3.6.1.2.1.1.6.0|4| +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|nic1 +1.3.6.1.2.1.2.2.1.2.3|4|nic2 +1.3.6.1.2.1.2.2.1.2.4|4|nic3 +1.3.6.1.2.1.2.2.1.2.5|4|sit0 +1.3.6.1.2.1.2.2.1.2.6|4|ip6tnl0 +1.3.6.1.2.1.2.2.1.2.7|4|ip6gre0 +1.3.6.1.2.1.2.2.1.2.8|4|br0 +1.3.6.1.2.1.2.2.1.2.9|4|Qualcomm Device 1201 +1.3.6.1.2.1.2.2.1.2.10|4|br0.260 +1.3.6.1.2.1.2.2.1.2.11|4|terra0 +1.3.6.1.2.1.2.2.1.2.12|4|terra1 +1.3.6.1.2.1.2.2.1.2.13|4|terra2 +1.3.6.1.2.1.2.2.1.2.14|4|terra3 +1.3.6.1.2.1.2.2.1.2.15|4|terra4 +1.3.6.1.2.1.2.2.1.2.16|4|terra5 +1.3.6.1.2.1.2.2.1.2.17|4|terra6 +1.3.6.1.2.1.2.2.1.2.18|4|terra7 +1.3.6.1.2.1.2.2.1.2.19|4|terra8 +1.3.6.1.2.1.2.2.1.2.20|4|terra9 +1.3.6.1.2.1.2.2.1.2.21|4|terra10 +1.3.6.1.2.1.2.2.1.2.22|4|terra11 +1.3.6.1.2.1.2.2.1.2.23|4|terra12 +1.3.6.1.2.1.2.2.1.2.24|4|terra13 +1.3.6.1.2.1.2.2.1.2.25|4|terra14 +1.3.6.1.2.1.2.2.1.2.26|4|terra15 +1.3.6.1.2.1.2.2.1.2.27|4|l2gre0 +1.3.6.1.2.1.2.2.1.2.28|4|l2gre1 +1.3.6.1.2.1.2.2.1.2.29|4|l2gre2 +1.3.6.1.2.1.2.2.1.2.30|4|l2gre3 +1.3.6.1.2.1.2.2.1.2.31|4|l2gre4 +1.3.6.1.2.1.2.2.1.2.32|4|l2gre5 +1.3.6.1.2.1.2.2.1.2.33|4|l2gre6 +1.3.6.1.2.1.2.2.1.2.34|4|l2gre7 +1.3.6.1.2.1.2.2.1.2.35|4|l2gre8 +1.3.6.1.2.1.2.2.1.2.36|4|l2gre9 +1.3.6.1.2.1.2.2.1.2.37|4|l2gre10 +1.3.6.1.2.1.2.2.1.2.38|4|l2gre11 +1.3.6.1.2.1.2.2.1.2.39|4|l2gre12 +1.3.6.1.2.1.2.2.1.2.40|4|l2gre13 +1.3.6.1.2.1.2.2.1.2.41|4|l2gre14 +1.3.6.1.2.1.2.2.1.2.42|4|l2gre15 +1.3.6.1.2.1.2.2.1.2.43|4|l2gre16 +1.3.6.1.2.1.2.2.1.2.44|4|l2gre17 +1.3.6.1.2.1.2.2.1.2.45|4|l2gre18 +1.3.6.1.2.1.2.2.1.2.46|4|l2gre19 +1.3.6.1.2.1.2.2.1.2.47|4|l2gre20 +1.3.6.1.2.1.2.2.1.3.1|2|24 +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|6 +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|131 +1.3.6.1.2.1.2.2.1.3.6|2|131 +1.3.6.1.2.1.2.2.1.3.7|2|1 +1.3.6.1.2.1.2.2.1.3.8|2|6 +1.3.6.1.2.1.2.2.1.3.9|2|6 +1.3.6.1.2.1.2.2.1.3.10|2|6 +1.3.6.1.2.1.2.2.1.3.11|2|6 +1.3.6.1.2.1.2.2.1.3.12|2|6 +1.3.6.1.2.1.2.2.1.3.13|2|6 +1.3.6.1.2.1.2.2.1.3.14|2|6 +1.3.6.1.2.1.2.2.1.3.15|2|6 +1.3.6.1.2.1.2.2.1.3.16|2|6 +1.3.6.1.2.1.2.2.1.3.17|2|6 +1.3.6.1.2.1.2.2.1.3.18|2|6 +1.3.6.1.2.1.2.2.1.3.19|2|6 +1.3.6.1.2.1.2.2.1.3.20|2|6 +1.3.6.1.2.1.2.2.1.3.21|2|6 +1.3.6.1.2.1.2.2.1.3.22|2|6 +1.3.6.1.2.1.2.2.1.3.23|2|6 +1.3.6.1.2.1.2.2.1.3.24|2|6 +1.3.6.1.2.1.2.2.1.3.25|2|6 +1.3.6.1.2.1.2.2.1.3.26|2|6 +1.3.6.1.2.1.2.2.1.3.27|2|6 +1.3.6.1.2.1.2.2.1.3.28|2|6 +1.3.6.1.2.1.2.2.1.3.29|2|6 +1.3.6.1.2.1.2.2.1.3.30|2|6 +1.3.6.1.2.1.2.2.1.3.31|2|6 +1.3.6.1.2.1.2.2.1.3.32|2|6 +1.3.6.1.2.1.2.2.1.3.33|2|6 +1.3.6.1.2.1.2.2.1.3.34|2|6 +1.3.6.1.2.1.2.2.1.3.35|2|6 +1.3.6.1.2.1.2.2.1.3.36|2|6 +1.3.6.1.2.1.2.2.1.3.37|2|6 +1.3.6.1.2.1.2.2.1.3.38|2|6 +1.3.6.1.2.1.2.2.1.3.39|2|6 +1.3.6.1.2.1.2.2.1.3.40|2|6 +1.3.6.1.2.1.2.2.1.3.41|2|6 +1.3.6.1.2.1.2.2.1.3.42|2|6 +1.3.6.1.2.1.2.2.1.3.43|2|6 +1.3.6.1.2.1.2.2.1.3.44|2|6 +1.3.6.1.2.1.2.2.1.3.45|2|6 +1.3.6.1.2.1.2.2.1.3.46|2|6 +1.3.6.1.2.1.2.2.1.3.47|2|6 +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|2 +1.3.6.1.2.1.2.2.1.8.3|2|2 +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|2 +1.3.6.1.2.1.2.2.1.8.6|2|2 +1.3.6.1.2.1.2.2.1.8.7|2|2 +1.3.6.1.2.1.2.2.1.8.8|2|1 +1.3.6.1.2.1.2.2.1.8.9|2|2 +1.3.6.1.2.1.2.2.1.8.10|2|1 +1.3.6.1.2.1.2.2.1.8.11|2|1 +1.3.6.1.2.1.2.2.1.8.12|2|2 +1.3.6.1.2.1.2.2.1.8.13|2|2 +1.3.6.1.2.1.2.2.1.8.14|2|2 +1.3.6.1.2.1.2.2.1.8.15|2|2 +1.3.6.1.2.1.2.2.1.8.16|2|2 +1.3.6.1.2.1.2.2.1.8.17|2|2 +1.3.6.1.2.1.2.2.1.8.18|2|2 +1.3.6.1.2.1.2.2.1.8.19|2|2 +1.3.6.1.2.1.2.2.1.8.20|2|2 +1.3.6.1.2.1.2.2.1.8.21|2|2 +1.3.6.1.2.1.2.2.1.8.22|2|2 +1.3.6.1.2.1.2.2.1.8.23|2|2 +1.3.6.1.2.1.2.2.1.8.24|2|2 +1.3.6.1.2.1.2.2.1.8.25|2|2 +1.3.6.1.2.1.2.2.1.8.26|2|2 +1.3.6.1.2.1.2.2.1.8.27|2|1 +1.3.6.1.2.1.2.2.1.8.28|2|1 +1.3.6.1.2.1.2.2.1.8.29|2|1 +1.3.6.1.2.1.2.2.1.8.30|2|1 +1.3.6.1.2.1.2.2.1.8.31|2|1 +1.3.6.1.2.1.2.2.1.8.32|2|1 +1.3.6.1.2.1.2.2.1.8.33|2|1 +1.3.6.1.2.1.2.2.1.8.34|2|1 +1.3.6.1.2.1.2.2.1.8.35|2|1 +1.3.6.1.2.1.2.2.1.8.36|2|1 +1.3.6.1.2.1.2.2.1.8.37|2|1 +1.3.6.1.2.1.2.2.1.8.38|2|1 +1.3.6.1.2.1.2.2.1.8.39|2|1 +1.3.6.1.2.1.2.2.1.8.40|2|1 +1.3.6.1.2.1.2.2.1.8.41|2|1 +1.3.6.1.2.1.2.2.1.8.42|2|1 +1.3.6.1.2.1.2.2.1.8.43|2|1 +1.3.6.1.2.1.2.2.1.8.44|2|1 +1.3.6.1.2.1.2.2.1.8.45|2|1 +1.3.6.1.2.1.2.2.1.8.46|2|1 +1.3.6.1.2.1.2.2.1.8.47|2|1 +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.2.169.254.1.255|2|10 +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.4.31.1.1.3.1|65|106 +1.3.6.1.2.1.4.31.1.1.3.2|65|1105642922 +1.3.6.1.2.1.4.31.1.1.4.1|70|106 +1.3.6.1.2.1.4.31.1.1.4.2|70|5400610218 +1.3.6.1.2.1.4.31.1.1.5.1|65|6672 +1.3.6.1.2.1.4.31.1.1.5.2|65|239711017 +1.3.6.1.2.1.4.31.1.1.6.1|70|6672 +1.3.6.1.2.1.4.31.1.1.6.2|70|1507773231913 +1.3.6.1.2.1.4.31.1.1.7.1|65|0 +1.3.6.1.2.1.4.31.1.1.7.2|65|0 +1.3.6.1.2.1.4.31.1.1.8.1|65|0 +1.3.6.1.2.1.4.31.1.1.8.2|65|0 +1.3.6.1.2.1.4.31.1.1.9.1|65|0 +1.3.6.1.2.1.4.31.1.1.9.2|65|0 +1.3.6.1.2.1.4.31.1.1.10.1|65|0 +1.3.6.1.2.1.4.31.1.1.10.2|65|0 +1.3.6.1.2.1.4.31.1.1.11.1|65|0 +1.3.6.1.2.1.4.31.1.1.11.2|65|0 +1.3.6.1.2.1.4.31.1.1.12.1|65|0 +1.3.6.1.2.1.4.31.1.1.12.2|65|213733971 +1.3.6.1.2.1.4.31.1.1.13.1|70|0 +1.3.6.1.2.1.4.31.1.1.13.2|70|213733971 +1.3.6.1.2.1.4.31.1.1.14.1|65|0 +1.3.6.1.2.1.4.31.1.1.14.2|65|0 +1.3.6.1.2.1.4.31.1.1.15.1|65|0 +1.3.6.1.2.1.4.31.1.1.15.2|65|0 +1.3.6.1.2.1.4.31.1.1.16.1|65|0 +1.3.6.1.2.1.4.31.1.1.16.2|65|0 +1.3.6.1.2.1.4.31.1.1.17.1|65|0 +1.3.6.1.2.1.4.31.1.1.17.2|65|0 +1.3.6.1.2.1.4.31.1.1.18.1|65|106 +1.3.6.1.2.1.4.31.1.1.18.2|65|891908933 +1.3.6.1.2.1.4.31.1.1.19.1|70|106 +1.3.6.1.2.1.4.31.1.1.19.2|70|5186876229 +1.3.6.1.2.1.4.31.1.1.20.1|65|106 +1.3.6.1.2.1.4.31.1.1.20.2|65|1587384115 +1.3.6.1.2.1.4.31.1.1.21.1|70|106 +1.3.6.1.2.1.4.31.1.1.21.2|70|1587384115 +1.3.6.1.2.1.4.31.1.1.22.1|65|3 +1.3.6.1.2.1.4.31.1.1.22.2|65|68 +1.3.6.1.2.1.4.31.1.1.23.1|65|0 +1.3.6.1.2.1.4.31.1.1.23.2|65|213733971 +1.3.6.1.2.1.4.31.1.1.24.1|70|0 +1.3.6.1.2.1.4.31.1.1.24.2|70|213733971 +1.3.6.1.2.1.4.31.1.1.25.1|65|0 +1.3.6.1.2.1.4.31.1.1.25.2|65|5 +1.3.6.1.2.1.4.31.1.1.26.1|65|384 +1.3.6.1.2.1.4.31.1.1.26.2|65|0 +1.3.6.1.2.1.4.31.1.1.27.1|65|384 +1.3.6.1.2.1.4.31.1.1.27.2|65|0 +1.3.6.1.2.1.4.31.1.1.28.1|65|0 +1.3.6.1.2.1.4.31.1.1.28.2|65|0 +1.3.6.1.2.1.4.31.1.1.29.1|65|1152 +1.3.6.1.2.1.4.31.1.1.29.2|65|0 +1.3.6.1.2.1.4.31.1.1.30.1|65|871 +1.3.6.1.2.1.4.31.1.1.30.2|65|1801118013 +1.3.6.1.2.1.4.31.1.1.31.1|70|871 +1.3.6.1.2.1.4.31.1.1.31.2|70|1801118013 +1.3.6.1.2.1.4.31.1.1.32.1|65|6672 +1.3.6.1.2.1.4.31.1.1.32.2|65|676197858 +1.3.6.1.2.1.4.31.1.1.33.1|70|6672 +1.3.6.1.2.1.4.31.1.1.33.2|70|507482338786 +1.3.6.1.2.1.4.31.1.1.34.1|65|0 +1.3.6.1.2.1.4.31.1.1.34.2|65|1008227 +1.3.6.1.2.1.4.31.1.1.35.1|70|0 +1.3.6.1.2.1.4.31.1.1.35.2|70|1008227 +1.3.6.1.2.1.4.31.1.1.36.1|65|0 +1.3.6.1.2.1.4.31.1.1.36.2|65|213344325 +1.3.6.1.2.1.4.31.1.1.37.1|70|0 +1.3.6.1.2.1.4.31.1.1.37.2|70|213344325 +1.3.6.1.2.1.4.31.1.1.38.1|65|0 +1.3.6.1.2.1.4.31.1.1.38.2|65|991500 +1.3.6.1.2.1.4.31.1.1.39.1|70|0 +1.3.6.1.2.1.4.31.1.1.39.2|70|991500 +1.3.6.1.2.1.4.31.1.1.40.1|65|0 +1.3.6.1.2.1.4.31.1.1.40.2|65|211612427 +1.3.6.1.2.1.4.31.1.1.41.1|70|0 +1.3.6.1.2.1.4.31.1.1.41.2|70|211612427 +1.3.6.1.2.1.4.31.1.1.42.1|65|0 +1.3.6.1.2.1.4.31.1.1.43.1|70|0 +1.3.6.1.2.1.4.31.1.1.44.1|65|0 +1.3.6.1.2.1.4.31.1.1.45.1|70|0 +1.3.6.1.2.1.4.31.1.1.46.1|67|0 +1.3.6.1.2.1.4.31.1.1.46.2|67|0 +1.3.6.1.2.1.4.31.1.1.47.1|66|60000 +1.3.6.1.2.1.4.31.1.1.47.2|66|60000 +1.3.6.1.2.1.25.1.1.0|67|297901830 +1.3.6.1.2.1.25.1.5.0|66|0 +1.3.6.1.2.1.25.1.6.0|66|248 +1.3.6.1.2.1.25.1.7.0|2|0 +1.3.6.1.2.1.25.2.2.0|2|1927820 +1.3.6.1.2.1.25.2.3.1.1.1|2|1 +1.3.6.1.2.1.25.2.3.1.1.3|2|3 +1.3.6.1.2.1.25.2.3.1.1.6|2|6 +1.3.6.1.2.1.25.2.3.1.1.7|2|7 +1.3.6.1.2.1.25.2.3.1.1.8|2|8 +1.3.6.1.2.1.25.2.3.1.1.10|2|10 +1.3.6.1.2.1.25.2.3.1.1.37|2|37 +1.3.6.1.2.1.25.2.3.1.1.38|2|38 +1.3.6.1.2.1.25.2.3.1.2.1|6|1.3.6.1.2.1.25.2.1.2 +1.3.6.1.2.1.25.2.3.1.2.3|6|1.3.6.1.2.1.25.2.1.3 +1.3.6.1.2.1.25.2.3.1.2.6|6|1.3.6.1.2.1.25.2.1.1 +1.3.6.1.2.1.25.2.3.1.2.7|6|1.3.6.1.2.1.25.2.1.1 +1.3.6.1.2.1.25.2.3.1.2.8|6|1.3.6.1.2.1.25.2.1.1 +1.3.6.1.2.1.25.2.3.1.2.10|6|1.3.6.1.2.1.25.2.1.3 +1.3.6.1.2.1.25.2.3.1.2.37|6|1.3.6.1.2.1.25.2.1.4 +1.3.6.1.2.1.25.2.3.1.2.38|6|1.3.6.1.2.1.25.2.1.4 +1.3.6.1.2.1.25.2.3.1.3.1|4|Physical memory +1.3.6.1.2.1.25.2.3.1.3.3|4|Virtual memory +1.3.6.1.2.1.25.2.3.1.3.6|4|Memory buffers +1.3.6.1.2.1.25.2.3.1.3.7|4|Cached memory +1.3.6.1.2.1.25.2.3.1.3.8|4|Shared memory +1.3.6.1.2.1.25.2.3.1.3.10|4|Swap space +1.3.6.1.2.1.25.2.3.1.3.37|4|/run +1.3.6.1.2.1.25.2.3.1.3.38|4|/var/volatile +1.3.6.1.2.1.25.2.3.1.4.1|2|1024 +1.3.6.1.2.1.25.2.3.1.4.3|2|1024 +1.3.6.1.2.1.25.2.3.1.4.6|2|1024 +1.3.6.1.2.1.25.2.3.1.4.7|2|1024 +1.3.6.1.2.1.25.2.3.1.4.8|2|1024 +1.3.6.1.2.1.25.2.3.1.4.10|2|1024 +1.3.6.1.2.1.25.2.3.1.4.37|2|4096 +1.3.6.1.2.1.25.2.3.1.4.38|2|4096 +1.3.6.1.2.1.25.2.3.1.5.1|2|1927820 +1.3.6.1.2.1.25.2.3.1.5.3|2|1927820 +1.3.6.1.2.1.25.2.3.1.5.6|2|1927820 +1.3.6.1.2.1.25.2.3.1.5.7|2|141460 +1.3.6.1.2.1.25.2.3.1.5.8|2|66496 +1.3.6.1.2.1.25.2.3.1.5.10|2|0 +1.3.6.1.2.1.25.2.3.1.5.37|2|240977 +1.3.6.1.2.1.25.2.3.1.5.38|2|240977 +1.3.6.1.2.1.25.2.3.1.6.1|2|564500 +1.3.6.1.2.1.25.2.3.1.6.3|2|564500 +1.3.6.1.2.1.25.2.3.1.6.6|2|0 +1.3.6.1.2.1.25.2.3.1.6.7|2|141460 +1.3.6.1.2.1.25.2.3.1.6.8|2|66496 +1.3.6.1.2.1.25.2.3.1.6.10|2|0 +1.3.6.1.2.1.25.2.3.1.6.37|2|370 +1.3.6.1.2.1.25.2.3.1.6.38|2|16237 +1.3.6.1.2.1.25.3.2.1.1.196608|2|196608 +1.3.6.1.2.1.25.3.2.1.1.196609|2|196609 +1.3.6.1.2.1.25.3.2.1.1.196610|2|196610 +1.3.6.1.2.1.25.3.2.1.1.196611|2|196611 +1.3.6.1.2.1.25.3.2.1.1.262145|2|262145 +1.3.6.1.2.1.25.3.2.1.1.262146|2|262146 +1.3.6.1.2.1.25.3.2.1.1.262147|2|262147 +1.3.6.1.2.1.25.3.2.1.1.262148|2|262148 +1.3.6.1.2.1.25.3.2.1.1.262149|2|262149 +1.3.6.1.2.1.25.3.2.1.1.262150|2|262150 +1.3.6.1.2.1.25.3.2.1.1.262151|2|262151 +1.3.6.1.2.1.25.3.2.1.1.262152|2|262152 +1.3.6.1.2.1.25.3.2.1.1.262153|2|262153 +1.3.6.1.2.1.25.3.2.1.1.262154|2|262154 +1.3.6.1.2.1.25.3.2.1.1.262155|2|262155 +1.3.6.1.2.1.25.3.2.1.1.262156|2|262156 +1.3.6.1.2.1.25.3.2.1.1.262157|2|262157 +1.3.6.1.2.1.25.3.2.1.1.262158|2|262158 +1.3.6.1.2.1.25.3.2.1.1.262159|2|262159 +1.3.6.1.2.1.25.3.2.1.1.262160|2|262160 +1.3.6.1.2.1.25.3.2.1.1.262161|2|262161 +1.3.6.1.2.1.25.3.2.1.1.262162|2|262162 +1.3.6.1.2.1.25.3.2.1.1.262163|2|262163 +1.3.6.1.2.1.25.3.2.1.1.262164|2|262164 +1.3.6.1.2.1.25.3.2.1.1.262165|2|262165 +1.3.6.1.2.1.25.3.2.1.1.262166|2|262166 +1.3.6.1.2.1.25.3.2.1.1.262167|2|262167 +1.3.6.1.2.1.25.3.2.1.1.262168|2|262168 +1.3.6.1.2.1.25.3.2.1.1.262169|2|262169 +1.3.6.1.2.1.25.3.2.1.1.262170|2|262170 +1.3.6.1.2.1.25.3.2.1.1.262171|2|262171 +1.3.6.1.2.1.25.3.2.1.1.262172|2|262172 +1.3.6.1.2.1.25.3.2.1.1.262173|2|262173 +1.3.6.1.2.1.25.3.2.1.1.262174|2|262174 +1.3.6.1.2.1.25.3.2.1.1.262175|2|262175 +1.3.6.1.2.1.25.3.2.1.1.262176|2|262176 +1.3.6.1.2.1.25.3.2.1.1.262177|2|262177 +1.3.6.1.2.1.25.3.2.1.1.262178|2|262178 +1.3.6.1.2.1.25.3.2.1.1.262179|2|262179 +1.3.6.1.2.1.25.3.2.1.1.262180|2|262180 +1.3.6.1.2.1.25.3.2.1.1.262181|2|262181 +1.3.6.1.2.1.25.3.2.1.1.262182|2|262182 +1.3.6.1.2.1.25.3.2.1.1.262183|2|262183 +1.3.6.1.2.1.25.3.2.1.1.262184|2|262184 +1.3.6.1.2.1.25.3.2.1.1.262185|2|262185 +1.3.6.1.2.1.25.3.2.1.1.262186|2|262186 +1.3.6.1.2.1.25.3.2.1.1.262187|2|262187 +1.3.6.1.2.1.25.3.2.1.1.262188|2|262188 +1.3.6.1.2.1.25.3.2.1.1.262189|2|262189 +1.3.6.1.2.1.25.3.2.1.1.262190|2|262190 +1.3.6.1.2.1.25.3.2.1.1.262191|2|262191 +1.3.6.1.2.1.25.3.2.1.1.786432|2|786432 +1.3.6.1.2.1.25.3.2.1.2.196608|6|1.3.6.1.2.1.25.3.1.3 +1.3.6.1.2.1.25.3.2.1.2.196609|6|1.3.6.1.2.1.25.3.1.3 +1.3.6.1.2.1.25.3.2.1.2.196610|6|1.3.6.1.2.1.25.3.1.3 +1.3.6.1.2.1.25.3.2.1.2.196611|6|1.3.6.1.2.1.25.3.1.3 +1.3.6.1.2.1.25.3.2.1.2.262145|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262146|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262147|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262148|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262149|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262150|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262151|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262152|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262153|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262154|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262155|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262156|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262157|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262158|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262159|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262160|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262161|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262162|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262163|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262164|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262165|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262166|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262167|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262168|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262169|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262170|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262171|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262172|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262173|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262174|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262175|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262176|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262177|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262178|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262179|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262180|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262181|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262182|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262183|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262184|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262185|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262186|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262187|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262188|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262189|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262190|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.262191|6|1.3.6.1.2.1.25.3.1.4 +1.3.6.1.2.1.25.3.2.1.2.786432|6|1.3.6.1.2.1.25.3.1.12 +1.3.6.1.2.1.25.3.2.1.3.196608|4| +1.3.6.1.2.1.25.3.2.1.3.196609|4| +1.3.6.1.2.1.25.3.2.1.3.196610|4| +1.3.6.1.2.1.25.3.2.1.3.196611|4| +1.3.6.1.2.1.25.3.2.1.3.262145|4|network interface lo +1.3.6.1.2.1.25.3.2.1.3.262146|4|network interface nic1 +1.3.6.1.2.1.25.3.2.1.3.262147|4|network interface nic2 +1.3.6.1.2.1.25.3.2.1.3.262148|4|network interface nic3 +1.3.6.1.2.1.25.3.2.1.3.262149|4|network interface sit0 +1.3.6.1.2.1.25.3.2.1.3.262150|4|network interface ip6tnl0 +1.3.6.1.2.1.25.3.2.1.3.262151|4|network interface ip6gre0 +1.3.6.1.2.1.25.3.2.1.3.262152|4|network interface br0 +1.3.6.1.2.1.25.3.2.1.3.262153|4|network interface wlan0 +1.3.6.1.2.1.25.3.2.1.3.262154|4|network interface br0.260 +1.3.6.1.2.1.25.3.2.1.3.262155|4|network interface terra0 +1.3.6.1.2.1.25.3.2.1.3.262156|4|network interface terra1 +1.3.6.1.2.1.25.3.2.1.3.262157|4|network interface terra2 +1.3.6.1.2.1.25.3.2.1.3.262158|4|network interface terra3 +1.3.6.1.2.1.25.3.2.1.3.262159|4|network interface terra4 +1.3.6.1.2.1.25.3.2.1.3.262160|4|network interface terra5 +1.3.6.1.2.1.25.3.2.1.3.262161|4|network interface terra6 +1.3.6.1.2.1.25.3.2.1.3.262162|4|network interface terra7 +1.3.6.1.2.1.25.3.2.1.3.262163|4|network interface terra8 +1.3.6.1.2.1.25.3.2.1.3.262164|4|network interface terra9 +1.3.6.1.2.1.25.3.2.1.3.262165|4|network interface terra10 +1.3.6.1.2.1.25.3.2.1.3.262166|4|network interface terra11 +1.3.6.1.2.1.25.3.2.1.3.262167|4|network interface terra12 +1.3.6.1.2.1.25.3.2.1.3.262168|4|network interface terra13 +1.3.6.1.2.1.25.3.2.1.3.262169|4|network interface terra14 +1.3.6.1.2.1.25.3.2.1.3.262170|4|network interface terra15 +1.3.6.1.2.1.25.3.2.1.3.262171|4|network interface l2gre0 +1.3.6.1.2.1.25.3.2.1.3.262172|4|network interface l2gre1 +1.3.6.1.2.1.25.3.2.1.3.262173|4|network interface l2gre2 +1.3.6.1.2.1.25.3.2.1.3.262174|4|network interface l2gre3 +1.3.6.1.2.1.25.3.2.1.3.262175|4|network interface l2gre4 +1.3.6.1.2.1.25.3.2.1.3.262176|4|network interface l2gre5 +1.3.6.1.2.1.25.3.2.1.3.262177|4|network interface l2gre6 +1.3.6.1.2.1.25.3.2.1.3.262178|4|network interface l2gre7 +1.3.6.1.2.1.25.3.2.1.3.262179|4|network interface l2gre8 +1.3.6.1.2.1.25.3.2.1.3.262180|4|network interface l2gre9 +1.3.6.1.2.1.25.3.2.1.3.262181|4|network interface l2gre10 +1.3.6.1.2.1.25.3.2.1.3.262182|4|network interface l2gre11 +1.3.6.1.2.1.25.3.2.1.3.262183|4|network interface l2gre12 +1.3.6.1.2.1.25.3.2.1.3.262184|4|network interface l2gre13 +1.3.6.1.2.1.25.3.2.1.3.262185|4|network interface l2gre14 +1.3.6.1.2.1.25.3.2.1.3.262186|4|network interface l2gre15 +1.3.6.1.2.1.25.3.2.1.3.262187|4|network interface l2gre16 +1.3.6.1.2.1.25.3.2.1.3.262188|4|network interface l2gre17 +1.3.6.1.2.1.25.3.2.1.3.262189|4|network interface l2gre18 +1.3.6.1.2.1.25.3.2.1.3.262190|4|network interface l2gre19 +1.3.6.1.2.1.25.3.2.1.3.262191|4|network interface l2gre20 +1.3.6.1.2.1.25.3.2.1.3.786432|4|Guessing that there's a floating point co-processor +1.3.6.1.2.1.25.3.2.1.4.196608|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.196609|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.196610|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.196611|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262145|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262146|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262147|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262148|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262149|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262150|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262151|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262152|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262153|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262154|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262155|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262156|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262157|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262158|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262159|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262160|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262161|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262162|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262163|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262164|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262165|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262166|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262167|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262168|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262169|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262170|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262171|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262172|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262173|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262174|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262175|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262176|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262177|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262178|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262179|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262180|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262181|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262182|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262183|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262184|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262185|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262186|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262187|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262188|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262189|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262190|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.262191|6|0.0 +1.3.6.1.2.1.25.3.2.1.4.786432|6|0.0 +1.3.6.1.2.1.25.3.2.1.5.196608|2|2 +1.3.6.1.2.1.25.3.2.1.5.196609|2|2 +1.3.6.1.2.1.25.3.2.1.5.196610|2|2 +1.3.6.1.2.1.25.3.2.1.5.196611|2|2 +1.3.6.1.2.1.25.3.2.1.5.262145|2|2 +1.3.6.1.2.1.25.3.2.1.5.262146|2|2 +1.3.6.1.2.1.25.3.2.1.5.262147|2|2 +1.3.6.1.2.1.25.3.2.1.5.262148|2|2 +1.3.6.1.2.1.25.3.2.1.5.262149|2|5 +1.3.6.1.2.1.25.3.2.1.5.262150|2|5 +1.3.6.1.2.1.25.3.2.1.5.262151|2|5 +1.3.6.1.2.1.25.3.2.1.5.262152|2|2 +1.3.6.1.2.1.25.3.2.1.5.262153|2|5 +1.3.6.1.2.1.25.3.2.1.5.262154|2|2 +1.3.6.1.2.1.25.3.2.1.5.262155|2|2 +1.3.6.1.2.1.25.3.2.1.5.262156|2|2 +1.3.6.1.2.1.25.3.2.1.5.262157|2|2 +1.3.6.1.2.1.25.3.2.1.5.262158|2|2 +1.3.6.1.2.1.25.3.2.1.5.262159|2|2 +1.3.6.1.2.1.25.3.2.1.5.262160|2|2 +1.3.6.1.2.1.25.3.2.1.5.262161|2|2 +1.3.6.1.2.1.25.3.2.1.5.262162|2|2 +1.3.6.1.2.1.25.3.2.1.5.262163|2|2 +1.3.6.1.2.1.25.3.2.1.5.262164|2|2 +1.3.6.1.2.1.25.3.2.1.5.262165|2|2 +1.3.6.1.2.1.25.3.2.1.5.262166|2|2 +1.3.6.1.2.1.25.3.2.1.5.262167|2|2 +1.3.6.1.2.1.25.3.2.1.5.262168|2|2 +1.3.6.1.2.1.25.3.2.1.5.262169|2|2 +1.3.6.1.2.1.25.3.2.1.5.262170|2|2 +1.3.6.1.2.1.25.3.2.1.5.262171|2|2 +1.3.6.1.2.1.25.3.2.1.5.262172|2|2 +1.3.6.1.2.1.25.3.2.1.5.262173|2|2 +1.3.6.1.2.1.25.3.2.1.5.262174|2|2 +1.3.6.1.2.1.25.3.2.1.5.262175|2|2 +1.3.6.1.2.1.25.3.2.1.5.262176|2|2 +1.3.6.1.2.1.25.3.2.1.5.262177|2|2 +1.3.6.1.2.1.25.3.2.1.5.262178|2|2 +1.3.6.1.2.1.25.3.2.1.5.262179|2|2 +1.3.6.1.2.1.25.3.2.1.5.262180|2|2 +1.3.6.1.2.1.25.3.2.1.5.262181|2|2 +1.3.6.1.2.1.25.3.2.1.5.262182|2|2 +1.3.6.1.2.1.25.3.2.1.5.262183|2|2 +1.3.6.1.2.1.25.3.2.1.5.262184|2|2 +1.3.6.1.2.1.25.3.2.1.5.262185|2|2 +1.3.6.1.2.1.25.3.2.1.5.262186|2|2 +1.3.6.1.2.1.25.3.2.1.5.262187|2|2 +1.3.6.1.2.1.25.3.2.1.5.262188|2|2 +1.3.6.1.2.1.25.3.2.1.5.262189|2|2 +1.3.6.1.2.1.25.3.2.1.5.262190|2|2 +1.3.6.1.2.1.25.3.2.1.5.262191|2|2 +1.3.6.1.2.1.25.3.2.1.6.262145|65|0 +1.3.6.1.2.1.25.3.2.1.6.262146|65|0 +1.3.6.1.2.1.25.3.2.1.6.262147|65|0 +1.3.6.1.2.1.25.3.2.1.6.262148|65|33921 +1.3.6.1.2.1.25.3.2.1.6.262149|65|0 +1.3.6.1.2.1.25.3.2.1.6.262150|65|0 +1.3.6.1.2.1.25.3.2.1.6.262151|65|0 +1.3.6.1.2.1.25.3.2.1.6.262152|65|0 +1.3.6.1.2.1.25.3.2.1.6.262153|65|3429 +1.3.6.1.2.1.25.3.2.1.6.262154|65|0 +1.3.6.1.2.1.25.3.2.1.6.262155|65|3429 +1.3.6.1.2.1.25.3.2.1.6.262156|65|0 +1.3.6.1.2.1.25.3.2.1.6.262157|65|0 +1.3.6.1.2.1.25.3.2.1.6.262158|65|0 +1.3.6.1.2.1.25.3.2.1.6.262159|65|0 +1.3.6.1.2.1.25.3.2.1.6.262160|65|0 +1.3.6.1.2.1.25.3.2.1.6.262161|65|0 +1.3.6.1.2.1.25.3.2.1.6.262162|65|0 +1.3.6.1.2.1.25.3.2.1.6.262163|65|0 +1.3.6.1.2.1.25.3.2.1.6.262164|65|0 +1.3.6.1.2.1.25.3.2.1.6.262165|65|0 +1.3.6.1.2.1.25.3.2.1.6.262166|65|0 +1.3.6.1.2.1.25.3.2.1.6.262167|65|0 +1.3.6.1.2.1.25.3.2.1.6.262168|65|0 +1.3.6.1.2.1.25.3.2.1.6.262169|65|0 +1.3.6.1.2.1.25.3.2.1.6.262170|65|0 +1.3.6.1.2.1.25.3.2.1.6.262171|65|0 +1.3.6.1.2.1.25.3.2.1.6.262172|65|0 +1.3.6.1.2.1.25.3.2.1.6.262173|65|0 +1.3.6.1.2.1.25.3.2.1.6.262174|65|0 +1.3.6.1.2.1.25.3.2.1.6.262175|65|0 +1.3.6.1.2.1.25.3.2.1.6.262176|65|0 +1.3.6.1.2.1.25.3.2.1.6.262177|65|0 +1.3.6.1.2.1.25.3.2.1.6.262178|65|0 +1.3.6.1.2.1.25.3.2.1.6.262179|65|0 +1.3.6.1.2.1.25.3.2.1.6.262180|65|0 +1.3.6.1.2.1.25.3.2.1.6.262181|65|0 +1.3.6.1.2.1.25.3.2.1.6.262182|65|0 +1.3.6.1.2.1.25.3.2.1.6.262183|65|0 +1.3.6.1.2.1.25.3.2.1.6.262184|65|0 +1.3.6.1.2.1.25.3.2.1.6.262185|65|0 +1.3.6.1.2.1.25.3.2.1.6.262186|65|0 +1.3.6.1.2.1.25.3.2.1.6.262187|65|0 +1.3.6.1.2.1.25.3.2.1.6.262188|65|0 +1.3.6.1.2.1.25.3.2.1.6.262189|65|0 +1.3.6.1.2.1.25.3.2.1.6.262190|65|768 +1.3.6.1.2.1.25.3.2.1.6.262191|65|0 +1.3.6.1.2.1.25.3.3.1.1.196608|6|0.0 +1.3.6.1.2.1.25.3.3.1.1.196609|6|0.0 +1.3.6.1.2.1.25.3.3.1.1.196610|6|0.0 +1.3.6.1.2.1.25.3.3.1.1.196611|6|0.0 +1.3.6.1.2.1.25.3.3.1.2.196608|2|15 +1.3.6.1.2.1.25.3.3.1.2.196609|2|20 +1.3.6.1.2.1.25.3.3.1.2.196610|2|1 +1.3.6.1.2.1.25.3.3.1.2.196611|2|1 +1.3.6.1.2.1.31.1.1.1.1.1|4|lo +1.3.6.1.2.1.31.1.1.1.1.2|4|nic1 +1.3.6.1.2.1.31.1.1.1.1.3|4|nic2 +1.3.6.1.2.1.31.1.1.1.1.4|4|nic3 +1.3.6.1.2.1.31.1.1.1.1.5|4|sit0 +1.3.6.1.2.1.31.1.1.1.1.6|4|ip6tnl0 +1.3.6.1.2.1.31.1.1.1.1.7|4|ip6gre0 +1.3.6.1.2.1.31.1.1.1.1.8|4|br0 +1.3.6.1.2.1.31.1.1.1.1.9|4|wlan0 +1.3.6.1.2.1.31.1.1.1.1.10|4|br0.260 +1.3.6.1.2.1.31.1.1.1.1.11|4|terra0 +1.3.6.1.2.1.31.1.1.1.1.12|4|terra1 +1.3.6.1.2.1.31.1.1.1.1.13|4|terra2 +1.3.6.1.2.1.31.1.1.1.1.14|4|terra3 +1.3.6.1.2.1.31.1.1.1.1.15|4|terra4 +1.3.6.1.2.1.31.1.1.1.1.16|4|terra5 +1.3.6.1.2.1.31.1.1.1.1.17|4|terra6 +1.3.6.1.2.1.31.1.1.1.1.18|4|terra7 +1.3.6.1.2.1.31.1.1.1.1.19|4|terra8 +1.3.6.1.2.1.31.1.1.1.1.20|4|terra9 +1.3.6.1.2.1.31.1.1.1.1.21|4|terra10 +1.3.6.1.2.1.31.1.1.1.1.22|4|terra11 +1.3.6.1.2.1.31.1.1.1.1.23|4|terra12 +1.3.6.1.2.1.31.1.1.1.1.24|4|terra13 +1.3.6.1.2.1.31.1.1.1.1.25|4|terra14 +1.3.6.1.2.1.31.1.1.1.1.26|4|terra15 +1.3.6.1.2.1.31.1.1.1.1.27|4|l2gre0 +1.3.6.1.2.1.31.1.1.1.1.28|4|l2gre1 +1.3.6.1.2.1.31.1.1.1.1.29|4|l2gre2 +1.3.6.1.2.1.31.1.1.1.1.30|4|l2gre3 +1.3.6.1.2.1.31.1.1.1.1.31|4|l2gre4 +1.3.6.1.2.1.31.1.1.1.1.32|4|l2gre5 +1.3.6.1.2.1.31.1.1.1.1.33|4|l2gre6 +1.3.6.1.2.1.31.1.1.1.1.34|4|l2gre7 +1.3.6.1.2.1.31.1.1.1.1.35|4|l2gre8 +1.3.6.1.2.1.31.1.1.1.1.36|4|l2gre9 +1.3.6.1.2.1.31.1.1.1.1.37|4|l2gre10 +1.3.6.1.2.1.31.1.1.1.1.38|4|l2gre11 +1.3.6.1.2.1.31.1.1.1.1.39|4|l2gre12 +1.3.6.1.2.1.31.1.1.1.1.40|4|l2gre13 +1.3.6.1.2.1.31.1.1.1.1.41|4|l2gre14 +1.3.6.1.2.1.31.1.1.1.1.42|4|l2gre15 +1.3.6.1.2.1.31.1.1.1.1.43|4|l2gre16 +1.3.6.1.2.1.31.1.1.1.1.44|4|l2gre17 +1.3.6.1.2.1.31.1.1.1.1.45|4|l2gre18 +1.3.6.1.2.1.31.1.1.1.1.46|4|l2gre19 +1.3.6.1.2.1.31.1.1.1.1.47|4|l2gre20 +1.3.6.1.2.1.31.1.1.1.18.1|4| +1.3.6.1.2.1.31.1.1.1.18.2|4| +1.3.6.1.2.1.31.1.1.1.18.3|4| +1.3.6.1.2.1.31.1.1.1.18.4|4| +1.3.6.1.2.1.31.1.1.1.18.5|4| +1.3.6.1.2.1.31.1.1.1.18.6|4| +1.3.6.1.2.1.31.1.1.1.18.7|4| +1.3.6.1.2.1.31.1.1.1.18.8|4| +1.3.6.1.2.1.31.1.1.1.18.9|4| +1.3.6.1.2.1.31.1.1.1.18.10|4| +1.3.6.1.2.1.31.1.1.1.18.11|4| +1.3.6.1.2.1.31.1.1.1.18.12|4| +1.3.6.1.2.1.31.1.1.1.18.13|4| +1.3.6.1.2.1.31.1.1.1.18.14|4| +1.3.6.1.2.1.31.1.1.1.18.15|4| +1.3.6.1.2.1.31.1.1.1.18.16|4| +1.3.6.1.2.1.31.1.1.1.18.17|4| +1.3.6.1.2.1.31.1.1.1.18.18|4| +1.3.6.1.2.1.31.1.1.1.18.19|4| +1.3.6.1.2.1.31.1.1.1.18.20|4| +1.3.6.1.2.1.31.1.1.1.18.21|4| +1.3.6.1.2.1.31.1.1.1.18.22|4| +1.3.6.1.2.1.31.1.1.1.18.23|4| +1.3.6.1.2.1.31.1.1.1.18.24|4| +1.3.6.1.2.1.31.1.1.1.18.25|4| +1.3.6.1.2.1.31.1.1.1.18.26|4| +1.3.6.1.2.1.31.1.1.1.18.27|4| +1.3.6.1.2.1.31.1.1.1.18.28|4| +1.3.6.1.2.1.31.1.1.1.18.29|4| +1.3.6.1.2.1.31.1.1.1.18.30|4| +1.3.6.1.2.1.31.1.1.1.18.31|4| +1.3.6.1.2.1.31.1.1.1.18.32|4| +1.3.6.1.2.1.31.1.1.1.18.33|4| +1.3.6.1.2.1.31.1.1.1.18.34|4| +1.3.6.1.2.1.31.1.1.1.18.35|4| +1.3.6.1.2.1.31.1.1.1.18.36|4| +1.3.6.1.2.1.31.1.1.1.18.37|4| +1.3.6.1.2.1.31.1.1.1.18.38|4| +1.3.6.1.2.1.31.1.1.1.18.39|4| +1.3.6.1.2.1.31.1.1.1.18.40|4| +1.3.6.1.2.1.31.1.1.1.18.41|4| +1.3.6.1.2.1.31.1.1.1.18.42|4| +1.3.6.1.2.1.31.1.1.1.18.43|4| +1.3.6.1.2.1.31.1.1.1.18.44|4| +1.3.6.1.2.1.31.1.1.1.18.45|4| +1.3.6.1.2.1.31.1.1.1.18.46|4| +1.3.6.1.2.1.31.1.1.1.18.47|4| +1.3.6.1.4.1.2021.10.1.5.1|2|105 +1.3.6.1.4.1.2021.10.1.5.2|2|109 +1.3.6.1.4.1.2021.10.1.5.3|2|112 +1.3.6.1.4.1.2021.11.1.0|2|1 +1.3.6.1.4.1.2021.11.2.0|4|systemStats +1.3.6.1.4.1.2021.11.3.0|2|0 +1.3.6.1.4.1.2021.11.4.0|2|0 +1.3.6.1.4.1.2021.11.5.0|2|0 +1.3.6.1.4.1.2021.11.6.0|2|0 +1.3.6.1.4.1.2021.11.7.0|2|6672 +1.3.6.1.4.1.2021.11.8.0|2|2962 +1.3.6.1.4.1.2021.11.9.0|2|3 +1.3.6.1.4.1.2021.11.10.0|2|3 +1.3.6.1.4.1.2021.11.11.0|2|91 +1.3.6.1.4.1.2021.11.50.0|65|44380475 +1.3.6.1.4.1.2021.11.51.0|65|0 +1.3.6.1.4.1.2021.11.52.0|65|40510032 +1.3.6.1.4.1.2021.11.53.0|65|1092618872 +1.3.6.1.4.1.2021.11.54.0|65|373 +1.3.6.1.4.1.2021.11.55.0|65|0 +1.3.6.1.4.1.2021.11.56.0|65|0 +1.3.6.1.4.1.2021.11.57.0|65|0 +1.3.6.1.4.1.2021.11.58.0|65|128 +1.3.6.1.4.1.2021.11.59.0|65|2062028457 +1.3.6.1.4.1.2021.11.60.0|65|831234316 +1.3.6.1.4.1.2021.11.61.0|65|14096540 +1.3.6.1.4.1.2021.11.62.0|65|0 +1.3.6.1.4.1.2021.11.63.0|65|0 +1.3.6.1.4.1.2021.11.64.0|65|0 +1.3.6.1.4.1.2021.11.65.0|65|0 +1.3.6.1.4.1.2021.11.66.0|65|0 +1.3.6.1.4.1.2021.11.67.0|2|4 +1.3.6.1.4.1.17713.60.1.1.1.5.1|66|13 +1.3.6.1.4.1.17713.60.1.1.1.6.1|2|10 +1.3.6.1.4.1.17713.60.1.1.1.7.1|2|-64