Entity Physical discovery: Rewrite to modern style (#16289)

* Initial entity-physical code

* Split out Entity-MIB trait

* Cisco Cellular inventory

* Fix bad test data

* alfo80hd - we now include all entPhysical entries

* Correct aos7 test data

* Add entPhysicalClass as last resort for label in ui

* aos add previously filtered data

* Fixup arista-eos data

* Update ariast_eos data

* Arris, clean garbage in Rev fields

* Aruba Instant custom inventory ported

* ArubaOS CX add vendor type mib

* aviat-wtm test data refresh

* axos add shelf fix data fields a bit

* ciena-rls

* ciena-sds

* Skip cimc for now... no test data

* Cisco updates

* Comware data update

* Update dnos

* Clean Edgeos garbage, make code from Arris shareable

* Relaxed ifIndex match, some devices cheat and send back static strings instead of formatted OIDs

* Regex refinement and updated edgeos with new clean data

* Update edgeswitch data

* Update eltex-mes21xx data

* eltex-mes23xx

* Guess at eltex-mes24xx since there is no test data

* Update eurostor, fix firmware version

* Apply fixes from StyleCI

* fixes

* Update fortigate data

* Update fortiweb, ftd, and fusion

* Update linux LSI

* Fix hexToAscii null removal with different seperator handling

* icotera add final snmprec data to avoid snmpsim bug

* Update IOS data

* Update mrv-od

* Add junos translation

* Generic data updates n-r

* ruijie workaround snmpsim bug

* Port saf-cfm

* Recode Schleifenbauer, and fix entPhysicalIndex values

* SmartAX fixes

* sm-os and tait-infra93

* timos inventory was not right, fix it up

* ubiquoss-pon

* VRP, has custom data collection on top of normal
adapt port ifIndex lookup to handle it

* VRP exceeded the string length specified in ENTITY-MIB...

* data updates

* Final data update and code cleanup

* Apply fixes from StyleCI

* Lint fixes

* Add missing SnmpResponse->pluck() code

* Update db_schema.yaml

* Fix bad test data

* Another instant-on update

* oops

* Remove some unused code

# Conflicts:
#	includes/html/pages/device/overview.inc.php

---------

Co-authored-by: Tony Murray <murrant@users.noreply.github.com>
This commit is contained in:
Tony Murray 2024-08-21 01:12:09 -05:00 committed by GitHub
parent 343a979f5c
commit 9d35fbc6a7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
166 changed files with 45109 additions and 30536 deletions

View File

@ -173,6 +173,26 @@ class SnmpResponse
return $this->values;
}
/**
* Create a key to value pair for an OID
* Only works for single indexed tables
* You may omit $oid if there is only one $oid in the walk
*/
public function pluck(?string $oid = null): array
{
$output = [];
$oid = $oid ?? '[a-zA-Z0-9:.-]+';
$regex = "/^{$oid}[[.](\d+)]?$/";
foreach ($this->values() as $key => $value) {
if (preg_match($regex, $key, $matches)) {
$output[$matches[1]] = $value;
}
}
return $output;
}
public function valuesByIndex(array &$array = []): array
{
foreach ($this->values() as $oid => $value) {

View File

@ -0,0 +1,39 @@
<?php
/**
* EntityPhysicalDiscovery.php
*
* -Description-
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* @link https://www.librenms.org
*
* @copyright 2024 Tony Murray
* @author Tony Murray <murraytony@gmail.com>
*/
namespace LibreNMS\Interfaces\Discovery;
use Illuminate\Support\Collection;
interface EntityPhysicalDiscovery
{
/**
* Discover a Collection of IsIsAdjacency models.
* Will be keyed by ifIndex
*
* @return \Illuminate\Support\Collection<\App\Models\EntPhysical>
*/
public function discoverEntityPhysical(): Collection;
}

View File

@ -0,0 +1,79 @@
<?php
namespace LibreNMS\Modules;
use App\Models\Device;
use App\Models\EntPhysical;
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 EntityPhysical implements Module
{
use SyncsModels;
/**
* @inheritDoc
*/
public function dependencies(): array
{
return [];
}
/**
* @inheritDoc
*/
public function shouldDiscover(OS $os, ModuleStatus $status): bool
{
return $status->isEnabledAndDeviceUp($os->getDevice());
}
/**
* @inheritDoc
*/
public function shouldPoll(OS $os, ModuleStatus $status): bool
{
return $status->isEnabledAndDeviceUp($os->getDevice());
}
/**
* @inheritDoc
*/
public function discover(OS $os): void
{
$inventory = $os->discoverEntityPhysical();
ModuleModelObserver::observe(EntPhysical::class);
$this->syncModels($os->getDevice(), 'entityPhysical', $inventory);
}
/**
* @inheritDoc
*/
public function poll(OS $os, DataStorageInterface $datastore): void
{
// no polling
}
/**
* @inheritDoc
*/
public function cleanup(Device $device): void
{
$device->entityPhysical()->delete();
}
/**
* @inheritDoc
*/
public function dump(Device $device)
{
return [
'entPhysical' => $device->entityPhysical()->orderBy('entPhysicalIndex')
->get()->map->makeHidden(['device_id', 'entPhysical_id']),
];
}
}

View File

@ -31,6 +31,7 @@ use DeviceCache;
use Illuminate\Support\Str;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Device\YamlDiscovery;
use LibreNMS\Interfaces\Discovery\EntityPhysicalDiscovery;
use LibreNMS\Interfaces\Discovery\MempoolsDiscovery;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
use LibreNMS\Interfaces\Discovery\ProcessorDiscovery;
@ -46,6 +47,7 @@ use LibreNMS\Interfaces\Polling\StpInstancePolling;
use LibreNMS\Interfaces\Polling\StpPortPolling;
use LibreNMS\OS\Generic;
use LibreNMS\OS\Traits\BridgeMib;
use LibreNMS\OS\Traits\EntityMib;
use LibreNMS\OS\Traits\HostResources;
use LibreNMS\OS\Traits\NetstatsPolling;
use LibreNMS\OS\Traits\ResolvesPortIds;
@ -60,6 +62,7 @@ class OS implements
MempoolsDiscovery,
StpInstanceDiscovery,
StpPortDiscovery,
EntityPhysicalDiscovery,
IcmpNetstatsPolling,
IpNetstatsPolling,
IpForwardNetstatsPolling,
@ -82,6 +85,7 @@ class OS implements
use NetstatsPolling;
use ResolvesPortIds;
use BridgeMib;
use EntityMib;
/**
* @var float|null
@ -92,6 +96,8 @@ class OS implements
private $cache; // data cache
private $pre_cache; // pre-fetch data cache
protected ?string $entityVendorTypeMib = null;
/**
* OS constructor. Not allowed to be created directly. Use OS::make()
*/

View File

@ -28,6 +28,7 @@ namespace LibreNMS\OS;
use App\Models\Device;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
use LibreNMS\OS;
use LibreNMS\Util\StringHelpers;
class Areca extends OS implements OSDiscovery
{
@ -36,8 +37,8 @@ class Areca extends OS implements OSDiscovery
parent::discoverOS($device); //yaml
// Sometimes firmware outputs serial as hex-string
if (isHexString($device->serial)) {
$device->serial = snmp_hexstring($device->serial);
if (StringHelpers::isHex($device->serial)) {
$device->serial = StringHelpers::hexToAscii($device->serial, ' ');
}
}
}

View File

@ -27,6 +27,8 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\Device\Processor;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
@ -355,4 +357,43 @@ class ArubaInstant extends OS implements
return $data;
}
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$ai_ig_data = \SnmpQuery::walk('AI-AP-MIB::aiInfoGroup')->table(1);
$master_ip = $ai_ig_data[0]['AI-AP-MIB::aiMasterIPAddress'] ?? null;
if ($master_ip) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => $ai_ig_data[0]['AI-AP-MIB::aiVirtualControllerIPAddress'],
'entPhysicalClass' => 'chassis',
'entPhysicalName' => $ai_ig_data[0]['AI-AP-MIB::aiVirtualControllerName'],
'entPhysicalModelName' => 'Instant Virtual Controller Cluster',
'entPhysicalSerialNum' => $ai_ig_data[0]['AI-AP-MIB::aiVirtualControllerKey'],
'entPhysicalMfgName' => 'Aruba',
]));
}
$index = 2;
$ap_data = \SnmpQuery::hideMib()->walk('AI-AP-MIB:aiAccessPointTable')->table(1);
foreach ($ap_data as $mac => $entry) {
$type = $master_ip == $entry['aiAPIPAddress'] ? 'Master' : 'Member';
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $index++,
'entPhysicalDescr' => $entry['aiAPMACAddress'],
'entPhysicalName' => sprintf('%s %s Cluster %s', $entry['aiAPName'], $entry['aiAPIPAddress'], $type),
'entPhysicalClass' => 'other',
'entPhysicalContainedIn' => 1,
'entPhysicalSerialNum' => $entry['aiAPSerialNum'],
'entPhysicalModelName' => $entry['aiAPModel'],
'entPhysicalMfgName' => 'Aruba',
'entPhysicalVendorType' => 'accessPoint',
'entPhysicalSoftwareRev' => $this->getDevice()->version,
]));
}
return $inventory;
}
}

View File

@ -30,13 +30,15 @@ use SnmpQuery;
class ArubaosCx extends \LibreNMS\OS implements NacPolling
{
protected ?string $entityVendorTypeMib = 'ARUBAWIRED-NETWORKING-OID';
public function pollNac()
{
$nac = new Collection();
$rowSet = [];
$ifIndex_map = $this->getDevice()->ports()->pluck('port_id', 'ifName');
$table = SnmpQuery::mibDir('arubaos-cx')->mibs(['ARUBAWIRED-PORT-ACCESS-MIB'])->hideMib()->enumStrings()->walk('arubaWiredPortAccessClientTable')->table(2);
$table = SnmpQuery::hideMib()->enumStrings()->walk('ARUBAWIRED-PORT-ACCESS-MIB::arubaWiredPortAccessClientTable')->table(2);
foreach ($table as $ifIndex => $entry) {
foreach ($entry as $macKey => $macEntry) {
@ -61,7 +63,6 @@ class ArubaosCx extends \LibreNMS\OS implements NacPolling
}
foreach ($rowSet as $row) {
var_dump($row);
$nac->put($row['mac_address'], new PortsNac($row));
}

View File

@ -26,6 +26,8 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
use LibreNMS\OS;
@ -43,4 +45,55 @@ class Axos extends OS implements OSDiscovery
return ($card_count[$card] > 1 ? $card_count[$card] . 'x ' : '') . $card;
}, array_keys($card_count)));
}
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$physical_index = 1;
$physical_name = \SnmpQuery::hideMib()->mibs(['CALIX-PRODUCT-MIB'])->translate($this->getDevice()->sysObjectID);
$serial_number = \SnmpQuery::get('Axos-System-MIB::axosSystemChassisSerialNumber.0')->value();
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $physical_index++,
'entPhysicalDescr' => $physical_name,
'entPhysicalContainedIn' => 0,
'entPhysicalClass' => 'chassis',
'entPhysicalName' => $physical_name,
'entPhysicalSerialNum' => $serial_number,
'entPhysicalMfgName' => 'Calix',
'entPhysicalModelName' => $physical_name,
'entPhysicalIsFRU' => 'false',
]));
$cards = \SnmpQuery::enumStrings()->walk('Axos-Card-MIB::axosCardTable')->table(2);
foreach ($cards as $shelf => $shelf_cards) {
$shelf_index = $shelf * 100;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $shelf_index,
'entPhysicalDescr' => "Shelf $shelf",
'entPhysicalClass' => 'container',
// 'entPhysicalModelName' => '100-01449', // Not known, this is E7-2 part number
'entPhysicalContainedIn' => 1,
'entPhysicalParentRelPos' => $shelf,
'entPhysicalIsFRU' => 'false',
]));
foreach ($shelf_cards as $card_index => $card) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $shelf_index + $card_index,
'entPhysicalMfgName' => 'Calix',
'entPhysicalDescr' => $card['Axos-Card-MIB::axosCardActualType'],
'entPhysicalName' => "$shelf-$card_index",
'entPhysicalClass' => 'module',
'entPhysicalModelName' => $card['Axos-Card-MIB::axosCardPartNumber'],
'entPhysicalSerialNum' => $card['Axos-Card-MIB::axosCardSerialNumber'],
'entPhysicalContainedIn' => $shelf_index,
'entPhysicalParentRelPos' => $card['Axos-Card-MIB::axosCardSlot'],
'entPhysicalSoftwareRev' => $card['Axos-Card-MIB::axosCardSoftwareVersion'],
'entPhysicalIsFRU' => 'true',
]));
}
}
return $inventory;
}
}

28
LibreNMS/OS/CienaRls.php Normal file
View File

@ -0,0 +1,28 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS;
class CienaRls extends OS
{
public function discoverEntityPhysical(): Collection
{
return \SnmpQuery::hideMib()->enumStrings()->walk('CIENA-6500R-INVENTORY-MIB::rlsCircuitPackTable')->mapTable(function ($entry, $index) {
return new EntPhysical([
'entPhysicalIndex' => $index, //need to derive index from the oid
'entPhysicalDescr' => $entry['rlsCircuitPackCtype'],
'entPhysicalName' => $entry['rlsCircuitPackCtype'],
'entPhysicalModelName' => $entry['rlsCircuitPackPec'],
'entPhysicalSerialNum' => $entry['rlsCircuitPackSerialNumber'] ?? null,
'entPhysicalParentRelPos' => $index,
'entPhysicalMfgName' => 'Ciena',
'entPhysicalAlias' => $entry['rlsCircuitPackCommonLanguageEquipmentIndentifier'] ?? null,
'entPhysicalHardwareRev' => $entry['rlsCircuitPackHardwareRelease'] ?? null,
'entPhysicalIsFRU' => 'true',
]);
});
}
}

206
LibreNMS/OS/CienaSds.php Normal file
View File

@ -0,0 +1,206 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS;
use SnmpQuery;
class CienaSds extends OS
{
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
// Chassis stuff
$chassis_info = SnmpQuery::get([
'CIENA-CES-CHASSIS-MIB::cienaCesChassisPlatformDesc.0',
'CIENA-CES-CHASSIS-MIB::cienaCesChassisPartNumber.0',
'CIENA-CES-CHASSIS-MIB::cienaCesChassisSerialNumber.0',
'CIENA-CES-CHASSIS-MIB::cienaCesChassisIDPModelRevision.0',
])->values();
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => $chassis_info['CIENA-CES-CHASSIS-MIB::cienaCesChassisPlatformDesc.0'] ?? null,
'entPhysicalClass' => 'chassis',
'entPhysicalName' => 'Chassis',
'entPhysicalModelName' => $chassis_info['CIENA-CES-CHASSIS-MIB::cienaCesChassisPartNumber.0'] ?? null,
'entPhysicalSerialNum' => $chassis_info['CIENA-CES-CHASSIS-MIB::cienaCesChassisSerialNumber.0'] ?? null,
'entPhysicalMfgName' => 'Ciena',
'entPhysicalHardwareRev' => $chassis_info['CIENA-CES-CHASSIS-MIB::cienaCesChassisIDPModelRevision.0'] ?? null,
'entPhysicalIsFRU' => 'true',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 401,
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Modules',
'entPhysicalContainedIn' => 1,
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 411,
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Power Supplies',
'entPhysicalContainedIn' => 1,
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 421,
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Fans',
'entPhysicalContainedIn' => 1,
]));
// PSU Stuff
$cienaCesChassisPowerTable = SnmpQuery::hideMib()->enumStrings()->walk('CIENA-CES-CHASSIS-MIB::cienaCesChassisPowerTable')->table(1);
foreach ($cienaCesChassisPowerTable as $index => $contents) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "50$index",
'entPhysicalDescr' => $contents['cienaCesChassisPowerSupplyManufacturer'] ?? null,
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesChassisPowerSupplySlotName'] ?? null,
'entPhysicalModelName' => $contents['cienaCesChassisPowerSupplyPartNum'] ?? null,
'entPhysicalSerialNum' => $contents['cienaCesChassisPowerSupplySerialNumber'] ?? null,
'entPhysicalContainedIn' => '41' . ($contents['cienaCesChassisPowerSupplyChassisIndx'] ?? null),
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $contents['cienaCesChassisPowerSupplySlotIndx'] ?? null,
'entPhysicalHardwareRev' => $contents['cienaCesChassisPowerSupplyRevInfo'] ?? null,
'entPhysicalIsFRU' => $contents['cienaCesChassisPowerSupplyFRU'] ?? null,
]));
}
// Fan Stuff
$trays = SnmpQuery::hideMib()->walk('CIENA-CES-CHASSIS-MIB::cienaCesChassisFanTrayTable')->table(1);
foreach ($trays as $tray_index => $tray_data) {
$typeString = match ($tray_data['cienaCesChassisFanTrayType']) {
1 => 'Fixed fan tray, ',
2 => 'Hot swappable fan tray, ',
3 => 'Unequipped fan tray, ',
default => '',
};
$modeString = match ($tray_data['cienaCesChassisFanTrayMode']) {
1 => 'Invalid fan configuration!',
2 => 'Fully populated',
3 => 'Auto mode',
default => '',
};
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "53$tray_index",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $tray_data['cienaCesChassisFanTrayName'],
'entPhysicalModelName' => 'Fan Tray',
'entPhysicalDescr' => "$typeString$modeString",
'entPhysicalSerialNum' => $tray_data['cienaCesChassisFanTraySerialNumber'],
'entPhysicalContainedIn' => '42' . $tray_data['cienaCesChassisFanTrayChassisIndx'],
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $tray_data['cienaCesChassisFanTraySlotIndx'],
'entPhysicalIsFRU' => $tray_data['cienaCesChassisFanTrayType'] == '2' ? 'true' : 'false',
]));
}
$fans = SnmpQuery::hideMib()->walk('CIENA-CES-CHASSIS-MIB::cienaCesChassisFanTable')->table(2);
foreach ($fans as $tray_index => $fans_data) {
foreach ($fans_data as $fan_index => $fan_data) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "51$fan_index",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $fan_data['cienaCesChassisFanName'],
'entPhysicalModelName' => 'Fan',
'entPhysicalContainedIn' => isset($trays[$tray_index]) ?
"53$tray_index" : '42' . $fan_data['cienaCesChassisFanChassisIndx'],
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $fan_index,
]));
}
}
$fanTemps = SnmpQuery::hideMib()->walk('CIENA-CES-CHASSIS-MIB::cienaCesChassisFanTempTable')->table(2);
foreach ($fanTemps as $tray_index => $temps_data) {
foreach ($temps_data as $temp_index => $temp_data) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "52$temp_index",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $temp_data['cienaCesChassisFanTempName'],
'entPhysicalModelName' => 'Temp Sensor',
'entPhysicalContainedIn' => isset($trays[$tray_index]) ?
"53$tray_index" : '42' . $temp_data['cienaCesChassisFanTempChassisIndx'],
]));
}
}
// Module Stuff
$inventory = $inventory->merge(SnmpQuery::hideMib()->walk([
'CIENA-CES-MODULE-MIB::cienaCesModuleTable',
'CIENA-CES-MODULE-MIB::cienaCesModuleDescriptionTable',
'CIENA-CES-MODULE-MIB::cienaCesModuleSwTable',
])->mapTable(function ($contents, $chassisIndex, $shelfIndex, $slotIndex) {
$descr = $contents['cienaCesModuleDescription'];
$release = $contents['cienaCesModuleSwRunningRelease'] ?? null;
if ($release) {
$descr .= ", $release";
}
return new EntPhysical([
'entPhysicalIndex' => "55$slotIndex",
'entPhysicalDescr' => $descr,
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesModuleSlotName'] . ': ' . $contents['cienaCesModuleDescriptionBoardName'],
'entPhysicalModelName' => $contents['cienaCesModuleDescriptionBoardPartNum'],
'entPhysicalSerialNum' => $contents['cienaCesModuleDescriptionBoardSerialNum'],
'entPhysicalContainedIn' => '40' . $chassisIndex,
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $slotIndex,
'entPhysicalFirmwareRev' => $release,
'entPhysicalIsFRU' => 'true',
]);
}));
// Interface stuff
$interfaceIndexMapping = SnmpQuery::walk('BRIDGE-MIB::dot1dBasePortIfIndex')->table(1);
$transceivers = SnmpQuery::hideMib()->enumStrings()->walk([
'CIENA-CES-PORT-MIB::cienaCesEttpConfigTable',
'CIENA-CES-PORT-XCVR-MIB::cienaCesPortXcvrTable',
])->table(1);
foreach ($transceivers as $index => $contents) {
$portIndex = $interfaceIndexMapping[$index]['BRIDGE-MIB::dot1dBasePortIfIndex'];
$nameArr = explode('/', $contents['cienaCesEttpConfigName']);
$slotIndex = isset($nameArr[1]) ? $nameArr[0] : 1;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "56$index",
'entPhysicalDescr' => $contents['cienaCesEttpConfigEttpType'],
'entPhysicalClass' => 'port',
'entPhysicalName' => $contents['cienaCesEttpConfigName'],
'entPhysicalContainedIn' => '55' . $slotIndex,
'entPhysicalParentRelPos' => $index,
'ifIndex' => $portIndex,
]));
if (isset($contents['cienaCesPortXcvrOperState']) && $contents['cienaCesPortXcvrOperState'] != 'notPresent') {
$wavelengthString = ($contents['cienaCesPortXcvrWaveLength'] != 0 ?
$contents['cienaCesPortXcvrWaveLength'] . ' nm ' : '');
$mfgString = ($contents['cienaCesPortXcvrMfgDate'] != '' ?
'manufactured ' . $contents['cienaCesPortXcvrMfgDate'] . ' ' : '');
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $portIndex,
'entPhysicalDescr' => $contents['cienaCesPortXcvrVendorName'] . ' ' . $wavelengthString .
$contents['cienaCesPortXcvrIdentiferType'] . ' transceiver ' . $mfgString,
'entPhysicalClass' => 'sensor',
'entPhysicalModelName' => $contents['cienaCesPortXcvrVendorPartNum'],
'entPhysicalSerialNum' => $contents['cienaCesPortXcvrSerialNum'],
'entPhysicalContainedIn' => "56$index",
'entPhysicalMfgName' => $contents['cienaCesPortXcvrVendorName'],
'entPhysicalParentRelPos' => -1,
'entPhysicalHardwareRev' => $contents['cienaCesPortXcvrRevNum'],
'entPhysicalIsFRU' => 'true',
]));
}
}
return $inventory;
}
}

View File

@ -31,6 +31,8 @@ use LibreNMS\OS;
class Ciscosb extends OS implements OSDiscovery
{
protected ?string $entityVendorTypeMib = 'CISCO-ENTITY-VENDORTYPE-OID-MIB';
public function discoverOS(Device $device): void
{
parent::discoverOS($device); // yaml

View File

@ -26,9 +26,16 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use LibreNMS\OS\Traits\EntityMib;
use LibreNMS\Util\StringHelpers;
class Edgeos extends \LibreNMS\OS
{
use EntityMib {
EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverOS(Device $device): void
{
parent::discoverOS($device); // yaml
@ -41,4 +48,14 @@ class Edgeos extends \LibreNMS\OS
}
}
}
public function discoverEntityPhysical(): \Illuminate\Support\Collection
{
return $this->discoverBaseEntityPhysical()->each(function (EntPhysical $entity) {
// clean garbage in fields "...............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
$entity->entPhysicalDescr = StringHelpers::trimHexGarbage($entity->entPhysicalDescr);
$entity->entPhysicalName = StringHelpers::trimHexGarbage($entity->entPhysicalName);
$entity->entPhysicalVendorType = StringHelpers::trimHexGarbage($entity->entPhysicalVendorType);
});
}
}

View File

@ -23,18 +23,52 @@
namespace LibreNMS\OS;
use LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS\Shared\Radlan;
use LibreNMS\OS\Traits\EntityMib;
use LibreNMS\Util\StringHelpers;
use SnmpQuery;
class EltexMes23xx extends OS
class EltexMes23xx extends Radlan
{
use EntityMib {
EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverEntityPhysical(): Collection
{
$inventory = $this->discoverBaseEntityPhysical();
// add in transceivers
$trans = SnmpQuery::hideMib()->enumStrings()->walk('ELTEX-MES-PHYSICAL-DESCRIPTION-MIB::eltPhdTransceiverInfoTable')->table(1);
$ifIndexToEntIndexMap = array_flip($this->getIfIndexEntPhysicalMap());
foreach ($trans as $ifIndex => $data) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1000000 + $ifIndex,
'entPhysicalDescr' => $data['eltPhdTransceiverInfoType'],
'entPhysicalClass' => 'sfp-cage',
'entPhysicalName' => strtoupper($data['eltPhdTransceiverInfoConnectorType']),
'entPhysicalModelName' => $this->normData($data['eltPhdTransceiverInfoPartNumber']),
'entPhysicalSerialNum' => $data['eltPhdTransceiverInfoSerialNumber'],
'entPhysicalContainedIn' => $ifIndexToEntIndexMap[$ifIndex] ?? 0,
'entPhysicalMfgName' => $data['eltPhdTransceiverInfoVendorName'],
'entPhysicalHardwareRev' => $this->normData($data['eltPhdTransceiverInfoVendorRev']),
'entPhysicalParentRelPos' => 0,
'entPhysicalIsFRU' => 'true',
'ifIndex' => $ifIndex,
]));
}
return $inventory;
}
/**
* Specific HexToString for Eltex
*/
public static function normData(string $par = ''): string
protected function normData(string $par = ''): string
{
$tmp = str_replace([':', ' '], '', trim(strtoupper($par)));
$ret = preg_match('/^[0-9A-F]+$/', $tmp) ? hex2str($tmp) : $par; //if string is pure hex, convert to ascii
return $ret;
return StringHelpers::isHex($par) ? StringHelpers::hexToAscii($par, ' ') : $par;
}
}

View File

@ -0,0 +1,43 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS;
use LibreNMS\OS\Traits\EntityMib;
use SnmpQuery;
class EltexMes24xx extends OS
{
use EntityMib {
EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverEntityPhysical(): Collection
{
$inventory = $this->discoverBaseEntityPhysical();
// add SFPs
$oidSfp = SnmpQuery::hideMib()->enumStrings()->walk('ELTEX-PHY-MIB::eltexPhyTransceiverInfoTable')->table(1);
$ifIndexToEntIndexMap = array_flip($this->getIfIndexEntPhysicalMap());
foreach ($oidSfp as $ifIndex => $data) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1000000 + $ifIndex,
'entPhysicalSerialNum' => $data['eltexPhyTransceiverInfoSerialNumber'],
'entPhysicalModelName' => $data['eltexPhyTransceiverInfoPartNumber'],
'entPhysicalName' => $data['eltexPhyTransceiverInfoConnectorType'],
'entPhysicalDescr' => $data['eltexPhyTransceiverInfoType'],
'entPhysicalClass' => 'sfp-cage',
'entPhysicalContainedIn' => $ifIndexToEntIndexMap[$ifIndex] ?? 0,
'entPhysicalMfgName' => $data['eltexPhyTransceiverInfoVendorName'],
'entPhysicalHardwareRev' => $data['eltexPhyTransceiverInfoVendorRevision'],
'entPhysicalIsFRU' => 'true',
'ifIndex' => $ifIndex,
]));
}
return $inventory;
}
}

View File

@ -3,8 +3,12 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\Interfaces\Discovery\OSDiscovery;
use LibreNMS\OS;
use LibreNMS\Util\StringHelpers;
use SnmpQuery;
class Eurostor extends OS implements OSDiscovery
{
@ -25,8 +29,68 @@ class Eurostor extends OS implements OSDiscovery
}
// Sometimes firmware outputs serial as hex-string
if (isHexString($device->serial)) {
$device->serial = snmp_hexstring($device->serial);
if (StringHelpers::isHex($device->serial)) {
$device->serial = StringHelpers::hexToAscii($device->serial, ' ');
}
}
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$id = 1;
$chassis_array = SnmpQuery::hideMib()->walk('proware-SNMP-MIB::systeminformation')->table(1);
foreach ($chassis_array as $chassis_contents) {
// Discover the chassis
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $id++,
'entPhysicalDescr' => "Eurostore {$chassis_contents['siModel']}",
'entPhysicalClass' => 'chassis',
'entPhysicalModelName' => $chassis_contents['siModel'],
'entPhysicalSerialNum' => $chassis_contents['siSerial'],
'entPhysicalContainedIn' => '0',
'entPhysicalVendorType' => $chassis_contents['siVendor'],
'entPhysicalHardwareRev' => $chassis_contents['siBootVer'],
'entPhysicalFirmwareRev' => $chassis_contents['siFirmVer'],
]));
}
for ($i = 1; $i <= 8; $i++) {
$backplane_array = SnmpQuery::hideMib()->walk('proware-SNMP-MIB::hwEnclosure' . $i)->table(1);
foreach ($backplane_array as $backplane_contents) {
if (empty($backplane_contents['hwEnclosure0' . $i . 'Installed']) || $backplane_contents['hwEnclosure0' . $i . 'Installed'] != 2) {
continue;
}
$backplane_id = $id++;
// Discover the chassis
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $backplane_id,
'entPhysicalDescr' => $backplane_contents['hwEnclosure0' . $i . 'Description'],
'entPhysicalClass' => 'backplane',
'entPhysicalContainedIn' => '1',
'entPhysicalParentRelPos' => $i,
]));
$hdd_array = SnmpQuery::hideMib()->walk('proware-SNMP-MIB::hddEnclosure0' . $i . 'InfoTable')->table(1);
foreach ($hdd_array as $hdd_contents) {
// Discover the chassis
$inventory->push(new EntPhysical([
'entPhysicalContainedIn' => $backplane_id,
'entPhysicalIndex' => $id++,
'entPhysicalDescr' => $hdd_contents['hddEnclosure0' . $i . 'Desc'],
'entPhysicalClass' => 'container',
'entPhysicalParentRelPos' => $hdd_contents['hddEnclosure0' . $i . 'Slots'],
'entPhysicalName' => $hdd_contents['hddEnclosure0' . $i . 'Name'],
'entPhysicalSerialNum' => $hdd_contents['hddEnclosure0' . $i . 'Serial'],
'entPhysicalFirmwareRev' => $hdd_contents['hddEnclosure0' . $i . 'FirmVer'],
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $hdd_contents['hddEnclosure0' . $i . 'State'],
]));
}
}
}
return $inventory;
}
}

View File

@ -26,6 +26,7 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use App\Models\Sla;
use Carbon\Carbon;
use Illuminate\Support\Collection;
@ -33,10 +34,16 @@ use LibreNMS\Interfaces\Data\DataStorageInterface;
use LibreNMS\Interfaces\Discovery\SlaDiscovery;
use LibreNMS\Interfaces\Polling\OSPolling;
use LibreNMS\Interfaces\Polling\SlaPolling;
use LibreNMS\OS\Traits\EntityMib;
use LibreNMS\RRD\RrdDefinition;
use SnmpQuery;
class Junos extends \LibreNMS\OS implements SlaDiscovery, OSPolling, SlaPolling
{
use EntityMib {
EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverOS(Device $device): void
{
$data = snmp_get_multi($this->getDeviceArray(), [
@ -97,6 +104,69 @@ class Junos extends \LibreNMS\OS implements SlaDiscovery, OSPolling, SlaPolling
return $slas;
}
public function discoverEntityPhysical(): Collection
{
$entPhysical = $this->discoverBaseEntityPhysical();
if ($entPhysical->isNotEmpty()) {
return $entPhysical;
}
$chassisName = null;
$containers = SnmpQuery::hideMib()
->mibs(['JUNIPER-CHASSIS-DEFINES-MIB'])
->walk('JUNIPER-MIB::jnxContainersTable')
->mapTable(function ($entry, $index) use (&$chassisName) {
$modelName = $this->parseType($entry['jnxContainersType'] ?? null, $chassisName);
$chassisName ??= $modelName;
$descr = $entry['jnxContainersDescr'] ?? null;
$within = $entry['jnxContainersWithin'] ?? 0;
return new EntPhysical([
'entPhysicalIndex' => $index,
'entPhysicalClass' => $within == '0' ? 'chassis' : 'container',
'entPhysicalDescr' => $descr,
'entPhysicalModelName' => $modelName,
'entPhysicalContainedIn' => $within,
]);
});
if ($containers->isEmpty()) {
return $containers;
}
return $containers->merge(SnmpQuery::hideMib()->enumStrings()
->mibs(['JUNIPER-CHASSIS-DEFINES-MIB'])
->walk('JUNIPER-MIB::jnxContentsTable')
->mapTable(function ($entry, $container, $indexL1, $indexL2, $indexL3) use ($chassisName, $containers) {
// set serial for the chassis, but don't add another container
if ($container == 1 && $indexL1 == 1 && $indexL2 == 0 && $indexL3 == 0) {
$chassis = $containers->firstWhere('entPhysicalClass', 'chassis');
if ($chassis) {
$chassis->entPhysicalSerialNum = $entry['jnxContentsSerialNo'] ?? null;
return null;
}
}
// Juniper's MIB doesn't have the same objects as the Entity MIB, so some values are made up here.
return new EntPhysical([
'entPhysicalIndex' => $container + $indexL1 * 1000000 + $indexL2 * 10000 + $indexL3 * 100,
'entPhysicalDescr' => $entry['jnxContentsDescr'] ?? null,
'entPhysicalContainedIn' => $container,
'entPhysicalClass' => $this->parseClass($entry['jnxContentsType'] ?? null),
'entPhysicalName' => $entry['jnxOperatingDescr'] ?? null,
'entPhysicalSerialNum' => $entry['jnxContentsSerialNo'] ?? null,
'entPhysicalModelName' => $entry['jnxContentsPartNo'] ?? null,
'entPhysicalMfgName' => 'Juniper',
'entPhysicalVendorType' => $this->parseType($entry['jnxContentsType'] ?? null, $chassisName),
'entPhysicalParentRelPos' => -1,
'entPhysicalHardwareRev' => $entry['jnxContentsRevision'] ?? null,
'entPhysicalIsFRU' => isset($entry['jnxContentsSerialNo']) ? ($entry['jnxContentsSerialNo'] == 'BUILTIN' ? 'false' : 'true') : null,
]);
}))->filter();
}
public function pollSlas($slas): void
{
$device = $this->getDeviceArray();
@ -184,4 +254,40 @@ class Junos extends \LibreNMS\OS implements SlaDiscovery, OSPolling, SlaPolling
return str_replace('ping', '', $rtt_type);
}
}
/**
* Parse type into a nicer name
* jnxChassisEX4300.0 > EX4300
* jnxEX4300SlotPower.0 > Slot Power
* jnxEX4300MPSlotFan.0 > MP Slot Fan
* jnxEX4300MPSlotFPC.0 > MP Slot FPC
* jnxEX4300MediaCardSpacePIC.0 > Media Card Space PIC
* jnxEX4300MPRE0.0 > MPRE0
*/
public function parseType(?string $type, ?string $chassisName): ?string
{
if ($type === null) {
return $type;
}
if (preg_match('/jnxChassis([^.]+).*/', $type, $matches)) {
return $matches[1];
}
// $chassisName is known
$name = preg_replace("/jnx($chassisName)?([^.]+).*/", '$2', $type);
$words = preg_split('/(^[^A-Z]+|[A-Z][^A-Z0-9]+)/', $name, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
return implode(' ', $words);
}
public function parseClass($type): ?string
{
return match ($type) {
'jnxFan' => 'fan',
'jnxPower' => 'powerSupply',
default => null,
};
}
}

View File

@ -25,10 +25,13 @@
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\Interfaces\Discovery\VminfoDiscovery;
use LibreNMS\OS\Traits\VminfoLibvirt;
use LibreNMS\OS\Traits\VminfoVmware;
use LibreNMS\Util\StringHelpers;
use SnmpQuery;
class Linux extends Shared\Unix implements VminfoDiscovery
{
@ -51,4 +54,93 @@ class Linux extends Shared\Unix implements VminfoDiscovery
return $this->discoverVmwareVminfo();
}
public function discoverEntityPhysical(): Collection
{
return $this->discoverLsiMegaRaidInventory();
}
private function discoverLsiMegaRaidInventory(): Collection
{
$inventory = new Collection;
$controller_array = SnmpQuery::hideMib()->walk('LSI-MegaRAID-SAS-MIB::adapterInfoTable')->table(1);
if (empty($controller_array)) {
return $inventory; // no controllers, skip the rest.
}
foreach ($controller_array as $controller) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 200 + $controller['adapterID-AIT'],
'entPhysicalParentRelPos' => $controller['adapterID-AIT'] ?? -1,
'entPhysicalDescr' => '/C' . $controller['adapterID-AIT'],
'entPhysicalClass' => 'port',
'entPhysicalModelName' => $controller['productName'],
'entPhysicalSerialNum' => $controller['serialNo'],
'entPhysicalContainedIn' => '0',
'entPhysicalVendorType' => $controller['adapterVendorID'],
'entPhysicalFirmwareRev' => $controller['firmwareVersion'],
]));
}
$bbus = SnmpQuery::hideMib()->walk('LSI-MegaRAID-SAS-MIB::bbuTable')->table(1);
foreach ($bbus as $bbu) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1000 + $bbu['pdIndex'],
'entPhysicalClass' => 'charge',
'entPhysicalModelName' => $bbu['deviceName'],
'entPhysicalSerialNum' => $bbu['serialNumber'],
'entPhysicalContainedIn' => 200 + $bbu['adpID'],
'entPhysicalIsFRU' => 'true',
'entPhysicalFirmwareRev' => $bbu['firmwareStatus'],
]));
}
$enclosures = SnmpQuery::hideMib()->walk('LSI-MegaRAID-SAS-MIB::enclosureTable')->table(1);
foreach ($enclosures as $enclosure) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 210 + $enclosure['deviceId'],
'entPhysicalVendorType' => $enclosure['slotCount'],
'entPhysicalParentRelPos' => $enclosure['deviceId'] ?? -1,
'entPhysicalDescr' => '/C' . ($enclosure['adapterID-ET'] ?? '0') . '/E' . $enclosure['deviceId'],
'entPhysicalClass' => 'chassis',
'entPhysicalModelName' => $enclosure['productID'],
'entPhysicalSerialNum' => $enclosure['enclSerialNumber'],
'entPhysicalContainedIn' => 200 + $enclosure['adapterID-ET'],
'entPhysicalMfgName' => $enclosure['vendorID'],
'entPhysicalFirmwareRev' => $this->handleHex($enclosure['enclFirmwareVersion']),
]));
}
$drives = SnmpQuery::hideMib()->walk('LSI-MegaRAID-SAS-MIB::physicalDriveTable')->table(1);
foreach ($drives as $drive) {
$enclDeviceId = $drive['enclDeviceId'] ?? 0;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 500 + $enclDeviceId * 100 + $drive['physDevID'],
'entPhysicalParentRelPos' => $drive['slotNumber'] ?? -1,
'entPhysicalDescr' => '/C' . ($drive['adpID-PDT'] ?? '0') . '/E' . $enclDeviceId . '/S' . ($drive['slotNumber'] ?? '0'),
'entPhysicalClass' => 'drive',
'entPhysicalModelName' => $drive['pdProductID'] ?? null,
'entPhysicalSerialNum' => $drive['pdSerialNumber'] ?? null,
'entPhysicalContainedIn' => 210 + $enclDeviceId,
'entPhysicalIsFRU' => 'true',
'entPhysicalFirmwareRev' => $drive['pdFwversion'] ?? null, // missing
]));
}
return $inventory;
}
private function handleHex(string $string): string
{
$string = str_replace("\n", '', $string);
if (StringHelpers::isHex($string)) {
$ascii = StringHelpers::hexToAscii($string, ' ');
return preg_split('/[^ -~]/', $ascii)[0] ?? $ascii;
}
return $string;
}
}

341
LibreNMS/OS/MrvOd.php Normal file
View File

@ -0,0 +1,341 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS;
use SnmpQuery;
class MrvOd extends OS
{
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$chassis_array = SnmpQuery::hideMib()->enumStrings()->walk('NBS-CMMC-MIB::nbsCmmcChassisTable')->table(1);
$slot_array = SnmpQuery::hideMib()->enumStrings()->walk('NBS-CMMC-MIB::nbsCmmcSlotTable')->table(2);
$port_array = SnmpQuery::hideMib()->enumStrings()->walk('NBS-CMMC-MIB::nbsCmmcPortTable')->table(3);
// We use the last digit in the OID to define an entPhysicalIndex for Power Supply state sensors
$nbsCmmcChassisPSStatus_array = [
7 => 'nbsCmmcChassisPS1Status',
8 => 'nbsCmmcChassisPS2Status',
9 => 'nbsCmmcChassisPS3Status',
10 => 'nbsCmmcChassisPS4Status',
];
// We use the last digit in the OID to define an entPhysicalIndex for Fan state sensors
$nbsCmmcChassisFanStatus_array = [
11 => 'nbsCmmcChassisFan1Status',
12 => 'nbsCmmcChassisFan2Status',
13 => 'nbsCmmcChassisFan3Status',
14 => 'nbsCmmcChassisFan4Status',
36 => 'nbsCmmcChassisFan5Status',
37 => 'nbsCmmcChassisFan6Status',
38 => 'nbsCmmcChassisFan7Status',
39 => 'nbsCmmcChassisFan8Status',
];
// Define all the types of pluggable port form factors recognized by nbsCmmcPortType in NBS-CMMC-MIB,
// if nbsCmmcPortType returns a value that is not in this array, it should be a built-in port in the card.
$nbsCmmcPortType_array = [
125 => 'SFP',
147 => 'GBIC',
197 => 'XFP',
219 => 'QSFP+',
220 => 'CXP',
221 => 'CFP',
223 => 'QSFP28',
224 => 'CFP2',
];
$nbsCmmcPortSensor_array = [
30 => [
'objectType' => 'nbsCmmcPortTemperature',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Temperature',
],
31 => [
'objectType' => 'nbsCmmcPortTxPower',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Tx Power',
],
32 => [
'objectType' => 'nbsCmmcPortRxPower',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Rx Power',
],
33 => [
'objectType' => 'nbsCmmcPortBiasAmps',
'skipValue' => '-1',
'entPhysicalName' => 'Port Tx Bias Current',
],
34 => [
'objectType' => 'nbsCmmcPortSupplyVolts',
'skipValue' => '-1',
'entPhysicalName' => 'Port Tx Supply Voltage',
],
38 => [
'objectType' => 'nbsCmmcPortDigitalDiags',
'skipValue' => '1',
'entPhysicalName' => 'Port Overall DigiDiags State',
],
];
foreach ($chassis_array as $nbsCmmcChassis => $chassis_contents) {
[$chassisHardwareRev, $chassisFirmwareRev] = explode(', ', $chassis_contents['nbsCmmcChassisHardwareRevision']);
// Discover the chassis
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . '00',
'entPhysicalDescr' => "MRV OptiDriver {$chassis_contents['nbsCmmcChassisModel']}",
'entPhysicalClass' => 'chassis',
'entPhysicalName' => "Chassis $nbsCmmcChassis",
'entPhysicalModelName' => $chassis_contents['nbsCmmcChassisModel'],
'entPhysicalSerialNum' => $chassis_contents['nbsCmmcChassisSerialNum'],
'entPhysicalContainedIn' => '0',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $chassis_contents['nbsCmmcChassisIndex'],
'entPhysicalVendorType' => $chassis_contents['nbsCmmcChassisType'],
'entPhysicalHardwareRev' => $chassisHardwareRev,
'entPhysicalFirmwareRev' => $chassisFirmwareRev,
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $chassis_contents['nbsCmmcChassisName'],
]));
// Discover the chassis temperature sensor
if (isset($chassis_contents['nbsCmmcChassisTemperature']) && $chassis_contents['nbsCmmcChassisTemperature'] != '-2147483648') {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}15",
'entPhysicalDescr' => 'Chassis Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Chassis Temperature',
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
]));
}
// Discover the chassis power budget status sensor
if (isset($chassis_contents['nbsCmmcChassisPowerStatus']) && $chassis_contents['nbsCmmcChassisPowerStatus'] != 'notSupported') {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}51",
'entPhysicalDescr' => 'Chassis Power Budget Status Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Chassis Power Budget Status',
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
]));
}
// Discover the chassis power supplies and state sensors
foreach ($nbsCmmcChassisPSStatus_array as $index => $item) {
if (isset($chassis_contents[$item]) && $chassis_contents[$item] != 'notSupported') {
$position = substr($item, 16, 1);
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $position,
'entPhysicalDescr' => 'Power Supply',
'entPhysicalClass' => 'powerSupply',
'entPhysicalName' => "Power Supply $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $position,
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $index,
'entPhysicalDescr' => 'Power Supply State',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => "Power Supply $position",
'entPhysicalContainedIn' => $chassis_contents['nbsCmmcChassisIfIndex'] . $position,
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'true',
]));
}
}
// Discover the chassis fan trays and state sensors
foreach ($nbsCmmcChassisFanStatus_array as $index => $item) {
if (isset($chassis_contents[$item]) && $chassis_contents[$item] != 'notSupported') {
$position = substr($item, 17, 1);
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}0$position",
'entPhysicalDescr' => 'Fan Tray',
'entPhysicalClass' => 'fan',
'entPhysicalName' => "Fan Tray $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $position,
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $index,
'entPhysicalDescr' => 'Fan State',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => "Fan $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}0$position",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'true',
]));
}
}
}
foreach ($slot_array as $chassis_index => $chassis_contents) {
foreach ($chassis_contents as $nbsCmmcSlot => $slot_contents) {
// Obtain the nbsCmmcChassisIfIndex of the chassis which houses this slot
$nbsCmmcChassisIfIndex = $chassis_array[$chassis_index]['nbsCmmcChassisIfIndex'];
// Calculate the nbsCmmcSlotIfIndex since an empty slot has nbsCmmcSlotIfIndex == -1
$nbsCmmcSlotIfIndex = $nbsCmmcChassisIfIndex + $slot_contents['nbsCmmcSlotIndex'] * 1000;
// Discover the slot
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $nbsCmmcSlotIfIndex . '00',
'entPhysicalDescr' => 'MRV OptiDriver Slot',
'entPhysicalClass' => 'container',
'entPhysicalName' => "Card Slot $chassis_index.$nbsCmmcSlot",
'entPhysicalContainedIn' => $nbsCmmcChassisIfIndex . '00',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $slot_contents['nbsCmmcSlotIndex'] ?? -1,
'entPhysicalIsFRU' => 'false',
]));
if (isset($slot_contents['nbsCmmcSlotIfIndex']) && $slot_contents['nbsCmmcSlotIfIndex'] != '-1') {
$cardHardwareRev = $slot_contents['nbsCmmcSlotHardwareRevision'];
$cardFirmwareRev = null;
$cardOtherRev = null;
$rev_explode = explode(', ', $cardHardwareRev);
if (isset($rev_explode[2])) {
[$cardHardwareRev, $cardFirmwareRev, $cardOtherRev] = $rev_explode;
}
// Discover the card
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $slot_contents['nbsCmmcSlotIfIndex'] . '01',
'entPhysicalDescr' => 'MRV ' . ucfirst($slot_contents['nbsCmmcSlotOperationType']) . ' Card',
'entPhysicalClass' => 'module',
'entPhysicalName' => "Card $chassis_index.$nbsCmmcSlot",
'entPhysicalModelName' => $slot_contents['nbsCmmcSlotModel'],
'entPhysicalSerialNum' => $slot_contents['nbsCmmcSlotSerialNum'],
'entPhysicalContainedIn' => "{$slot_contents['nbsCmmcSlotIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalVendorType' => $slot_contents['nbsCmmcSlotType'],
'entPhysicalHardwareRev' => "$cardHardwareRev, $cardOtherRev",
'entPhysicalFirmwareRev' => $cardFirmwareRev,
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $slot_contents['nbsCmmcSlotName'],
]));
// Discover the module temperature sensor
if (isset($slot_contents['nbsCmmcSlotTemperature']) && $slot_contents['nbsCmmcSlotTemperature'] != '-2147483648') {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "{$slot_contents['nbsCmmcSlotIfIndex']}34",
'entPhysicalDescr' => 'Card Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Card Temperature',
'entPhysicalContainedIn' => "{$slot_contents['nbsCmmcSlotIfIndex']}01",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
]));
}
}
}
}
foreach ($port_array as $chassis_index => $chassis_contents) {
foreach ($chassis_contents as $slot_index => $slot_contents) {
foreach ($slot_contents as $nbsCmmcPort => $port_contents) {
// Obtain the nbsCmmcSlotIfIndex of the slot which houses this port
$nbsCmmcSlotIfIndex = $slot_array[$chassis_index][$slot_index]['nbsCmmcSlotIfIndex'];
// We only need to discover a transceiver container if the port type is pluggable
if (array_key_exists($port_contents['nbsCmmcPortType'], $nbsCmmcPortType_array)) {
$nbsCmmcPortType = $nbsCmmcPortType_array[$port_contents['nbsCmmcPortType']];
// Discover the transceiver container
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $port_contents['nbsCmmcPortIfIndex'] . '00',
'entPhysicalDescr' => "$nbsCmmcPortType Transceiver Container",
'entPhysicalClass' => 'container',
'entPhysicalName' => "Transceiver Container $chassis_index.$slot_index.$nbsCmmcPort",
'entPhysicalContainedIn' => $nbsCmmcSlotIfIndex . '01',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $port_contents['nbsCmmcPortIndex'] ?? -1,
'entPhysicalIsFRU' => 'false',
]));
// Set a few variables for the port discovery
$nbsCmmcPortContainedIn = $port_contents['nbsCmmcPortIfIndex'] . '00';
$nbsCmmcPortVendorInfo = $port_contents['nbsCmmcPortVendorInfo'];
$nbsCmmcPortIsFRU = 'true';
$nbsCmmcPortParentRelPos = '-1';
// If one runs a command like "show 1.1.1 | grep Part" on a port with a genuine pluggable transceiver,
// CLI output like "Part #/Rev: SFP-10GDWZR-22/0001" indicates / is considered to be the string delimiter.
// However, non-genuine pluggable transceivers may not adhere to this format.
[$nbsCmmcPortModelName, $nbsCmmcPortHardwareRev] = explode('/', $port_contents['nbsCmmcPortPartRev']);
} else {
$nbsCmmcPortType = 'Built-in';
// Set a few variables for the port discovery
$nbsCmmcPortContainedIn = $nbsCmmcSlotIfIndex . '01';
$nbsCmmcPortVendorInfo = 'MRV Communications';
$nbsCmmcPortIsFRU = 'false';
$nbsCmmcPortParentRelPos = $port_contents['nbsCmmcPortIndex'] ?? -1;
$nbsCmmcPortModelName = null;
$nbsCmmcPortHardwareRev = null;
}
if (isset($port_contents['nbsCmmcPortConnector']) && $port_contents['nbsCmmcPortConnector'] != 'removed') {
// Determine the correct entPhysicalDescr for the port
if (isset($port_contents['nbsCmmcPortWavelengthX']) && $port_contents['nbsCmmcPortWavelengthX'] != 'N/A') {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortWavelengthX']}nm Tx Signal, {$port_contents['nbsCmmcPortConnector']} Connector";
} elseif (! empty($port_contents['nbsCmmcPortDescription'])) {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortDescription']}, {$port_contents['nbsCmmcPortConnector']} Connector";
} else {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortConnector']} Connector";
}
// Discover the port
$inventory->push(new EntPhysical([
'entPhysicalIndex' => "{$port_contents['nbsCmmcPortIfIndex']}01",
'entPhysicalDescr' => $portEntPhysicalDescr,
'entPhysicalClass' => 'port',
'entPhysicalName' => "Port $chassis_index.$slot_index.$nbsCmmcPort",
'entPhysicalModelName' => $nbsCmmcPortModelName,
'entPhysicalSerialNum' => $port_contents['nbsCmmcPortSerialNumber'],
'entPhysicalContainedIn' => $nbsCmmcPortContainedIn,
'entPhysicalMfgName' => $nbsCmmcPortVendorInfo,
'entPhysicalParentRelPos' => $nbsCmmcPortParentRelPos,
'entPhysicalVendorType' => $port_contents['nbsCmmcPortType'],
'entPhysicalHardwareRev' => $nbsCmmcPortHardwareRev,
'entPhysicalIsFRU' => $nbsCmmcPortIsFRU,
'entPhysicalAlias' => $port_contents['nbsCmmcPortName'],
'ifIndex' => $port_contents['nbsCmmcPortIfIndex'],
]));
// Discover the port sensors
foreach ($nbsCmmcPortSensor_array as $index => $nbsCmmcPortSensor) {
if (isset($port_contents[$nbsCmmcPortSensor['objectType']]) && $port_contents[$nbsCmmcPortSensor['objectType']] != $nbsCmmcPortSensor['skipValue']) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $port_contents['nbsCmmcPortIfIndex'] . $index,
'entPhysicalDescr' => "{$nbsCmmcPortSensor['entPhysicalName']} Sensor",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $nbsCmmcPortSensor['entPhysicalName'],
'entPhysicalContainedIn' => "{$port_contents['nbsCmmcPortIfIndex']}01",
'entPhysicalMfgName' => $nbsCmmcPortVendorInfo,
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
]));
}
}
}
}
}
}
return $inventory;
}
}

View File

@ -25,17 +25,93 @@
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\Device\WirelessSensor;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessErrorsDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessFrequencyDiscovery;
use LibreNMS\Interfaces\Discovery\Sensors\WirelessPowerDiscovery;
use LibreNMS\OS;
use SnmpQuery;
class SafCfm extends OS implements
WirelessFrequencyDiscovery,
WirelessPowerDiscovery,
WirelessErrorsDiscovery
{
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$response = SnmpQuery::hideMib()->walk('SAF-MPMUX-MIB::mpmux');
if (! $response->isValid()) {
return $inventory;
}
// all scalar values, so remove the .0
$data = $response->table(1)[0] ?? [];
$entIndex = 1;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => $data['termProduct'],
'entPhysicalVendorType' => $data['termProduct'],
'entPhysicalContainedIn' => '0',
'entPhysicalClass' => 'chassis',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => 'Chassis',
'entPhysicalSerialNum' => $data['serialNumber'],
'entPhysicalMfgName' => 'SAF',
'entPhysicalModelName' => $data['serialNumber'],
'entPhysicalIsFRU' => 'true',
]));
foreach ([1 => 'rf1Version', 2 => 'rf2Version'] as $index => $item) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 10 + $index,
'entPhysicalDescr' => $data[$item],
'entPhysicalVendorType' => 'radio',
'entPhysicalContainedIn' => 1,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => $index,
'entPhysicalName' => "Radio $index",
'entPhysicalIsFRU' => 'true',
]));
}
if ($data['termProduct'] == 'SAF CFM-M4P-MUX') {
foreach (range(1, 4) as $index) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 20 + $index,
'entPhysicalDescr' => 'Module Container',
'entPhysicalVendorType' => 'containerSlot',
'entPhysicalContainedIn' => 1,
'entPhysicalClass' => 'container',
'entPhysicalParentRelPos' => $index + 2,
'entPhysicalName' => "Slot $index",
'entPhysicalIsFRU' => 'false',
]));
}
foreach ([1 => 'm1Description', 2 => 'm2Description', 3 => 'm3Description', 4 => 'm4Description'] as $index => $item) {
if (! str_contains($data[$item], 'N/A')) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 30 + $index,
'entPhysicalDescr' => $data[$item],
'entPhysicalVendorType' => 'module',
'entPhysicalContainedIn' => $index + 3,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => 1,
'entPhysicalName' => "Module $index",
'entPhysicalIsFRU' => 'true',
]));
}
}
}
return $inventory;
}
/**
* Discover wireless frequency. This is in MHz. Type is frequency.
* Returns an array of LibreNMS\Device\Sensor objects that have been discovered

View File

@ -26,6 +26,9 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use SnmpQuery;
class Schleifenbauer extends \LibreNMS\OS
{
@ -49,4 +52,258 @@ class Schleifenbauer extends \LibreNMS\OS
$device->version = trim("$device->version ({$data[$oids['build']]})");
}
}
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$sdbMgmtStsDevices = SnmpQuery::get('SCHLEIFENBAUER-DATABUS-MIB::sdbMgmtStsDevices.0')->value();
// Only spawn databus ring entities when the device is not stand-alone.
if ($sdbMgmtStsDevices > 1) {
$entPhysicalContainedIn = 1;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => "Schleifenbauer databus ring ($sdbMgmtStsDevices units)",
'entPhysicalClass' => 'stack',
'entPhysicalName' => 'Schleifenbauer Databus',
'entPhysicalContainedIn' => 0,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => 'Databus Ring State Sensor (0 = open, 1 = closed)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'State Sensor',
'entPhysicalContainedIn' => 0,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => 'Duplicate Device Address Sensor (#)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'State Sensor',
'entPhysicalContainedIn' => 0,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1,
'entPhysicalDescr' => 'New Device Detection Sensor (#)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'State Sensor',
'entPhysicalContainedIn' => 0,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
} else {
$entPhysicalContainedIn = 0;
}
// Let's gather some data about the units..
$sdbDevCfMaximumLoad = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfMaximumLoad')->table(1);
$sdbDevCfOutletsTotal = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfOutletsTotal')->table(1);
$sdbDevCfSensors = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfSensors')->table(1);
// In a large databus ring, snmpwalking this OID may crash the discovery half way through.
// So, we only discover and enumerate outlets if this is a stand-alone, non-databus unit.
$sdbOutputs = $sdbMgmtStsDevices == 1 ? SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevOutName')->table(2) : [];
// Let's gather some data about the databus ring..
$sdbDev = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdTable')->table(1);
// And let's gather some data about the inputs, outputs, and sensors on those units..
$sdbDevInputs = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevInName')->table(2);
$sdbSensors = SnmpQuery::walk('SCHLEIFENBAUER-DATABUS-MIB::sdbDevSnsTable')->table(2);
foreach ($sdbDevInputs as $sdbDevIdIndex => $sdbDevInNames) {
$data = $sdbDev[$sdbDevIdIndex];
$unitEntPhysicalIndex = $sdbDevIdIndex * 10;
// We are determining the $entPhysicalAlias for this PDU based on a few optional user-customizable fields.
$entPhysicalAlias = $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdName'] ?: null;
if ($entPhysicalAlias && $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdLocation']) {
$entPhysicalAlias .= ' @ ' . $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdLocation'];
}
$outletsTotal = $sdbDevCfOutletsTotal[$sdbDevIdIndex]['SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfOutletsTotal'];
$phasesTotal = count($sdbDevInNames);
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $unitEntPhysicalIndex,
'entPhysicalDescr' => "Schleifenbauer $phasesTotal-phase, $outletsTotal-outlet PDU",
'entPhysicalClass' => 'chassis',
'entPhysicalName' => 'Schleifenbauer PDU - SPDM v' . $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdFirmwareVersion'],
'entPhysicalModelName' => $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdProductId'],
'entPhysicalSerialNum' => $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdSerialNumber'],
'entPhysicalContainedIn' => $entPhysicalContainedIn,
'entPhysicalParentRelPos' => $sdbDevIdIndex,
'entPhysicalHardwareRev' => 'SO# ' . $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdSalesOrderNumber'],
'entPhysicalSoftwareRev' => $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdFirmwareVersion'],
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalAlias' => $entPhysicalAlias,
'entPhysicalIsFRU' => 'true',
'entPhysicalAssetID' => $data['SCHLEIFENBAUER-DATABUS-MIB::sdbDevIdVanityTag'],
]));
// Since a fully numerical entPhysicalIndex is only available for the actual PDU, we are calculating a fake entPhysicalIndex to avoid namespace collision. We have an Integer32 of space per IETF RFC6933 anyway.
// The maximum sdbMgmtCtrlDevUnitAddress is 255, but multiplying by 1 million for namespace size. Add +100k for every top-level index below a PDU.
foreach ($sdbDevInNames as $sdbDevInIndex => $sdbDevInName) {
$inputIndex = $sdbDevIdIndex * 1000000 + 100000 + $sdbDevInIndex * 1000; // +100k for the first top-level namespace. Add 1000 * sdbDevInIndex which goes up to 48. Leave 3 variable digits at the end.
$entPhysicalDescr = $sdbDevCfMaximumLoad[$sdbDevIdIndex]['SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfMaximumLoad'] . 'A input phase';
$entPhysicalName = 'Input L' . $sdbDevInIndex;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex,
'entPhysicalDescr' => $entPhysicalDescr,
'entPhysicalClass' => 'powerSupply',
'entPhysicalName' => $entPhysicalName,
'entPhysicalContainedIn' => $unitEntPhysicalIndex,
'entPhysicalParentRelPos' => $sdbDevInIndex,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalAlias' => $sdbDevInName['SCHLEIFENBAUER-DATABUS-MIB::sdbDevInName'],
'entPhysicalIsFRU' => 'false',
]));
// Enumerate sensors under the Input
$this->enumerateSensors($inventory, $inputIndex, $entPhysicalName);
}
// Only enumerate outlets if this is a stand-alone, non-databus unit.
if ($sdbMgmtStsDevices == 1) {
// Check if we can find any outlets on this PDU..
if (isset($sdbOutputs[$sdbDevIdIndex])) {
// We found outlets, so let's spawn an Outlet Backplane.
$outletBackplaneIndex = $sdbDevIdIndex * 1000000 + 200000; // +200k for the second top-level index namespace.
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $outletBackplaneIndex,
'entPhysicalDescr' => $outletsTotal . ' outlets',
'entPhysicalClass' => 'backplane',
'entPhysicalName' => 'Outlets',
'entPhysicalContainedIn' => $unitEntPhysicalIndex,
'entPhysicalParentRelPos' => '-1',
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
foreach ($sdbOutputs[$sdbDevIdIndex] as $sdbDevOutIndex => $output) {
$outletIndex = $outletBackplaneIndex + $sdbDevOutIndex * 1000; // +200k for the second top-level index namespace. Add 1000 * sdbDevOutIndex which goes up to 48. Leave 3 variable digits at the end.
$entPhysicalName = 'Outlet #' . $sdbDevOutIndex;
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $outletIndex,
'entPhysicalDescr' => 'PDU outlet',
'entPhysicalClass' => 'powerSupply',
'entPhysicalName' => $entPhysicalName,
'entPhysicalContainedIn' => $outletBackplaneIndex,
'entPhysicalParentRelPos' => $sdbDevOutIndex,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalAlias' => $output['SCHLEIFENBAUER-DATABUS-MIB::sdbDevOutName'],
'entPhysicalIsFRU' => 'false',
]));
// Enumerate sensors under the Outlet
$this->enumerateSensors($inventory, $outletIndex, $entPhysicalName);
}
}
}
// Check if we can find any external sensor connections on this PDU..
if (isset($sdbSensors[$sdbDevIdIndex])) {
// We found at least one sensor connection, so let's spawn a Sensor Container.
$sensorContainerIndex = $sdbDevIdIndex * 1000000 + 300000; // +300k for the third top-level index namespace.
$entPhysicalDescr = $sdbDevCfSensors[$sdbDevIdIndex]['SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfSensors'] == 1 ? '1 external sensor' : $sdbDevCfSensors[$sdbDevIdIndex]['SCHLEIFENBAUER-DATABUS-MIB::sdbDevCfSensors'] . ' external sensors';
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $sensorContainerIndex,
'entPhysicalDescr' => $entPhysicalDescr,
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Sensor Container',
'entPhysicalContainedIn' => $unitEntPhysicalIndex,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
foreach ($sdbSensors[$sdbDevIdIndex] as $sdbDevSnsIndex => $sensor) {
$sensorIndex = $sensorContainerIndex + $sdbDevSnsIndex * 1000; // +300k for the third top-level index namespace. Add 1000 * sdbDevSnsIndex which goes up to 16. Leave 3 variable digits at the end.
$entPhysicalName = 'External Sensor #' . $sdbDevSnsIndex;
$entPhysicalDescr = match ($sensor['SCHLEIFENBAUER-DATABUS-MIB::sdbDevSnsType']) {
'T' => 'Temperature sensor (°C)',
'H' => 'Humidity sensor (%)',
'I' => 'Dry switch contact (binary)',
default => null,
};
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $sensorIndex,
'entPhysicalDescr' => $entPhysicalDescr,
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $entPhysicalName,
'entPhysicalContainedIn' => $sensorContainerIndex,
'entPhysicalParentRelPos' => $sdbDevSnsIndex,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalAlias' => $sensor['SCHLEIFENBAUER-DATABUS-MIB::sdbDevSnsName'],
'entPhysicalIsFRU' => 'true',
]));
}
}
}
return $inventory;
}
private function enumerateSensors(Collection $inventory, int $inputIndex, string $entPhysicalName): void
{
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex + 110,
'entPhysicalDescr' => $entPhysicalName . ' voltage sensor (V)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Voltage Sensor',
'entPhysicalContainedIn' => $inputIndex,
'entPhysicalParentRelPos' => 1,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex + 120,
'entPhysicalDescr' => $entPhysicalName . ' RMS current sensor (A)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Current Sensor',
'entPhysicalContainedIn' => $inputIndex,
'entPhysicalParentRelPos' => 2,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex + 130,
'entPhysicalDescr' => $entPhysicalName . ' apparent power sensor (W)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Power Sensor',
'entPhysicalContainedIn' => $inputIndex,
'entPhysicalParentRelPos' => 3,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex + 140,
'entPhysicalDescr' => $entPhysicalName . ' lifetime power consumed sensor (kWh)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Power Consumed Sensor',
'entPhysicalContainedIn' => $inputIndex,
'entPhysicalParentRelPos' => 4,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $inputIndex + 150,
'entPhysicalDescr' => $entPhysicalName . ' power factor sensor (ratio)',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Power Factor Sensor',
'entPhysicalContainedIn' => $inputIndex,
'entPhysicalParentRelPos' => 5,
'entPhysicalMfgName' => 'Schleifenbauer Products B.V.',
'entPhysicalIsFRU' => 'false',
]));
}
}

View File

@ -0,0 +1,24 @@
<?php
namespace LibreNMS\OS\Shared;
use App\Models\EntPhysical;
use LibreNMS\OS;
use LibreNMS\Util\StringHelpers;
class Arris extends OS
{
use OS\Traits\EntityMib {
OS\Traits\EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverEntityPhysical(): \Illuminate\Support\Collection
{
return $this->discoverBaseEntityPhysical()->each(function (EntPhysical $entity) {
// clean garbage in Rev fields "...............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
$entity->entPhysicalHardwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalHardwareRev);
$entity->entPhysicalFirmwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalFirmwareRev);
$entity->entPhysicalSoftwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalSoftwareRev);
});
}
}

View File

@ -27,6 +27,7 @@
namespace LibreNMS\OS\Shared;
use App\Models\Device;
use App\Models\EntPhysical;
use App\Models\Mempool;
use App\Models\PortsNac;
use App\Models\Sla;
@ -57,6 +58,11 @@ class Cisco extends OS implements
use YamlOSDiscovery {
YamlOSDiscovery::discoverOS as discoverYamlOS;
}
use OS\Traits\EntityMib {
OS\Traits\EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
protected ?string $entityVendorTypeMib = 'CISCO-ENTITY-VENDORTYPE-OID-MIB';
public function discoverOS(Device $device): void
{
@ -213,6 +219,65 @@ class Cisco extends OS implements
return $mempools;
}
public function discoverEntityPhysical(): Collection
{
$inventory = $this->discoverBaseEntityPhysical();
$os = $this->getDevice()->os;
// discover cellular device info
if ($os == 'ios' or $os == 'iosxe') {
$cellData = \SnmpQuery::hideMib()->walk('CISCO-WAN-3G-MIB::c3gGsmIdentityTable');
$baseIndex = $inventory->max('entPhysicalIndex'); // maintain compatability with buggy old code
foreach ($cellData->table(1) as $index => $entry) {
if (isset($entry['c3gImsi'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => ++$baseIndex,
'entPhysicalDescr' => $entry['c3gImsi'],
'entPhysicalVendorType' => 'sim',
'entPhysicalContainedIn' => $index,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => 'sim',
'entPhysicalModelName' => 'IMSI',
'entPhysicalIsFRU' => 'true',
]));
}
if (isset($entry['c3gImei'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => ++$baseIndex,
'entPhysicalDescr' => $entry['c3gImei'],
'entPhysicalVendorType' => 'modem',
'entPhysicalContainedIn' => $index,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => 'modem',
'entPhysicalModelName' => 'IMEI',
'entPhysicalIsFRU' => 'false',
]));
}
if (isset($entry['c3gIccId'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => ++$baseIndex,
'entPhysicalDescr' => $entry['c3gIccId'],
'entPhysicalVendorType' => 'sim',
'entPhysicalContainedIn' => $index,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => 'sim',
'entPhysicalModelName' => 'ICCID',
'entPhysicalIsFRU' => 'true',
]));
}
}
}
return $inventory;
}
/**
* Discover processors.
* Returns an array of LibreNMS\Device\Processor objects that have been discovered

View File

@ -0,0 +1,9 @@
<?php
namespace LibreNMS\OS\Shared;
use LibreNMS\OS;
class Radlan extends OS
{
}

View File

@ -0,0 +1,31 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use LibreNMS\OS;
use LibreNMS\Util\StringHelpers;
class SmartaxMdu extends OS
{
use OS\Traits\EntityMib {
OS\Traits\EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
protected ?string $entityVendorTypeMib = 'HUAWEI-MIB';
public function discoverEntityPhysical(): \Illuminate\Support\Collection
{
return $this->discoverBaseEntityPhysical()->each(function (EntPhysical $entity) {
// clean garbage in Rev fields "...............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
$entity->entPhysicalDescr = StringHelpers::trimHexGarbage($entity->entPhysicalDescr);
$entity->entPhysicalName = StringHelpers::trimHexGarbage($entity->entPhysicalName);
$entity->entPhysicalHardwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalHardwareRev);
$entity->entPhysicalFirmwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalFirmwareRev);
$entity->entPhysicalSoftwareRev = StringHelpers::trimHexGarbage($entity->entPhysicalSoftwareRev);
$entity->entPhysicalAlias = StringHelpers::trimHexGarbage($entity->entPhysicalAlias);
$entity->entPhysicalSerialNum = StringHelpers::trimHexGarbage($entity->entPhysicalSerialNum);
$entity->entPhysicalMfgName = StringHelpers::trimHexGarbage($entity->entPhysicalMfgName);
});
}
}

121
LibreNMS/OS/TaitInfra93.php Normal file
View File

@ -0,0 +1,121 @@
<?php
namespace LibreNMS\OS;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
use LibreNMS\OS;
class TaitInfra93 extends OS
{
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$response = \SnmpQuery::walk('TAIT-INFRA93SERIES-MIB::modules');
if (! $response->isValid()) {
return $inventory;
}
$modules = $response->table(1);
// Create a fake Chassis to host the modules we discover
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 10,
'entPhysicalDescr' => 'Chassis',
'entPhysicalClass' => 'chassis',
'entPhysicalName' => 'Chassis',
'entPhysicalModelName' => 'Infra93',
'entPhysicalContainedIn' => 0,
'entPhysicalParentRelPos' => 0,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalIsFRU' => 'false',
]));
// Fill the different modules the "entPhysical" way to have a correct display.
// We suppose only one FrontPanel, PA, PMU and Reciter is returned.
if (isset($modules[0]['TAIT-INFRA93SERIES-MIB::fpInfoProductCode'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 11,
'entPhysicalDescr' => 'Front Panel',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Front Panel',
'entPhysicalModelName' => $modules[0]['TAIT-INFRA93SERIES-MIB::fpInfoProductCode'],
'entPhysicalSerialNum' => $modules[0]['TAIT-INFRA93SERIES-MIB::fpInfoSerialNumber'],
'entPhysicalContainedIn' => 10,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::fpInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::fpInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
]));
}
if (isset($modules[0]['TAIT-INFRA93SERIES-MIB::rctInfoProductCode'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 120,
'entPhysicalDescr' => 'Reciter',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Reciter',
'entPhysicalModelName' => $modules[0]['TAIT-INFRA93SERIES-MIB::rctInfoProductCode'],
'entPhysicalSerialNum' => $modules[0]['TAIT-INFRA93SERIES-MIB::rctInfoSerialNumber'],
'entPhysicalContainedIn' => 10,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::rctInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::rctInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1200,
'entPhysicalDescr' => 'Reciter Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Reciter Temperature',
'entPhysicalContainedIn' => '120',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalIsFRU' => 'false',
]));
}
if (isset($modules[0]['TAIT-INFRA93SERIES-MIB::paInfoProductCode'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 130,
'entPhysicalDescr' => 'Power Amplifier',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Power Amplifier',
'entPhysicalModelName' => $modules[0]['TAIT-INFRA93SERIES-MIB::paInfoProductCode'],
'entPhysicalSerialNum' => $modules[0]['TAIT-INFRA93SERIES-MIB::paInfoSerialNumber'],
'entPhysicalContainedIn' => 10,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::paInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::paInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
]));
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 1300,
'entPhysicalDescr' => 'Amplifier Power Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Output Power',
'entPhysicalContainedIn' => 130,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalIsFRU' => 'false',
]));
}
if (isset($modules[0]['TAIT-INFRA93SERIES-MIB::pmuInfoProductCode'])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => 140,
'entPhysicalDescr' => 'PMU',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'PMU',
'entPhysicalModelName' => $modules[0]['TAIT-INFRA93SERIES-MIB::pmuInfoProductCode'],
'entPhysicalSerialNum' => $modules[0]['TAIT-INFRA93SERIES-MIB::pmuInfoSerialNumber'],
'entPhysicalContainedIn' => 10,
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::pmuInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules[0]['TAIT-INFRA93SERIES-MIB::pmuInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
]));
}
return $inventory;
}
}

View File

@ -28,6 +28,7 @@
namespace LibreNMS\OS;
use App\Models\Device;
use App\Models\EntPhysical;
use App\Models\MplsLsp;
use App\Models\MplsLspPath;
use App\Models\MplsSap;
@ -968,5 +969,49 @@ class Timos extends OS implements MplsDiscovery, MplsPolling, WirelessPowerDisco
return $sensors;
}
// End Class Timos
public function discoverEntityPhysical(): Collection
{
$inventory = new Collection;
$chassis = \SnmpQuery::walk('TIMETRA-CHASSIS-MIB::tmnxChassisType')->pluck();
$chassisTypes = \SnmpQuery::walk('TIMETRA-CHASSIS-MIB::tmnxChassisTypeTable')->table(1);
$hardware = \SnmpQuery::enumStrings()->walk('TIMETRA-CHASSIS-MIB::tmnxHwTable');
foreach ($hardware->table(2) as $tmnxChassisIndex => $chassisContents) {
$type = $chassis[$tmnxChassisIndex];
if (isset($chassisTypes[$type])) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $tmnxChassisIndex,
'entPhysicalDescr' => $chassisTypes[$type]['TIMETRA-CHASSIS-MIB::tmnxChassisTypeDescription'] ?? null,
'entPhysicalClass' => 'chassis',
'entPhysicalContainedIn' => 0,
'entPhysicalName' => $chassisTypes[$type]['TIMETRA-CHASSIS-MIB::tmnxChassisTypeName'] ?? null,
]));
}
foreach ($chassisContents as $tmnxHwIndex => $entry) {
$inventory->push(new EntPhysical([
'entPhysicalIndex' => $tmnxHwIndex,
'entPhysicalClass' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwClass'],
// 'entPhysicalDescr' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwID'],
'entPhysicalName' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwName'],
'entPhysicalModelName' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwMfgBoardNumber'],
'entPhysicalSerialNum' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwSerialNumber'],
'entPhysicalContainedIn' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwContainedIn'],
'entPhysicalMfgName' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwMfgBoardNumber'],
'entPhysicalParentRelPos' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwParentRelPos'],
'entPhysicalHardwareRev' => '1.0',
'entPhysicalFirmwareRev' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwBootCodeVersion'],
'entPhysicalSoftwareRev' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwBootCodeVersion'],
'entPhysicalIsFRU' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwIsFRU'],
'entPhysicalAlias' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwAlias'],
'entPhysicalAssetID' => $entry['TIMETRA-CHASSIS-MIB::tmnxHwAssetID'],
]));
}
}
return $inventory;
}
}

View File

@ -0,0 +1,73 @@
<?php
/**
* EntityMib.php
*
* -Description-
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* @link https://www.librenms.org
*
* @copyright 2024 Tony Murray
* @author Tony Murray <murraytony@gmail.com>
*/
namespace LibreNMS\OS\Traits;
use App\Models\EntPhysical;
use Illuminate\Support\Collection;
trait EntityMib
{
public function discoverEntityPhysical(): Collection
{
$snmpQuery = \SnmpQuery::hideMib()->enumStrings();
if (isset($this->entityVendorTypeMib)) {
$snmpQuery = $snmpQuery->mibs([$this->entityVendorTypeMib]);
}
$data = $snmpQuery->walk('ENTITY-MIB::entPhysicalTable');
if (! $data->isValid()) {
return new Collection;
}
$entPhysicalToIfIndexMap = $this->getIfIndexEntPhysicalMap();
return $data->mapTable(function ($data, $entityPhysicalIndex) use ($entPhysicalToIfIndexMap) {
$entityPhysical = new EntPhysical($data);
$entityPhysical->entPhysicalIndex = $entityPhysicalIndex;
$entityPhysical->ifIndex = $entPhysicalToIfIndexMap[$entityPhysicalIndex] ?? null;
return $entityPhysical;
});
}
/**
* @return array<int, int>
*/
protected function getIfIndexEntPhysicalMap(): array
{
$mapping = \SnmpQuery::cache()->walk('ENTITY-MIB::entAliasMappingIdentifier')->table(2);
$map = [];
foreach ($mapping as $entityPhysicalIndex => $data) {
$id = $data[0]['ENTITY-MIB::entAliasMappingIdentifier'] ?? $data[1]['ENTITY-MIB::entAliasMappingIdentifier'] ?? null;
if ($id && preg_match('/ifIndex[\[.](\d+)/', $id, $matches)) {
$map[(int) $entityPhysicalIndex] = (int) $matches[1];
}
}
return $map;
}
}

View File

@ -27,6 +27,7 @@ namespace LibreNMS\OS;
use App\Models\AccessPoint;
use App\Models\Device;
use App\Models\EntPhysical;
use App\Models\Mempool;
use App\Models\PortsNac;
use App\Models\Sla;
@ -49,6 +50,7 @@ use LibreNMS\Interfaces\Polling\NacPolling;
use LibreNMS\Interfaces\Polling\OSPolling;
use LibreNMS\Interfaces\Polling\SlaPolling;
use LibreNMS\OS;
use LibreNMS\OS\Traits\EntityMib;
use LibreNMS\RRD\RrdDefinition;
class Vrp extends OS implements
@ -63,6 +65,35 @@ class Vrp extends OS implements
OSDiscovery
{
use SyncsModels;
use EntityMib {
EntityMib::discoverEntityPhysical as discoverBaseEntityPhysical;
}
public function discoverEntityPhysical(): Collection
{
// normal ENTITY-MIB collection
$inventory = $this->discoverBaseEntityPhysical();
// add additional data from Huawei MIBs
$extra = \SnmpQuery::walk([
'HUAWEI-ENTITY-EXTENT-MIB::hwEntityBoardType',
'HUAWEI-ENTITY-EXTENT-MIB::hwEntityBomEnDesc',
])->table(1);
$inventory->each(function (EntPhysical $entry) use ($extra) {
if (isset($entry->entPhysicalIndex)) {
if (! empty($extra[$entry->entPhysicalIndex]['HUAWEI-ENTITY-EXTENT-MIB::hwEntityBomEnDesc'])) {
$entry->entPhysicalDescr = $extra[$entry->entPhysicalIndex]['HUAWEI-ENTITY-EXTENT-MIB::hwEntityBomEnDesc'];
}
if (! empty($extra[$entry->entPhysicalIndex]['HUAWEI-ENTITY-EXTENT-MIB::hwEntityBoardType'])) {
$entry->entPhysicalModelName = $extra[$entry->entPhysicalIndex]['HUAWEI-ENTITY-EXTENT-MIB::hwEntityBoardType'];
}
}
});
return $inventory;
}
public function discoverMempools()
{

View File

@ -174,4 +174,33 @@ class StringHelpers
return implode($seperator, $hex);
}
public static function hexToAscii(string $hex, string $seperator = ''): string
{
if ($seperator) {
$escaped_seperator = preg_quote($seperator);
$no_nulls = preg_replace("/(00$escaped_seperator(00)?|{$escaped_seperator}00)/", '', $hex);
$hex = str_replace($seperator, '', $no_nulls);
}
$string = '';
for ($i = 0; $i < strlen($hex) - 1; $i += 2) {
$string .= chr(hexdec(substr($hex, $i, 2)));
}
return $string;
}
public static function trimHexGarbage(string $string): string
{
$regex = '/((\.{2,}.{1,2})?\.+)?([0-9a-f]{2} )*([0-9a-f]{2})?$/';
return preg_replace($regex, '', str_replace("\n", '', $string));
}
public static function isHex(string $string): bool
{
return (bool) preg_match('/^[a-f0-9][a-f0-9]( [a-f0-9][a-f0-9])*$/is', trim($string));
}
}

View File

@ -2,9 +2,35 @@
namespace App\Models;
class EntPhysical extends DeviceRelatedModel
use LibreNMS\Interfaces\Models\Keyable;
class EntPhysical extends DeviceRelatedModel implements Keyable
{
protected $table = 'entPhysical';
protected $primaryKey = 'entPhysical_id';
public $timestamps = false;
protected $fillable = [
'entPhysicalIndex',
'entPhysicalDescr',
'entPhysicalContainedIn',
'entPhysicalClass',
'entPhysicalName',
'entPhysicalSerialNum',
'entPhysicalModelName',
'entPhysicalMfgName',
'entPhysicalVendorType',
'entPhysicalParentRelPos',
'entPhysicalHardwareRev',
'entPhysicalFirmwareRev',
'entPhysicalSoftwareRev',
'entPhysicalIsFRU',
'entPhysicalAlias',
'entPhysicalAssetID',
'ifIndex',
];
public function getCompositeKey()
{
return $this->entPhysicalIndex;
}
}

View File

@ -0,0 +1,28 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('entPhysical', function (Blueprint $table) {
$table->unsignedInteger('ifIndex')->nullable()->change();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('entPhysical', function (Blueprint $table) {
$table->integer('ifIndex')->nullable()->change();
});
}
};

View File

@ -0,0 +1,32 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('entPhysical', function (Blueprint $table) {
$table->string('entPhysicalHardwareRev', 96)->nullable()->change();
$table->string('entPhysicalFirmwareRev', 96)->nullable()->change();
$table->string('entPhysicalSoftwareRev', 96)->nullable()->change();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('entPhysical', function (Blueprint $table) {
$table->string('entPhysicalHardwareRev', 64)->nullable()->change();
$table->string('entPhysicalFirmwareRev', 64)->nullable()->change();
$table->string('entPhysicalSoftwareRev', 64)->nullable()->change();
});
}
};

View File

@ -168,22 +168,6 @@ function get_port_by_ifIndex($device_id, $ifIndex)
return dbFetchRow('SELECT * FROM `ports` WHERE `device_id` = ? AND `ifIndex` = ?', [$device_id, $ifIndex]);
}
function get_entity_by_id_cache($type, $id)
{
global $entity_cache;
$table = $type == 'storage' ? $type : $type . 's';
if (is_array($entity_cache[$type][$id])) {
$entity = $entity_cache[$type][$id];
} else {
$entity = dbFetchRow('SELECT * FROM `' . $table . '` WHERE `' . $type . '_id` = ?', [$id]);
$entity_cache[$type][$id] = $entity;
}
return $entity;
}
function get_port_by_id($port_id)
{
if (is_numeric($port_id)) {
@ -299,17 +283,6 @@ function get_dev_attribs($device_id)
return DeviceCache::get((int) $device_id)->getAttribs();
}
function get_dev_entity_state($device)
{
$state = [];
foreach (dbFetchRows('SELECT * FROM entPhysical_state WHERE `device_id` = ?', [$device]) as $entity) {
$state['group'][$entity['group']][$entity['entPhysicalIndex']][$entity['subindex']][$entity['key']] = $entity['value'];
$state['index'][$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']] = $entity['value'];
}
return $state;
}
function get_dev_attrib($device, $attrib_type)
{
return DeviceCache::get((int) $device['device_id'])->getAttrib($attrib_type);

View File

@ -1,29 +1,9 @@
<?php
use LibreNMS\Config;
use LibreNMS\Modules\EntityPhysical;
use LibreNMS\OS;
if (Config::get('enable_inventory')) {
// Legacy entPhysical - junos/timos/cisco
include 'includes/discovery/entity-physical/entity-physical.inc.php';
if (file_exists(Config::get('install_dir') . "/includes/discovery/entity-physical/{$device['os']}.inc.php")) {
include Config::get('install_dir') . "/includes/discovery/entity-physical/{$device['os']}.inc.php";
}
// Delete any entries that have not been accounted for.
$sql = 'SELECT * FROM `entPhysical` WHERE `device_id` = ?';
foreach (dbFetchRows($sql, [$device['device_id']]) as $test) {
$id = $test['entPhysicalIndex'];
if (! $valid[$id]) {
echo '-';
dbDelete('entPhysical', 'entPhysical_id = ?', [$test['entPhysical_id']]);
}
}
unset(
$sql,
$test,
$valid
);
} else {
echo 'Disabled!';
}//end if
if (! isset($os) || ! $os instanceof OS) {
$os = OS::make($device);
}
(new EntityPhysical())->discover($os);

View File

@ -1,67 +0,0 @@
<?php
$physical_name = snmpwalk_cache_multi_oid($device, 'sysObjectID.0', $physical_name, 'SNMPv2-MIB:CALIX-PRODUCT-MIB');
$serial_number = snmpwalk_cache_multi_oid($device, 'axosSystemChassisSerialNumber', $serial_number, 'Axos-System-MIB');
$physical_index = 1;
$entity_array[1] = [
'entPhysicalIndex' => $physical_index,
'entPhysicalDescr' => $physical_name[0]['sysObjectID'],
'entPhysicalVendorType' => 'Calix',
'entPhysicalContainedIn' => '0',
'entPhysicalClass' => 'chassis',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => $physical_name[0]['sysObjectID'],
'entPhysicalSerialNum' => $serial_number[0]['axosSystemChassisSerialNumber'],
'entPhysicalMfgName' => 'Calix',
'entPhysicalModelName' => $physical_name[0]['sysObjectID'],
];
$card_array = snmpwalk_cache_multi_oid($device, 'axosCardTable', $card_array, 'Axos-Card-MIB');
foreach ($card_array as $card) {
$physical_index++;
// Discover the card
$entity_array[] = [
'entPhysicalIndex' => $physical_index,
'entPhysicalDescr' => "Calix {$card['axosCardActualType']}",
'entPhysicalClass' => 'container',
'entPhysicalModelName' => $card['axosCardPartNumber'],
'entPhysicalSerialNum' => $card['axosCardSerialNumber'],
'entPhysicalContainedIn' => 1,
'entPhysicalParentRelPos' => $card['axosCardSlot'],
'entPhysicalSoftwareRev' => $card['axosCardSoftwareVersion'],
'entPhysicalIsFRU' => true,
];
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '';
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
$ifIndex = array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : '';
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
}//end foreach
echo "\n";
unset(
$physical_name,
$serial_number,
$card_array,
$card,
$entry,
$entity_array,
$id
);

View File

@ -1,77 +0,0 @@
<?php
/**
* ciena-rls.inc.php
*
* -Description-
*
* Chassis inventory for a Ciena Reconfigurable Line System (RLS).
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* Traps when Adva objects are created. This includes Remote User Login object,
* Flow Creation object, and LAG Creation object.
*
* @link https://www.librenms.org
*
* @copyright 2024 KanREN, Inc
* @author Heath Barnhart <hbarnhart@kanren.net>
*/
$entity_array = [];
$inventory = snmpwalk_cache_multi_oid($device, 'rlsCircuitPackTable', [], 'CIENA-6500R-INVENTORY-MIB');
foreach ($inventory as $inventory => $inventoryItems) {
$entity_array[] = [
'entPhysicalIndex' => $inventory, //need to derive index from the oid
'entPhysicalDescr' => $inventoryItems['rlsCircuitPackCtype'],
'entPhysicalName' => $inventoryItems['rlsCircuitPackCtype'],
'entPhysicalModelName' => $inventoryItems['rlsCircuitPackPec'],
'entPhysicalSerialNum' => $inventoryItems['rlsCircuitPackSerialNumber'],
'entPhysicalParentRelPos' => $inventory,
'entPhysicalMfgName' => 'Ciena',
'entPhysicalAlias' => $inventoryItems['rlsCircuitPackCommonLanguageEquipmentIndentifier'],
'entPhysicalHardwareRev' => $inventoryItems['rlsCircuitPackHardwareRelease'],
'entPhysicalIsFRU' => 'true',
];
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
discover_entity_physical(
$valid,
$device,
array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '',
array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '',
array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '',
array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '',
array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '',
array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '',
array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '',
array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '',
array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '',
array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '',
array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '',
array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '',
array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '',
array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '',
array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '',
array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '',
array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : ''
);
}
echo "\n";
unset(
$inventory,
$entity_array
);

View File

@ -1,336 +0,0 @@
<?php
/*
* LibreNMS entity-physical module for the discovery of components in the Ciena Service Delivery Switch family
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
echo "\nCaching OIDs:";
$entity_array = [];
echo 'Ciena SDS';
// Chassis stuff
$chassis_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisGlobal',
[],
'CIENA-CES-CHASSIS-MIB',
);
$chassis_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisPlatform',
$chassis_array,
'CIENA-CES-CHASSIS-MIB',
);
$chassis_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisIDP',
$chassis_array,
'CIENA-CES-CHASSIS-MIB',
);
// PSU Stuff
$cienaCesChassisPowerModule = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisPowerModule',
[],
'CIENA-CES-CHASSIS-MIB',
);
// Fan Stuff
$cienaCesChassisFanTrayEntry = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisFanTrayEntry',
[],
'CIENA-CES-CHASSIS-MIB',
);
$cienaCesChassisFanEntry = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisFanEntry',
[],
'CIENA-CES-CHASSIS-MIB',
);
$cienaCesChassisFanTempEntry = snmpwalk_cache_multi_oid(
$device,
'cienaCesChassisFanTempEntry',
[],
'CIENA-CES-CHASSIS-MIB',
);
// Module Stuff
$module_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesModuleEntry',
[],
'CIENA-CES-MODULE-MIB',
);
$module_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesModuleDescriptionEntry',
$module_array,
'CIENA-CES-MODULE-MIB',
);
$module_array = snmpwalk_cache_multi_oid(
$device,
'cienaCesModuleSwEntry',
$module_array,
'CIENA-CES-MODULE-MIB',
);
// Interface stuff
$interfaceIndexMapping = snmpwalk_cache_multi_oid(
$device,
'dot1dBasePortIfIndex',
[],
'BRIDGE-MIB',
);
$cienaCesEttpConfigEntry = snmpwalk_cache_multi_oid(
$device,
'cienaCesEttpConfigEntry',
[],
'CIENA-CES-PORT-MIB',
);
$cienaCesPortXcvrEntry = snmpwalk_cache_multi_oid(
$device,
'cienaCesPortXcvrEntry',
[],
'CIENA-CES-PORT-XCVR-MIB',
);
foreach ($chassis_array as $cienaCesChassis => $chassis_contents) {
// as far as I know, there can only be 1 chassis, but iterate just in case
$chassisIndex = $cienaCesChassis + 1;
$entity_array[] = [
'entPhysicalIndex' => $chassisIndex,
'entPhysicalDescr' => $chassis_contents['cienaCesChassisPlatformDesc'],
'entPhysicalClass' => 'chassis',
'entPhysicalName' => 'Chassis',
'entPhysicalModelName' => $chassis_contents['cienaCesChassisPartNumber'],
'entPhysicalSerialNum' => $chassis_contents['cienaCesChassisSerialNumber'],
'entPhysicalContainedIn' => '0',
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => '-1',
'entPhysicalHardwareRev' => $chassis_contents['cienaCesChassisIDPModelRevision'],
'entPhysicalIsFRU' => 'true',
];
$entity_array[] = [
'entPhysicalIndex' => "40$chassisIndex",
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Modules',
'entPhysicalContainedIn' => $chassisIndex,
'entPhysicalParentRelPos' => -1,
];
$entity_array[] = [
'entPhysicalIndex' => "41$chassisIndex",
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Power Supplies',
'entPhysicalContainedIn' => $chassisIndex,
'entPhysicalParentRelPos' => -1,
];
$entity_array[] = [
'entPhysicalIndex' => "42$chassisIndex",
'entPhysicalClass' => 'container',
'entPhysicalName' => 'Fans',
'entPhysicalContainedIn' => $chassisIndex,
'entPhysicalParentRelPos' => -1,
];
}
foreach ($cienaCesChassisPowerModule as $index => $contents) {
$entity_array[] = [
'entPhysicalIndex' => "50$index",
'entPhysicalDescr' => $contents['cienaCesChassisPowerSupplyManufacturer'],
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesChassisPowerSupplySlotName'],
'entPhysicalModelName' => $contents['cienaCesChassisPowerSupplyPartNum'],
'entPhysicalSerialNum' => $contents['cienaCesChassisPowerSupplySerialNumber'],
'entPhysicalContainedIn' => '41' . $contents['cienaCesChassisPowerSupplyChassisIndx'],
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $contents['cienaCesChassisPowerSupplySlotIndx'],
'entPhysicalHardwareRev' => $contents['cienaCesChassisPowerSupplyRevInfo'],
'entPhysicalIsFRU' => $contents['cienaCesChassisPowerSupplyFRU'],
'ifIndex' => null,
];
}
foreach ($cienaCesChassisFanTrayEntry as $index => $contents) {
switch ($contents['cienaCesChassisFanTrayType']) {
case 1:
$typeString = 'Fixed fan tray, ';
break;
case 2:
$typeString = 'Hot swappable fan tray, ';
break;
case 3:
$typeString = 'Unequipped fan tray, ';
break;
default:
$typeString = '';
}
switch ($contents['cienaCesChassisFanTrayMode']) {
case 1:
$modeString = 'Invalid fan configuration!';
break;
case 2:
$modeString = 'Fully populated';
break;
case 3:
$modeString = 'Auto mode';
break;
default:
$modeString = '';
}
$entity_array[] = [
'entPhysicalIndex' => "53$index",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesChassisFanTrayName'],
'entPhysicalModelName' => 'Fan Tray',
'entPhysicalDescr' => "$typeString$modeString",
'entPhysicalSerialNum' => $contents['cienaCesChassisFanTraySerialNumber'],
'entPhysicalContainedIn' => '42' . $contents['cienaCesChassisFanTrayChassisIndx'],
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $contents['cienaCesChassisFanTraySlotIndx'],
'entPhysicalIsFRU' => ($contents['cienaCesChassisFanTrayType'] = '2') ? 'true' : 'false',
];
}
foreach ($cienaCesChassisFanEntry as $index => $contents) {
// index = fanTray.fanIndex
$indexArr = explode('.', $index);
$fanTray = $indexArr[0];
$fanIndex = $indexArr[1];
$entity_array[] = [
'entPhysicalIndex' => "51$fanIndex",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesChassisFanName'],
'entPhysicalModelName' => 'Fan',
'entPhysicalContainedIn' => (isset($cienaCesChassisFanTrayEntry[$fanTray])) ?
"53$fanTray" : '42' . $contents['cienaCesChassisFanChassisIndx'],
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $fanIndex,
];
}
foreach ($cienaCesChassisFanTempEntry as $index => $contents) {
// index = fanTray.sensorIndex
$indexArr = explode('.', $index);
$fanTray = $indexArr[0];
$sensorIndex = $indexArr[1];
$entity_array[] = [
'entPhysicalIndex' => "52$sensorIndex",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesChassisFanTempName'],
'entPhysicalModelName' => 'Temp Sensor',
'entPhysicalContainedIn' => (isset($cienaCesChassisFanTrayEntry[$fanTray])) ?
"53$fanTray" : '42' . $contents['cienaCesChassisFanTempChassisIndx'],
'entPhysicalParentRelPos' => -1,
];
}
foreach ($module_array as $index => $contents) {
// index = chassisIndex.shelfIndex.slotIndex
$indexArr = explode('.', $index);
$chassisIndex = $indexArr[0];
$shelfIndex = $indexArr[1];
$slotIndex = $indexArr[2];
$entity_array[] = [
'entPhysicalIndex' => "55$slotIndex",
'entPhysicalDescr' => $contents['cienaCesModuleDescription'] . ', ' . $contents['cienaCesModuleSwRunningRelease'],
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $contents['cienaCesModuleSlotName'] . ': ' . $contents['cienaCesModuleDescriptionBoardName'],
'entPhysicalModelName' => $contents['cienaCesModuleDescriptionBoardPartNum'],
'entPhysicalSerialNum' => $contents['cienaCesModuleDescriptionBoardSerialNum'],
'entPhysicalContainedIn' => '40' . $chassisIndex,
'entPhysicalMfgName' => 'Ciena',
'entPhysicalParentRelPos' => $slotIndex,
'entPhysicalFirmwareRev' => $contents['cienaCesModuleSwRunningRelease'],
'entPhysicalIsFRU' => 'true',
];
}
foreach ($cienaCesEttpConfigEntry as $index => $contents) {
$portIndex = $interfaceIndexMapping[$index]['dot1dBasePortIfIndex'];
$nameArr = explode('/', $contents['cienaCesEttpConfigName']);
$slotIndex = ((isset($nameArr[1])) ? $nameArr[0] : 1);
$entity_array[] = [
'entPhysicalIndex' => "56$index",
'entPhysicalDescr' => $contents['cienaCesEttpConfigEttpType'],
'entPhysicalClass' => 'port',
'entPhysicalName' => $contents['cienaCesEttpConfigName'],
'entPhysicalContainedIn' => '55' . $slotIndex,
'entPhysicalParentRelPos' => $index,
'ifIndex' => $portIndex,
];
if (isset($cienaCesPortXcvrEntry[$index])) {
if ($cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrOperState'] != 'notPresent') {
$wavelengthString = ($cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrWaveLength'] != 0 ?
$cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrWaveLength'] . ' nm ' : '');
$mfgString = ($cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrMfgDate'] != '' ?
'manufactured ' . $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrMfgDate'] . ' ' : '');
$entity_array[] = [
'entPhysicalIndex' => $portIndex,
'entPhysicalDescr' => $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrVendorName'] . ' ' . $wavelengthString .
$cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrIdentiferType'] . ' transceiver ' . $mfgString,
'entPhysicalClass' => 'sensor',
'entPhysicalModelName' => $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrVendorPartNum'],
'entPhysicalSerialNum' => $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrSerialNum'],
'entPhysicalContainedIn' => "56$index",
'entPhysicalMfgName' => $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrVendorName'],
'entPhysicalParentRelPos' => -1,
'entPhysicalHardwareRev' => $cienaCesPortXcvrEntry[$index]['cienaCesPortXcvrRevNum'],
'entPhysicalIsFRU' => 'true',
];
}
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
discover_entity_physical(
$valid,
$device,
array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '',
array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '',
array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '',
array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '',
array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '',
array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '',
array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '',
array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '',
array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '',
array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '',
array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '',
array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '',
array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '',
array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '',
array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '',
array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '',
array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : ''
);
}
echo "\n";
unset(
$chassis_array,
$cienaCesChassisPowerModule,
$cienaCesChassisFanTrayEntry,
$cienaCesChassisFanEntry,
$cienaCesChassisFanTempEntry,
$interfaceIndexMapping,
$cienaCesEttpConfigEntry,
$cienaCesPortXcvrEntry,
$module_array,
$entry,
$entity_array
);

View File

@ -1,598 +0,0 @@
<?php
/*
* LibreNMS module to discover hardware components in a Cisco Integrated Management Controller
*
* Copyright (c) 2016 Aaron Daniels <aaron@daniels.id.au>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
$comp_module = 'Cisco-CIMC';
$component = new LibreNMS\Component();
$components = $component->getComponents($device['device_id'], ['type' => $comp_module]);
// We only care about our device id.
$components = $components[$device['device_id']];
// Begin our master array, all other values will be processed into this array.
$tblCIMC = [];
// Let's gather some data..
$tblUCSObjects = snmpwalk_array_num($device, '.1.3.6.1.4.1.9.9.719.1', 2);
/*
* False == no object found - this is not an error, there is no QOS configured
* null == timeout or something else that caused an error, the OID's may be present but we couldn't get them.
*/
if (is_null($tblUCSObjects)) {
// We have to error here or we will end up deleting all our components.
} else {
// No Error, lets process things.
echo 'CIMC Hardware Found: ';
// Make sure we have an array before we try to iterate over it
if (is_array($tblUCSObjects)) {
// Gather entPhysical data
$entmax = 0;
$entphysical = [];
$dbentphysical = $entries = dbFetchRows('SELECT * FROM entPhysical WHERE device_id=?', [$device['device_id']]);
foreach ($dbentphysical as $array) {
$entphysical[$array['entPhysicalVendorType']] = $array;
if ($array['entPhysicalIndex'] > $entmax) {
$entmax = $array['entPhysicalIndex'];
}
}
// Let's extract any active faults, we will use them later.
$faults = [];
foreach ($tblUCSObjects['1.3.6.1.4.1.9.9.719.1.1.1.1'][5] as $fid => $fobj) {
$fobj = preg_replace('/^\/?sys\//', '', $fobj);
$faults[$fobj] = $tblUCSObjects['1.3.6.1.4.1.9.9.719.1.1.1.1'][3][$fid] . ' - ' . $tblUCSObjects['1.3.6.1.4.1.9.9.719.1.1.1.1'][11][$fid];
}
// Unset the faults and stats array so it isn't reported as an error later.
unset(
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.1.1.1'],
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.9.14.1'],
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.9.44.1'],
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.30.12.1'],
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.41.2.1'],
$tblUCSObjects['1.3.6.1.4.1.9.9.719.1.45.36.1']
);
foreach ($tblUCSObjects as $tbl => $array) {
// Remove the leading /sys/
foreach ($array[2] as &$label) {
$label = preg_replace('/^\/?sys\//', '', $label);
}
// Lets Set some defaults.
$entPhysicalData = [
'entPhysicalHardwareRev' => '',
'entPhysicalFirmwareRev' => '',
'entPhysicalSoftwareRev' => '',
'entPhysicalIsFRU' => 'FALSE',
];
switch ($tbl) {
// Chassis - rack-unit-1
case '1.3.6.1.4.1.9.9.719.1.9.35.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'chassis';
$result['id'] = $array[27][$key];
$result['label'] = $array[2][$key];
$result['serial'] = $array[47][$key];
$result['string'] = $array[32][$key] . ' - ' . ($array[49][$key] / 1024) . 'G Mem, ' . $array[36][$key] . ' CPU, ' . $array[35][$key] . ' core';
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.9.35.1.43.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[43][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[43][$key] . "\n";
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// See if there are any errors on this chassis.
foreach ($faults as $id => $value) {
if (strpos($id, $result['label']) !== false) {
// The fault is on this chassis.
$result['status'] = 2;
$result['error'] .= $value . "\n";
}
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'chassis';
$entPhysicalData['entPhysicalModelName'] = $array[32][$key];
$entPhysicalData['entPhysicalName'] = 'Chassis';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[47][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('Chassis (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// System Board - rack-unit-1/board
case '1.3.6.1.4.1.9.9.719.1.9.6.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'board';
$result['id'] = $array[5][$key];
$result['label'] = $array[2][$key];
$result['serial'] = $array[14][$key];
$result['string'] = $array[6][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.9.6.1.9.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[9][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[9][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'backplane';
$entPhysicalData['entPhysicalName'] = 'System Board';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[14][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('System Board (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// Memory Modules - rack-unit-1/board/memarray-1/mem-0
case '1.3.6.1.4.1.9.9.719.1.30.11.1':
foreach ($array[3] as $key => $item) {
$result = [];
// If there is no memory module present, continue.
if ($array[17][$key] != 10) {
continue;
}
$result['hwtype'] = 'memory';
$result['id'] = substr($array[3][$key], 4);
$result['label'] = $array[2][$key];
$result['serial'] = $array[19][$key];
$result['string'] = $array[11][$key] . ' - ' . ($array[6][$key] / 1024) . 'G, ' . $array[27][$key] . ' Bit, ' . $array[7][$key] . ' Mhz, ' . $array[21][$key] . ' MT/s';
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.30.11.1.14.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[14][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[14][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[11][$key];
$entPhysicalData['entPhysicalName'] = 'Memory';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[19][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('Memory (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// CPU's - rack-unit-1/board/cpu-1
case '1.3.6.1.4.1.9.9.719.1.41.9.1':
foreach ($array[3] as $key => $item) {
$result = [];
// If there is no cpu present, continue.
if ($array[13][$key] != 10) {
continue;
}
$result['hwtype'] = 'cpu';
$result['id'] = substr($array[3][$key], 4);
$result['label'] = $array[2][$key];
$result['serial'] = $array[15][$key];
$result['string'] = $array[8][$key] . ' - ' . $array[5][$key] . ' Cores, ' . $array[20][$key] . ' Threads';
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.41.9.1.10.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[10][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[10][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'cpu';
$entPhysicalData['entPhysicalModelName'] = $array[8][$key];
$entPhysicalData['entPhysicalName'] = 'Processor';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[15][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('CPU (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// SAS Storage Module - rack-unit-1/board/storage-SAS-2
case '1.3.6.1.4.1.9.9.719.1.45.1.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'sas-controller';
$result['id'] = substr($array[3][$key], 12);
$result['label'] = $array[2][$key];
$result['serial'] = $array[14][$key];
$result['string'] = $array[5][$key] . ' - Rev: ' . $array[13][$key] . ', ' . $array[9][$key] . ', RAID Types: ' . $array[19][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.45.1.1.7.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[7][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[7][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[5][$key];
$entPhysicalData['entPhysicalName'] = 'Storage Module';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[14][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('SAS Module (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// SAS Disks - rack-unit-1/board/storage-SAS-2/disk-1
case '1.3.6.1.4.1.9.9.719.1.45.4.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'sas-disk';
$result['id'] = substr($array[3][$key], 5);
$result['label'] = $array[2][$key];
$result['serial'] = $array[12][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.45.4.1.9.' . $key;
// Old Firmware returns 4294967296 as 1 MB.
// The if below assumes we will never have < 1 Gb on old firmware or > 4 Pb on new firmware
if ($array[13][$key] > 4294967296000) {
// Old Firmware
$result['string'] = $array[14][$key] . ' ' . $array[7][$key] . ', Rev: ' . $array[11][$key] . ', Size: ' . round($array[13][$key] / 4294967296000, 2) . ' GB';
d_echo('Disk: ' . $array[2][$key] . ', Raw Size: ' . $array[13][$key] . ', converted (old FW): ' . round($array[13][$key] / 4294967296000, 2) . "GB\n");
} else {
// New Firmware
$result['string'] = $array[14][$key] . ' ' . $array[7][$key] . ', Rev: ' . $array[11][$key] . ', Size: ' . round($array[13][$key] / 1000, 2) . ' GB';
d_echo('Disk: ' . $array[2][$key] . ', Raw Size: ' . $array[13][$key] . ', converted (New FW): ' . round($array[13][$key] / 1000, 2) . "GB\n");
}
// What is the Operability, 1 is good, everything else is bad.
if ($array[9][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[9][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[14][$key];
$entPhysicalData['entPhysicalName'] = 'Disk';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[12][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('SAS Disk (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// LUN's - rack-unit-1/board/storage-SAS-2/lun-0
case '1.3.6.1.4.1.9.9.719.1.45.8.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'lun';
$result['id'] = substr($array[3][$key], 4);
$result['label'] = $array[2][$key];
$result['serial'] = 'N/A';
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.45.8.1.9.' . $key;
// Old Firmware returns 4294967296 as 1 MB.
// The if below assumes we will never have < 1 Gb on old firmware or > 4 Pb on new firmware
if ($array[13][$key] > 4294967296000) {
// Old Firmware
$result['string'] = $array[3][$key] . ', Size: ' . round($array[13][$key] / 4294967296000, 2) . ' GB';
d_echo('LUN: ' . $array[2][$key] . ', Raw Size: ' . $array[13][$key] . ', converted (Old FW): ' . round($array[13][$key] / 4294967296000, 2) . "GB\n");
} else {
// New Firmware
$result['string'] = $array[3][$key] . ', Size: ' . round($array[13][$key] / 1000, 2) . ' GB';
d_echo('LUN: ' . $array[2][$key] . ', Raw Size: ' . $array[13][$key] . ', converted (New FW): ' . round($array[13][$key] / 1000, 2) . "GB\n");
}
// What is the Operability, 1 is good, everything else is bad.
if ($array[9][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[9][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[3][$key];
$entPhysicalData['entPhysicalName'] = 'LUN';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = '';
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('LUN (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// RAID Battery - rack-unit-1/board/storage-SAS-2/raid-battery
case '1.3.6.1.4.1.9.9.719.1.45.11.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'raid-battery';
$result['id'] = $array[3][$key];
$result['label'] = $array[2][$key];
$result['serial'] = 'N/A';
$result['string'] = $array[3][$key] . ' - ' . $array[7][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.45.11.1.9.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[9][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[9][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[3][$key];
$entPhysicalData['entPhysicalName'] = 'RAID Battery';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = '';
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('RAID Battery (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// Fan's - rack-unit-1/fan-module-1-1/fan-1
case '1.3.6.1.4.1.9.9.719.1.15.12.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'fan';
$result['id'] = $array[8][$key] . '-' . substr($array[3][$key], 4);
$result['label'] = $array[2][$key];
$result['serial'] = 'N/A';
$result['string'] = $array[7][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.15.12.1.10.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[10][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[10][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'fan';
$entPhysicalData['entPhysicalModelName'] = $array[7][$key];
$entPhysicalData['entPhysicalName'] = 'FAN';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = '';
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('Fan (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// PSU's - rack-unit-1/psu-1
case '1.3.6.1.4.1.9.9.719.1.15.56.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'psu';
$result['id'] = substr($array[3][$key], 4);
$result['label'] = $array[2][$key];
$result['serial'] = $array[13][$key];
$result['string'] = $array[6][$key] . ' - Rev: ' . $array[12][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.15.56.1.8.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[8][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[8][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'powerSupply';
$entPhysicalData['entPhysicalModelName'] = $array[6][$key];
$entPhysicalData['entPhysicalName'] = 'PSU';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[13][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('PSU (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// Adaptors - rack-unit-1/adaptor-1
case '1.3.6.1.4.1.9.9.719.1.3.85.1':
foreach ($array[3] as $key => $item) {
$result = [];
$result['hwtype'] = 'adaptor';
$result['id'] = substr($array[3][$key], 8);
$result['label'] = $array[2][$key];
$result['serial'] = $array[21][$key];
$result['string'] = $array[11][$key] . ' - Rev: ' . $array[20][$key] . ' - Part-No: ' . $array[26][$key];
$result['statusoid'] = '1.3.6.1.4.1.9.9.719.1.3.85.1.13.' . $key;
// What is the Operability, 1 is good, everything else is bad.
if ($array[13][$key] != 1) {
// Yes, report an error
$result['status'] = 2;
$result['error'] = 'Error Operability Code: ' . $array[13][$key];
} else {
// No, unset any errors that may exist.
$result['status'] = 0;
$result['error'] = '';
}
// Add the ent Physical entry
$entPhysicalData['entPhysicalClass'] = 'module';
$entPhysicalData['entPhysicalModelName'] = $array[11][$key];
$entPhysicalData['entPhysicalName'] = 'Adaptor';
$entPhysicalData['entPhysicalDescr'] = $result['string'];
$entPhysicalData['entPhysicalSerialNum'] = $array[21][$key];
[$result['entPhysical'],$entPhysicalData['entPhysicalIndex']] = setCIMCentPhysical($result['label'], $entPhysicalData, $entphysical, $entmax);
$valid[$entPhysicalData['entPhysicalIndex']] = 1;
// Add the result to the array.
d_echo('Adaptor (' . $tbl . '): ' . print_r($result, true) . "\n");
$tblCIMC[] = $result;
}
break;
// Unknown Table, ask the user to log an issue so this can be identified.
default:
d_echo("Cisco-CIMC Error...\n");
d_echo("Please log an issue on github with the following information:\n");
d_echo("-----------------------------------------------\n");
d_echo('Subject: CIMC Unknown Table: ' . $tbl . "\n");
d_echo("Description: The entity-physical module discovered an unknown CIMC table.\nA dump of its contents is below:\n");
d_echo($array);
d_echo("-----------------------------------------------\n\n");
break;
} // End Switch
} // End foreach tblUCSObjects
} // End is_array
/*
* Ok, we have our 2 array's (Components and SNMP) now we need
* to compare and see what needs to be added/updated.
*
* Let's loop over the SNMP data to see if we need to ADD or UPDATE any components.
*/
foreach ($tblCIMC as $key => $array) {
$component_key = false;
// Loop over our components to determine if the component exists, or we need to add it.
foreach ($components as $compid => $child) {
if ($child['label'] === $array['label']) {
$component_key = $compid;
}
}
if (! $component_key) {
// The component doesn't exist, we need to ADD it - ADD.
$new_component = $component->createComponent($device['device_id'], $comp_module);
$component_key = key($new_component);
$components[$component_key] = array_merge($new_component[$component_key], $array);
echo '+';
} else {
// The component does exist, merge the details in - UPDATE.
$components[$component_key] = array_merge($components[$component_key], $array);
echo '.';
}
}
/*
* Loop over the Component data to see if we need to DELETE any components.
*/
foreach ($components as $key => $array) {
// Guilty until proven innocent
$found = false;
foreach ($tblCIMC as $k => $v) {
if ($array['label'] == $v['label']) {
// Yay, we found it...
$found = true;
}
}
if ($found === false) {
// The component has not been found. we should delete it and it's entPhysical entry
echo '-';
dbDelete('entPhysical', '`entPhysical_id` = ?', [$array['entPhysical']]);
$component->deleteComponent($key);
}
}
if (is_array($components)) {
// Write the Components back to the DB.
$component->setComponentPrefs($device['device_id'], $components);
echo "\n";
}
} // End if not error

View File

@ -1,104 +0,0 @@
<?php
/*
* LibreNMS discovery module for Eltex-MES23xx SFP inventory items
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link https://www.librenms.org
*
* @copyright 2022 Peca Nesovanovic
* @author Peca Nesovanovic <peca.nesovanovic@sattrakt.com>
*/
echo "\nCaching OIDs:";
$entity_array = [];
echo ' ELTEX-MES23xx';
$trans = snmpwalk_cache_multi_oid($device, 'eltPhdTransceiverInfoEntry', [], 'ELTEX-MES-PHYSICAL-DESCRIPTION-MIB');
echo ' entAliasMappingIdentifier';
$mapping = snmpwalk_cache_multi_oid($device, 'entAliasMappingIdentifier', [], 'ENTITY-MIB:IF-MIB');
foreach ($trans as $index => $data) {
unset($connectedto);
foreach ($mapping as $ekey => $edata) {
if ($edata['entAliasMappingIdentifier'] == 'ifIndex.' . $index) {
$connectedto = explode('.', $ekey)[0];
}
}
if ($connectedto) {
$entity_array[] = [
'entPhysicalIndex' => $index,
'entPhysicalDescr' => $data['eltPhdTransceiverInfoType'],
'entPhysicalClass' => 'sfp-cage',
'entPhysicalName' => strtoupper($data['eltPhdTransceiverInfoConnectorType']),
'entPhysicalModelName' => \LibreNMS\OS\EltexMes23xx::normData($data['eltPhdTransceiverInfoPartNumber']),
'entPhysicalSerialNum' => $data['eltPhdTransceiverInfoSerialNumber'],
'entPhysicalContainedIn' => $connectedto,
'entPhysicalMfgName' => $data['eltPhdTransceiverInfoVendorName'],
'entPhysicalHardwareRev' => \LibreNMS\OS\EltexMes23xx::normData($data['eltPhdTransceiverInfoVendorRev']),
'entPhysicalIsFRU' => 'true',
];
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = $entry['entPhysicalIndex'] ?? '';
$entPhysicalDescr = $entry['entPhysicalDescr'] ?? '';
$entPhysicalClass = $entry['entPhysicalClass'] ?? '';
$entPhysicalName = $entry['entPhysicalName'] ?? '';
$entPhysicalModelName = $entry['entPhysicalModelName'] ?? '';
$entPhysicalSerialNum = $entry['entPhysicalSerialNum'] ?? '';
$entPhysicalContainedIn = $entry['entPhysicalContainedIn'] ?? '';
$entPhysicalMfgName = $entry['entPhysicalMfgName'] ?? '';
$entPhysicalParentRelPos = $entry['entPhysicalParentRelPos'] ?? '';
$entPhysicalVendorType = $entry['entPhysicalVendorType'] ?? '';
$entPhysicalHardwareRev = $entry['entPhysicalHardwareRev'] ?? '';
$entPhysicalFirmwareRev = $entry['entPhysicalFirmwareRev'] ?? '';
$entPhysicalSoftwareRev = $entry['entPhysicalSoftwareRev'] ?? '';
$entPhysicalIsFRU = $entry['entPhysicalIsFRU'] ?? '';
$entPhysicalAlias = $entry['entPhysicalAlias'] ?? '';
$entPhysicalAssetID = $entry['entPhysicalAssetID'] ?? '';
$ifIndex = $entry['ifIndex'] ?? '';
discover_entity_physical(
$valid,
$device,
$entPhysicalIndex,
$entPhysicalDescr,
$entPhysicalClass,
$entPhysicalName,
$entPhysicalModelName,
$entPhysicalSerialNum,
$entPhysicalContainedIn,
$entPhysicalMfgName,
$entPhysicalParentRelPos,
$entPhysicalVendorType,
$entPhysicalHardwareRev,
$entPhysicalFirmwareRev,
$entPhysicalSoftwareRev,
$entPhysicalIsFRU,
$entPhysicalAlias,
$entPhysicalAssetID,
$ifIndex
);
}//end foreach
echo "\n";
unset(
$modules_array,
$entry,
$entity_array,
$trans,
$mapping
);

View File

@ -1,105 +0,0 @@
<?php
/*
* LibreNMS discovery module for Eltex-MES24xx SFP inventory items
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*
* @package LibreNMS
* @link https://www.librenms.org
*
* @copyright 2024 Peca Nesovanovic
* @author Peca Nesovanovic <peca.nesovanovic@sattrakt.com>
*/
echo ' ELTEX-MES24xx' . PHP_EOL;
$oidSfp = SnmpQuery::cache()->hideMib()->walk('ELTEX-PHY-MIB::eltexPhyTransceiverInfoTable')->table(1);
$oidEnt = SnmpQuery::cache()->hideMib()->walk('ENTITY-MIB::entPhysicalParentRelPos')->table(1);
if (! empty($oidSfp) && ! empty($oidEnt)) {
d_echo('ELTEX 24xx Inventory: Discovering ...' . PHP_EOL);
$entity_array = [];
$infoType = [0 => 'unknown', 1 => 'gbic', 2 => 'sff', 3 => 'sfp-sfpplus', 255 => 'vendorspecific'];
$connType = [0 => 'unknown', 1 => 'SC', 7 => 'LC', 11 => 'optical-pigtail', 255 => 'vendorspecific'];
foreach ($oidSfp as $index => $data) {
foreach ($oidEnt as $entIndex => $entData) {
if ($entData['entPhysicalParentRelPos'] == $index) {
$entity_array[] = [
'entPhysicalIndex' => $index,
'entPhysicalSerialNum' => $data['eltexPhyTransceiverInfoSerialNumber'],
'entPhysicalModelName' => $data['eltexPhyTransceiverInfoPartNumber'],
'entPhysicalName' => $connType[$data['eltexPhyTransceiverInfoConnectorType']],
'entPhysicalDescr' => $infoType[$data['eltexPhyTransceiverInfoType']],
'entPhysicalClass' => 'sfp-cage',
'entPhysicalContainedIn' => $entIndex,
'entPhysicalMfgName' => $data['eltexPhyTransceiverInfoVendorName'],
'entPhysicalHardwareRev' => $data['eltexPhyTransceiverInfoVendorRevision'],
'entPhysicalIsFRU' => 'true',
];
break;
}
}
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = $entry['entPhysicalIndex'] ?? '';
$entPhysicalDescr = $entry['entPhysicalDescr'] ?? '';
$entPhysicalClass = $entry['entPhysicalClass'] ?? '';
$entPhysicalName = $entry['entPhysicalName'] ?? '';
$entPhysicalModelName = $entry['entPhysicalModelName'] ?? '';
$entPhysicalSerialNum = $entry['entPhysicalSerialNum'] ?? '';
$entPhysicalContainedIn = $entry['entPhysicalContainedIn'] ?? '';
$entPhysicalMfgName = $entry['entPhysicalMfgName'] ?? '';
$entPhysicalParentRelPos = $entry['entPhysicalParentRelPos'] ?? '';
$entPhysicalVendorType = $entry['entPhysicalVendorType'] ?? '';
$entPhysicalHardwareRev = $entry['entPhysicalHardwareRev'] ?? '';
$entPhysicalFirmwareRev = $entry['entPhysicalFirmwareRev'] ?? '';
$entPhysicalSoftwareRev = $entry['entPhysicalSoftwareRev'] ?? '';
$entPhysicalIsFRU = $entry['entPhysicalIsFRU'] ?? '';
$entPhysicalAlias = $entry['entPhysicalAlias'] ?? '';
$entPhysicalAssetID = $entry['entPhysicalAssetID'] ?? '';
$ifIndex = $entry['ifIndex'] ?? '';
discover_entity_physical(
$valid,
$device,
$entPhysicalIndex,
$entPhysicalDescr,
$entPhysicalClass,
$entPhysicalName,
$entPhysicalModelName,
$entPhysicalSerialNum,
$entPhysicalContainedIn,
$entPhysicalMfgName,
$entPhysicalParentRelPos,
$entPhysicalVendorType,
$entPhysicalHardwareRev,
$entPhysicalFirmwareRev,
$entPhysicalSoftwareRev,
$entPhysicalIsFRU,
$entPhysicalAlias,
$entPhysicalAssetID,
$ifIndex
);
}//end foreach
echo "\n";
unset(
$modules_array,
$entry,
$entity_array,
$trans,
$mapping
);

View File

@ -1,304 +0,0 @@
<?php
use Illuminate\Support\Str;
echo "\nCaching OIDs:";
if ($device['os'] == 'junos') {
$entity_array = [];
echo ' jnxBoxAnatomy';
$entity_array = snmpwalk_cache_oid($device, 'jnxBoxAnatomy', $entity_array, 'JUNIPER-MIB');
} elseif ($device['os'] == 'aruba-instant') {
$entity_array = [];
echo 'aruba-instant';
$ai_mib = 'AI-AP-MIB';
$ai_ig_data = snmpwalk_group($device, 'aiInfoGroup', $ai_mib);
discover_entity_physical(
$valid,
$device,
1, // entPhysicalIndex
$ai_ig_data['aiVirtualControllerIPAddress.0'], // entPhysicalDescr
'chassis', // entPhysicalClass
$ai_ig_data['aiVirtualControllerName.0'], // entPhysicalName
'Instant Virtual Controller Cluster', // entPhysicalModelName
$ai_ig_data['aiVirtualControllerKey.0'], // entPhysicalSerialNum
'0', // entPhysicalContainedIn
'Aruba', // entPhysicalMfgName
'-1', // entPhysicalParentRelPos
'Aruba', // entPhysicalVendorType
null, // entPhysicalHardwareRev
null, // entPhysicalFirmwareRev
null, // entPhysicalSoftwareRev
null, // entPhysicalIsFRU
null, // entPhysicalAlias
null, // entPhysicalAssetID
null // ifIndex
);
$entity_array = snmpwalk_group($device, 'aiAccessPointEntry', $ai_mib);
$instant_index = 2;
} elseif ($device['os'] == 'timos') {
$entity_array = [];
echo 'tmnxHwObjs';
$entity_array = snmpwalk_cache_multi_oid($device, 'tmnxHwObjs', $entity_array, 'TIMETRA-CHASSIS-MIB', 'nokia');
} else {
$entity_array = [];
echo ' entPhysicalEntry';
$entity_array = snmpwalk_cache_oid($device, 'entPhysicalEntry', $entity_array, 'ENTITY-MIB:CISCO-ENTITY-VENDORTYPE-OID-MIB');
if (! empty($entity_array)) {
echo ' entAliasMappingIdentifier';
$entity_array = snmpwalk_cache_twopart_oid($device, 'entAliasMappingIdentifier', $entity_array, 'ENTITY-MIB:IF-MIB');
}
}
if ($device['os'] == 'vrp') {
echo ' hwEntityBoardType';
$entity_array = snmpwalk_cache_oid($device, 'hwEntityBoardType', $entity_array, 'ENTITY-MIB:HUAWEI-ENTITY-EXTENT-MIB');
echo ' hwEntityBomEnDesc';
$entity_array = snmpwalk_cache_oid($device, 'hwEntityBomEnDesc', $entity_array, 'ENTITY-MIB:HUAWEI-ENTITY-EXTENT-MIB');
}
if ($device['os'] == 'saf-cfm') {
$entity_array = [];
echo ' saf-cfmAnatomy';
$oid = '.1.3.6.1.4.1.7571.100.1.1.2.22';
$device_array = snmpwalk_cache_oid($device, $oid, [], 'SAF-MPMUX-MIB')[0];
$entity_array[1] = [
'entPhysicalDescr' => $device_array['termProduct'],
'entPhysicalVendorType' => $device_array['termProduct'],
'entPhysicalContainedIn' => '0',
'entPhysicalClass' => 'chassis',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => 'Chassis',
'entPhysicalSerialNum' => $device_array['serialNumber'],
'entPhysicalMfgName' => 'SAF',
'entPhysicalModelName' => $device_array['serialNumber'],
'entPhysicalIsFRU' => 'true',
];
foreach ([1 => 'rf1Version', 2 => 'rf2Version'] as $index => $item) {
$entity_array[] = [
'entPhysicalDescr' => $device_array[$item],
'entPhysicalVendorType' => 'radio',
'entPhysicalContainedIn' => 1,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => $index,
'entPhysicalName' => "Radio $index",
'entPhysicalIsFRU' => 'true',
];
}
if ($device_array['termProduct'] == 'SAF CFM-M4P-MUX') {
foreach (range(1, 4) as $index) {
$entity_array[] = [
'entPhysicalDescr' => 'Module Container',
'entPhysicalVendorType' => 'containerSlot',
'entPhysicalContainedIn' => 1,
'entPhysicalClass' => 'container',
'entPhysicalParentRelPos' => $index + 2,
'entPhysicalName' => "Slot $index",
'entPhysicalIsFRU' => 'false',
];
}
foreach ([1 => 'm1Description', 2 => 'm2Description', 3 => 'm3Description', 4 => 'm4Description'] as $index => $item) {
if (! Str::contains($device_array[$item], 'N/A')) {
$entity_array[] = [
'entPhysicalDescr' => $device_array[$item],
'entPhysicalVendorType' => 'module',
'entPhysicalContainedIn' => $index + 3,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => 1,
'entPhysicalName' => "Module $index",
'entPhysicalIsFRU' => 'true',
];
}
}
}
}
if ($device['os'] == 'ios' or $device['os'] == 'iosxe') {
$tables = [
['num_oid' => '.1.3.6.1.4.1.9.9.661.1.3.1.1.1.', 'oid' => 'c3gImsi', 'state_name' => 'c3gImsi', 'mib' => 'CISCO-WAN-3G-MIB', 'descr' => 'IMSI', 'entPhysicalIndex' => '9999'],
['num_oid' => '.1.3.6.1.4.1.9.9.661.1.3.1.1.2.', 'oid' => 'c3gImei', 'state_name' => 'c3gImei', 'mib' => 'CISCO-WAN-3G-MIB', 'descr' => 'IMEI', 'entPhysicalIndex' => '9999'],
['num_oid' => '.1.3.6.1.4.1.9.9.661.1.3.1.1.3.', 'oid' => 'c3gIccId', 'state_name' => 'c3gIccId', 'mib' => 'CISCO-WAN-3G-MIB', 'descr' => 'ICCID', 'entPhysicalIndex' => '9999'],
];
foreach ($tables as $tablevalue) {
$temp = snmpwalk_cache_multi_oid($device, $tablevalue['oid'], [], $tablevalue['mib']);
$cur_oid = $tablevalue['num_oid'];
$state_name = $tablevalue['state_name'];
foreach ($temp as $index => $entry) {
if ($state_name == 'c3gImei') {
$FRU = 'false';
$vendor_type = 'modem';
} else {
$FRU = 'true';
$vendor_type = 'sim';
}
$entity_array[] = [
'entPhysicalIndex' => $tablevalue['entPhysicalIndex'] . $index,
'entPhysicalDescr' => $entry[$state_name],
'entPhysicalVendorType' => $vendor_type,
'entPhysicalContainedIn' => $index,
'entPhysicalClass' => 'module',
'entPhysicalParentRelPos' => '-1',
'entPhysicalName' => $vendor_type,
'entPhysicalModelName' => $tablevalue['descr'],
'entPhysicalIsFRU' => $FRU,
];
}
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$ifIndex = 0;
if ($device['os'] == 'junos') {
// Juniper's MIB doesn't have the same objects as the Entity MIB, so some values
// are made up here.
$entPhysicalDescr = $entry['jnxContentsDescr'];
$entPhysicalContainedIn = $entry['jnxContainersWithin'];
$entPhysicalClass = $entry['jnxBoxClass'];
$entPhysicalName = $entry['jnxOperatingDescr'];
$entPhysicalSerialNum = $entry['jnxContentsSerialNo'];
$entPhysicalModelName = $entry['jnxContentsPartNo'];
$entPhysicalMfgName = 'Juniper';
$entPhysicalVendorType = 'Juniper';
$entPhysicalParentRelPos = -1;
$entPhysicalHardwareRev = $entry['jnxContentsRevision'];
$entPhysicalFirmwareRev = $entry['entPhysicalFirmwareRev'];
$entPhysicalSoftwareRev = $entry['entPhysicalSoftwareRev'];
$entPhysicalIsFRU = $entry['jnxFruType'];
$entPhysicalAlias = $entry['entPhysicalAlias'];
$entPhysicalAssetID = $entry['entPhysicalAssetID'];
// fix for issue 1865, $entPhysicalIndex, as it contains a quad dotted number on newer Junipers
// using str_replace to remove all dots should fix this even if it changes in future
$entPhysicalIndex = str_replace('.', '', $entPhysicalIndex);
} elseif ($device['os'] == 'aruba-instant') {
$entPhysicalDescr = $entry['aiAPMACAddress'];
$entPhysicalClass = '';
$entPhysicalContainedIn = 1;
$entPhysicalSerialNum = $entry['aiAPSerialNum'];
$entPhysicalModelName = $entry['aiAPModel'];
$entPhysicalMfgName = 'Aruba';
$entPhysicalVendorType = 'Aruba';
$entPhysicalParentRelPos = -1;
$entPhysicalSoftwareRev = $device['version'];
$entPhysicalIndex = $instant_index;
if ($entry['aiAPIPAddress'] == $ai_ig_data['aiMasterIPAddress.0']) {
$entPhysicalName = sprintf('%s %s Cluster Master', $entry['aiAPName'], $entry['aiAPIPAddress']);
} else {
$entPhysicalName = sprintf('%s %s Cluster Member', $entry['aiAPName'], $entry['aiAPIPAddress']);
}
$instant_index += 1;
} elseif ($device['os'] == 'timos') {
$entPhysicalDescr = $entry['tmnxCardTypeDescription'];
$entPhysicalContainedIn = $entry['tmnxHwContainedIn'];
$entPhysicalClass = $entry['tmnxHwClass'];
$entPhysicalName = $entry['tmnxCardTypeName'];
$entPhysicalSerialNum = $entry['tmnxHwSerialNumber'];
$entPhysicalModelName = $entry['tmnxHwMfgBoardNumber'];
$entPhysicalMfgName = $entry['tmnxHwMfgBoardNumber'];
$entPhysicalVendorType = $entry['tmnxCardTypeName'];
$entPhysicalParentRelPos = $entry['tmnxHwParentRelPos'];
$entPhysicalHardwareRev = '1.0';
$entPhysicalFirmwareRev = $entry['tmnxHwBootCodeVersion'];
$entPhysicalSoftwareRev = $entry['tmnxHwBootCodeVersion'];
$entPhysicalIsFRU = $entry['tmnxHwIsFRU'];
$entPhysicalAlias = $entry['tmnxHwAlias'];
$entPhysicalAssetID = $entry['tmnxHwAssetID'];
$entPhysicalIndex = str_replace('.', '', $entPhysicalIndex);
} elseif ($device['os'] == 'vrp') {
//Add some details collected in the VRP Entity Mib
$entPhysicalDescr = $entry['hwEntityBomEnDesc'];
$entPhysicalContainedIn = $entry['entPhysicalContainedIn'];
$entPhysicalClass = $entry['entPhysicalClass'];
$entPhysicalName = $entry['entPhysicalName'];
$entPhysicalSerialNum = $entry['entPhysicalSerialNum'];
$entPhysicalModelName = $entry['hwEntityBoardType'];
$entPhysicalMfgName = $entry['entPhysicalMfgName'];
$entPhysicalVendorType = $entry['entPhysicalVendorType'];
$entPhysicalParentRelPos = $entry['entPhysicalParentRelPos'];
$entPhysicalHardwareRev = $entry['entPhysicalHardwareRev'];
$entPhysicalFirmwareRev = $entry['entPhysicalFirmwareRev'];
$entPhysicalSoftwareRev = $entry['entPhysicalSoftwareRev'];
$entPhysicalIsFRU = $entry['entPhysicalIsFRU'];
$entPhysicalAlias = $entry['entPhysicalAlias'];
$entPhysicalAssetID = $entry['entPhysicalAssetID'];
//VRP devices seems to use LogicalEntity '1' instead of '0' like the default code checks.
//Standard code is still run after anyway.
if (isset($entry['1']['entAliasMappingIdentifier'])) {
$ifIndex = preg_replace('/ifIndex\.(\d+).*/', '$1', $entry['1']['entAliasMappingIdentifier']);
}
} else {
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
}//end if
if ($device['os'] == 'dnos' && $entPhysicalSerialNum == 'NA' && preg_match('/Unit/', $entPhysicalName)) {
$entPhysicalSerialNum = snmp_get($device, '.1.3.6.1.4.1.674.10895.3000.1.2.100.8.1.4.' . preg_replace('/Unit (\d+)/', '$1', $entPhysicalName), '-Oqv', '');
}
if (isset($entity_array[$entPhysicalIndex]['0']['entAliasMappingIdentifier'])) {
$ifIndex = $entity_array[$entPhysicalIndex]['0']['entAliasMappingIdentifier'];
if (! strpos($ifIndex, 'fIndex') || $ifIndex == '') {
unset($ifIndex);
} else {
$ifIndex_array = explode('.', $ifIndex);
$ifIndex = $ifIndex_array[1];
unset($ifIndex_array);
}
}
// List of real names for cisco entities
$entPhysicalVendorTypes = [
'cevC7xxxIo1feTxIsl' => 'C7200-IO-FE-MII',
'cevChassis7140Dualfe' => 'C7140-2FE',
'cevChassis7204' => 'C7204',
'cevChassis7204Vxr' => 'C7204VXR',
'cevChassis7206' => 'C7206',
'cevChassis7206Vxr' => 'C7206VXR',
'cevCpu7200Npe200' => 'NPE-200',
'cevCpu7200Npe225' => 'NPE-225',
'cevCpu7200Npe300' => 'NPE-300',
'cevCpu7200Npe400' => 'NPE-400',
'cevCpu7200Npeg1' => 'NPE-G1',
'cevCpu7200Npeg2' => 'NPE-G2',
'cevPa1feTxIsl' => 'PA-FE-TX-ISL',
'cevPa2feTxI82543' => 'PA-2FE-TX',
'cevPa8e' => 'PA-8E',
'cevPaA8tX21' => 'PA-8T-X21',
'cevMGBIC1000BaseLX' => '1000BaseLX GBIC',
'cevPort10GigBaseLR' => '10GigBaseLR',
];
if (! empty($entPhysicalVendorTypes[$entPhysicalVendorType]) && ! $entPhysicalModelName) {
$entPhysicalModelName = $entPhysicalVendorTypes[$entPhysicalVendorType];
}
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
}//end foreach
echo "\n";
unset(
$update_data,
$insert_data,
$entry,
$entity_array
);

View File

@ -1,85 +0,0 @@
<?php
$chassis_array = snmpwalk_cache_multi_oid($device, 'systeminformation', $chassis_array, 'proware-SNMP-MIB');
$id = 1;
foreach ($chassis_array as $chassis_contents) {
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => $id++,
'entPhysicalDescr' => "Eurostore {$chassis_contents['siModel']}",
'entPhysicalClass' => 'chassis',
'entPhysicalModelName' => $chassis_contents['siModel'],
'entPhysicalSerialNum' => $chassis_contents['siSerial'],
'entPhysicalContainedIn' => '0',
'entPhysicalVendorType' => $chassis_contents['siVendor'],
'entPhysicalHardwareRev' => $chassis_contents['siBootVer'],
'entPhysicalFirmwareRev' => $chassis_contents['siFirmVer'],
];
}
for ($i = 1; $i <= 8; $i++) {
$backplane_array = snmpwalk_cache_multi_oid($device, 'hwEnclosure' . $i, $backplane_array, 'proware-SNMP-MIB');
foreach ($backplane_array as $backplane_contents) {
if ($backplane_contents['hwEnclosure0' . $i . 'Installed'] != 2) {
continue;
}
$backplane_id = $id++;
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => $backplane_id,
'entPhysicalDescr' => $backplane_contents['hwEnclosure0' . $i . 'Description'],
'entPhysicalClass' => 'backplane',
'entPhysicalContainedIn' => '1',
'entPhysicalParentRelPos' => $i,
];
$hdd_array = snmpwalk_cache_multi_oid($device, 'hddEnclosure0' . $i . 'InfoTable', $hdd_array, 'proware-SNMP-MIB');
var_dump($hdd_array);
foreach ($hdd_array as $hdd_contents) {
// Discover the chassis
$entity_array[] = [
'entPhysicalContainedIn' => $backplane_id,
'entPhysicalIndex' => $id++,
'entPhysicalDescr' => $hdd_contents['hddEnclosure0' . $i . 'Desc'],
'entPhysicalClass' => 'container',
'entPhysicalParentRelPos' => $hdd_contents['hddEnclosure0' . $i . 'Slots'],
'entPhysicalName' => $hdd_contents['hddEnclosure0' . $i . 'Name'],
'entPhysicalSerialNum' => $hdd_contents['hddEnclosure0' . $i . 'Serial'],
'entPhysicalFirmwareRev' => $hdd_contents['hddEnclosure0' . $i . 'FrimVer'],
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $hdd_contents['hddEnclosure0' . $i . 'State'],
];
}
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '';
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
$ifIndex = array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : '';
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
}//end foreach
echo "\n";
unset(
$update_data,
$insert_data,
$entry,
$entity_array
);

View File

@ -1,114 +0,0 @@
<?php
$controller_array = snmpwalk_cache_multi_oid($device, 'adapterInfoTable', [], 'LSI-MegaRAID-SAS-MIB');
$enclosures = snmpwalk_cache_multi_oid($device, 'enclosureTable', [], 'LSI-MegaRAID-SAS-MIB');
$drives = snmpwalk_cache_multi_oid($device, 'physicalDriveTable', [], 'LSI-MegaRAID-SAS-MIB');
$bbus = snmpwalk_cache_multi_oid($device, 'bbuTable', [], 'LSI-MegaRAID-SAS-MIB');
$entity_array = [];
foreach ($controller_array as $controller) {
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => 200 + $controller['adapterID-AIT'],
'entPhysicalParentRelPos' => $controller['adapterID-AIT'],
'entPhysicalDescr' => '/C' . $controller['adapterID-AIT'],
'entPhysicalClass' => 'port',
'entPhysicalModelName' => $controller['productName'],
'entPhysicalSerialNum' => $controller['serialNo'],
'entPhysicalContainedIn' => '0',
'entPhysicalVendorType' => $controller['adapterVendorID'],
'entPhysicalFirmwareRev' => $controller['firmwareVersion'],
];
}
foreach ($bbus as $bbu) {
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => 1000 + $bbu['pdIndex'],
'entPhysicalClass' => 'charge',
'entPhysicalModelName' => $bbu['deviceName'],
'entPhysicalSerialNum' => $bbu['serialNumber'],
'entPhysicalContainedIn' => 200 + $bbu['adpID'],
'entPhysicalIsFRU' => 'true',
'entPhysicalFirmwareRev' => $bbu['firmwareStatus'],
];
}
foreach ($enclosures as $enclosure) {
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => 210 + $enclosure['deviceId'],
'entPhysicalMfgName' => $enclosure['slotCount'],
'entPhysicalParentRelPos' => $enclosure['deviceId'],
'entPhysicalDescr' => '/C' . $enclosure['adapterID-CDIT'] . '/E' . $enclosure['deviceId'],
'entPhysicalClass' => 'chassis',
'entPhysicalModelName' => $enclosure['productID'],
'entPhysicalSerialNum' => $enclosure['enclSerialNumber'],
'entPhysicalContainedIn' => 200 + $enclosure['adapterID-CDIT'],
'entPhysicalVendorType' => $enclosure['adapterVendorID'],
'entPhysicalFirmwareRev' => $enclosure['firmwareVersion'],
];
}
foreach ($drives as $drive) {
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => 500 + $drive['enclDeviceId'] * 100 + $drive['physDevID'],
'entPhysicalParentRelPos' => $drive['slotNumber'],
'entPhysicalDescr' => '/C' . $drive['adpID-PDT'] . '/E' . $drive['enclDeviceId'] . '/S' . $drive['slotNumber'],
'entPhysicalClass' => 'drive',
'entPhysicalModelName' => $drive['pdProductID'],
'entPhysicalSerialNum' => $drive['pdSerialNumber'],
'entPhysicalContainedIn' => 210 + $drive['enclDeviceId'],
'entPhysicalIsFRU' => 'true',
'entPhysicalFirmwareRev' => $drive['pdFwversion'],
];
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '';
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
$ifIndex = array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : '';
discover_entity_physical($valid,
$device,
$entPhysicalIndex,
$entPhysicalDescr,
$entPhysicalClass,
$entPhysicalName,
$entPhysicalModelName,
$entPhysicalSerialNum,
$entPhysicalContainedIn,
$entPhysicalMfgName,
$entPhysicalParentRelPos,
$entPhysicalVendorType,
$entPhysicalHardwareRev,
$entPhysicalFirmwareRev,
$entPhysicalSoftwareRev,
$entPhysicalIsFRU,
$entPhysicalAlias,
$entPhysicalAssetID,
$ifIndex);
}//end foreach
echo "\n";
unset(
$update_data,
$insert_data,
$entry,
$entity_array
);

View File

@ -1,358 +0,0 @@
<?php
/*
* LibreNMS entity-physical module for the discovery of components in the MRV® OptiDriver® Optical Transport Platform
*
* Copyright (c) 2019 Martijn Schmidt <martijn.schmidt@gmail.com>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
echo "\nCaching OIDs:";
$entity_array = [];
echo ' MRV OptiDriver';
$chassis_array = snmpwalk_cache_multi_oid($device, 'nbsCmmcChassisTable', $chassis_array, 'NBS-CMMC-MIB');
$slot_array = snmpwalk_cache_multi_oid($device, 'nbsCmmcSlotTable', $slot_array, 'NBS-CMMC-MIB');
$port_array = snmpwalk_cache_multi_oid($device, 'nbsCmmcPortTable', $port_array, 'NBS-CMMC-MIB');
// We use the last digit in the OID to define an entPhysicalIndex for Power Supply state sensors
$nbsCmmcChassisPSStatus_array = [
7 => 'nbsCmmcChassisPS1Status',
8 => 'nbsCmmcChassisPS2Status',
9 => 'nbsCmmcChassisPS3Status',
10 => 'nbsCmmcChassisPS4Status',
];
// We use the last digit in the OID to define an entPhysicalIndex for Fan state sensors
$nbsCmmcChassisFanStatus_array = [
11 => 'nbsCmmcChassisFan1Status',
12 => 'nbsCmmcChassisFan2Status',
13 => 'nbsCmmcChassisFan3Status',
14 => 'nbsCmmcChassisFan4Status',
36 => 'nbsCmmcChassisFan5Status',
37 => 'nbsCmmcChassisFan6Status',
38 => 'nbsCmmcChassisFan7Status',
39 => 'nbsCmmcChassisFan8Status',
];
// Define all the types of pluggable port form factors recognized by nbsCmmcPortType in NBS-CMMC-MIB,
// if nbsCmmcPortType returns a value that is not in this array, it should be a built-in port in the card.
$nbsCmmcPortType_array = [
125 => 'SFP',
147 => 'GBIC',
197 => 'XFP',
219 => 'QSFP+',
220 => 'CXP',
221 => 'CFP',
223 => 'QSFP28',
224 => 'CFP2',
];
$nbsCmmcPortSensor_array = [
30 => [
'objectType' => 'nbsCmmcPortTemperature',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Temperature',
],
31 => [
'objectType' => 'nbsCmmcPortTxPower',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Tx Power',
],
32 => [
'objectType' => 'nbsCmmcPortRxPower',
'skipValue' => '-2147483648',
'entPhysicalName' => 'Port Rx Power',
],
33 => [
'objectType' => 'nbsCmmcPortBiasAmps',
'skipValue' => '-1',
'entPhysicalName' => 'Port Tx Bias Current',
],
34 => [
'objectType' => 'nbsCmmcPortSupplyVolts',
'skipValue' => '-1',
'entPhysicalName' => 'Port Tx Supply Voltage',
],
38 => [
'objectType' => 'nbsCmmcPortDigitalDiags',
'skipValue' => '1',
'entPhysicalName' => 'Port Overall DigiDiags State',
],
];
foreach ($chassis_array as $nbsCmmcChassis => $chassis_contents) {
[$chassisHardwareRev, $chassisFirmwareRev] = explode(', ', $chassis_contents['nbsCmmcChassisHardwareRevision']);
// Discover the chassis
$entity_array[] = [
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . '00',
'entPhysicalDescr' => "MRV OptiDriver {$chassis_contents['nbsCmmcChassisModel']}",
'entPhysicalClass' => 'chassis',
'entPhysicalName' => "Chassis $nbsCmmcChassis",
'entPhysicalModelName' => $chassis_contents['nbsCmmcChassisModel'],
'entPhysicalSerialNum' => $chassis_contents['nbsCmmcChassisSerialNum'],
'entPhysicalContainedIn' => '0',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $chassis_contents['nbsCmmcChassisIndex'],
'entPhysicalVendorType' => $chassis_contents['nbsCmmcChassisType'],
'entPhysicalHardwareRev' => $chassisHardwareRev,
'entPhysicalFirmwareRev' => $chassisFirmwareRev,
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $chassis_contents['nbsCmmcChassisName'],
];
// Discover the chassis temperature sensor
if (isset($chassis_contents['nbsCmmcChassisTemperature']) && $chassis_contents['nbsCmmcChassisTemperature'] != '-2147483648') {
$entity_array[] = [
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}15",
'entPhysicalDescr' => 'Chassis Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Chassis Temperature',
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
// Discover the chassis power budget status sensor
if (isset($chassis_contents['nbsCmmcChassisPowerStatus']) && $chassis_contents['nbsCmmcChassisPowerStatus'] != 'notSupported') {
$entity_array[] = [
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}51",
'entPhysicalDescr' => 'Chassis Power Budget Status Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Chassis Power Budget Status',
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
// Discover the chassis power supplies and state sensors
foreach ($nbsCmmcChassisPSStatus_array as $index => $item) {
if (isset($chassis_contents[$item]) && $chassis_contents[$item] != 'notSupported') {
$position = substr($item, 16, 1);
$entity_array[] = [
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $position,
'entPhysicalDescr' => 'Power Supply',
'entPhysicalClass' => 'powerSupply',
'entPhysicalName' => "Power Supply $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $position,
'entPhysicalIsFRU' => 'false',
];
$entity_array[] = [
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $index,
'entPhysicalDescr' => 'Power Supply State',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => "Power Supply $position",
'entPhysicalContainedIn' => $chassis_contents['nbsCmmcChassisIfIndex'] . $position,
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'true',
];
}
}
// Discover the chassis fan trays and state sensors
foreach ($nbsCmmcChassisFanStatus_array as $index => $item) {
if (isset($chassis_contents[$item]) && $chassis_contents[$item] != 'notSupported') {
$position = substr($item, 17, 1);
$entity_array[] = [
'entPhysicalIndex' => "{$chassis_contents['nbsCmmcChassisIfIndex']}0$position",
'entPhysicalDescr' => 'Fan Tray',
'entPhysicalClass' => 'fan',
'entPhysicalName' => "Fan Tray $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $position,
'entPhysicalIsFRU' => 'false',
];
$entity_array[] = [
'entPhysicalIndex' => $chassis_contents['nbsCmmcChassisIfIndex'] . $index,
'entPhysicalDescr' => 'Fan State',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => "Fan $position",
'entPhysicalContainedIn' => "{$chassis_contents['nbsCmmcChassisIfIndex']}0$position",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'true',
];
}
}
}
foreach ($slot_array as $nbsCmmcSlot => $slot_contents) {
// Obtain the nbsCmmcChassisIfIndex of the chassis which houses this slot
$nbsCmmcChassisIfIndex = $chassis_array[$slot_contents['nbsCmmcSlotChassisIndex']]['nbsCmmcChassisIfIndex'];
// Calculate the nbsCmmcSlotIfIndex since an empty slot has nbsCmmcSlotIfIndex == -1
$nbsCmmcSlotIfIndex = $nbsCmmcChassisIfIndex + $slot_contents['nbsCmmcSlotIndex'] * 1000;
// Discover the slot
$entity_array[] = [
'entPhysicalIndex' => $nbsCmmcSlotIfIndex . '00',
'entPhysicalDescr' => 'MRV OptiDriver Slot',
'entPhysicalClass' => 'container',
'entPhysicalName' => "Card Slot $nbsCmmcSlot",
'entPhysicalContainedIn' => $nbsCmmcChassisIfIndex . '00',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $slot_contents['nbsCmmcSlotIndex'],
'entPhysicalIsFRU' => 'false',
];
if (isset($slot_contents['nbsCmmcSlotIfIndex']) && $slot_contents['nbsCmmcSlotIfIndex'] != '-1') {
[$cardHardwareRev, $cardFirmwareRev, $cardOtherRev] = explode(', ', $slot_contents['nbsCmmcSlotHardwareRevision']);
// Discover the card
$entity_array[] = [
'entPhysicalIndex' => $slot_contents['nbsCmmcSlotIfIndex'] . '01',
'entPhysicalDescr' => 'MRV ' . ucfirst($slot_contents['nbsCmmcSlotOperationType']) . ' Card',
'entPhysicalClass' => 'module',
'entPhysicalName' => "Card $nbsCmmcSlot",
'entPhysicalModelName' => $slot_contents['nbsCmmcSlotModel'],
'entPhysicalSerialNum' => $slot_contents['nbsCmmcSlotSerialNum'],
'entPhysicalContainedIn' => "{$slot_contents['nbsCmmcSlotIfIndex']}00",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalVendorType' => $slot_contents['nbsCmmcSlotType'],
'entPhysicalHardwareRev' => "$cardHardwareRev, $cardOtherRev",
'entPhysicalFirmwareRev' => $cardFirmwareRev,
'entPhysicalIsFRU' => 'true',
'entPhysicalAlias' => $slot_contents['nbsCmmcSlotName'],
];
// Discover the module temperature sensor
if (isset($slot_contents['nbsCmmcSlotTemperature']) && $slot_contents['nbsCmmcSlotTemperature'] != '-2147483648') {
$entity_array[] = [
'entPhysicalIndex' => "{$slot_contents['nbsCmmcSlotIfIndex']}34",
'entPhysicalDescr' => 'Card Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Card Temperature',
'entPhysicalContainedIn' => "{$slot_contents['nbsCmmcSlotIfIndex']}01",
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
}
}
foreach ($port_array as $nbsCmmcPort => $port_contents) {
// Obtain the nbsCmmcSlotIfIndex of the slot which houses this port
$nbsCmmcSlot = $port_contents['nbsCmmcPortChassisIndex'] . '.' . $port_contents['nbsCmmcPortSlotIndex'];
$nbsCmmcSlotIfIndex = $slot_array[$nbsCmmcSlot]['nbsCmmcSlotIfIndex'];
// We only need to discover a transceiver container if the port type is pluggable
if (array_key_exists($port_contents['nbsCmmcPortType'], $nbsCmmcPortType_array)) {
$nbsCmmcPortType = $nbsCmmcPortType_array[$port_contents['nbsCmmcPortType']];
// Discover the transceiver container
$entity_array[] = [
'entPhysicalIndex' => $port_contents['nbsCmmcPortIfIndex'] . '00',
'entPhysicalDescr' => "$nbsCmmcPortType Transceiver Container",
'entPhysicalClass' => 'container',
'entPhysicalName' => "Transceiver Container $nbsCmmcPort",
'entPhysicalContainedIn' => $nbsCmmcSlotIfIndex . '01',
'entPhysicalMfgName' => 'MRV Communications',
'entPhysicalParentRelPos' => $port_contents['nbsCmmcPortIndex'],
'entPhysicalIsFRU' => 'false',
];
// Set a few variables for the port discovery
$nbsCmmcPortContainedIn = $port_contents['nbsCmmcPortIfIndex'] . '00';
$nbsCmmcPortVendorInfo = $port_contents['nbsCmmcPortVendorInfo'];
$nbsCmmcPortIsFRU = 'true';
$nbsCmmcPortParentRelPos = '-1';
// If one runs a command like "show 1.1.1 | grep Part" on a port with a genuine pluggable transceiver,
// CLI output like "Part #/Rev: SFP-10GDWZR-22/0001" indicates / is considered to be the string delimiter.
// However, non-genuine pluggable transceivers may not adhere to this format.
[$nbsCmmcPortModelName, $nbsCmmcPortHardwareRev] = explode('/', $port_contents['nbsCmmcPortPartRev']);
} else {
$nbsCmmcPortType = 'Built-in';
// Set a few variables for the port discovery
$nbsCmmcPortContainedIn = $nbsCmmcSlotIfIndex . '01';
$nbsCmmcPortVendorInfo = 'MRV Communications';
$nbsCmmcPortIsFRU = 'false';
$nbsCmmcPortParentRelPos = $port_contents['nbsCmmcPortIndex'];
$nbsCmmcPortModelName = '';
$nbsCmmcPortHardwareRev = '';
}
if (isset($port_contents['nbsCmmcPortConnector']) && $port_contents['nbsCmmcPortConnector'] != 'removed') {
// Determine the correct entPhysicalDescr for the port
if (isset($port_contents['nbsCmmcPortWavelengthX']) && $port_contents['nbsCmmcPortWavelengthX'] != 'N/A') {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortWavelengthX']}nm Tx Signal, {$port_contents['nbsCmmcPortConnector']} Connector";
} elseif (! empty($port_contents['nbsCmmcPortDescription'])) {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortDescription']}, {$port_contents['nbsCmmcPortConnector']} Connector";
} else {
$portEntPhysicalDescr = "$nbsCmmcPortType Port, {$port_contents['nbsCmmcPortConnector']} Connector";
}
// Discover the port
$entity_array[] = [
'entPhysicalIndex' => "{$port_contents['nbsCmmcPortIfIndex']}01",
'entPhysicalDescr' => $portEntPhysicalDescr,
'entPhysicalClass' => 'port',
'entPhysicalName' => "Port $nbsCmmcPort",
'entPhysicalModelName' => $nbsCmmcPortModelName,
'entPhysicalSerialNum' => $port_contents['nbsCmmcPortSerialNumber'],
'entPhysicalContainedIn' => $nbsCmmcPortContainedIn,
'entPhysicalMfgName' => $nbsCmmcPortVendorInfo,
'entPhysicalParentRelPos' => $nbsCmmcPortParentRelPos,
'entPhysicalVendorType' => $port_contents['nbsCmmcPortType'],
'entPhysicalHardwareRev' => $nbsCmmcPortHardwareRev,
'entPhysicalIsFRU' => $nbsCmmcPortIsFRU,
'entPhysicalAlias' => $port_contents['nbsCmmcPortName'],
'ifIndex' => $port_contents['nbsCmmcPortIfIndex'],
];
// Discover the port sensors
foreach ($nbsCmmcPortSensor_array as $index => $nbsCmmcPortSensor) {
if (isset($port_contents[$nbsCmmcPortSensor['objectType']]) && $port_contents[$nbsCmmcPortSensor['objectType']] != $nbsCmmcPortSensor['skipValue']) {
$entity_array[] = [
'entPhysicalIndex' => $port_contents['nbsCmmcPortIfIndex'] . $index,
'entPhysicalDescr' => "{$nbsCmmcPortSensor['entPhysicalName']} Sensor",
'entPhysicalClass' => 'sensor',
'entPhysicalName' => $nbsCmmcPortSensor['entPhysicalName'],
'entPhysicalContainedIn' => "{$port_contents['nbsCmmcPortIfIndex']}01",
'entPhysicalMfgName' => $nbsCmmcPortVendorInfo,
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
}
}
}
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '';
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
$ifIndex = array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : '';
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
}//end foreach
echo "\n";
unset(
$update_data,
$insert_data,
$entry,
$entity_array
);

View File

@ -1,135 +0,0 @@
<?php
/*
* LibreNMS entity-physical module for discovery of components in a Schleifenbauer SPDM databus ring
*
* Copyright (c) 2018 Martijn Schmidt <martijn.schmidt@gmail.com>
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
// Let's gather some data about the databus ring..
$sdbMgmtStsDevices = snmp_get($device, '.1.3.6.1.4.1.31034.12.1.1.1.1.1.0', '-Oqv', '');
$sdbMgmtDatabusRingDescr = "Schleifenbauer databus ring ($sdbMgmtStsDevices units)";
// Let's gather some data about the units..
$sdbMgmtCtrlDevUnitAddressArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.1.2.4.1.2', 1));
$sdbDevIdNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.10', 1));
$sdbDevIdLocationArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.11', 1));
$sdbDevIdVanityTagArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.12', 1));
$sdbDevIdSerialNumberArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.6', 1));
$sdbDevIdFirmwareVersionArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.2', 1));
$sdbDevIdProductIdArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.5', 1));
$sdbDevIdSalesOrderNumberArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.1.1.1.4', 1));
$sdbDevCfMaximumLoadArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.6', 1));
$sdbDevCfOutletsTotalArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.2', 1));
$sdbDevCfSensorsArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.2.1.1.5', 1));
// And let's gather some data about the inputs, outputs, and sensors on those units..
$sdbDevInNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.6.1.1.13', 2));
$sdbDevSnsTypeArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.8.2.1.2', 2));
$sdbDevSnsNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.8.2.1.4', 2));
// In a large databus ring, snmpwalking this OID may crash the discovery half way through.
// So, we only discover and enumerate outlets if this is a stand-alone, non-databus unit.
if ($sdbMgmtStsDevices == 1) {
$sdbDevOutNameArray = current(snmpwalk_array_num($device, '.1.3.6.1.4.1.31034.12.1.1.2.7.1.1.2', 2));
}
// Only spawn databus ring entities when the device is not stand-alone.
if ($sdbMgmtStsDevices > 1) {
$entPhysicalContainedIn = 1;
discover_entity_physical($valid, $device, 1, $sdbMgmtDatabusRingDescr, 'stack', 'Schleifenbauer Databus', null, null, '0', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, 2, 'Databus Ring State Sensor (0 = open, 1 = closed)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, 3, 'Duplicate Device Address Sensor (#)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, 4, 'New Device Detection Sensor (#)', 'sensor', 'State Sensor', null, null, '1', 'Schleifenbauer Products B.V.', -1, null, null, null, null, 'false', null, null, null);
} else {
$entPhysicalContainedIn = 0;
}
foreach ($sdbMgmtCtrlDevUnitAddressArray as $sdbMgmtCtrlDevUnitAddress => $sdbDevIdIndex) {
$entPhysicalDescr = 'Schleifenbauer ' . count($sdbDevInNameArray[$sdbDevIdIndex]) . '-phase, ' . $sdbDevCfOutletsTotalArray[$sdbDevIdIndex] . '-outlet PDU';
$entPhysicalName = 'Schleifenbauer PDU - SPDM v' . $sdbDevIdFirmwareVersionArray[$sdbDevIdIndex];
$entPhysicalHardwareRev = 'SO# ' . $sdbDevIdSalesOrderNumberArray[$sdbDevIdIndex];
// We are determining the $entPhysicalAlias for this PDU based on a few optional user-customizable fields.
$entPhysicalAlias = null;
if ($sdbDevIdNameArray[$sdbDevIdIndex] != '') {
$entPhysicalAlias = $sdbDevIdLocationArray[$sdbDevIdIndex] != '' ? $sdbDevIdNameArray[$sdbDevIdIndex] . ' @ ' . $sdbDevIdLocationArray[$sdbDevIdIndex] : $sdbDevIdNameArray[$sdbDevIdIndex];
} // end of $entPhysicalAlias if-sequence
discover_entity_physical($valid, $device, $sdbMgmtCtrlDevUnitAddress * 10, $entPhysicalDescr, 'chassis', $entPhysicalName, $sdbDevIdProductIdArray[$sdbDevIdIndex], $sdbDevIdSerialNumberArray[$sdbDevIdIndex], $entPhysicalContainedIn, 'Schleifenbauer Products B.V.', $sdbMgmtCtrlDevUnitAddress, null, $entPhysicalHardwareRev, null, $sdbDevIdFirmwareVersionArray[$sdbDevIdIndex], 'true', $entPhysicalAlias, $sdbDevIdVanityTagArray[$sdbDevIdIndex], null);
// Since a fully numerical entPhysicalIndex is only available for the actual PDU, we are calculating a fake entPhysicalIndex to avoid namespace collision. We have an Integer32 of space per IETF RFC6933 anyway.
// The maximum sdbMgmtCtrlDevUnitAddress is 255, but multiplying by 1 million for namespace size. Add +100k for every top-level index below a PDU.
foreach ($sdbDevInNameArray[$sdbDevIdIndex] as $sdbDevInIndex => $sdbDevInName) {
$inputIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 100000 + $sdbDevInIndex * 1000; // +100k for the first top-level namespace. Add 1000 * sdbDevInIndex which goes up to 48. Leave 3 variable digits at the end.
$entPhysicalDescr = $sdbDevCfMaximumLoadArray[$sdbDevIdIndex] . 'A input phase';
$entPhysicalName = 'Input L' . $sdbDevInIndex;
discover_entity_physical($valid, $device, $inputIndex, $entPhysicalDescr, 'powerSupply', $entPhysicalName, null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', $sdbDevInIndex, null, null, null, null, 'false', $sdbDevInName, null, null);
// Enumerate sensors under the Input
discover_entity_physical($valid, $device, $inputIndex + 110, $entPhysicalName . ' voltage sensor (V)', 'sensor', 'Voltage Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 1, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $inputIndex + 120, $entPhysicalName . ' RMS current sensor (A)', 'sensor', 'Current Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 2, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $inputIndex + 130, $entPhysicalName . ' apparent power sensor (W)', 'sensor', 'Power Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 3, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $inputIndex + 140, $entPhysicalName . ' lifetime power consumed sensor (kWh)', 'sensor', 'Power Consumed Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 4, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $inputIndex + 150, $entPhysicalName . ' power factor sensor (ratio)', 'sensor', 'Power Factor Sensor', null, null, $inputIndex, 'Schleifenbauer Products B.V.', 5, null, null, null, null, 'false', null, null, null);
} // end Input discovery foreach sdbDevInNameArray
// Only enumerate outlets if this is a stand-alone, non-databus unit.
if ($sdbMgmtStsDevices == 1) {
// Check if we can find any outlets on this PDU..
if ($sdbDevOutNameArray[$sdbDevIdIndex] != '') {
// We found outlets, so let's spawn an Outlet Backplane.
$outletBackplaneIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 200000; // +200k for the second top-level index namespace.
$entPhysicalDescr = $sdbDevCfOutletsTotalArray[$sdbDevIdIndex] . ' outlets';
discover_entity_physical($valid, $device, $outletBackplaneIndex, $entPhysicalDescr, 'backplane', 'Outlets', null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', '-1', null, null, null, null, 'false', null, null, null);
foreach ($sdbDevOutNameArray[$sdbDevIdIndex] as $sdbDevOutIndex => $sdbDevOutName) {
$outletIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 200000 + $sdbDevOutIndex * 1000; // +200k for the second top-level index namespace. Add 1000 * sdbDevOutIndex which goes up to 48. Leave 3 variable digits at the end.
$entPhysicalName = 'Outlet #' . $sdbDevOutIndex;
discover_entity_physical($valid, $device, $outletIndex, 'PDU outlet', 'powerSupply', $entPhysicalName, null, null, $outletBackplaneIndex, 'Schleifenbauer Products B.V.', $sdbDevOutIndex, null, null, null, null, 'false', $sdbDevOutName, null, null);
// Enumerate sensors under the Outlet
discover_entity_physical($valid, $device, $outletIndex + 110, $entPhysicalName . ' voltage sensor (V)', 'sensor', 'Voltage Sensor', null, null, $outletIndex, 'Schleifenbauer Products B.V.', 1, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $outletIndex + 120, $entPhysicalName . ' RMS current sensor (A)', 'sensor', 'Current Sensor', null, null, $outletIndex, 'Schleifenbauer Products B.V.', 2, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $outletIndex + 130, $entPhysicalName . ' apparent power sensor (W)', 'sensor', 'Power Sensor', null, null, $outletIndex, 'Schleifenbauer Products B.V.', 3, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $outletIndex + 140, $entPhysicalName . ' lifetime power consumed sensor (kWh)', 'sensor', 'Power Consumed Sensor', null, null, $outletIndex, 'Schleifenbauer Products B.V.', 4, null, null, null, null, 'false', null, null, null);
discover_entity_physical($valid, $device, $outletIndex + 150, $entPhysicalName . ' power factor sensor (ratio)', 'sensor', 'Power Factor Sensor', null, null, $outletIndex, 'Schleifenbauer Products B.V.', 5, null, null, null, null, 'false', null, null, null);
} // end Outlet discovery foreach sdbDevOutNameArray
} // end of Outlet Backplane detection
}
// Check if we can find any external sensor connections on this PDU..
if ($sdbDevSnsTypeArray[$sdbDevIdIndex] != '') {
// We found at least one sensor connection, so let's spawn a Sensor Container.
$sensorContainerIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 300000; // +300k for the third top-level index namespace.
$entPhysicalDescr = $sdbDevCfSensorsArray[$sdbDevIdIndex] == 1 ? '1 external sensor' : $sdbDevCfSensorsArray[$sdbDevIdIndex] . ' external sensors';
discover_entity_physical($valid, $device, $sensorContainerIndex, $entPhysicalDescr, 'container', 'Sensor Container', null, null, $sdbMgmtCtrlDevUnitAddress * 10, 'Schleifenbauer Products B.V.', '-1', null, null, null, null, 'false', null, null, null);
foreach ($sdbDevSnsNameArray[$sdbDevIdIndex] as $sdbDevSnsIndex => $sdbDevSnsName) {
$sensorIndex = $sdbMgmtCtrlDevUnitAddress * 1000000 + 300000 + $sdbDevSnsIndex * 1000; // +300k for the third top-level index namespace. Add 1000 * sdbDevSnsIndex which goes up to 16. Leave 3 variable digits at the end.
$entPhysicalName = 'External Sensor #' . $sdbDevSnsIndex;
switch ($sdbDevSnsTypeArray[$sdbDevIdIndex][$sdbDevSnsIndex]) {
case 'T':
$entPhysicalDescr = 'Temperature sensor (°C)';
break;
case 'H':
$entPhysicalDescr = 'Humidity sensor (%)';
break;
case 'I':
$entPhysicalDescr = 'Dry switch contact (binary)';
break;
}
discover_entity_physical($valid, $device, $sensorIndex, $entPhysicalDescr, 'sensor', $entPhysicalName, null, null, $sensorContainerIndex, 'Schleifenbauer Products B.V.', $sdbDevSnsIndex, null, null, null, null, 'true', $sdbDevSnsName, null, null);
} // end external Sensor discovery foreach sdbDevSnsNameArray
} // end of external Sensor Container detection
} // end PDU discovery foreach sdbDevIdNameArray

View File

@ -1,148 +0,0 @@
<?php
/*
* LibreNMS entity-physical module for the discovery of components in the MRV® OptiDriver® Optical Transport Platform
*
* Copyright (c) 2020 Opalivan
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation, either version 3 of the License, or (at your
* option) any later version. Please see LICENSE.txt at the top level of
* the source code distribution for details.
*/
echo "\nCaching OIDs:";
$entity_array = [];
echo ' TAIT Infra 93';
$modules_array = snmpwalk_cache_multi_oid($device, 'TAIT-INFRA93SERIES-MIB::modules', [], 'TAIT-INFRA93SERIES-MIB');
d_echo($modules_array);
// Create a fake Chassis to host the modules we discover
$entity_array[] = [
'entPhysicalIndex' => '10',
'entPhysicalDescr' => 'Chassis',
'entPhysicalClass' => 'chassis',
'entPhysicalName' => 'Chassis',
'entPhysicalModelName' => 'Infra93',
'entPhysicalContainedIn' => '0',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalIsFRU' => 'false',
];
// Fill the different modules the "entPhysical" way to have a correct display.
// We suppose only one FrontPanel, PA, PMU and Reciter is returned. If more than one is,
// this code would need to be adapted with loops
if (isset($modules_array[0]) and isset($modules_array[0]['fpInfoProductCode'])) {
$entity_array[] = [
'entPhysicalIndex' => '11',
'entPhysicalDescr' => 'Front Panel',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Front Panel',
'entPhysicalModelName' => $modules_array[0]['fpInfoProductCode'],
'entPhysicalSerialNum' => $modules_array[0]['fpInfoSerialNumber'],
'entPhysicalContainedIn' => '10',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules_array[0]['fpInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules_array[0]['fpInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
];
}
if (isset($modules_array[0]) and isset($modules_array[0]['rctInfoProductCode'])) {
$entity_array[] = [
'entPhysicalIndex' => '120',
'entPhysicalDescr' => 'Reciter',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Reciter',
'entPhysicalModelName' => $modules_array[0]['rctInfoProductCode'],
'entPhysicalSerialNum' => $modules_array[0]['rctInfoSerialNumber'],
'entPhysicalContainedIn' => '10',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules_array[0]['rctInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules_array[0]['rctInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
];
$entity_array[] = [
'entPhysicalIndex' => '1200',
'entPhysicalDescr' => 'Reciter Temperature Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Reciter Temperature',
'entPhysicalContainedIn' => '120',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
if (isset($modules_array[0]) and isset($modules_array[0]['paInfoProductCode'])) {
$entity_array[] = [
'entPhysicalIndex' => '130',
'entPhysicalDescr' => 'Power Amplifier',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'Power Amplifier',
'entPhysicalModelName' => $modules_array[0]['paInfoProductCode'],
'entPhysicalSerialNum' => $modules_array[0]['paInfoSerialNumber'],
'entPhysicalContainedIn' => '10',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalHardwareRev' => $modules_array[0]['paInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules_array[0]['paInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
];
$entity_array[] = [
'entPhysicalIndex' => '1300',
'entPhysicalDescr' => 'Amplifier Power Sensor',
'entPhysicalClass' => 'sensor',
'entPhysicalName' => 'Output Power',
'entPhysicalContainedIn' => '130',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalParentRelPos' => '-1',
'entPhysicalIsFRU' => 'false',
];
}
$entity_array[] = [
'entPhysicalIndex' => '140',
'entPhysicalDescr' => 'PMU',
'entPhysicalClass' => 'module',
'entPhysicalName' => 'PMU',
'entPhysicalModelName' => $modules_array[0]['pmuInfoProductCode'],
'entPhysicalSerialNum' => $modules_array[0]['pmuInfoSerialNumber'],
'entPhysicalContainedIn' => '10',
'entPhysicalMfgName' => 'TAIT',
'entPhysicalParentRelPos' => '',
'entPhysicalVendorType' => '',
'entPhysicalHardwareRev' => $modules_array[0]['pmuInfoHardwareVersion'],
'entPhysicalFirmwareRev' => $modules_array[0]['pmuInfoFirmwareVersion'],
'entPhysicalIsFRU' => 'true',
];
foreach ($entity_array as $entPhysicalIndex => $entry) {
$entPhysicalIndex = array_key_exists('entPhysicalIndex', $entry) ? $entry['entPhysicalIndex'] : '';
$entPhysicalDescr = array_key_exists('entPhysicalDescr', $entry) ? $entry['entPhysicalDescr'] : '';
$entPhysicalClass = array_key_exists('entPhysicalClass', $entry) ? $entry['entPhysicalClass'] : '';
$entPhysicalName = array_key_exists('entPhysicalName', $entry) ? $entry['entPhysicalName'] : '';
$entPhysicalModelName = array_key_exists('entPhysicalModelName', $entry) ? $entry['entPhysicalModelName'] : '';
$entPhysicalSerialNum = array_key_exists('entPhysicalSerialNum', $entry) ? $entry['entPhysicalSerialNum'] : '';
$entPhysicalContainedIn = array_key_exists('entPhysicalContainedIn', $entry) ? $entry['entPhysicalContainedIn'] : '';
$entPhysicalMfgName = array_key_exists('entPhysicalMfgName', $entry) ? $entry['entPhysicalMfgName'] : '';
$entPhysicalParentRelPos = array_key_exists('entPhysicalParentRelPos', $entry) ? $entry['entPhysicalParentRelPos'] : '';
$entPhysicalVendorType = array_key_exists('entPhysicalVendorType', $entry) ? $entry['entPhysicalVendorType'] : '';
$entPhysicalHardwareRev = array_key_exists('entPhysicalHardwareRev', $entry) ? $entry['entPhysicalHardwareRev'] : '';
$entPhysicalFirmwareRev = array_key_exists('entPhysicalFirmwareRev', $entry) ? $entry['entPhysicalFirmwareRev'] : '';
$entPhysicalSoftwareRev = array_key_exists('entPhysicalSoftwareRev', $entry) ? $entry['entPhysicalSoftwareRev'] : '';
$entPhysicalIsFRU = array_key_exists('entPhysicalIsFRU', $entry) ? $entry['entPhysicalIsFRU'] : '';
$entPhysicalAlias = array_key_exists('entPhysicalAlias', $entry) ? $entry['entPhysicalAlias'] : '';
$entPhysicalAssetID = array_key_exists('entPhysicalAssetID', $entry) ? $entry['entPhysicalAssetID'] : '';
$ifIndex = array_key_exists('ifIndex', $entry) ? $entry['ifIndex'] : '';
discover_entity_physical($valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex);
}//end foreach
echo "\n";
unset(
$modules_array,
$entry,
$entity_array
);

View File

@ -593,67 +593,6 @@ function discover_storage(&$valid, $device, $index, $type, $mib, $descr, $size,
}//end if
}
function discover_entity_physical(&$valid, $device, $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex)
{
d_echo("Discover Inventory Item: $entPhysicalIndex, $entPhysicalDescr, $entPhysicalClass, $entPhysicalName, $entPhysicalModelName, $entPhysicalSerialNum, $entPhysicalContainedIn, $entPhysicalMfgName, $entPhysicalParentRelPos, $entPhysicalVendorType, $entPhysicalHardwareRev, $entPhysicalFirmwareRev, $entPhysicalSoftwareRev, $entPhysicalIsFRU, $entPhysicalAlias, $entPhysicalAssetID, $ifIndex\n");
if ($entPhysicalDescr || $entPhysicalName) {
if (dbFetchCell('SELECT COUNT(entPhysical_id) FROM `entPhysical` WHERE `device_id` = ? AND `entPhysicalIndex` = ?', [$device['device_id'], $entPhysicalIndex]) == '0') {
$insert_data = [
'device_id' => $device['device_id'],
'entPhysicalIndex' => $entPhysicalIndex,
'entPhysicalDescr' => $entPhysicalDescr,
'entPhysicalClass' => $entPhysicalClass,
'entPhysicalName' => $entPhysicalName,
'entPhysicalModelName' => $entPhysicalModelName,
'entPhysicalSerialNum' => $entPhysicalSerialNum,
'entPhysicalContainedIn' => $entPhysicalContainedIn,
'entPhysicalMfgName' => $entPhysicalMfgName,
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
'entPhysicalVendorType' => $entPhysicalVendorType,
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
'entPhysicalIsFRU' => $entPhysicalIsFRU,
'entPhysicalAlias' => $entPhysicalAlias,
'entPhysicalAssetID' => $entPhysicalAssetID,
];
if (! empty($ifIndex)) {
$insert_data['ifIndex'] = $ifIndex;
}
$inserted = dbInsert($insert_data, 'entPhysical');
echo '+';
log_event('Inventory Item added: index ' . $entPhysicalIndex . ' descr ' . $entPhysicalDescr, $device, 'entity-physical', 3, $inserted);
} else {
echo '.';
$update_data = [
'entPhysicalIndex' => $entPhysicalIndex,
'entPhysicalDescr' => $entPhysicalDescr,
'entPhysicalClass' => $entPhysicalClass,
'entPhysicalName' => $entPhysicalName,
'entPhysicalModelName' => $entPhysicalModelName,
'entPhysicalSerialNum' => $entPhysicalSerialNum,
'entPhysicalContainedIn' => $entPhysicalContainedIn,
'entPhysicalMfgName' => $entPhysicalMfgName,
'entPhysicalParentRelPos' => $entPhysicalParentRelPos,
'entPhysicalVendorType' => $entPhysicalVendorType,
'entPhysicalHardwareRev' => $entPhysicalHardwareRev,
'entPhysicalFirmwareRev' => $entPhysicalFirmwareRev,
'entPhysicalSoftwareRev' => $entPhysicalSoftwareRev,
'entPhysicalIsFRU' => $entPhysicalIsFRU,
'entPhysicalAlias' => $entPhysicalAlias,
'entPhysicalAssetID' => $entPhysicalAssetID,
'ifIndex' => $ifIndex,
];
dbUpdate($update_data, 'entPhysical', '`device_id`=? AND `entPhysicalIndex`=?', [$device['device_id'], $entPhysicalIndex]);
}//end if
$valid[$entPhysicalIndex] = 1;
}//end if
}
//end discover_entity_physical()
function discover_process_ipv6(&$valid, $ifIndex, $ipv6_address, $ipv6_prefixlen, $ipv6_origin, $context_name = '')
{
global $device;

View File

@ -252,12 +252,6 @@ function snmp_hexstring($hex)
return hex2str(str_replace(' ', '', str_replace(' 00', '', $hex)));
}
// Check if the supplied string is an SNMP hex string
function isHexString($str)
{
return (bool) preg_match('/^[a-f0-9][a-f0-9]( [a-f0-9][a-f0-9])*$/is', trim($str));
}
/**
* 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

View File

@ -259,34 +259,6 @@ function print_percentage_bar($width, $height, $percent, $left_text, $left_colou
]);
}
function generate_entity_link($type, $entity, $text = null, $graph_type = null)
{
global $entity_cache;
if (is_numeric($entity)) {
$entity = get_entity_by_id_cache($type, $entity);
}
switch ($type) {
case 'port':
$link = generate_port_link($entity, $text, $graph_type);
break;
case 'storage':
if (empty($text)) {
$text = $entity['storage_descr'];
}
$link = generate_link($text, ['page' => 'device', 'device' => $entity['device_id'], 'tab' => 'health', 'metric' => 'storage']);
break;
default:
$link = $entity[$type . '_id'];
}
return $link;
}//end generate_entity_link()
/**
* Extract type and subtype from a complex graph type, also makes sure variables are file name safe.
*

View File

@ -55,6 +55,8 @@ function printEntPhysical($device, $ent, $level, $class)
echo '<strong>' . $display_entPhysicalName . '</strong>';
} elseif ($ent['entPhysicalDescr']) {
echo '<strong>' . $ent['entPhysicalDescr'] . '</strong>';
} elseif ($ent['entPhysicalClass']) {
echo '<strong>' . $ent['entPhysicalClass'] . '</strong>';
}
// Display matching sensor value (without descr, as we have only one)

View File

@ -42,11 +42,6 @@ echo '
require 'overview/processors.inc.php';
require 'overview/mempools.inc.php';
require 'overview/storage.inc.php';
if (! isset($entity_state)) {
$entity_state = get_dev_entity_state($device['device_id']);
}
require 'overview/toner.inc.php';
require 'overview/sensors/charge.inc.php';
require 'overview/sensors/temperature.inc.php';

View File

@ -1,21 +0,0 @@
<?php
use LibreNMS\Config;
if (Config::get('enable_inventory')) {
if (file_exists(Config::get('install_dir') . "/includes/polling/entity-physical/{$device['os']}.inc.php")) {
include Config::get('install_dir') . "/includes/polling/entity-physical/{$device['os']}.inc.php";
}
// Update State
if (isset($entPhysical_state)) {
include 'includes/polling/entity-physical/state.inc.php';
}
} else {
echo 'Disabled!';
}//end if
unset(
$mod_stats,
$chan_stats
);

View File

@ -1,48 +0,0 @@
<?php
// Set Entity state
foreach (dbFetchRows('SELECT * FROM `entPhysical_state` WHERE `device_id` = ?', [$device['device_id']]) as $entity) {
if (! isset($entPhysical_state[$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']])) {
dbDelete(
'entPhysical_state',
'`device_id` = ? AND `entPhysicalIndex` = ? AND `subindex` = ? AND `group` = ? AND `key` = ?',
[
$device['device_id'],
$entity['entPhysicalIndex'],
$entity['subindex'],
$entity['group'],
$entity['key'],
]
);
} else {
if ($entPhysical_state[$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']] != $entity['value']) {
echo 'no match!' . ' ' . $entity['entPhysicalIndex'] . ' ' . $entity['subindex'] . ' ' . $entity['key'] . ': ' . $entPhysical_state[$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']] . ' ' . $entity['value'] . "\n";
dbUpdate(
['value' => $entPhysical_state[$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']]],
'entPhysical_state',
'`device_id` = ? AND `entPhysicalIndex` = ? AND `subindex` = ? AND `group` = ? AND `key` = ?',
[
$device['device_id'],
$entity['entPhysicalIndex'],
$entity['subindex'],
$entity['group'],
$entity['key'],
]
);
}
unset($entPhysical_state[$entity['entPhysicalIndex']][$entity['subindex']][$entity['group']][$entity['key']]);
}
}//end foreach
// End Set Entity Attrivs
// Delete Entity state
foreach ((array) $entPhysical_state as $epi => $entity) {
foreach ($entity as $subindex => $si) {
foreach ($si as $group => $ti) {
foreach ($ti as $key => $value) {
dbInsert(['device_id' => $device['device_id'], 'entPhysicalIndex' => $epi, 'subindex' => $subindex, 'group' => $group, 'key' => $key, 'value' => $value], 'entPhysical_state');
}
}
}
} // End Delete Entity state

View File

@ -115,7 +115,9 @@ axosCardProvType OBJECT-TYPE
ce201(17),
e3_2_xgs(18),
frwy(19),
xg3201(21)
xg3201(21),
asm5001(22),
xg1601(23)
}
MAX-ACCESS read-only
STATUS current
@ -144,7 +146,9 @@ axosCardActualType OBJECT-TYPE
ce201(17),
e3_2_xgs(18),
frwy(19),
xg3201(21)
xg3201(21),
asm5001(22),
xg1601(23)
}
MAX-ACCESS read-only
STATUS current

File diff suppressed because it is too large Load Diff

View File

@ -781,9 +781,9 @@ entPhysical:
- { Field: entPhysicalDescr, Type: text, 'Null': true, Extra: '' }
- { Field: entPhysicalClass, Type: text, 'Null': true, Extra: '' }
- { Field: entPhysicalName, Type: text, 'Null': true, Extra: '' }
- { Field: entPhysicalHardwareRev, Type: varchar(64), 'Null': true, Extra: '' }
- { Field: entPhysicalFirmwareRev, Type: varchar(64), 'Null': true, Extra: '' }
- { Field: entPhysicalSoftwareRev, Type: varchar(64), 'Null': true, Extra: '' }
- { Field: entPhysicalHardwareRev, Type: varchar(96), 'Null': true, Extra: '' }
- { Field: entPhysicalFirmwareRev, Type: varchar(96), 'Null': true, Extra: '' }
- { Field: entPhysicalSoftwareRev, Type: varchar(96), 'Null': true, Extra: '' }
- { Field: entPhysicalAlias, Type: varchar(32), 'Null': true, Extra: '' }
- { Field: entPhysicalAssetID, Type: varchar(32), 'Null': true, Extra: '' }
- { Field: entPhysicalIsFRU, Type: varchar(8), 'Null': true, Extra: '' }
@ -793,7 +793,7 @@ entPhysical:
- { Field: entPhysicalContainedIn, Type: int, 'Null': false, Extra: '', Default: '0' }
- { Field: entPhysicalParentRelPos, Type: int, 'Null': false, Extra: '', Default: '-1' }
- { Field: entPhysicalMfgName, Type: text, 'Null': true, Extra: '' }
- { Field: ifIndex, Type: int, 'Null': true, Extra: '' }
- { Field: ifIndex, Type: 'int unsigned', 'Null': true, Extra: '' }
Indexes:
PRIMARY: { Name: PRIMARY, Columns: [entPhysical_id], Unique: true, Type: BTREE }
entphysical_device_id_index: { Name: entphysical_device_id_index, Columns: [device_id], Unique: false, Type: BTREE }

View File

@ -28,6 +28,7 @@ namespace LibreNMS\Tests;
use LibreNMS\Device\YamlDiscovery;
use LibreNMS\Enum\IntegerType;
use LibreNMS\Util\Number;
use LibreNMS\Util\StringHelpers;
use LibreNMS\Util\Time;
class FunctionsTest extends TestCase
@ -45,10 +46,10 @@ class FunctionsTest extends TestCase
public function testIsHexString(): void
{
$this->assertTrue(isHexString('af 28 02'));
$this->assertTrue(isHexString('aF 28 02 CE'));
$this->assertFalse(isHexString('a5 fj 53'));
$this->assertFalse(isHexString('a5fe53'));
$this->assertTrue(StringHelpers::isHex('af 28 02'));
$this->assertTrue(StringHelpers::isHex('aF 28 02 CE'));
$this->assertFalse(StringHelpers::isHex('a5 fj 53'));
$this->assertFalse(StringHelpers::isHex('a5fe53'));
}
public function testDynamicDiscoveryGetValue(): void

View File

@ -288,17 +288,17 @@
"entPhysicalDescr": "SHELF",
"entPhysicalClass": "",
"entPhysicalName": "GE114Pro",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -307,17 +307,17 @@
"entPhysicalDescr": "SLOT",
"entPhysicalClass": "",
"entPhysicalName": "GE114Pro",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -326,17 +326,17 @@
"entPhysicalDescr": "ETHERNET CARD",
"entPhysicalClass": "",
"entPhysicalName": "GE114Pro",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -345,17 +345,17 @@
"entPhysicalDescr": "ETHERNET NETWORK PORT",
"entPhysicalClass": "",
"entPhysicalName": "NETWORK PORT-1-1-1-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -364,17 +364,17 @@
"entPhysicalDescr": "ETHERNET NETWORK PORT",
"entPhysicalClass": "",
"entPhysicalName": "NETWORK PORT-1-1-1-2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -383,17 +383,17 @@
"entPhysicalDescr": "ETHERNET ACCESS PORT",
"entPhysicalClass": "",
"entPhysicalName": "ACCESS PORT-1-1-1-3",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -402,17 +402,17 @@
"entPhysicalDescr": "ETHERNET ACCESS PORT",
"entPhysicalClass": "",
"entPhysicalName": "ACCESS PORT-1-1-1-4",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -421,17 +421,17 @@
"entPhysicalDescr": "ETHERNET ACCESS PORT",
"entPhysicalClass": "",
"entPhysicalName": "ACCESS PORT-1-1-1-5",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -440,17 +440,17 @@
"entPhysicalDescr": "ETHERNET ACCESS PORT",
"entPhysicalClass": "",
"entPhysicalName": "ACCESS PORT-1-1-1-6",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -459,17 +459,17 @@
"entPhysicalDescr": "ETHERNET MANAGEMENT PORT",
"entPhysicalClass": "",
"entPhysicalName": "DCN-1-1-1-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -478,17 +478,17 @@
"entPhysicalDescr": "USB HOST",
"entPhysicalClass": "",
"entPhysicalName": "USB-1-1-1-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -497,17 +497,17 @@
"entPhysicalDescr": "G3 USB MODEM",
"entPhysicalClass": "",
"entPhysicalName": "N/A",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
}

View File

@ -2347,6 +2347,158 @@
"entPhysicalMfgName": "Aricent",
"ifIndex": null
},
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "",
"entPhysicalClass": "cpu",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "",
"entPhysicalClass": "powerSupply",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 4,
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 5,
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 6,
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 7,
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 8,
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 9,
"entPhysicalDescr": "",
"entPhysicalClass": "module",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 10,
"entPhysicalDescr": "Ethernet Interface Port 01",

View File

@ -8034,6 +8034,101 @@
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68424704,
"entPhysicalDescr": "",
"entPhysicalClass": "other",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68420352,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68424775,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 49
},
{
"entPhysicalIndex": 68424776,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 50
},
{
"entPhysicalIndex": 68424777,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 9,
"entPhysicalMfgName": "",
"ifIndex": 51
},
{
"entPhysicalIndex": 68424778,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 10,
"entPhysicalMfgName": "",
"ifIndex": 52
},
{
"entPhysicalIndex": 68428800,
"entPhysicalDescr": "GT 88E6095",
@ -8053,6 +8148,158 @@
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68428865,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 2
},
{
"entPhysicalIndex": 68428866,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 1
},
{
"entPhysicalIndex": 68428867,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 4
},
{
"entPhysicalIndex": 68428868,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 3
},
{
"entPhysicalIndex": 68428869,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 6
},
{
"entPhysicalIndex": 68428870,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 5
},
{
"entPhysicalIndex": 68428871,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 8
},
{
"entPhysicalIndex": 68428872,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 7
},
{
"entPhysicalIndex": 68432896,
"entPhysicalDescr": "GT 88E6095",
@ -8072,6 +8319,158 @@
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68432961,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 10
},
{
"entPhysicalIndex": 68432962,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 9
},
{
"entPhysicalIndex": 68432963,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 12
},
{
"entPhysicalIndex": 68432964,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 11
},
{
"entPhysicalIndex": 68432965,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 14
},
{
"entPhysicalIndex": 68432966,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 13
},
{
"entPhysicalIndex": 68432967,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 16
},
{
"entPhysicalIndex": 68432968,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68432896,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 15
},
{
"entPhysicalIndex": 68436992,
"entPhysicalDescr": "GT 88E6095",
@ -8090,6 +8489,158 @@
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68437057,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 18
},
{
"entPhysicalIndex": 68437058,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 17
},
{
"entPhysicalIndex": 68437059,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 20
},
{
"entPhysicalIndex": 68437060,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 19
},
{
"entPhysicalIndex": 68437061,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 22
},
{
"entPhysicalIndex": 68437062,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 21
},
{
"entPhysicalIndex": 68437063,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 24
},
{
"entPhysicalIndex": 68437064,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68436992,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 23
}
]
},

View File

@ -76241,7 +76241,7 @@
"entPhysicalName": "1/SLOT-1",
"entPhysicalHardwareRev": "13",
"entPhysicalFirmwareRev": "0.20",
"entPhysicalSoftwareRev": "",
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
@ -76336,7 +76336,7 @@
"entPhysicalName": "1/CMM-A",
"entPhysicalHardwareRev": "13",
"entPhysicalFirmwareRev": "0.20",
"entPhysicalSoftwareRev": "",
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
@ -76430,7 +76430,7 @@
"entPhysicalClass": "chassis",
"entPhysicalName": "CHASSIS-2",
"entPhysicalHardwareRev": "01",
"entPhysicalFirmwareRev": "",
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "8.7.277.R01",
"entPhysicalAlias": "N/A",
"entPhysicalAssetID": "",
@ -76449,7 +76449,7 @@
"entPhysicalClass": "chassis",
"entPhysicalName": "CHASSIS-3",
"entPhysicalHardwareRev": "03",
"entPhysicalFirmwareRev": "",
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "8.7.277.R01",
"entPhysicalAlias": "N/A",
"entPhysicalAssetID": "",
@ -76468,7 +76468,7 @@
"entPhysicalClass": "chassis",
"entPhysicalName": "CHASSIS-4",
"entPhysicalHardwareRev": "03",
"entPhysicalFirmwareRev": "",
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "8.7.277.R01",
"entPhysicalAlias": "N/A",
"entPhysicalAssetID": "",
@ -76638,9 +76638,9 @@
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "1/FANTRAY-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
@ -76657,9 +76657,9 @@
"entPhysicalDescr": "",
"entPhysicalClass": "fan",
"entPhysicalName": "2/FANTRAY-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
@ -76676,9 +76676,9 @@
"entPhysicalDescr": "",
"entPhysicalClass": "",
"entPhysicalName": "2/FANTRAY-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
@ -76686,7 +76686,7 @@
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -76695,9 +76695,9 @@
"entPhysicalDescr": "",
"entPhysicalClass": "",
"entPhysicalName": "3/FANTRAY-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
@ -76705,7 +76705,7 @@
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
@ -76714,9 +76714,9 @@
"entPhysicalDescr": "",
"entPhysicalClass": "",
"entPhysicalName": "4/FANTRAY-1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
@ -76724,7 +76724,7 @@
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},

File diff suppressed because it is too large Load Diff

View File

@ -11143,9 +11143,9 @@
"entPhysicalDescr": "ARRIS, Inc. D5 Universal EdgeQAM",
"entPhysicalClass": "chassis",
"entPhysicalName": "D5 UEQ",
"entPhysicalHardwareRev": "E..",
"entPhysicalFirmwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "E",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "NONE",
"entPhysicalAssetID": "NONE",
"entPhysicalIsFRU": "true",
@ -11447,9 +11447,9 @@
"entPhysicalDescr": "MON card",
"entPhysicalClass": "module",
"entPhysicalName": "MON",
"entPhysicalHardwareRev": "J..",
"entPhysicalFirmwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "3.0.2.117.......\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "J",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "3.0.2.117",
"entPhysicalAlias": "NONE",
"entPhysicalAssetID": "NONE",
"entPhysicalIsFRU": "true",
@ -11618,9 +11618,9 @@
"entPhysicalDescr": "QAM card",
"entPhysicalClass": "module",
"entPhysicalName": "QAM 1",
"entPhysicalHardwareRev": "F..",
"entPhysicalFirmwareRev": "MUX06FB0000-RF03\n30 33 30 39 30 30 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "F",
"entPhysicalFirmwareRev": "MUX06FB0000-RF03",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "NONE",
"entPhysicalAssetID": "NONE",
"entPhysicalIsFRU": "true",
@ -12055,9 +12055,9 @@
"entPhysicalDescr": "WAN card",
"entPhysicalClass": "module",
"entPhysicalName": "WAN 7",
"entPhysicalHardwareRev": "D..",
"entPhysicalFirmwareRev": "3.0.2.8.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "3.0.2.117.......\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "D",
"entPhysicalFirmwareRev": "3.0.2.8",
"entPhysicalSoftwareRev": "3.0.2.117",
"entPhysicalAlias": "NONE",
"entPhysicalAssetID": "NONE",
"entPhysicalIsFRU": "true",
@ -12416,9 +12416,9 @@
"entPhysicalDescr": "Power Module Card",
"entPhysicalClass": "module",
"entPhysicalName": "PMOD 1",
"entPhysicalHardwareRev": "D..",
"entPhysicalFirmwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "D",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "NONE",
"entPhysicalAssetID": "NONE",
"entPhysicalIsFRU": "true",
@ -12530,9 +12530,9 @@
"entPhysicalDescr": "Fan Tray",
"entPhysicalClass": "fan",
"entPhysicalName": "FAN 1",
"entPhysicalHardwareRev": "...",
"entPhysicalFirmwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
@ -12644,9 +12644,9 @@
"entPhysicalDescr": "Power Supply",
"entPhysicalClass": "module",
"entPhysicalName": "PSU 1",
"entPhysicalHardwareRev": "...",
"entPhysicalFirmwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalSoftwareRev": "................\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",

View File

@ -2652,7 +2652,7 @@
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "Instant Virtual Controller Cluster",
"entPhysicalVendorType": "Aruba",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "bb6a73be01282660f5f9a85b8b2e6b33539f10d9cfd2d86c8e",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -2662,16 +2662,16 @@
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "70:3a:e:c9:c2:46",
"entPhysicalClass": "",
"entPhysicalClass": "other",
"entPhysicalName": "instant-ap-src-1 10.128.0.11 Cluster Master",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "v2c",
"entPhysicalSoftwareRev": "8.4.0.0-8.4.0.0",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "ap225",
"entPhysicalVendorType": "Aruba",
"entPhysicalVendorType": "accessPoint",
"entPhysicalSerialNum": "CNBJHMV0WN",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": -1,

View File

@ -2110,7 +2110,7 @@
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "Instant Virtual Controller Cluster",
"entPhysicalVendorType": "Aruba",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "d750fa7701c9617fe72f583a7f7a1407220796cd3f1e5ef5cb",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -2120,16 +2120,16 @@
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "24:de:c6:c3:50:a4",
"entPhysicalClass": "",
"entPhysicalClass": "other",
"entPhysicalName": "24:de:c6:c3:50:a4 10.4.1.27 Cluster Member",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "v2c",
"entPhysicalSoftwareRev": "6.4.4.8-4.2.4.12",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "ap105",
"entPhysicalVendorType": "Aruba",
"entPhysicalVendorType": "accessPoint",
"entPhysicalSerialNum": "BT0489813",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": -1,
@ -2139,16 +2139,16 @@
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "24:de:c6:c3:52:da",
"entPhysicalClass": "",
"entPhysicalClass": "other",
"entPhysicalName": "24:de:c6:c3:52:da 10.4.1.26 Cluster Master",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "v2c",
"entPhysicalSoftwareRev": "6.4.4.8-4.2.4.12",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "ap105",
"entPhysicalVendorType": "Aruba",
"entPhysicalVendorType": "accessPoint",
"entPhysicalSerialNum": "BT0490379",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": -1,

View File

@ -12690,7 +12690,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL635A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.1.50",
"entPhysicalVendorType": "arubaWiredSwitchJL635A",
"entPhysicalSerialNum": "DEVICESERL",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -12709,7 +12709,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.8",
"entPhysicalVendorType": "arubaWiredSwitch8320PowerSupplySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
@ -12728,7 +12728,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.8",
"entPhysicalVendorType": "arubaWiredSwitch8320PowerSupplySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 2,
@ -12747,7 +12747,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 3,
@ -12766,7 +12766,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 4,
@ -12785,7 +12785,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 5,
@ -12804,7 +12804,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 6,
@ -12823,7 +12823,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 7,
@ -12842,7 +12842,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.7",
"entPhysicalVendorType": "arubaWiredSwitch8320FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 8,
@ -12861,7 +12861,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.1",
"entPhysicalVendorType": "arubaWiredTemperatureSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 11,
@ -12880,7 +12880,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15001,
"entPhysicalParentRelPos": 1,
@ -12899,7 +12899,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15002,
"entPhysicalParentRelPos": 1,
@ -12918,7 +12918,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15101,
"entPhysicalParentRelPos": 1,
@ -12937,7 +12937,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15102,
"entPhysicalParentRelPos": 1,
@ -12956,7 +12956,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15201,
"entPhysicalParentRelPos": 1,
@ -12975,7 +12975,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15202,
"entPhysicalParentRelPos": 1,
@ -12994,7 +12994,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15301,
"entPhysicalParentRelPos": 1,
@ -13013,7 +13013,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15302,
"entPhysicalParentRelPos": 1,
@ -13032,7 +13032,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15401,
"entPhysicalParentRelPos": 1,
@ -13051,7 +13051,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15402,
"entPhysicalParentRelPos": 1,
@ -13070,7 +13070,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15501,
"entPhysicalParentRelPos": 1,
@ -13089,7 +13089,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15502,
"entPhysicalParentRelPos": 1,
@ -13108,7 +13108,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.3",
"entPhysicalVendorType": "arubaWiredPowerSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 13002,
"entPhysicalParentRelPos": 1,
@ -13127,7 +13127,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL635A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.21",
"entPhysicalVendorType": "arubaWiredSwitchModuleJL635A",
"entPhysicalSerialNum": "DEVICESERL",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 10,
@ -13146,7 +13146,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL480A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.10",
"entPhysicalVendorType": "arubaWiredSwitchPowerSupplyUnitJL480A",
"entPhysicalSerialNum": "PWR1SERIAL",
"entPhysicalContainedIn": 4001,
"entPhysicalParentRelPos": 1,
@ -13165,7 +13165,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL480A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.10",
"entPhysicalVendorType": "arubaWiredSwitchPowerSupplyUnitJL480A",
"entPhysicalSerialNum": "PWR2SERIAL",
"entPhysicalContainedIn": 4002,
"entPhysicalParentRelPos": 1,
@ -13184,7 +13184,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5001,
"entPhysicalParentRelPos": 1,
@ -13203,7 +13203,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5001,
"entPhysicalParentRelPos": 1,
@ -13222,7 +13222,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5002,
"entPhysicalParentRelPos": 1,
@ -13241,7 +13241,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5002,
"entPhysicalParentRelPos": 1,
@ -13260,7 +13260,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5003,
"entPhysicalParentRelPos": 1,
@ -13279,7 +13279,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5003,
"entPhysicalParentRelPos": 1,
@ -13298,7 +13298,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5004,
"entPhysicalParentRelPos": 1,
@ -13317,7 +13317,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5004,
"entPhysicalParentRelPos": 1,
@ -13336,7 +13336,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5005,
"entPhysicalParentRelPos": 1,
@ -13355,7 +13355,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5005,
"entPhysicalParentRelPos": 1,
@ -13374,7 +13374,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5006,
"entPhysicalParentRelPos": 1,
@ -13393,7 +13393,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.11",
"entPhysicalVendorType": "arubaWiredSwitchJL481AFanTray",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5006,
"entPhysicalParentRelPos": 1,
@ -13412,7 +13412,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 1,
@ -13431,7 +13431,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 2,
@ -13450,7 +13450,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 3,
@ -13469,7 +13469,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 4,
@ -13488,7 +13488,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 5,
@ -13507,7 +13507,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 6,
@ -13526,7 +13526,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 7,
@ -13545,7 +13545,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 8,
@ -13564,7 +13564,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 9,
@ -13583,7 +13583,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 10,
@ -13602,7 +13602,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 11,
@ -13621,7 +13621,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 12,
@ -13640,7 +13640,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 13,
@ -13659,7 +13659,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 14,
@ -13678,7 +13678,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 15,
@ -13697,7 +13697,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 16,
@ -13716,7 +13716,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 17,
@ -13735,7 +13735,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 18,
@ -13754,7 +13754,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 19,
@ -13773,7 +13773,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 20,
@ -13792,7 +13792,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 21,
@ -13811,7 +13811,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 22,
@ -13830,7 +13830,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 23,
@ -13849,7 +13849,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 24,
@ -13868,7 +13868,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 25,
@ -13887,7 +13887,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 26,
@ -13906,7 +13906,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 27,
@ -13925,7 +13925,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 28,
@ -13944,7 +13944,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 29,
@ -13963,7 +13963,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 30,
@ -13982,7 +13982,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 31,
@ -14001,7 +14001,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 32,
@ -14020,7 +14020,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 33,
@ -14039,7 +14039,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 34,
@ -14058,7 +14058,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 35,
@ -14077,7 +14077,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 36,
@ -14096,7 +14096,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 37,
@ -14115,7 +14115,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 38,
@ -14134,7 +14134,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 39,
@ -14153,7 +14153,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 40,
@ -14172,7 +14172,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 41,
@ -14191,7 +14191,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 42,
@ -14210,7 +14210,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 43,
@ -14229,7 +14229,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 44,
@ -14248,7 +14248,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 45,
@ -14267,7 +14267,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 46,
@ -14286,7 +14286,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 47,
@ -14305,7 +14305,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 48,
@ -14324,7 +14324,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 49,
@ -14343,7 +14343,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 50,
@ -14362,7 +14362,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 51,
@ -14381,7 +14381,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 52,
@ -14400,7 +14400,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 53,
@ -14419,7 +14419,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 54,
@ -14438,7 +14438,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 55,
@ -14457,7 +14457,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 56,

View File

@ -39716,7 +39716,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL635A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.1.50",
"entPhysicalVendorType": "arubaWiredSwitchJL635A",
"entPhysicalSerialNum": "AB12CD345E",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -39735,7 +39735,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.10",
"entPhysicalVendorType": "arubaWiredSwitch8325PowerSupplySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
@ -39754,7 +39754,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.10",
"entPhysicalVendorType": "arubaWiredSwitch8325PowerSupplySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 2,
@ -39773,7 +39773,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 3,
@ -39792,7 +39792,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 4,
@ -39811,7 +39811,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 5,
@ -39830,7 +39830,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 6,
@ -39849,7 +39849,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 7,
@ -39868,7 +39868,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.2.9",
"entPhysicalVendorType": "arubaWiredSwitch8325FanTraySlot",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 8,
@ -39887,7 +39887,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.1",
"entPhysicalVendorType": "arubaWiredTemperatureSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 11,
@ -39906,7 +39906,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15001,
"entPhysicalParentRelPos": 1,
@ -39925,7 +39925,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15002,
"entPhysicalParentRelPos": 1,
@ -39944,7 +39944,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15101,
"entPhysicalParentRelPos": 1,
@ -39963,7 +39963,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15102,
"entPhysicalParentRelPos": 1,
@ -39982,7 +39982,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15201,
"entPhysicalParentRelPos": 1,
@ -40001,7 +40001,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15202,
"entPhysicalParentRelPos": 1,
@ -40020,7 +40020,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15301,
"entPhysicalParentRelPos": 1,
@ -40039,7 +40039,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15302,
"entPhysicalParentRelPos": 1,
@ -40058,7 +40058,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15401,
"entPhysicalParentRelPos": 1,
@ -40077,7 +40077,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15402,
"entPhysicalParentRelPos": 1,
@ -40096,7 +40096,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.3",
"entPhysicalVendorType": "arubaWiredPowerSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 13001,
"entPhysicalParentRelPos": 1,
@ -40115,7 +40115,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 15502,
"entPhysicalParentRelPos": 1,
@ -40134,7 +40134,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.3",
"entPhysicalVendorType": "arubaWiredPowerSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 13002,
"entPhysicalParentRelPos": 1,
@ -40153,7 +40153,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL635A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.21",
"entPhysicalVendorType": "arubaWiredSwitchModuleJL635A",
"entPhysicalSerialNum": "AB12CD345E",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 10,
@ -40172,7 +40172,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL480A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.27",
"entPhysicalVendorType": "arubaWiredSwitchPowerSupplyUnitJL632A",
"entPhysicalSerialNum": "AB12CD345F",
"entPhysicalContainedIn": 4001,
"entPhysicalParentRelPos": 1,
@ -40191,7 +40191,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL480A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.27",
"entPhysicalVendorType": "arubaWiredSwitchPowerSupplyUnitJL632A",
"entPhysicalSerialNum": "AB12CD345G",
"entPhysicalContainedIn": 4002,
"entPhysicalParentRelPos": 1,
@ -40210,7 +40210,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5001,
"entPhysicalParentRelPos": 1,
@ -40229,7 +40229,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5001,
"entPhysicalParentRelPos": 1,
@ -40248,7 +40248,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5002,
"entPhysicalParentRelPos": 1,
@ -40267,7 +40267,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5002,
"entPhysicalParentRelPos": 1,
@ -40286,7 +40286,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5003,
"entPhysicalParentRelPos": 1,
@ -40305,7 +40305,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5003,
"entPhysicalParentRelPos": 1,
@ -40324,7 +40324,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5004,
"entPhysicalParentRelPos": 1,
@ -40343,7 +40343,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5004,
"entPhysicalParentRelPos": 1,
@ -40362,7 +40362,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5005,
"entPhysicalParentRelPos": 1,
@ -40381,7 +40381,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5005,
"entPhysicalParentRelPos": 1,
@ -40400,7 +40400,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5006,
"entPhysicalParentRelPos": 1,
@ -40419,7 +40419,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL481A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.29",
"entPhysicalVendorType": "arubaWiredSwitchFanTrayJL628A",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 5006,
"entPhysicalParentRelPos": 1,
@ -40438,7 +40438,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 1,
@ -40457,7 +40457,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 2,
@ -40476,7 +40476,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 3,
@ -40495,7 +40495,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 4,
@ -40514,7 +40514,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 5,
@ -40533,7 +40533,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 6,
@ -40552,7 +40552,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 7,
@ -40571,7 +40571,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 8,
@ -40590,7 +40590,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 9,
@ -40609,7 +40609,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 10,
@ -40628,7 +40628,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 11,
@ -40647,7 +40647,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 12,
@ -40666,7 +40666,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 13,
@ -40685,7 +40685,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 14,
@ -40704,7 +40704,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 15,
@ -40723,7 +40723,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 16,
@ -40742,7 +40742,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 17,
@ -40761,7 +40761,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 18,
@ -40780,7 +40780,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 19,
@ -40799,7 +40799,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 20,
@ -40818,7 +40818,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 21,
@ -40837,7 +40837,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 22,
@ -40856,7 +40856,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 23,
@ -40875,7 +40875,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 24,
@ -40894,7 +40894,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 25,
@ -40913,7 +40913,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 26,
@ -40932,7 +40932,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 27,
@ -40951,7 +40951,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 28,
@ -40970,7 +40970,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 29,
@ -40989,7 +40989,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 30,
@ -41008,7 +41008,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 31,
@ -41027,7 +41027,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 32,
@ -41046,7 +41046,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 33,
@ -41065,7 +41065,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 34,
@ -41084,7 +41084,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 35,
@ -41103,7 +41103,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 36,
@ -41122,7 +41122,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 37,
@ -41141,7 +41141,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 38,
@ -41160,7 +41160,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 39,
@ -41179,7 +41179,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 40,
@ -41198,7 +41198,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 41,
@ -41217,7 +41217,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 42,
@ -41236,7 +41236,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 43,
@ -41255,7 +41255,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 44,
@ -41274,7 +41274,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 45,
@ -41293,7 +41293,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 46,
@ -41312,7 +41312,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 47,
@ -41331,7 +41331,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.15",
"entPhysicalVendorType": "arubaWiredSwitch25GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 48,
@ -41350,7 +41350,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 49,
@ -41445,7 +41445,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 50,
@ -41540,7 +41540,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 51,
@ -41635,7 +41635,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 52,
@ -41730,7 +41730,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 53,
@ -41825,7 +41825,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 54,
@ -41920,7 +41920,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 55,
@ -42015,7 +42015,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.17",
"entPhysicalVendorType": "arubaWiredSwitch100GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 56,

View File

@ -12670,7 +12670,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL727A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.1.303",
"entPhysicalVendorType": "arubaWiredSwitchJL727A",
"entPhysicalSerialNum": "AB12CD3456",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -12689,7 +12689,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL727A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.1.303",
"entPhysicalVendorType": "arubaWiredSwitchJL727A",
"entPhysicalSerialNum": "AB12CD3456",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
@ -12708,7 +12708,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.1",
"entPhysicalVendorType": "arubaWiredTemperatureSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 110001,
"entPhysicalParentRelPos": 1,
@ -12727,7 +12727,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 115001,
"entPhysicalParentRelPos": 1,
@ -12746,7 +12746,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 115002,
"entPhysicalParentRelPos": 1,
@ -12765,7 +12765,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 115003,
"entPhysicalParentRelPos": 1,
@ -12784,7 +12784,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.3",
"entPhysicalVendorType": "arubaWiredPowerSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 113001,
"entPhysicalParentRelPos": 1,
@ -12822,7 +12822,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL727A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.93",
"entPhysicalVendorType": "arubaWiredSwitchModuleJL727A",
"entPhysicalSerialNum": "AB12CD3456",
"entPhysicalContainedIn": 101001,
"entPhysicalParentRelPos": 2,
@ -12841,7 +12841,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "N/A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.112",
"entPhysicalVendorType": "arubaWiredSwitchPoEPowerSupplyUnit",
"entPhysicalSerialNum": "N/A",
"entPhysicalContainedIn": 101001,
"entPhysicalParentRelPos": 3,
@ -12860,7 +12860,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 101001,
"entPhysicalParentRelPos": 4,
@ -12879,7 +12879,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 101001,
"entPhysicalParentRelPos": 5,
@ -12898,7 +12898,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.2",
"entPhysicalVendorType": "arubaWiredRPMSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 101001,
"entPhysicalParentRelPos": 6,
@ -12917,7 +12917,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 1,
@ -12936,7 +12936,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 2,
@ -12955,7 +12955,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 3,
@ -12974,7 +12974,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 4,
@ -12993,7 +12993,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 5,
@ -13012,7 +13012,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 6,
@ -13031,7 +13031,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 7,
@ -13050,7 +13050,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 8,
@ -13069,7 +13069,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 9,
@ -13088,7 +13088,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 10,
@ -13107,7 +13107,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 11,
@ -13126,7 +13126,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 12,
@ -13145,7 +13145,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 13,
@ -13164,7 +13164,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 14,
@ -13183,7 +13183,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 15,
@ -13202,7 +13202,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 16,
@ -13221,7 +13221,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 17,
@ -13240,7 +13240,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 18,
@ -13259,7 +13259,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 19,
@ -13278,7 +13278,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 20,
@ -13297,7 +13297,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 21,
@ -13316,7 +13316,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 22,
@ -13335,7 +13335,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 23,
@ -13354,7 +13354,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 24,
@ -13373,7 +13373,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 25,
@ -13392,7 +13392,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 26,
@ -13411,7 +13411,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 27,
@ -13430,7 +13430,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 28,
@ -13449,7 +13449,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 29,
@ -13468,7 +13468,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 30,
@ -13487,7 +13487,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 31,
@ -13506,7 +13506,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 32,
@ -13525,7 +13525,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 33,
@ -13544,7 +13544,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 34,
@ -13563,7 +13563,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 35,
@ -13582,7 +13582,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 36,
@ -13601,7 +13601,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 37,
@ -13620,7 +13620,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 38,
@ -13639,7 +13639,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 39,
@ -13658,7 +13658,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 40,
@ -13677,7 +13677,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 41,
@ -13696,7 +13696,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 42,
@ -13715,7 +13715,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 43,
@ -13734,7 +13734,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 44,
@ -13753,7 +13753,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 45,
@ -13772,7 +13772,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 46,
@ -13791,7 +13791,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 47,
@ -13810,7 +13810,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 48,
@ -13829,7 +13829,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 49,
@ -13848,7 +13848,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 50,
@ -13867,7 +13867,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 51,
@ -13886,7 +13886,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 112001,
"entPhysicalParentRelPos": 52,

View File

@ -4804,7 +4804,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "JL679A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.1.254",
"entPhysicalVendorType": "arubaWiredSwitchJL679A",
"entPhysicalSerialNum": "CN10K00000",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -4823,7 +4823,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.1",
"entPhysicalVendorType": "arubaWiredTemperatureSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 6,
@ -4842,7 +4842,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.1.3",
"entPhysicalVendorType": "arubaWiredPowerSensor",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 13001,
"entPhysicalParentRelPos": 1,
@ -4861,7 +4861,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "JL679A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.110",
"entPhysicalVendorType": "arubaWiredSwitchModuleJL679A",
"entPhysicalSerialNum": "CN10K00000",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
@ -4880,7 +4880,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "N/A",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.127",
"entPhysicalVendorType": "arubaWiredSwitch165WPowerSupplyUnit",
"entPhysicalSerialNum": "N/A",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 2,
@ -4899,7 +4899,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 1,
@ -4918,7 +4918,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 2,
@ -4937,7 +4937,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 3,
@ -4956,7 +4956,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 4,
@ -4975,7 +4975,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 5,
@ -4994,7 +4994,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 6,
@ -5013,7 +5013,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 7,
@ -5032,7 +5032,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 8,
@ -5051,7 +5051,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 9,
@ -5070,7 +5070,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 10,
@ -5089,7 +5089,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 11,
@ -5108,7 +5108,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 12,
@ -5127,7 +5127,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 13,
@ -5146,7 +5146,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.13",
"entPhysicalVendorType": "arubaWiredSwitch1GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 14,
@ -5165,7 +5165,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 15,
@ -5184,7 +5184,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "enterprises.47196.4.1.1.2.3.14",
"entPhysicalVendorType": "arubaWiredSwitch10GbMaxPort",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 12001,
"entPhysicalParentRelPos": 16,

View File

@ -16198,39 +16198,39 @@
{
"entPhysicalIndex": 1,
"entPhysicalDescr": "Aruba 6300 VSF Stack",
"entPhysicalClass": "",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalClass": null,
"entPhysicalName": null,
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "FL.10.10.1030",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 101001,
"entPhysicalDescr": "6300M 24-port SFP+ and 4-port SFP56 Switch",
"entPhysicalClass": "",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalClass": null,
"entPhysicalName": null,
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "FL.10.10.1030",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "SG19KMX0MQ",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
}
]

File diff suppressed because it is too large Load Diff

View File

@ -46,14 +46,14 @@
"entPhysicalDescr": "e5x16f",
"entPhysicalClass": "chassis",
"entPhysicalName": "e5x16f",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "e5x16f",
"entPhysicalVendorType": "Calix",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "071710980001",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,

View File

@ -101436,19 +101436,76 @@
"entPhysicalDescr": "e7-2",
"entPhysicalClass": "chassis",
"entPhysicalName": "e7-2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "e7-2",
"entPhysicalVendorType": "Calix",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "071710980000",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "Calix",
"ifIndex": null
},
{
"entPhysicalIndex": 100,
"entPhysicalDescr": "Shelf 1",
"entPhysicalClass": "container",
"entPhysicalName": null,
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "false",
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 101,
"entPhysicalDescr": "xg801",
"entPhysicalClass": "module",
"entPhysicalName": "1-1",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "CR-MBAXOS2230-1",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "100-05529",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "472110040000",
"entPhysicalContainedIn": 100,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "Calix",
"ifIndex": null
},
{
"entPhysicalIndex": 102,
"entPhysicalDescr": "unknown",
"entPhysicalClass": "module",
"entPhysicalName": "1-2",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": "CR-MBAXOS2230-1",
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "100-05529",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "472110040000",
"entPhysicalContainedIn": 100,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "Calix",
"ifIndex": null
}
]
},

File diff suppressed because it is too large Load Diff

View File

@ -376,50 +376,5 @@
]
},
"poller": "matches discovery"
},
"entity-physical": {
"discovery": {
"entPhysical": [
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz - 8 Cores, 16 Threads",
"entPhysicalClass": "cpu",
"entPhysicalName": "Processor",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "FALSE",
"entPhysicalModelName": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz",
"entPhysicalVendorType": "rack-unit-1/board/cpu-1",
"entPhysicalSerialNum": "Not Specified",
"entPhysicalContainedIn": 2,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz - 8 Cores, 16 Threads",
"entPhysicalClass": "cpu",
"entPhysicalName": "Processor",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "FALSE",
"entPhysicalModelName": "Intel(R) Xeon(R) CPU E5-2630 v3 @ 2.40GHz",
"entPhysicalVendorType": "rack-unit-1/board/cpu-2",
"entPhysicalSerialNum": "Not Specified",
"entPhysicalContainedIn": 2,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
}
]
},
"poller": "matches discovery"
}
}

View File

@ -1842,7 +1842,7 @@
"entPhysicalFirmwareRev": "ME1200 OS Software Build 15.6-7.SN1",
"entPhysicalSoftwareRev": "ME1200 OS Software Build 15.6-7.SN1",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0.0.0.0.0.0.0.0.0.0",
@ -1861,7 +1861,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1880,7 +1880,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1899,7 +1899,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1918,7 +1918,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1937,7 +1937,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1956,7 +1956,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevPortBaseTEther",
@ -1975,7 +1975,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevContainerSFP",
@ -1994,7 +1994,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevContainerSFP",
@ -2013,7 +2013,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevContainerSFP",
@ -2032,7 +2032,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "cevContainerSFP",
@ -2051,7 +2051,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "cevMIBObjects.50.1001",
@ -2070,7 +2070,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "",
"entPhysicalVendorType": "cevMIBObjects.70.1002",
@ -2079,6 +2079,82 @@
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 101,
"entPhysicalDescr": "",
"entPhysicalClass": "module",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "0",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "zeroDotZero.0.0.0.0.0.0.0.0.0.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 23,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 102,
"entPhysicalDescr": "",
"entPhysicalClass": "module",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "0",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "zeroDotZero.0.0.0.0.0.0.0.0.0.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 24,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 103,
"entPhysicalDescr": "",
"entPhysicalClass": "module",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "0",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "zeroDotZero.0.0.0.0.0.0.0.0.0.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 25,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 104,
"entPhysicalDescr": "",
"entPhysicalClass": "module",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "0",
"entPhysicalModelName": "NA",
"entPhysicalVendorType": "zeroDotZero.0.0.0.0.0.0.0.0.0.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 26,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -17613,6 +17613,44 @@
"entPhysicalParentRelPos": 26,
"entPhysicalMfgName": "",
"ifIndex": 102
},
{
"entPhysicalIndex": 201326848,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435712,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -7950,7 +7950,7 @@
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": null
"ifIndex": 28
}
]
},

View File

@ -14181,6 +14181,63 @@
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": 52
},
{
"entPhysicalIndex": 134217984,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326848,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435712,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

File diff suppressed because it is too large Load Diff

View File

@ -11233,6 +11233,139 @@
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": 16
},
{
"entPhysicalIndex": 134217984,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326848,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435712,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 335544576,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 402653440,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 469762304,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 536871168,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -13106,6 +13106,462 @@
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68424769,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 1
},
{
"entPhysicalIndex": 68424770,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 25
},
{
"entPhysicalIndex": 68424771,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 2
},
{
"entPhysicalIndex": 68424772,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 26
},
{
"entPhysicalIndex": 68424773,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 3
},
{
"entPhysicalIndex": 68424774,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 27
},
{
"entPhysicalIndex": 68424775,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 4
},
{
"entPhysicalIndex": 68424776,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 28
},
{
"entPhysicalIndex": 68424777,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 9,
"entPhysicalMfgName": "",
"ifIndex": 5
},
{
"entPhysicalIndex": 68424778,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 10,
"entPhysicalMfgName": "",
"ifIndex": 29
},
{
"entPhysicalIndex": 68424779,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 11,
"entPhysicalMfgName": "",
"ifIndex": 6
},
{
"entPhysicalIndex": 68424780,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 12,
"entPhysicalMfgName": "",
"ifIndex": 30
},
{
"entPhysicalIndex": 68424781,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 13,
"entPhysicalMfgName": "",
"ifIndex": 7
},
{
"entPhysicalIndex": 68424782,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 14,
"entPhysicalMfgName": "",
"ifIndex": 31
},
{
"entPhysicalIndex": 68424783,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 15,
"entPhysicalMfgName": "",
"ifIndex": 8
},
{
"entPhysicalIndex": 68424784,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 16,
"entPhysicalMfgName": "",
"ifIndex": 32
},
{
"entPhysicalIndex": 68424785,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 17,
"entPhysicalMfgName": "",
"ifIndex": 9
},
{
"entPhysicalIndex": 68424786,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 18,
"entPhysicalMfgName": "",
"ifIndex": 33
},
{
"entPhysicalIndex": 68424787,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 19,
"entPhysicalMfgName": "",
"ifIndex": 10
},
{
"entPhysicalIndex": 68424788,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 20,
"entPhysicalMfgName": "",
"ifIndex": 34
},
{
"entPhysicalIndex": 68424789,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 21,
"entPhysicalMfgName": "",
"ifIndex": 11
},
{
"entPhysicalIndex": 68424790,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 22,
"entPhysicalMfgName": "",
"ifIndex": 35
},
{
"entPhysicalIndex": 68424791,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 23,
"entPhysicalMfgName": "",
"ifIndex": 12
},
{
"entPhysicalIndex": 68424792,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 24,
"entPhysicalMfgName": "",
"ifIndex": 36
},
{
"entPhysicalIndex": 68428800,
"entPhysicalDescr": "GT_98DX263",
@ -13125,6 +13581,462 @@
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68428865,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 13
},
{
"entPhysicalIndex": 68428866,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 37
},
{
"entPhysicalIndex": 68428867,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 14
},
{
"entPhysicalIndex": 68428868,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 38
},
{
"entPhysicalIndex": 68428869,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 15
},
{
"entPhysicalIndex": 68428870,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 39
},
{
"entPhysicalIndex": 68428871,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 16
},
{
"entPhysicalIndex": 68428872,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 40
},
{
"entPhysicalIndex": 68428873,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 9,
"entPhysicalMfgName": "",
"ifIndex": 17
},
{
"entPhysicalIndex": 68428874,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 10,
"entPhysicalMfgName": "",
"ifIndex": 41
},
{
"entPhysicalIndex": 68428875,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 11,
"entPhysicalMfgName": "",
"ifIndex": 18
},
{
"entPhysicalIndex": 68428876,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 12,
"entPhysicalMfgName": "",
"ifIndex": 42
},
{
"entPhysicalIndex": 68428877,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 13,
"entPhysicalMfgName": "",
"ifIndex": 19
},
{
"entPhysicalIndex": 68428878,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 14,
"entPhysicalMfgName": "",
"ifIndex": 43
},
{
"entPhysicalIndex": 68428879,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 15,
"entPhysicalMfgName": "",
"ifIndex": 20
},
{
"entPhysicalIndex": 68428880,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 16,
"entPhysicalMfgName": "",
"ifIndex": 44
},
{
"entPhysicalIndex": 68428881,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 17,
"entPhysicalMfgName": "",
"ifIndex": 21
},
{
"entPhysicalIndex": 68428882,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 18,
"entPhysicalMfgName": "",
"ifIndex": 45
},
{
"entPhysicalIndex": 68428883,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 19,
"entPhysicalMfgName": "",
"ifIndex": 22
},
{
"entPhysicalIndex": 68428884,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 20,
"entPhysicalMfgName": "",
"ifIndex": 46
},
{
"entPhysicalIndex": 68428885,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 21,
"entPhysicalMfgName": "",
"ifIndex": 23
},
{
"entPhysicalIndex": 68428886,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 22,
"entPhysicalMfgName": "",
"ifIndex": 47
},
{
"entPhysicalIndex": 68428887,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 23,
"entPhysicalMfgName": "",
"ifIndex": 24
},
{
"entPhysicalIndex": 68428888,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68428800,
"entPhysicalParentRelPos": 24,
"entPhysicalMfgName": "",
"ifIndex": 48
},
{
"entPhysicalIndex": 134217856,
"entPhysicalDescr": "SGE2010",

View File

@ -11058,6 +11058,139 @@
"entPhysicalParentRelPos": 24,
"entPhysicalMfgName": "",
"ifIndex": 1
},
{
"entPhysicalIndex": 134217984,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326848,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435712,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 335544576,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 402653440,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 469762304,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 536871168,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 128,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -19,31 +19,5 @@
]
},
"poller": "matches discovery"
},
"entity-physical": {
"discovery": {
"entPhysical": [
{
"entPhysicalIndex": 1,
"entPhysicalDescr": "",
"entPhysicalClass": "",
"entPhysicalName": "SPA112",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "0.00.51",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "SPA112",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},
"poller": "matches discovery"
}
}

File diff suppressed because it is too large Load Diff

View File

@ -25842,39 +25842,39 @@
{
"entPhysicalIndex": 54,
"entPhysicalDescr": "Unit: 0 Port 47 10G Level",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "Te 0/47",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 55,
"entPhysicalDescr": "Unit: 0 Port 48 10G Level",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "Te 0/48",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{

View File

@ -37701,39 +37701,39 @@
{
"entPhysicalIndex": 54,
"entPhysicalDescr": "Unit: 0 Port 47 10G Level",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "Te 0/47",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 55,
"entPhysicalDescr": "Unit: 0 Port 48 10G Level",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "Te 0/48",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{

View File

@ -15486,7 +15486,7 @@
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "Z9100-ON-01-FE-34",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "89PDDZ2",
"entPhysicalSerialNum": "NA",
"entPhysicalContainedIn": 1,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",

View File

@ -3697,9 +3697,9 @@
"entPhysical": [
{
"entPhysicalIndex": 1,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "lo..............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "lo",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3707,7 +3707,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 1,
@ -3716,9 +3716,9 @@
},
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth4............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth4",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3726,7 +3726,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 2,
@ -3735,9 +3735,9 @@
},
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "PORT.......\t....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth5............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth5",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3745,7 +3745,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 3,
@ -3754,9 +3754,9 @@
},
{
"entPhysicalIndex": 4,
"entPhysicalDescr": "PORT.......I....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3764,7 +3764,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 4,
@ -3773,9 +3773,9 @@
},
{
"entPhysicalIndex": 5,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth7............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth7",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3783,7 +3783,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 5,
@ -3792,9 +3792,9 @@
},
{
"entPhysicalIndex": 6,
"entPhysicalDescr": "PORT......m.....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth0............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3802,7 +3802,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 6,
@ -3811,9 +3811,9 @@
},
{
"entPhysicalIndex": 7,
"entPhysicalDescr": "PORT......[\t....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth1............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3821,7 +3821,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 7,
@ -3830,9 +3830,9 @@
},
{
"entPhysicalIndex": 8,
"entPhysicalDescr": "PORT......HI....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth2............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3840,7 +3840,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 8,
@ -3849,9 +3849,9 @@
},
{
"entPhysicalIndex": 9,
"entPhysicalDescr": "PORT......5.....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth3............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth3",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3859,7 +3859,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 9,
@ -3868,9 +3868,9 @@
},
{
"entPhysicalIndex": 10,
"entPhysicalDescr": "PORT......\\.....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "npi0............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "npi0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3878,7 +3878,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 10,
@ -3887,9 +3887,9 @@
},
{
"entPhysicalIndex": 11,
"entPhysicalDescr": "PORT.......\t....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "npi1............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "npi1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3897,7 +3897,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 11,
@ -3906,9 +3906,9 @@
},
{
"entPhysicalIndex": 12,
"entPhysicalDescr": "PORT.......I....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "npi2............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "npi2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3916,7 +3916,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 12,
@ -3925,9 +3925,9 @@
},
{
"entPhysicalIndex": 13,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "npi3............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "npi3",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3935,7 +3935,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 13,
@ -3944,9 +3944,9 @@
},
{
"entPhysicalIndex": 14,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "loop0...........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "loop0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3954,7 +3954,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 14,
@ -3963,9 +3963,9 @@
},
{
"entPhysicalIndex": 15,
"entPhysicalDescr": "PORT.......\t....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "loop1...........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "loop1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3973,7 +3973,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 15,
@ -3982,9 +3982,9 @@
},
{
"entPhysicalIndex": 16,
"entPhysicalDescr": "PORT.......I....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "loop2...........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "loop2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -3992,7 +3992,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 16,
@ -4001,9 +4001,9 @@
},
{
"entPhysicalIndex": 17,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "loop3...........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "loop3",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4011,7 +4011,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 17,
@ -4020,9 +4020,9 @@
},
{
"entPhysicalIndex": 18,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "imq0............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "imq0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4030,7 +4030,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 18,
@ -4039,9 +4039,9 @@
},
{
"entPhysicalIndex": 19,
"entPhysicalDescr": "CHASSIS.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "CHASSIS",
"entPhysicalClass": "chassis",
"entPhysicalName": "CHASSIS.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "CHASSIS",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4049,7 +4049,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -4058,9 +4058,9 @@
},
{
"entPhysicalIndex": 20,
"entPhysicalDescr": "CHASSIS.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "CHASSIS",
"entPhysicalClass": "chassis",
"entPhysicalName": "CHASSIS.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "CHASSIS",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4068,7 +4068,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
@ -4077,9 +4077,9 @@
},
{
"entPhysicalIndex": 21,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6.500........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6.500",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4087,7 +4087,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 19,
@ -4096,9 +4096,9 @@
},
{
"entPhysicalIndex": 22,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6.499........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6.499",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4106,7 +4106,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 20,
@ -4115,9 +4115,9 @@
},
{
"entPhysicalIndex": 23,
"entPhysicalDescr": "PORT.......9....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6.501........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6.501",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4125,7 +4125,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 21,
@ -4134,9 +4134,9 @@
},
{
"entPhysicalIndex": 24,
"entPhysicalDescr": "PORT.......y....\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6.10.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6.10",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4144,7 +4144,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 22,
@ -4153,9 +4153,9 @@
},
{
"entPhysicalIndex": 25,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "eth6.4..........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "eth6.4",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4163,7 +4163,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 23,
@ -4172,9 +4172,9 @@
},
{
"entPhysicalIndex": 26,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "gre0............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "gre0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4182,7 +4182,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 24,
@ -4191,9 +4191,9 @@
},
{
"entPhysicalIndex": 27,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "gretap0.........\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ",
"entPhysicalName": "gretap0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4201,7 +4201,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 25,
@ -4210,9 +4210,9 @@
},
{
"entPhysicalIndex": 28,
"entPhysicalDescr": "PORT............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalDescr": "PORT",
"entPhysicalClass": "port",
"entPhysicalName": "tun0............\n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 \n00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00",
"entPhysicalName": "tun0",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "1.2.0",
@ -4220,7 +4220,7 @@
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "00 00 00 00 00 00 00 00",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 26,

File diff suppressed because it is too large Load Diff

View File

@ -2442,7 +2442,7 @@
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "None",
"entPhysicalAssetID": "",
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "UBNT-USW",
"entPhysicalVendorType": "enterprises.41112.1",

View File

@ -7298,6 +7298,538 @@
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 68424769,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 1,
"entPhysicalMfgName": "",
"ifIndex": 49
},
{
"entPhysicalIndex": 68424770,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": 61
},
{
"entPhysicalIndex": 68424771,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": 50
},
{
"entPhysicalIndex": 68424772,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": 62
},
{
"entPhysicalIndex": 68424773,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": 51
},
{
"entPhysicalIndex": 68424774,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": 63
},
{
"entPhysicalIndex": 68424775,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": 52
},
{
"entPhysicalIndex": 68424776,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": 64
},
{
"entPhysicalIndex": 68424777,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 9,
"entPhysicalMfgName": "",
"ifIndex": 53
},
{
"entPhysicalIndex": 68424778,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 10,
"entPhysicalMfgName": "",
"ifIndex": 65
},
{
"entPhysicalIndex": 68424779,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 11,
"entPhysicalMfgName": "",
"ifIndex": 54
},
{
"entPhysicalIndex": 68424780,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 12,
"entPhysicalMfgName": "",
"ifIndex": 66
},
{
"entPhysicalIndex": 68424781,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 13,
"entPhysicalMfgName": "",
"ifIndex": 55
},
{
"entPhysicalIndex": 68424782,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 14,
"entPhysicalMfgName": "",
"ifIndex": 67
},
{
"entPhysicalIndex": 68424783,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 15,
"entPhysicalMfgName": "",
"ifIndex": 56
},
{
"entPhysicalIndex": 68424784,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 16,
"entPhysicalMfgName": "",
"ifIndex": 68
},
{
"entPhysicalIndex": 68424785,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 17,
"entPhysicalMfgName": "",
"ifIndex": 57
},
{
"entPhysicalIndex": 68424786,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 18,
"entPhysicalMfgName": "",
"ifIndex": 69
},
{
"entPhysicalIndex": 68424787,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 19,
"entPhysicalMfgName": "",
"ifIndex": 58
},
{
"entPhysicalIndex": 68424788,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 20,
"entPhysicalMfgName": "",
"ifIndex": 70
},
{
"entPhysicalIndex": 68424789,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 21,
"entPhysicalMfgName": "",
"ifIndex": 59
},
{
"entPhysicalIndex": 68424790,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 22,
"entPhysicalMfgName": "",
"ifIndex": 71
},
{
"entPhysicalIndex": 68424791,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 23,
"entPhysicalMfgName": "",
"ifIndex": 60
},
{
"entPhysicalIndex": 68424792,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 24,
"entPhysicalMfgName": "",
"ifIndex": 72
},
{
"entPhysicalIndex": 68424793,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 25,
"entPhysicalMfgName": "",
"ifIndex": 73
},
{
"entPhysicalIndex": 68424794,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 26,
"entPhysicalMfgName": "",
"ifIndex": 74
},
{
"entPhysicalIndex": 68424795,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 27,
"entPhysicalMfgName": "",
"ifIndex": 75
},
{
"entPhysicalIndex": 68424796,
"entPhysicalDescr": "",
"entPhysicalClass": "port",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 68424704,
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": 76
}
]
},

View File

@ -9770,23 +9770,23 @@
"ifIndex": null
},
{
"entPhysicalIndex": 105,
"entPhysicalIndex": 1000105,
"entPhysicalDescr": "sfp-sfpplus",
"entPhysicalClass": "sfp-cage",
"entPhysicalName": "LC",
"entPhysicalHardwareRev": "4.0",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "TL-SM311LS(UN)",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "2206324001316",
"entPhysicalContainedIn": 68424793,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "TP-LINK",
"ifIndex": null
"ifIndex": 105
},
{
"entPhysicalIndex": 67108992,
@ -10528,6 +10528,139 @@
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": 108
},
{
"entPhysicalIndex": 134217856,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326720,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435584,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 335544448,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 402653312,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 469762176,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 536871040,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -20464,23 +20464,23 @@
"ifIndex": null
},
{
"entPhysicalIndex": 105,
"entPhysicalIndex": 1000105,
"entPhysicalDescr": "sfp-sfpplus",
"entPhysicalClass": "sfp-cage",
"entPhysicalName": "SC",
"entPhysicalHardwareRev": "\u0000\u0000\u0000\u0000",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": "true",
"entPhysicalModelName": "XBIT-SFP1GWDMA3S",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "H19A07122487",
"entPhysicalContainedIn": 68424793,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "OEM",
"ifIndex": null
"ifIndex": 105
},
{
"entPhysicalIndex": 67108992,
@ -21241,6 +21241,139 @@
"entPhysicalParentRelPos": 28,
"entPhysicalMfgName": "",
"ifIndex": 108
},
{
"entPhysicalIndex": 134217856,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326720,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435584,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 335544448,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 402653312,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 469762176,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 536871040,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -16453,6 +16453,139 @@
"entPhysicalParentRelPos": 26,
"entPhysicalMfgName": "",
"ifIndex": 107
},
{
"entPhysicalIndex": 134217856,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 2,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 201326720,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 3,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 268435584,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 4,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 335544448,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 5,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 402653312,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 6,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 469762176,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 7,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 536871040,
"entPhysicalDescr": "",
"entPhysicalClass": "chassis",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 64,
"entPhysicalParentRelPos": 8,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

View File

@ -43170,39 +43170,39 @@
{
"entPhysicalIndex": 1,
"entPhysicalDescr": "SSR 8020 chassis",
"entPhysicalClass": "",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalClass": null,
"entPhysicalName": null,
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "SSR 8020 backplane SN:DH80092734 Rev:R3L Mfg.Dt:1-JUL-2020 CLEI code:IPMN910JRA MAC address:D0:F0:DB:AC:B8:00",
"entPhysicalClass": "",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalClass": null,
"entPhysicalName": null,
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
}
]

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -4646,96 +4646,96 @@
{
"entPhysicalIndex": 1,
"entPhysicalDescr": "Fortinet FGT_60F, HW Serial#: FGT60FTK00000000",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "FGT_60F",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": "FGT_60F",
"entPhysicalVendorType": "",
"entPhysicalVendorType": null,
"entPhysicalSerialNum": "FGT60FTK00000000",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": null
},
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "Ethernet Port, Vitual Domain: root",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "wan1",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": 1
},
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "Ethernet Port, Vitual Domain: root",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "wan2",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": 2
},
{
"entPhysicalIndex": 4,
"entPhysicalDescr": "Ethernet Port, Vitual Domain: root",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "dmz",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": 3
},
{
"entPhysicalIndex": 5,
"entPhysicalDescr": "Ethernet Port, Vitual Domain: root",
"entPhysicalClass": "",
"entPhysicalClass": null,
"entPhysicalName": "modem",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "",
"entPhysicalModelName": "",
"entPhysicalVendorType": "",
"entPhysicalSerialNum": "",
"entPhysicalHardwareRev": null,
"entPhysicalFirmwareRev": null,
"entPhysicalSoftwareRev": null,
"entPhysicalAlias": null,
"entPhysicalAssetID": null,
"entPhysicalIsFRU": null,
"entPhysicalModelName": null,
"entPhysicalVendorType": null,
"entPhysicalSerialNum": null,
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": 0,
"entPhysicalMfgName": "",
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": null,
"ifIndex": 4
}
]

View File

@ -496,6 +496,291 @@
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "Fortinet",
"ifIndex": null
},
{
"entPhysicalIndex": 2,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 3,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 4,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 5,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 6,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 7,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 8,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 9,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 10,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 11,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 12,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 13,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 14,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 15,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
},
{
"entPhysicalIndex": 16,
"entPhysicalDescr": "",
"entPhysicalClass": "unknown",
"entPhysicalName": "",
"entPhysicalHardwareRev": "",
"entPhysicalFirmwareRev": "",
"entPhysicalSoftwareRev": "",
"entPhysicalAlias": "",
"entPhysicalAssetID": "",
"entPhysicalIsFRU": "false",
"entPhysicalModelName": "",
"entPhysicalVendorType": "zeroDotZero.0",
"entPhysicalSerialNum": "",
"entPhysicalContainedIn": 0,
"entPhysicalParentRelPos": -1,
"entPhysicalMfgName": "",
"ifIndex": null
}
]
},

Some files were not shown because too many files have changed in this diff Show More