Keeping branch up to date with master.

Merge remote-tracking branch 'upstream/master' into lazyload
This commit is contained in:
Travis Hegner 2015-07-13 08:49:36 -04:00
commit eec9cc4275
64 changed files with 63953 additions and 26851 deletions

View File

@ -38,6 +38,7 @@ Contributors to LibreNMS:
- Tony Ditchfield <tony.ditchfield@gmail.com> (arnoldthebat)
- Travis Hegner <travis.hegner@gmail.com> (travishegner)
- Will Jones <email@willjones.eu> (willjones)
- Job Snijders <job@instituut.net> (job)
[1]: http://observium.org/ "Observium web site"

48
cronic Executable file
View File

@ -0,0 +1,48 @@
#!/bin/bash
# Cronic v2 - cron job report wrapper
# Copyright 2007 Chuck Houpt. No rights reserved, whatsoever.
# Public Domain CC0: http://creativecommons.org/publicdomain/zero/1.0/
set -eu
OUT=/tmp/cronic.out.$$
ERR=/tmp/cronic.err.$$
TRACE=/tmp/cronic.trace.$$
set +e
"$@" >$OUT 2>$TRACE
RESULT=$?
set -e
PATTERN="^${PS4:0:1}\\+${PS4:1}"
if grep -aq "$PATTERN" $TRACE
then
! grep -av "$PATTERN" $TRACE > $ERR
else
ERR=$TRACE
fi
if [ $RESULT -ne 0 -o -s "$ERR" ]
then
echo "Cronic detected failure or error output for the command:"
echo "$@"
echo
echo "RESULT CODE: $RESULT"
echo
echo "ERROR OUTPUT:"
cat "$ERR"
echo
echo "STANDARD OUTPUT:"
cat "$OUT"
if [ $TRACE != $ERR ]
then
echo
echo "TRACE-ERROR OUTPUT:"
cat "$TRACE"
fi
fi
rm -f "$OUT"
rm -f "$ERR"
rm -f "$TRACE"

View File

@ -99,10 +99,9 @@ include("includes/sql-schema/update.php");
$discovered_devices = 0;
if ($config['distributed_poller'] === TRUE) {
$where .= " AND poller_group IN(?)";
$params = array($config['distributed_poller_group']);
$where .= " AND poller_group IN(".$config['distributed_poller_group'].")";
}
foreach (dbFetch("SELECT * FROM `devices` WHERE status = 1 AND disabled = 0 $where ORDER BY device_id DESC",$params) as $device)
foreach (dbFetch("SELECT * FROM `devices` WHERE status = 1 AND disabled = 0 $where ORDER BY device_id DESC") as $device)
{
discover_device($device, $options);
}

View File

@ -37,6 +37,21 @@ if ($foo == 5) {
}
```
Start else and elsif on new lines, e.g.
```php
if ($foo == 5) {
echo 'foo is 5';
}
elsif ($foo == 4) {
echo 'foo is 4';
}
else {
echo 'foo is something else';
}
```
This makes diffs much cleaner when moving around blocks of code.
### Including files
Using parenthesis around file includes isn't required, instead just place the file in between ''
```php

View File

@ -3,7 +3,7 @@
MIB-based polling is experimental. It might overload your LibreNMS server,
destroy your data, set your routers on fire, and kick your cat. It has been
tested against a very limited set of devices (namely Ruckus ZD1000 wireless
controllers, and Net-SNMP on Linux). It may fail badly on other hardware.
controllers, and `net-snmp` on Linux). It may fail badly on other hardware.
The approach taken is fairly basic and I claim no special expertise in
understanding MIBs. Most of my understanding of SNMP comes from reading
@ -18,7 +18,7 @@ Paul Gear <paul@librenms.org>
MIB-based polling is disabled by default; you must set
`$config['poller_modules']['mib'] = 1;`
in config.php to enable it.
in `config.php` to enable it.
The components involved in of MIB-based support are:
@ -41,7 +41,7 @@ The components involved in of MIB-based support are:
- updates/adds graph definitions in the previously-unused graph_types
database table
- Individual OSes (`includes/polling/os/*.inc.php`) can poll extra MIBs
for a given OS by calling poll_mib(). At the moment, this actually
for a given OS by calling `poll_mib()`. At the moment, this actually
happens before the general MIB polling.
- Devices may be excluded from MIB polling by changing the setting in the
device edit screen (`/device/device=ID/tab=edit/section=modules/`)
@ -73,17 +73,16 @@ gather the data you want.
3. Check that `snmptranslate -Td -On -M mibs -m MODULE MODULE::mibName`
produces a parsed description of the OID values. An example can be
found in the comments for `snmp_mib_parse()` in `includes/snmp.inc.php`.
4. Get the `sysObjectID` from a device, for example:```
snmpget -v2c -c public -OUsb -m SNMPv2-MIB -M /opt/librenms/mibs -t 30 hostname sysObjectID.0
```
4. Get the `sysObjectID` from a device, for example:
```snmpget -v2c -c public -OUsb -m SNMPv2-MIB -M /opt/librenms/mibs -t 30 hostname sysObjectID.0```
5. Ensure `snmptranslate -m all -M /opt/librenms/mibs OID 2>/dev/null`
(where OID is the value returned for sysObjectID above) results in a
valid name for the MIB. See the comments for `snmp_translate()` in
`includes/snmp.inc.php` for an example. If this step fails, it means
there is something wrong with the MIB and net-snmp cannot parse it.
there is something wrong with the MIB and `net-snmp` cannot parse it.
6. Add any additional MIBs you wish to poll for specific device types to
`includes/polling/os/OSNAME.inc.php` by calling `poll_mibs()` with the
MIB module and name. See includes/polling/os/ruckuswireless.inc.php for
MIB module and name. See `includes/polling/os/ruckuswireless.inc.php` for
an example.
7. That should be all you need to see MIB graphs!
@ -99,4 +98,3 @@ snmpget -v2c -c public -OUsb -m SNMPv2-MIB -M /opt/librenms/mibs -t 30 hostname
- Combine multiple MIB values into graphs automatically on a predefined or
user-defined basis.
- Include MIB types in stats submissions.

View File

@ -7,8 +7,8 @@ NOTE: These instructions assume you are the root user. If you are not, prepend
yum install net-snmp mysql-server
service snmpd start
service mysqld start
chkconfig --levels 235 mysqld on
chkconfig --levels 235 snmpd on
chkconfig mysqld on
chkconfig snmpd on
mysql_secure_installation
mysql -uroot -p
@ -46,7 +46,7 @@ Install necessary software. The packages listed below are an all-inclusive list
Note if not using HTTPd (Apache): RHEL requires `httpd` to be installed regardless of of `nginx`'s (or any other web-server's) presence.
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum install epel-release
yum install php php-cli php-gd php-mysql php-snmp php-pear php-curl httpd net-snmp graphviz graphviz-php mysql ImageMagick jwhois nmap mtr rrdtool MySQL-python net-snmp-utils vixie-cron php-mcrypt fping git
pear install Net_IPv4-1.3.4
pear install Net_IPv6-1.2.2b2
@ -87,8 +87,8 @@ If the file `/etc/httpd/conf.d/welcome.conf` exists, you might want to remove th
Install necessary extra software and let it start on system boot.
yum install nginx php-fpm
chkconfig --levels 235 nginx on
chkconfig --levels 235 php-fpm on
chkconfig nginx on
chkconfig php-fpm on
Modify permissions and configuration for `php-fpm` to use nginx credentials.

View File

@ -23,8 +23,6 @@ $desc = mres($_POST['desc']);
if( is_array($pattern) ) {
$pattern = implode(" ", $pattern);
$pattern = rtrim($pattern,'&&');
$pattern = rtrim($pattern,'||');
} elseif( !empty($_POST['pattern']) && !empty($_POST['condition']) && !empty($_POST['value']) ) {
$pattern = '%'.$_POST['pattern'].' '.$_POST['condition'].' ';
if( is_numeric($_POST['value']) ) {

View File

@ -22,7 +22,11 @@ if(is_numeric($group_id) && $group_id > 0) {
$group = dbFetchRow("SELECT * FROM `device_groups` WHERE `id` = ? LIMIT 1",array($group_id));
$group_split = preg_split('/([a-zA-Z0-9_\-\.\=\%\<\>\ \"\'\!\~\(\)\*\/\@\[\]]+[&&\|\|]+)/',$group['pattern'], -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
$count = count($group_split) - 1;
$group_split[$count] = $group_split[$count].' &&';
if (preg_match("/\&\&$/",$group_split[$count]) == 1 || preg_match("/\|\|$/", $group_split[$count]) == 1) {
$group_split[$count] = $group_split[$count];
} else {
$group_split[$count] = $group_split[$count].' &&';
}
$output = array('name'=>$group['name'],'desc'=>$group['desc'],'pattern'=>$group_split);
echo _json_encode($output);
}

BIN
html/images/os/meraki.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -2,13 +2,12 @@
$scale_min = 0;
include("includes/graphs/common.inc.php");
require "includes/graphs/common.inc.php";
$agent_rrd = $config['rrd_dir'] . "/" . $device['hostname'] . "/agent.rrd";
if (is_file($agent_rrd))
{
$rrd_filename = $agent_rrd;
if (is_file($agent_rrd)) {
$rrd_filename = $agent_rrd;
}
$ds = "time";
@ -19,9 +18,11 @@ $colour_line = "36393D";
$colour_area_max = "FFEE99";
$graph_max = 1;
$multiplier = 1000;
$multiplier_action = "/";
$unit_text = "msec";
$unit_text = "Seconds";
include("includes/graphs/generic_simplex.inc.php");
require "includes/graphs/generic_simplex.inc.php";
?>

View File

@ -19,9 +19,12 @@ if ($multiplier)
$rrd_options .= " DEF:".$ds."_max_o=".$rrd_filename.":".$ds.":MAX";
$rrd_options .= " DEF:".$ds."_min_o=".$rrd_filename.":".$ds.":MIN";
$rrd_options .= " CDEF:".$ds."=".$ds."_o,$multiplier,*";
$rrd_options .= " CDEF:".$ds."_max=".$ds."_max_o,$multiplier,*";
$rrd_options .= " CDEF:".$ds."_min=".$ds."_min_o,$multiplier,*";
if (empty($multiplier_action)) {
$multiplier_action = "*";
}
$rrd_options .= " CDEF:".$ds."=".$ds."_o,$multiplier,$multiplier_action";
$rrd_options .= " CDEF:".$ds."_max=".$ds."_max_o,$multiplier,$multiplier_action";
$rrd_options .= " CDEF:".$ds."_min=".$ds."_min_o,$multiplier,$multiplier_action";
} else {
$rrd_options .= " DEF:".$ds."=".$rrd_filename.":".$ds.":AVERAGE";
$rrd_options .= " DEF:".$ds."_max=".$rrd_filename.":".$ds.":MAX";
@ -45,8 +48,11 @@ if($_GET['previous'] == "yes")
$rrd_options .= " DEF:".$ds."_max_oX=".$rrd_filename.":".$ds.":MAX:start=".$prev_from.":end=".$from;
$rrd_options .= " SHIFT:".$ds."_oX:$period";
$rrd_options .= " SHIFT:".$ds."_max_oX:$period";
$rrd_options .= " CDEF:".$ds."X=".$ds."_oX,$multiplier,*";
$rrd_options .= " CDEF:".$ds."_maxX=".$ds."_max_oX,$multiplier,*";
if (empty($multiplier_action)) {
$multiplier_action = "*";
}
$rrd_options .= " CDEF:".$ds."X=".$ds."_oX,$multiplier,$multiplier_action";
$rrd_options .= " CDEF:".$ds."_maxX=".$ds."_max_oX,$multiplier,$multiplier_action";
} else {
$rrd_options .= " DEF:".$ds."X=".$rrd_filename.":".$ds.":AVERAGE:start=".$prev_from.":end=".$from;
$rrd_options .= " DEF:".$ds."_maxX=".$rrd_filename.":".$ds.":MAX:start=".$prev_from.":end=".$from;

View File

@ -10,8 +10,11 @@ $line_text = str_pad(truncate($line_text,12,''),12);
if ($multiplier)
{
if (empty($multiplier_action)) {
$multiplier_action = "*";
}
$rrd_options .= " DEF:".$ds."_o=".$rrd_filename.":".$ds.":AVERAGE";
$rrd_options .= " CDEF:".$ds."=".$ds."_o,$multiplier,*";
$rrd_options .= " CDEF:".$ds."=".$ds."_o,$multiplier,$multiplier_action";
} else {
$rrd_options .= " DEF:".$ds."=".$rrd_filename.":".$ds.":AVERAGE";
}
@ -29,6 +32,9 @@ if($_GET['previous'] == "yes")
{
if ($multiplier)
{
if (empty($multiplier_action)) {
$multiplier_action = "*";
}
$rrd_options .= " DEF:".$ds."_oX=".$rrd_filename.":".$ds.":AVERAGE:start=".$prev_from.":end=".$from;
$rrd_options .= " SHIFT:".$ds."_oX:$period";
$rrd_options .= " CDEF:".$ds."X=".$ds."_oX,$multiplier,*";

View File

@ -1,11 +1,18 @@
<?php
$where = 1;
$param = array();
if (is_admin() === FALSE && is_read() === FALSE) {
$perms_sql .= " LEFT JOIN `devices_perms` AS `DP` ON `D`.`device_id` = `DP`.`device_id`";
$where .= " AND `DP`.`user_id`=?";
$param[] = array($_SESSION['user_id']);
}
list($address,$prefix) = explode("/", $_POST['address']);
if ($_POST['search_type'] == 'ipv4') {
$sql = " FROM `ipv4_addresses` AS A, `ports` AS I, `devices` AS D, `ipv4_networks` AS N WHERE I.port_id = A.port_id AND I.device_id = D.device_id AND N.ipv4_network_id = A.ipv4_network_id ";
$sql = " FROM `ipv4_addresses` AS A, `ports` AS I, `ipv4_networks` AS N, `devices` AS D";
$sql .= $perms_sql;
$sql .= " WHERE I.port_id = A.port_id AND I.device_id = D.device_id AND N.ipv4_network_id = A.ipv4_network_id $where ";
if (!empty($address)) {
$sql .= " AND ipv4_address LIKE '%".$address."%'";
}
@ -14,7 +21,9 @@ if ($_POST['search_type'] == 'ipv4') {
$param[] = array($prefix);
}
} elseif ($_POST['search_type'] == 'ipv6') {
$sql = " FROM `ipv6_addresses` AS A, `ports` AS I, `devices` AS D, `ipv6_networks` AS N WHERE I.port_id = A.port_id AND I.device_id = D.device_id AND N.ipv6_network_id = A.ipv6_network_id ";
$sql = " FROM `ipv6_addresses` AS A, `ports` AS I, `ipv6_networks` AS N, `devices` AS D";
$sql .= $perms_sql;
$sql .= " WHERE I.port_id = A.port_id AND I.device_id = D.device_id AND N.ipv6_network_id = A.ipv6_network_id $where ";
if (!empty($address)) {
$sql .= " AND (ipv6_address LIKE '%".$address."%' OR ipv6_compressed LIKE '%".$address."%')";
}
@ -22,8 +31,9 @@ if ($_POST['search_type'] == 'ipv4') {
$sql .= " AND ipv6_prefixlen = '$prefix'";
}
} elseif ($_POST['search_type'] == 'mac') {
$sql = " FROM `ports` AS I, `devices` AS D WHERE I.device_id = D.device_id AND `ifPhysAddress` LIKE '%?%' ";
$param[] = array("%".str_replace(array(':', ' ', '-', '.', '0x'),'',mres($_POST['address']))."%");
$sql = " FROM `ports` AS I, `devices` AS D";
$sql .= $perms_sql;
$sql .= " WHERE I.device_id = D.device_id AND `ifPhysAddress` LIKE '%".str_replace(array(':', ' ', '-', '.', '0x'),'',mres($_POST['address']))."%' $where ";
}
if (is_numeric($_POST['device_id'])) {
$sql .= " AND I.device_id = ?";

View File

@ -7,10 +7,18 @@ if (is_numeric($_POST['device_id']) && $_POST['device_id'] > 0) {
}
if (isset($searchPhrase) && !empty($searchPhrase)) {
$sql .= " AND (`timestamp` LIKE '%$searchPhrase%' OR `rule` LIKE '%$searchPhrase%' OR `name` LIKE '%$searchPhrase%' OR `hostname` LIKE '%$searchPhrase%')";
$sql_search .= " AND (`timestamp` LIKE '%$searchPhrase%' OR `rule` LIKE '%$searchPhrase%' OR `name` LIKE '%$searchPhrase%' OR `hostname` LIKE '%$searchPhrase%')";
}
$sql = " FROM `alerts` LEFT JOIN `devices` ON `alerts`.`device_id`=`devices`.`device_id` RIGHT JOIN alert_rules ON alerts.rule_id=alert_rules.id WHERE $where AND `state` IN (1,2,3,4) $sql";
$sql = " FROM `alerts` LEFT JOIN `devices` ON `alerts`.`device_id`=`devices`.`device_id`";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `devices`.`device_id` = `DP`.`device_id`";
$where .= " AND `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " RIGHT JOIN alert_rules ON alerts.rule_id=alert_rules.id WHERE $where AND `state` IN (1,2,3,4) $sql_search";
$count_sql = "SELECT COUNT(`alerts`.`id`) $sql";
$total = dbFetchCell($count_sql,$param);
@ -78,14 +86,12 @@ foreach (dbFetchRows($sql,$param) as $alert) {
$severity .= " <strong>-</strong>";
}
if ($_SESSION['userlevel'] >= '10') {
$ack_ico = 'volume-up';
$ack_col = 'success';
if($alert['state'] == 2) {
$ack_ico = 'volume-off';
$ack_col = 'danger';
}
}
$ack_ico = 'volume-up';
$ack_col = 'success';
if($alert['state'] == 2) {
$ack_ico = 'volume-off';
$ack_col = 'danger';
}
$hostname = '
<div class="incident">

View File

@ -2,14 +2,22 @@
$param = array();
$sql = " FROM `ipv4_mac` AS M, `ports` AS P, `devices` AS D WHERE M.port_id = P.port_id AND P.device_id = D.device_id ";
$sql .= " FROM `ipv4_mac` AS M, `ports` AS P, `devices` AS D ";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `D`.`device_id` = `DP`.`device_id`";
$where .= " AND `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " WHERE M.port_id = P.port_id AND P.device_id = D.device_id $where ";
if (isset($_POST['searchby']) && $_POST['searchby'] == "ip") {
$sql .= " AND `ipv4_address` LIKE ?";
$param = array("%".trim($_POST['address'])."%");
$param[] = "%".trim($_POST['address'])."%";
} elseif (isset($_POST['searchby']) && $_POST['searchby'] == "mac") {
$sql .= " AND `mac_address` LIKE ?";
$param = array("%".str_replace(array(':', ' ', '-', '.', '0x'),'',mres($_POST['address']))."%");
$param[] = "%".str_replace(array(':', ' ', '-', '.', '0x'),'',mres($_POST['address']))."%";
}
if (is_numeric($_POST['device_id'])) {
@ -70,7 +78,7 @@ foreach (dbFetchRows($sql, $param) as $entry) {
$response[] = array('mac_address'=>formatMac($entry['mac_address']),
'ipv4_address'=>$entry['ipv4_address'],
'hostname'=>generate_device_link($entry),
'interface'=>generate_port_link($entry, makeshortif(fixifname(ifLabel($entry)['label']))) . ' ' . $error_img,
'interface'=>generate_port_link($entry, makeshortif(fixifname(ifLabel($entry['label'])))) . ' ' . $error_img,
'remote_device'=>$arp_name,
'remote_interface'=>$arp_if);
}

View File

@ -199,17 +199,7 @@ $query .= " ORDER BY hostname";
</div>
<script>
var grid = $("#devices").bootgrid({
ajax: true,
rowCount: [50,100,250,-1],
columnSelection: false,
formatters: {
"status": function(column,row) {
return "<h4><span class='label label-"+row.extra+" threeqtr-width'>" + row.msg + "</span></h4>";
}
},
templates: {
header: "<div id=\"{{ctx.id}}\" class=\"{{css.header}}\"><div class=\"row\">"+
searchbar = "<div id=\"{{ctx.id}}\" class=\"{{css.header}}\"><div class=\"row\">"+
"<div class=\"col-sm-9 actionBar\"><span class=\"pull-left\"><form method=\"post\" action=\"\" class=\"form-inline\" role=\"form\">"+
"<span class=\"pull-left\"><div class=\"form-group\">"+
"<input type=\"text\" name=\"hostname\" id=\"hostname\" value=\"<?php echo($vars['hostname']); ?>\" class=\"form-control input-sm\" placeholder=\"Hostname\"/>"+
@ -365,6 +355,24 @@ foreach (dbFetch($sql,$param) as $data) {
"</div>"+
"</form></span></div>"+
"<div class=\"col-sm-3 actionBar\"><p class=\"{{css.actions}}\"></p></div></div></div>"
<?php
if (isset($vars['searchbar']) && $vars['searchbar'] == "hide") {
echo "searchbar = ''";
}
?>
var grid = $("#devices").bootgrid({
ajax: true,
rowCount: [50,100,250,-1],
columnSelection: false,
formatters: {
"status": function(column,row) {
return "<h4><span class='label label-"+row.extra+" threeqtr-width'>" + row.msg + "</span></h4>";
}
},
templates: {
header: searchbar
},
post: function ()
{

View File

@ -140,7 +140,7 @@ else
$where .= " AND (B.bgpPeerAdminStatus = 'stop')";
} elseif ($vars['adminstatus'] == "start")
{
$where .= " AND (B.bgpPeerAdminStatus = 'start')";
$where .= " AND (B.bgpPeerAdminStatus = 'start' || B.bgpPeerAdminStatus = 'running')";
}
if ($vars['state'] == "down")

View File

@ -30,7 +30,16 @@ var grid = $("#arp-search").bootgrid({
<?php
// Select the devices only with ARP tables
foreach (dbFetchRows("SELECT D.device_id AS device_id, `hostname` FROM `ipv4_mac` AS M, `ports` AS P, `devices` AS D WHERE M.port_id = P.port_id AND P.device_id = D.device_id GROUP BY `device_id` ORDER BY `hostname`") as $data) {
$sql = "SELECT D.device_id AS device_id, `hostname` FROM `ipv4_mac` AS M, `ports` AS P, `devices` AS D";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `D`.`device_id` = `DP`.`device_id`";
$where .= " AND `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " WHERE M.port_id = P.port_id AND P.device_id = D.device_id $where GROUP BY `device_id` ORDER BY `hostname`";
foreach (dbFetchRows($sql,$param) as $data) {
echo('"<option value=\"'.$data['device_id'].'\""+');
if ($data['device_id'] == $_POST['device_id']) {
echo('" selected "+');

View File

@ -26,7 +26,18 @@ var grid = $("#ipv4-search").bootgrid({
"<select name=\"device_id\" id=\"device_id\" class=\"form-control input-sm\">"+
"<option value=\"\">All Devices</option>"+
<?php
foreach (dbFetchRows("SELECT `device_id`,`hostname` FROM `devices` GROUP BY `hostname` ORDER BY `hostname`") as $data) {
$sql = "SELECT `devices`.`device_id`,`hostname` FROM `devices`";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `devices`.`device_id` = `DP`.`device_id`";
$where .= " WHERE `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " $where GROUP BY `hostname` ORDER BY `hostname`";
foreach (dbFetchRows($sql,$param) as $data) {
echo('"<option value=\"'.$data['device_id'].'\""+');
if ($data['device_id'] == $_POST['device_id']) {
echo('" selected "+');

View File

@ -25,7 +25,18 @@ var grid = $("#ipv6-search").bootgrid({
"<select name=\"device_id\" id=\"device_id\" class=\"form-control input-sm\">"+
"<option value=\"\">All Devices</option>"+
<?php
foreach (dbFetchRows("SELECT `device_id`,`hostname` FROM `devices` GROUP BY `hostname` ORDER BY `hostname`") as $data) {
$sql = "SELECT `devices`.`device_id`,`hostname` FROM `devices`";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `devices`.`device_id` = `DP`.`device_id`";
$where .= " WHERE `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " $where GROUP BY `hostname` ORDER BY `hostname`";
foreach (dbFetchRows($sql,$param) as $data) {
echo('"<option value=\"'.$data['device_id'].'\""+');
if ($data['device_id'] == $_POST['device_id']) {
echo('" selected"+');

View File

@ -26,7 +26,16 @@ var grid = $("#mac-search").bootgrid({
"<select name=\"device_id\" id=\"device_id\" class=\"form-control input-sm\">"+
"<option value=\"\">All Devices</option>"+
<?php
foreach (dbFetchRows("SELECT `device_id`,`hostname` FROM `devices` GROUP BY `hostname` ORDER BY `hostname`") as $data) {
$sql = "SELECT `devices`.`device_id`,`hostname` FROM `devices`";
if (is_admin() === FALSE && is_read() === FALSE) {
$sql .= " LEFT JOIN `devices_perms` AS `DP` ON `devices`.`device_id` = `DP`.`device_id`";
$where .= " WHERE `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$sql .= " $where GROUP BY `hostname` ORDER BY `hostname`";
foreach (dbFetchRows($sql,$param) as $data) {
echo('"<option value=\"'.$data['device_id'].'\""+');
if ($data['device_id'] == $_POST['device_id']) {
echo('" selected "+');

View File

@ -70,9 +70,18 @@ if(isset($_POST['results_amount']) && $_POST['results_amount'] > 0) {
$count_query = "SELECT COUNT(*) FROM ( ";
$full_query = "";
$query = 'SELECT packages.name FROM packages,devices WHERE packages.device_id = devices.device_id AND packages.name LIKE "%'.mres($_POST['package']).'%" GROUP BY packages.name';
$where = '';
$query = 'SELECT packages.name FROM packages,devices ';
$param = array();
if (is_admin() === FALSE && is_read() === FALSE) {
$query .= " LEFT JOIN `devices_perms` AS `DP` ON `devices`.`device_id` = `DP`.`device_id`";
$sql_where .= " AND `DP`.`user_id`=?";
$param[] = $_SESSION['user_id'];
}
$query .= " WHERE packages.device_id = devices.device_id AND packages.name LIKE '%".mres($_POST['package'])."%' $sql_where GROUP BY packages.name";
$where = '';
$ver = "";
$opt = "";

View File

@ -408,7 +408,18 @@ $config['os'][$os]['over'][2]['graph'] = "device_mempool";
$config['os'][$os]['over'][2]['text'] = "Memory Usage";
$config['os'][$os]['icon'] = "cisco";
// Brocade NOS
$os = "nos";
$config['os'][$os]['text'] = "Brocade NOS";
$config['os'][$os]['type'] = "network";
$config['os'][$os]['ifname'] = 1;
$config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic";
$config['os'][$os]['over'][1]['graph'] = "device_processor";
$config['os'][$os]['over'][1]['text'] = "CPU Usage";
$config['os'][$os]['over'][2]['graph'] = "device_mempool";
$config['os'][$os]['over'][2]['text'] = "Memory Usage";
$config['os'][$os]['icon'] = "brocade";
// Cisco Small Business
@ -669,6 +680,7 @@ $config['os'][$os]['over'][0]['text'] = "Device Traffic";
$os = "drac";
$config['os'][$os]['text'] = "Dell DRAC";
$config['os'][$os]['icon'] = "dell";
$config['os'][$os]['type'] = "server";
$os = "bcm963";
$config['os'][$os]['text'] = "Broadcom BCM963xx";
@ -1189,6 +1201,31 @@ foreach ($config['os'] as $this_os => $blah)
}
}
// Meraki Devices
$os = "merakimx";
$config['os'][$os]['text'] = "Meraki MX Appliance";
$config['os'][$os]['type'] = "firewall";
$config['os'][$os]['icon'] = "meraki";
$config['os'][$os]['ifname'] = 1;
$config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic";
$os = "merakimr";
$config['os'][$os]['text'] = "Meraki AP";
$config['os'][$os]['type'] = "wireless";
$config['os'][$os]['icon'] = "meraki";
$config['os'][$os]['ifname'] = 1;
$config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic";
$os = "merakims";
$config['os'][$os]['text'] = "Meraki Switch";
$config['os'][$os]['type'] = "network";
$config['os'][$os]['icon'] = "meraki";
$config['os'][$os]['ifname'] = 1;
$config['os'][$os]['over'][0]['graph'] = "device_bits";
$config['os'][$os]['over'][0]['text'] = "Device Traffic";
// Graph Types
include_once($config['install_dir'] . "/includes/load_db_graph_types.inc.php");
@ -1553,7 +1590,7 @@ $config['graph_types']['device']['wifi_clients']['section'] = 'wireless';
$config['graph_types']['device']['wifi_clients']['order'] = '0';
$config['graph_types']['device']['wifi_clients']['descr'] = 'Wireless Clients';
$config['graph_types']['device']['agent']['section'] = 'system';
$config['graph_types']['device']['agent']['section'] = 'poller';
$config['graph_types']['device']['agent']['order'] = '0';
$config['graph_types']['device']['agent']['descr'] = 'Agent Execution Time';

View File

@ -63,6 +63,8 @@ function GenGroupSQL($pattern,$search='') {
*/
function GetDevicesFromGroup($group_id) {
$pattern = dbFetchCell("SELECT pattern FROM device_groups WHERE id = ?",array($group_id));
$pattern = rtrim($pattern,'&&');
$pattern = rtrim($pattern,'||');
if( !empty($pattern) ) {
return dbFetchRows(GenGroupSQL($pattern));
}

View File

@ -93,6 +93,10 @@ if ($config['enable_bgp'])
if (dbFetchCell("SELECT COUNT(*) from `bgpPeers` WHERE device_id = ? AND bgpPeerIdentifier = ?",array($device['device_id'], $peer['ip'])) < '1')
{
$add = dbInsert(array('device_id' => $device['device_id'], 'bgpPeerIdentifier' => $peer['ip'], 'bgpPeerRemoteAs' => $peer['as']), 'bgpPeers');
if ($config['autodiscovery']['bgp'] === true) {
$name = gethostbyaddr($peer['ip']);
$remote_device_id = discover_new_device($name,$device,'BGP');
}
echo("+");
} else {
$update = dbUpdate(array('bgpPeerRemoteAs' => $peer['as'], 'astext' => mres($astext)), 'bgpPeers', 'device_id=? AND bgpPeerIdentifier=?',array($device['device_id'],$peer['ip']));

View File

@ -69,29 +69,16 @@ foreach (dbFetchRows($sql, array($deviceid)) as $entry)
}
arp_discovery_add_cache($ip);
// Log reverse DNS failures so the administrator can take action.
$name = gethostbyaddr($ip);
if ($name != $ip) { // gethostbyaddr returns the original argument on failure
echo("+");
$names[] = $name;
$ips[$name] = $ip;
}
else {
echo("-");
log_event("ARP discovery of $ip failed due to absent reverse DNS", $deviceid, 'interface', $if);
}
echo("+");
$names[] = $name;
$ips[$name] = $ip;
}
echo("\n");
// Run device discovery on each of the devices we've detected so far.
foreach ($names as $name) {
$remote_device_id = discover_new_device($name);
if ($remote_device_id) {
log_event("Device $name (" . $ips[$name] .") autodiscovered through ARP on $hostname", $remote_device_id, 'interface', $if);
}
else {
log_event("ARP discovery of $name (" . $ips[$name] . ") failed - check ping and SNMP access", $deviceid, 'interface', $if);
}
$remote_device_id = discover_new_device($name,$device,'ARP');
}
unset($names);

View File

@ -24,12 +24,7 @@ if ($device['os'] == "ironware" && $config['autodiscovery']['xdp'] === TRUE)
if (!$remote_device_id)
{
$remote_device_id = discover_new_device($fdp['snFdpCacheDeviceId']);
if ($remote_device_id)
{
$int = ifNameDescr($interface);
log_event("Device autodiscovered through FDP on " . $device['hostname'] . " (port " . $int['label'] . ")", $remote_device_id, 'interface', $int['port_id']);
}
$remote_device_id = discover_new_device($fdp['snFdpCacheDeviceId'], $device,'FDP', $interface);
}
if ($remote_device_id)
@ -63,12 +58,7 @@ if ($cdp_array && $config['autodiscovery']['xdp'] === TRUE)
if (!$remote_device_id)
{
$remote_device_id = discover_new_device($cdp['cdpCacheDeviceId']);
if ($remote_device_id)
{
$int = ifNameDescr($interface);
log_event("Device autodiscovered through CDP on " . $device['hostname'] . " (port " . $int['label'] . ")", $remote_device_id, 'interface', $int['port_id']);
}
$remote_device_id = discover_new_device($cdp['cdpCacheDeviceId'], $device, 'CDP', $interface);
}
if ($remote_device_id)
@ -119,12 +109,7 @@ if ($lldp_array && $config['autodiscovery']['xdp'] === TRUE)
if (!$remote_device_id && is_valid_hostname($lldp['lldpRemSysName']))
{
$remote_device_id = discover_new_device($lldp['lldpRemSysName']);
if ($remote_device_id)
{
$int = ifNameDescr($interface);
log_event("Device autodiscovered through LLDP on " . $device['hostname'] . " (port " . $int['label'] . ")", $remote_device_id, 'interface', $int['port_id']);
}
$remote_device_id = discover_new_device($lldp['lldpRemSysName'], $device, 'LLDP',$interface);
}
if ($remote_device_id)
@ -159,12 +144,7 @@ if ($config['autodiscovery']['ospf'] === TRUE) {
continue;
}
$name = gethostbyaddr($ip);
$remote_device_id = discover_new_device($name);
if (isset($remote_device_id) && $remote_device_id > 0) {
log_event("Device $name ($ip) autodiscovered through OSPF", $remote_device_id, 'system');
} else {
log_event("OSPF discovery of $name ($ip) failed - check ping and SNMP access", $device['device_id'], 'system');
}
$remote_device_id = discover_new_device($name, $device, 'OSPF');
}
} else {
echo "disabled\n";

View File

@ -0,0 +1,29 @@
<?php
if ($device['os'] == "drac") {
$oids = snmp_walk($device, "coolingDevicechassisIndex.1", "-OsqnU", "IDRAC-MIB-SMIv2");
if ($debug) {
echo($oids."\n");
}
$oids = trim($oids);
if ($oids) {
echo("Dell iDRAC");
}
foreach (explode("\n", $oids) as $data) {
$data = trim($data);
if ($data) {
list($oid,$kind) = explode(" ", $data);
$split_oid = explode('.',$oid);
$index = $split_oid[count($split_oid)-1];
$fan_oid = ".1.3.6.1.4.1.674.10892.5.4.700.12.1.6.1.$index";
$descr_oid = "coolingDeviceLocationName.1.$index";
$limit_oid = "coolingDeviceLowerCriticalThreshold.1.$index";
$descr = trim(snmp_get($device, $descr_oid, "-Oqv", "IDRAC-MIB-SMIv2"),'"');
$descr = preg_replace("/(Board | MOD )/","", $descr);
$current = snmp_get($device, $fan_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$low_limit = snmp_get($device, $limit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$divisor = "1";
discover_sensor($valid['sensor'], 'fanspeed', $device, $fan_oid, $index, 'drac', $descr, $divisor, '1', $low_limit, NULL, NULL, NULL, $current);
}
}
}

View File

@ -11,7 +11,7 @@
* See COPYING for more details.
*/
function discover_new_device($hostname)
function discover_new_device($hostname,$device='',$method='', $interface='')
{
global $config, $debug;
@ -22,12 +22,14 @@ function discover_new_device($hostname)
}
if ($debug) { echo("discovering $dst_host\n"); }
$ip = gethostbyname($dst_host);
if ($ip == $dst_host) {
if ($debug) { echo("name lookup of $dst_host failed\n"); }
return FALSE;
} else {
if ($debug) { echo("ip lookup result: $ip\n"); }
if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) === FALSE && filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6) === FALSE) {
// $ip isn't a valid IP so it must be a name.
if ($ip == $dst_host) {
if ($debug) { echo("name lookup of $dst_host failed\n"); }
return FALSE;
}
}
if ($debug) { echo("ip lookup result: $ip\n"); }
$dst_host = rtrim($dst_host, '.'); // remove trailing dot
@ -44,6 +46,16 @@ function discover_new_device($hostname)
echo("+[".$remote_device['hostname']."(".$remote_device['device_id'].")]");
discover_device($remote_device);
device_by_id_cache($remote_device_id, 1);
if ($remote_device_id && is_array($device) && !empty($method)) {
$extra_log = '';
$int = ifNameDescr($interface);
if (is_array($int)) {
$extra_log = " (port " . $int['label'] . ") ";
}
log_event("Device $". $remote_device['hostname'] ." ($ip) $extra_log autodiscovered through $method on ".$device['hostname'], $remote_device_id, 'system');
} else {
log_event("$method discovery of ". $remote_device['hostname'] ." ($ip) failed - check ping and SNMP access", $device['device_id'], 'system');
}
return $remote_device_id;
}
} else {

View File

@ -1,8 +1,12 @@
<?php
if (!$os)
{
if (strstr($sysDescr, "Dell Out-of-band SNMP Agent for Remote Access Controller")) { $os = "drac"; }
if (!$os) {
#DRAC5, iDRAC6 - 1.3.6.1.4.1.674.10892.2
#iDRAC7, iDRAC8 - 1.3.6.1.4.1.674.10892.5
if (strstr($sysDescr, "Dell Out-of-band SNMP Agent for Remote Access Controller") || strstr($sysObjectId, "1.3.6.1.4.1.674.10892.2") || strstr($sysObjectId, "1.3.6.1.4.1.674.10892.5")) {
$os = "drac";
}
}
?>
?>

View File

@ -0,0 +1,17 @@
<?php
/*
* LibreNMS Meraki MR detection module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (!$os) {
if (preg_match("/^Meraki MR/", $sysDescr)) {
$os = "merakimr";
}
}

View File

@ -0,0 +1,17 @@
<?php
/*
* LibreNMS Meraki MS detection module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (!$os) {
if (preg_match("/^Meraki MS/", $sysDescr)) {
$os = "merakims";
}
}

View File

@ -0,0 +1,17 @@
<?php
/*
* LibreNMS Meraki MX detection module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (!$os) {
if (preg_match("/^Meraki MX/", $sysDescr)) {
$os = "merakimx";
}
}

View File

@ -0,0 +1,7 @@
<?php
if (!$os) {
if (strstr($sysObjectId, ".1.3.6.1.4.1.1588.2.2.1.1.1.5")) {
$os = "nos";
}
}

View File

@ -0,0 +1,31 @@
<?php
/*
* LibreNMS
*
* Copyright (c) 2014 Neil Lathwood <https://github.com/laf/ http://www.lathwood.co.uk/fa>
*
* 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.
*/
if ($device['os'] == "drac") {
$oids = snmp_walk($device, "virtualDiskNumber", "-Oesqn", "IDRAC-MIB-SMIv2");
$main_oid = ".1.3.6.1.4.1.674.10892.5.5.1.20.140.1.1.";
if ($debug) {
echo $oids."\n";
}
$oids = trim($oids);
if ($oids) {
echo "Dell iDRAC";
foreach (explode("\n", $oids) as $data) {
list($oid,) = explode(" ", $data, 2);
$state_oid = "4.1";
$state_current = snmp_get($device, $main_oid.$state_oid, "-Oevq");
discover_sensor($valid['sensor'], 'state', $device, $main_oid.$state_oid, "virtualDiskState.$state_oid", 'drac', 'Raid State', '1', '1', NULL, NULL, NULL, NULL, $state_current);
}
}
}

View File

@ -0,0 +1,50 @@
<?php
/**
* Observium
*
* This file is part of Observium.
*
* @package observium
* @subpackage discovery
* @author Adam Armstrong <adama@memetic.org>
* @copyright (C) 2006 - 2012 Adam Armstrong
*
*/
if (strstr($device['os'], "drac")) {
$oids = snmp_walk($device, "temperatureProbeStatus", "-Osqn", "IDRAC-MIB-SMIv2");
if ($debug) {
echo($oids."\n");
}
$oids = trim($oids);
if ($oids) echo("Dell iDRAC");
foreach (explode("\n", $oids) as $data) {
$data = trim($data);
if ($data) {
list($oid,$status) = explode(" ", $data, 2);
if ($debug) {
echo("status : ".$status."\n");
}
if ($status == "ok") {
$split_oid = explode('.',$oid);
$temperature_id = $split_oid[count($split_oid)-2].".".$split_oid[count($split_oid)-1];
$descr_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.8.$temperature_id";
$temperature_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.6.$temperature_id";
$limit_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.10.$temperature_id";
$warnlimit_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.11.$temperature_id";
$lowwarnlimit_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.12.$temperature_id";
$lowlimit_oid = ".1.3.6.1.4.1.674.10892.5.4.700.20.1.13.$temperature_id";
$descr = trim(snmp_get($device, $descr_oid, "-Oqv", "IDRAC-MIB-SMIv2"),'"');
$temperature = snmp_get($device, $temperature_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$lowwarnlimit = snmp_get($device, $lowwarnlimit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$warnlimit = snmp_get($device, $warnlimit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$limit = snmp_get($device, $limit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$lowlimit = snmp_get($device, $lowlimit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
discover_sensor($valid['sensor'], 'temperature', $device, $temperature_oid, $temperature_id, 'drac', $descr, '10', '1', $lowlimit/10, $low_warn_limit/10, $warnlimit/10, $limit/10, $temperature/10);
}
}
}
}

View File

@ -0,0 +1,29 @@
<?php
if ($device['os'] == "drac") {
$oids = snmp_walk($device, "powerSupplyIndex.1", "-OsqnU", "IDRAC-MIB-SMIv2");
if ($debug) {
echo($oids."\n");
}
$oids = trim($oids);
if ($oids) {
echo("Dell iDRAC");
}
foreach (explode("\n", $oids) as $data) {
$data = trim($data);
if ($data) {
list($oid,$kind) = explode(" ", $data);
$split_oid = explode('.',$oid);
$index = $split_oid[count($split_oid)-1];
$voltage_oid = ".1.3.6.1.4.1.674.10892.5.4.600.12.1.16.1.$index";
$descr_oid = "powerSupplyLocationName.1.$index";
$limit_oid = "powerSupplyMaximumInputVoltage.1.$index";
$descr = trim(snmp_get($device, $descr_oid, "-Oqv", "IDRAC-MIB-SMIv2"),'"');
$descr = preg_replace("/(Status)/","", $descr);
$current = snmp_get($device, $fan_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$low_limit = snmp_get($device, $limit_oid, "-Oqv", "IDRAC-MIB-SMIv2");
$divisor = "1";
discover_sensor($valid['sensor'], 'voltage', $device, $voltage_oid, $index, 'drac', $descr, $divisor, '1', $low_limit, NULL, NULL, NULL, $current);
}
}
}

View File

@ -0,0 +1,15 @@
<?php
/*
* LibreNMS Meraki MR polling module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (empty($hardware)) {
$hardware = snmp_get($device, "sysDescr.0", "-Osqv", "SNMPv2-MIB");
}

View File

@ -0,0 +1,15 @@
<?php
/*
* LibreNMS Meraki MS polling module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (empty($hardware)) {
$hardware = snmp_get($device, "sysDescr.0", "-Osqv", "SNMPv2-MIB");
}

View File

@ -0,0 +1,15 @@
<?php
/*
* LibreNMS Meraki MX polling module
*
* Copyright (c) 2015 Will Jones <email@willjones.eu>
* 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.
*/
if (empty($hardware)) {
$hardware = snmp_get($device, "sysDescr.0", "-Osqv", "SNMPv2-MIB");
}

View File

@ -0,0 +1,6 @@
<?php
//SNMPv2-MIB::sysDescr.0 Brocade VDX Switch.
if (preg_match("/Brocade ([\s\d\w]+)/", $poll_device['sysDescr'], $hardware)) {
$hardware = $hardware[1];
}

View File

@ -11,66 +11,66 @@
* See COPYING for more details.
*/
unset($poll_device);
unset($poll_device);
$snmpdata = snmp_get_multi($device, "sysUpTime.0 sysLocation.0 sysContact.0 sysName.0", "-OQUs", "SNMPv2-MIB");
$poll_device = $snmpdata[0];
$snmpdata = snmp_get_multi($device, "sysUpTime.0 sysLocation.0 sysContact.0 sysName.0", "-OQUs", "SNMPv2-MIB");
$poll_device = $snmpdata[0];
$poll_device['sysDescr'] = snmp_get($device, "sysDescr.0", "-Oqv", "SNMPv2-MIB");
$poll_device['sysObjectID'] = snmp_get($device, "sysObjectID.0", "-Oqvn", "SNMPv2-MIB");
$poll_device['sysName'] = strtolower($poll_device['sysName']);
$poll_device['sysDescr'] = snmp_get($device, "sysDescr.0", "-Oqv", "SNMPv2-MIB");
$poll_device['sysObjectID'] = snmp_get($device, "sysObjectID.0", "-Oqvn", "SNMPv2-MIB");
$poll_device['sysName'] = strtolower($poll_device['sysName']);
if (!empty($agent_data['uptime'])) { list($uptime) = explode(" ", $agent_data['uptime']); $uptime = round($uptime); echo("Using UNIX Agent Uptime ($uptime)\n");}
if (!empty($agent_data['uptime'])) { list($uptime) = explode(" ", $agent_data['uptime']); $uptime = round($uptime); echo("Using UNIX Agent Uptime ($uptime)\n");}
if (empty($uptime))
{
if (empty($uptime))
{
$hrSystemUptime = snmp_get($device, "hrSystemUptime.0", "-Oqv", "HOST-RESOURCES-MIB");
if (!empty($hrSystemUptime) && !strpos($hrSystemUptime, "No") && ($device['os'] != "windows"))
{
echo("Using hrSystemUptime (".$hrSystemUptime.")\n");
$agent_uptime = $uptime; // Move uptime into agent_uptime
#HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (63050465) 7 days, 7:08:24.65
$hrSystemUptime = str_replace("(", "", $hrSystemUptime);
$hrSystemUptime = str_replace(")", "", $hrSystemUptime);
list($days,$hours, $mins, $secs) = explode(":", $hrSystemUptime);
list($secs, $microsecs) = explode(".", $secs);
$hours = $hours + ($days * 24);
$mins = $mins + ($hours * 60);
$secs = $secs + ($mins * 60);
$uptime = $secs;
echo("Using hrSystemUptime (".$hrSystemUptime.")\n");
$agent_uptime = $uptime; // Move uptime into agent_uptime
#HOST-RESOURCES-MIB::hrSystemUptime.0 = Timeticks: (63050465) 7 days, 7:08:24.65
$hrSystemUptime = str_replace("(", "", $hrSystemUptime);
$hrSystemUptime = str_replace(")", "", $hrSystemUptime);
list($days,$hours, $mins, $secs) = explode(":", $hrSystemUptime);
list($secs, $microsecs) = explode(".", $secs);
$hours = $hours + ($days * 24);
$mins = $mins + ($hours * 60);
$secs = $secs + ($mins * 60);
$uptime = $secs;
} else {
echo("Using SNMP Agent Uptime (".$poll_device['sysUpTime'].")\n");
#SNMPv2-MIB::sysUpTime.0 = Timeticks: (2542831) 7:03:48.31
$poll_device['sysUpTime'] = str_replace("(", "", $poll_device['sysUpTime']);
$poll_device['sysUpTime'] = str_replace(")", "", $poll_device['sysUpTime']);
list($days, $hours, $mins, $secs) = explode(":", $poll_device['sysUpTime']);
list($secs, $microsecs) = explode(".", $secs);
$hours = $hours + ($days * 24);
$mins = $mins + ($hours * 60);
$secs = $secs + ($mins * 60);
$uptime = $secs;
echo("Using SNMP Agent Uptime (".$poll_device['sysUpTime'].")\n");
#SNMPv2-MIB::sysUpTime.0 = Timeticks: (2542831) 7:03:48.31
$poll_device['sysUpTime'] = str_replace("(", "", $poll_device['sysUpTime']);
$poll_device['sysUpTime'] = str_replace(")", "", $poll_device['sysUpTime']);
list($days, $hours, $mins, $secs) = explode(":", $poll_device['sysUpTime']);
list($secs, $microsecs) = explode(".", $secs);
$hours = $hours + ($days * 24);
$mins = $mins + ($hours * 60);
$secs = $secs + ($mins * 60);
$uptime = $secs;
}
}
}
// Use snmpEngineTime (68 year rollover) to cross-reference for false positives in device rebooting due to sysUpTime rollover issues
$snmpEngineTime = (integer)snmp_get($device, "snmpEngineTime.0", "-OUqv", "SNMP-FRAMEWORK-MIB");
if (!is_numeric($snmpEngineTime)) {
// Use snmpEngineTime (68 year rollover) to cross-reference for false positives in device rebooting due to sysUpTime rollover issues
$snmpEngineTime = (integer)snmp_get($device, "snmpEngineTime.0", "-OUqv", "SNMP-FRAMEWORK-MIB");
if (!is_numeric($snmpEngineTime)) {
$snmpEngineTime = 0;
}
}
if (is_numeric($uptime))
{
if (is_numeric($uptime))
{
if ($uptime < $device['uptime'] && $uptime >= $snmpEngineTime)
{
notify($device,"Device rebooted: " . $device['hostname'], "Device Rebooted : " . $device['hostname'] . " " . formatUptime($uptime) . " ago.");
log_event('Device rebooted after '.formatUptime($device['uptime']), $device, 'reboot', $device['uptime']);
notify($device,"Device rebooted: " . $device['hostname'], "Device Rebooted : " . $device['hostname'] . " " . formatUptime($uptime) . " ago.");
log_event('Device rebooted after '.formatUptime($device['uptime']), $device, 'reboot', $device['uptime']);
}
$uptime_rrd = $config['rrd_dir'] . "/" . $device['hostname'] . "/uptime.rrd";
if (!is_file($uptime_rrd))
{
rrdtool_create ($uptime_rrd, "DS:uptime:GAUGE:600:0:U ".$config['rrd_rra']);
rrdtool_create ($uptime_rrd, "DS:uptime:GAUGE:600:0:U ".$config['rrd_rra']);
}
rrdtool_update($uptime_rrd, "N:".$uptime);
@ -79,65 +79,50 @@
echo("Uptime: ".formatUptime($uptime)."\n");
$update_array['uptime'] = $uptime;
}
}
$poll_device['sysLocation'] = str_replace("\"","", $poll_device['sysLocation']);
$poll_device['sysLocation'] = str_replace("\"","", $poll_device['sysLocation']);
// Remove leading & trailing backslashes added by VyOS/Vyatta/EdgeOS
$poll_device['sysLocation'] = trim($poll_device['sysLocation'], "\\");
// Remove leading & trailing backslashes added by VyOS/Vyatta/EdgeOS
$poll_device['sysLocation'] = trim($poll_device['sysLocation'], "\\");
// Rewrite sysLocation if there is a mapping array (database too?)
if (!empty($poll_device['sysLocation']) && is_array($config['location_map']))
{
// Rewrite sysLocation if there is a mapping array (database too?)
if (!empty($poll_device['sysLocation']) && is_array($config['location_map']))
{
$poll_device['sysLocation'] = rewrite_location($poll_device['sysLocation']);
}
}
$poll_device['sysContact'] = str_replace("\"","", $poll_device['sysContact']);
$poll_device['sysContact'] = str_replace("\"","", $poll_device['sysContact']);
// Remove leading & trailing backslashes added by VyOS/Vyatta/EdgeOS
$poll_device['sysContact'] = trim($poll_device['sysContact'], "\\");
// Remove leading & trailing backslashes added by VyOS/Vyatta/EdgeOS
$poll_device['sysContact'] = trim($poll_device['sysContact'], "\\");
if ($poll_device['sysLocation'] == "not set")
{
$poll_device['sysLocation'] = "";
}
if ($poll_device['sysContact'] == "not set")
{
$poll_device['sysContact'] = "";
}
foreach(Array('sysLocation', 'sysContact') as $elem)
{
if ($poll_device[$elem] == "not set")
{
$poll_device[$elem] = "";
}
}
if ($poll_device['sysContact'] && $poll_device['sysContact'] != $device['sysContact'])
{
$update_array['sysContact'] = $poll_device['sysContact'];
log_event("Contact -> ".$poll_device['sysContact'], $device, 'system');
}
// Save results of various polled values to the database
foreach(Array('sysContact', 'sysObjectID', 'sysName', 'sysDescr') as $elem)
{
if ($poll_device[$elem] && $poll_device[$elem] != $device[$elem])
{
$update_array[$elem] = $poll_device[$elem];
log_event("$elem -> ".$poll_device[$elem], $device, 'system');
}
}
if ($poll_device['sysObjectID'] && $poll_device['sysObjectID'] != $device['sysObjectID'])
{
$update_array['sysObjectID'] = $poll_device['sysObjectID'];
log_event("ObjectID -> ".$poll_device['sysObjectID'], $device, 'system');
}
if ($poll_device['sysName'] && $poll_device['sysName'] != $device['sysName'])
{
$update_array['sysName'] = $poll_device['sysName'];
log_event("sysName -> ".$poll_device['sysName'], $device, 'system');
}
if ($poll_device['sysDescr'] && $poll_device['sysDescr'] != $device['sysDescr'])
{
$update_array['sysDescr'] = $poll_device['sysDescr'];
log_event("sysDescr -> ".$poll_device['sysDescr'], $device, 'system');
}
if ($poll_device['sysLocation'] && $device['location'] != $poll_device['sysLocation'])
{
if (!get_dev_attrib($device,'override_sysLocation_bool'))
{
if ($poll_device['sysLocation'] && $device['location'] != $poll_device['sysLocation'])
{
if (!get_dev_attrib($device,'override_sysLocation_bool'))
{
$update_array['location'] = $poll_device['sysLocation'];
log_event("Location -> ".$poll_device['sysLocation'], $device, 'system');
}
}
}
}
?>

File diff suppressed because it is too large Load Diff

View File

@ -2,6 +2,6 @@
33 */6 * * * root /opt/librenms/discovery.php -h all >> /dev/null 2>&1
*/5 * * * * root /opt/librenms/discovery.php -h new >> /dev/null 2>&1
*/5 * * * * root /opt/librenms/poller-wrapper.py 16 >> /dev/null 2>&1
*/5 * * * * root /opt/librenms/cronic /opt/librenms/poller-wrapper.py 16
15 0 * * * root sh /opt/librenms/daily.sh >> /dev/null 2>&1
* * * * * root /opt/librenms/alerts.php >> /dev/null 2>&1

View File

@ -2,6 +2,6 @@
33 */6 * * * librenms /opt/librenms/discovery.php -h all >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/discovery.php -h new >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/poller-wrapper.py 16 >> /dev/null 2>&1
*/5 * * * * librenms /opt/librenms/cronic /opt/librenms/poller-wrapper.py 16
15 0 * * * librenms sh /opt/librenms/daily.sh >> /dev/null 2>&1
* * * * * librenms /opt/librenms/alerts.php >> /dev/null 2>&1

514
mibs/BASP-Config-MIB Executable file
View File

@ -0,0 +1,514 @@
BASP-Config-MIB DEFINITIONS ::= BEGIN
-- Broadcom(R) Advanced Server Configuration MIB
--
-- This MIB defines LoadBalance/VLAN configuration Management Information Base.
-- These objects are part of the enterprise MIB for Broadcom Advanced Server.
--
IMPORTS
enterprises, IpAddress
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString, PhysAddress
FROM RFC1213-MIB;
broadcom OBJECT IDENTIFIER ::= { enterprises 4413 }
enet OBJECT IDENTIFIER ::= { broadcom 1 }
basp OBJECT IDENTIFIER ::= { enet 2 }
baspConfig OBJECT IDENTIFIER ::= { basp 1 }
baspTeam OBJECT IDENTIFIER ::= { baspConfig 1 }
baspPhyAdapter OBJECT IDENTIFIER ::= { baspConfig 2 }
baspVirAdapter OBJECT IDENTIFIER ::= { baspConfig 3 }
-- baspTeam Group --
btTeamNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of loadbalance teams
present on this system."
::= { baspTeam 1 }
btTeamTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtTeamEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A list of team entries. The number of
teams is given by the value of teamNumber."
::= { baspTeam 2 }
btTeamEntry OBJECT-TYPE
SYNTAX BtTeamEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An entry containing team objects at the
target system."
INDEX { btTeamIndex }
::= { btTeamTable 1 }
BtTeamEntry ::=
SEQUENCE {
btTeamIndex
INTEGER(0..65535),
btTeamName
DisplayString,
btTeamType
INTEGER,
btTeamMacAddress
PhysAddress,
btPhyNumber
INTEGER,
btVirNumber
INTEGER,
btMode
INTEGER,
btLiveLinkEnable
INTEGER,
btLinkPacketFrequency
INTEGER,
btLinkMaxRetry
INTEGER,
btLinkRetryFrequency
INTEGER,
btLinkTargetIpAddress1
IpAddress,
btLinkTargetIpAddress2
IpAddress,
btLinkTargetIpAddress3
IpAddress,
btLinkTargetIpAddress4
IpAddress
}
btTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team. The value for
each team must remain constant at
least from one re-initialization of the entity's
network management system to the next re-
initialization."
::= { btTeamEntry 1 }
btTeamName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual string containing name of the team"
::= { btTeamEntry 2 }
btTeamType OBJECT-TYPE
SYNTAX INTEGER
{
team-SLB(100),
team-FEC-GEC(101),
team-802-3-AD(102),
team-SLB-AFD(104)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The type of team, distinguished according to
the attribute assigned. When team has only one
physical member, the team type is ignored"
::= { btTeamEntry 3 }
btTeamMacAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Mac address of the team. Mac address is
assigned to a team when the team type is
team-FEC-GEC(101) or team-802-3-AD(102)"
::= { btTeamEntry 4 }
btPhyNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of physical adapters in the team"
::= { btTeamEntry 5 }
btVirNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of virtual adapters in the team "
::= { btTeamEntry 6 }
btMode OBJECT-TYPE
SYNTAX INTEGER
{
primaryMode(1),
standby(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"mode of this team, PrimaryMode(0) or
Standby(1). For team type other than
team-SLB(100), this should always be
PrimaryMode(0)."
::= { btTeamEntry 7 }
btLiveLinkEnable OBJECT-TYPE
SYNTAX INTEGER
{
disabled(1),
enabled(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"LiveLink is enabled or not. Probe packet can
be enabled only for team-SLB(100) and
team-SLB-AFD(104)."
::= { btTeamEntry 8 }
btLinkPacketFrequency OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The frequency in
milliseconds that a link packet is to be sent."
::= { btTeamEntry 9 }
btLinkMaxRetry OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The maximum number of
retries before failing a team member."
::= { btTeamEntry 10 }
btLinkRetryFrequency OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The frequency (milliseconds)
a link packet is to be sent after a dropped link
packet is detected."
::= { btTeamEntry 11 }
btLinkTargetIpAddress1 OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The target IP address that
a link packet is sent to. A DNS name cannot be
specified since there is no reliable method to
resolve the DNS name without introducing
unacceptable risk. Only the first one is mandatory
for LiveLink. All 0 is not available."
::= { btTeamEntry 12 }
btLinkTargetIpAddress2 OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The target IP address that
a link packet is sent to. A DNS name cannot be
specified since there is no reliable method to
resolve the DNS name without introducing
unacceptable risk. This one is optional for
LiveLink. All 0 is not available."
::= { btTeamEntry 13 }
btLinkTargetIpAddress3 OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The target IP address that
a link packet is sent to. A DNS name cannot be
specified since there is no reliable method to
resolve the DNS name without introducing
unacceptable risk. This one is optional for
LiveLink. All 0 is not available."
::= { btTeamEntry 14 }
btLinkTargetIpAddress4 OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The target IP address that
a link packet is sent to. A DNS name cannot be
specified since there is no reliable method to
resolve the DNS name without introducing
unacceptable risk. This one is optional for
LiveLink. All 0 is not available."
::= { btTeamEntry 15 }
-- baspPhyAdapter Group --
btPhyAdapterNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of physical adapters presented
in the physical adapter table."
::= { baspPhyAdapter 1 }
btPhyAdapterTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtPhyAdapterEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The phyMember tables contain the physical
adapter members of loadbalance teams."
::= { baspPhyAdapter 2 }
btPhyAdapterEntry OBJECT-TYPE
SYNTAX BtPhyAdapterEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A team entry containing objects at the
target system."
INDEX { btpTeamIndex,
btpAdapterIndex }
::= { btPhyAdapterTable 1 }
BtPhyAdapterEntry ::=
SEQUENCE {
btpTeamIndex
INTEGER(0..65535),
btpAdapterIndex
INTEGER(0..65535),
btpAdapterDesc
DisplayString,
btpMemberType
INTEGER,
btpMacAddress
PhysAddress,
btpMemberState
INTEGER,
btpLiveLinkIp
IpAddress
}
btpTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team."
::= { btPhyAdapterEntry 1 }
btpAdapterIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A value for each adapter within a team."
::= { btPhyAdapterEntry 2 }
btpAdapterDesc OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing name of the adapter"
::= { btPhyAdapterEntry 3 }
btpMemberType OBJECT-TYPE
SYNTAX INTEGER
{
load-balance(100),
standby(101)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The type of adapter member."
::= { btPhyAdapterEntry 4 }
btpMacAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Mac address of the adapter."
::= { btPhyAdapterEntry 5 }
btpMemberState OBJECT-TYPE
SYNTAX INTEGER
{
unknown(1),
link-up-not-join-traffic(2),
disable-not-join-traffic(3),
join-traffic(4)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"State of the interface in the team."
::= { btPhyAdapterEntry 6 }
btpLiveLinkIp OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IP address for LiveLink."
::= { btPhyAdapterEntry 7 }
-- baspVirmember Group --
btVirAdapterNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of virtual adapters presented
in the virtual adapter table."
::= { baspVirAdapter 1 }
btVirAdapterTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtVirAdapterEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The virMember tables contain the VLAN
members of loadbalance teams."
::= { baspVirAdapter 2 }
btVirAdapterEntry OBJECT-TYPE
SYNTAX BtVirAdapterEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A team entry containing objects at the
target system."
INDEX { btvTeamIndex,
btvAdapterIndex }
::= { btVirAdapterTable 1 }
BtVirAdapterEntry ::=
SEQUENCE {
btvTeamIndex
INTEGER(0..65535),
btvAdapterIndex
INTEGER(0..65535),
btvAdapterDesc
DisplayString,
btvVlanId
INTEGER,
btvLinkStatus
INTEGER,
btvIPAddress
IpAddress,
btvSubnetMask
IpAddress,
btvPhysAddress
PhysAddress,
btvLineSpeed
DisplayString
}
btvTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team."
::= { btVirAdapterEntry 1 }
btvAdapterIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A unique value for each virtual adapter in a team."
::= { btVirAdapterEntry 2 }
btvAdapterDesc OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing name of the VLAN"
::= { btVirAdapterEntry 3 }
btvVlanId OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"802.1Q VLAN ID of the virtual adapter."
::= { btVirAdapterEntry 4 }
btvLinkStatus OBJECT-TYPE
SYNTAX INTEGER
{
link-up(1),
link-fail(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Virtual adapter link status"
::= { btVirAdapterEntry 5 }
btvIPAddress OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IP address of the virtual adapter."
::= { btVirAdapterEntry 6 }
btvSubnetMask OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IP subnet Mask of the virtual adapter."
::= { btVirAdapterEntry 7 }
btvPhysAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"MAC address of the virtual adapter."
::= { btVirAdapterEntry 8 }
btvLineSpeed OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual string displays the operating speed
of the virtual adapter."
::= { btVirAdapterEntry 9 }
END

410
mibs/BASP-Statistics-MIB Executable file
View File

@ -0,0 +1,410 @@
BASP-Statistics-MIB DEFINITIONS ::= BEGIN
-- Broadcom(R) Advanced Server Statistics MIB
--
-- This MIB defines Load Balance/VLAN Statistics Management Information Base.
-- These objects are part of the enterprise MIB for Broadcom Advanced Server.
--
IMPORTS
enterprises, Counter
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB;
broadcom OBJECT IDENTIFIER ::= { enterprises 4413 }
enet OBJECT IDENTIFIER ::= { broadcom 1 }
basp OBJECT IDENTIFIER ::= { enet 2 }
baspStat OBJECT IDENTIFIER ::= { basp 2 }
baspTeamStat OBJECT IDENTIFIER ::= { baspStat 1 }
baspPhyAdapterStat OBJECT IDENTIFIER ::= { baspStat 2 }
baspVirAdapterStat OBJECT IDENTIFIER ::= { baspStat 3 }
------------------------
-- baspTeamStat Group --
------------------------
btsTeamNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of loadbalance teams
present on this system."
::= { baspTeamStat 1 }
btsTeamTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtsTeamEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A list of team entries. The number of
teams is given by the value of teamNumber."
::= { baspTeamStat 2 }
btsTeamEntry OBJECT-TYPE
SYNTAX BtsTeamEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An entry containing team statistics objects
at the target system."
INDEX { btsTeamIndex }
::= { btsTeamTable 1 }
BtsTeamEntry ::=
SEQUENCE {
btsTeamIndex
INTEGER,
btsTeamName
DisplayString,
btsPhyNumber
INTEGER,
btsVirNumber
INTEGER,
btsPacketSends
Counter,
btsPacketSendDiscardeds
Counter,
btsPacketSendQueueds
Counter,
btsPacketRecvs
Counter,
btsPacketRecvDiscardeds
Counter,
btsLinkPacketsSents
Counter,
btsLinkPacketsRetrieds
Counter
}
btsTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team.
The value for each team must remain constant at
least from one re-initialization of the entity's
network management system to the next re-
initialization."
::= { btsTeamEntry 1 }
btsTeamName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing name of the team"
::= { btsTeamEntry 2 }
btsPhyNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of physical adapters in the team"
::= { btsTeamEntry 3 }
btsVirNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of virtual adapters in the team "
::= { btsTeamEntry 4 }
btsPacketSends OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send packets that are forwarded to the team members,
derived from physical adapter statistics."
::= { btsTeamEntry 5 }
btsPacketSendDiscardeds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send packets that are discarded,
derived from physical adapter statistics."
::= { btsTeamEntry 6 }
btsPacketSendQueueds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send packets queued by driver waiting for resource"
::= { btsTeamEntry 7 }
btsPacketRecvs OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of receive packets that are indicated to upper layer,
derived from physical adapter statistics."
::= { btsTeamEntry 8 }
btsPacketRecvDiscardeds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of receive packets discarded,
derived from physical adapter statistics."
::= { btsTeamEntry 9 }
btsLinkPacketsSents OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: Number of link packets sent
across all adapters for the team - Expressed as a
quantity."
::= { btsTeamEntry 10 }
btsLinkPacketsRetrieds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The number of retry packets
sent across all adapters for the team - Expressed
as a quantity."
::= { btsTeamEntry 11 }
------------------------------
-- baspPhyAdapterStat Group --
------------------------------
btsPhyAdapterNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of physical adapters presented
in the physical adapter table."
::= { baspPhyAdapterStat 1 }
btsPhyAdapterStatTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtsPhyAdapterStatEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The phyMember tables contain the physical
adapter members of loadbalance teams."
::= { baspPhyAdapterStat 2 }
btsPhyAdapterStatEntry OBJECT-TYPE
SYNTAX BtsPhyAdapterStatEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A team entry containing objects at the
target system."
INDEX { btspTeamIndex,
btspAdapterIndex }
::= { btsPhyAdapterStatTable 1 }
BtsPhyAdapterStatEntry ::=
SEQUENCE {
btspTeamIndex
INTEGER(0..65535),
btspAdapterIndex
INTEGER(0..65535),
btspAdapterDesc
DisplayString,
btspPacketSends
Counter,
btspPacketSendDiscardeds
Counter,
btspPacketRecvs
Counter,
btspPacketRecvDiscardeds
Counter,
btspLinkPacketsSents
Counter,
btspLinkPacketsRetrieds
Counter
}
btspTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team."
::= { btsPhyAdapterStatEntry 1 }
btspAdapterIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A value for each adapter within a team."
::= { btsPhyAdapterStatEntry 2 }
btspAdapterDesc OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing name of the physical member"
::= { btsPhyAdapterStatEntry 3 }
btspPacketSends OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send request completed by miniport ."
::= { btsPhyAdapterStatEntry 4 }
btspPacketSendDiscardeds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send request discarded."
::= { btsPhyAdapterStatEntry 5 }
btspPacketRecvs OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of receive packets that are indicated to upper layer."
::= { btsPhyAdapterStatEntry 6 }
btspPacketRecvDiscardeds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
" number of receive packets discarded."
::= { btsPhyAdapterStatEntry 7 }
btspLinkPacketsSents OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: Number of link packets
sent vis the adapters for the team -
Expressed as a quantity."
::= { btsPhyAdapterStatEntry 8 }
btspLinkPacketsRetrieds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"For LiveLink feature: The number of retry packets
sent via the adapters for the team - Expressed
as a quantity."
::= { btsPhyAdapterStatEntry 9 }
------------------------------
-- baspVirAdapterStat Group --
------------------------------
btsVirAdapterNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Number of virtual adapters presented
in the virtual adapter table."
::= { baspVirAdapterStat 1 }
btsVirAdapterStatTable OBJECT-TYPE
SYNTAX SEQUENCE OF BtsVirAdapterStatEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The phyMember tables contain the physical
adapter members of loadbalance teams."
::= { baspVirAdapterStat 2 }
btsVirAdapterStatEntry OBJECT-TYPE
SYNTAX BtsVirAdapterStatEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A team entry containing objects at the
target system."
INDEX { btsvTeamIndex,
btsvAdapterIndex }
::= { btsVirAdapterStatTable 1 }
BtsVirAdapterStatEntry ::=
SEQUENCE {
btsvTeamIndex
INTEGER(0..65535),
btsvAdapterIndex
INTEGER(0..65535),
btsvAdapterDesc
DisplayString,
btsvPacketSends
Counter,
btsvPacketSendQueueds
Counter,
btsvPacketRecvs
Counter
}
btsvTeamIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each team."
::= { btsVirAdapterStatEntry 1 }
btsvAdapterIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A value for each adapter within a team."
::= { btsVirAdapterStatEntry 2 }
btsvAdapterDesc OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual string containing name of the virtual member"
::= { btsVirAdapterStatEntry 3 }
btsvPacketSends OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send request completed ."
::= { btsVirAdapterStatEntry 4 }
btsvPacketSendQueueds OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"number of send request being queued by driver waiting for resource"
::= { btsVirAdapterStatEntry 5 }
btsvPacketRecvs OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
" number of receive indicated to upper layer successfully."
::= { btsVirAdapterStatEntry 6 }
END

83
mibs/Brcm-BASPTrap-MIB Executable file
View File

@ -0,0 +1,83 @@
Brcm-BASPTrap-MIB DEFINITIONS ::= BEGIN
-- Broadcom(R) Advanced Server Trap MIB
--
IMPORTS
enterprises
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
TRAP-TYPE
FROM RFC-1215
DisplayString
FROM RFC1213-MIB;
broadcom OBJECT IDENTIFIER ::= { enterprises 4413 }
enet OBJECT IDENTIFIER ::= { broadcom 1 }
basp OBJECT IDENTIFIER ::= { enet 2 }
baspConfig OBJECT IDENTIFIER ::= { basp 1 }
baspStat OBJECT IDENTIFIER ::= { basp 2 }
baspTrap OBJECT IDENTIFIER ::= { basp 3 }
--
-- Object Definitions
--
trapAdapterName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The adapter name."
::= { baspTrap 1 }
trapTeamName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The team name."
::= { baspTrap 2 }
trapCauseDirection OBJECT-TYPE
SYNTAX INTEGER
{
adapterActive(1),
adapterInactive(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Event caused by failover condition."
::= { baspTrap 3 }
trapAdapterActivityCause OBJECT-TYPE
SYNTAX INTEGER
{
none(1),
linkChange(2),
adapterEnabledOrDisabled(3),
adapterAddedOrRemoved(4)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Addition explanation for the Event trapCauseDirection."
::= { baspTrap 4 }
--
-- Trap Definitions
--
failoverEvent TRAP-TYPE
ENTERPRISE baspTrap
VARIABLES { trapAdapterName,
trapTeamName,
trapCauseDirection,
trapAdapterActivityCause }
DESCRIPTION
"This trap is generated to indicate that adapter Fail-Over
event has occured"
--#SEVERITY MINOR
::= 1
END

281
mibs/Brcm-adapterInfo-MIB Executable file
View File

@ -0,0 +1,281 @@
Brcm-adapterInfo-MIB DEFINITIONS ::= BEGIN
-- Broadcom(R) NetXtreme Network Adapter Extended Information MIB
--
-- This MIB defines the Broadcom NetXtreme Adapter Extended Information Set.
-- These objects are part of the enterprise MIB for Broadcom server and
-- work station network adapters.
--
IMPORTS
OBJECT-TYPE
FROM RFC-1212
enterprises, IpAddress
FROM RFC1155-SMI
DisplayString, PhysAddress
FROM RFC1213-MIB
InetAddressIPv6
FROM INET-ADDRESS-MIB;
broadcom OBJECT IDENTIFIER ::= { enterprises 4413 }
enet OBJECT IDENTIFIER ::= { broadcom 1 }
basp OBJECT IDENTIFIER ::= { enet 2 }
ifControllers OBJECT IDENTIFIER ::= { enet 3 }
baspConfig OBJECT IDENTIFIER ::= { basp 1 }
baspStat OBJECT IDENTIFIER ::= { basp 2 }
baspTrap OBJECT IDENTIFIER ::= { basp 3 }
--
-- adaptergroup Group
--
ifiNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of Broadcom network interfaces (regardless
of their current state) present on this system."
::= { ifControllers 1 }
ifiTable OBJECT-TYPE
SYNTAX SEQUENCE OF IfiEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"A list of Broadcom network interface entries.
The number of entries is given by the ifiNumber."
::= { ifControllers 2 }
ifiEntry OBJECT-TYPE
SYNTAX IfiEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An entry containing statistics objects of a Broadcom
network interface in this system."
INDEX { ifiIndex }
::= { ifiTable 1 }
IfiEntry ::=
SEQUENCE {
ifiIndex
INTEGER(0..65535),
ifName
DisplayString,
ifiDescr
DisplayString,
ifNetworkAddress
IpAddress,
ifSubnetMask
IpAddress,
ifiPhysAddress
PhysAddress,
ifPermPhysAddress
PhysAddress,
ifLinkStatus
INTEGER,
ifState
INTEGER,
ifLineSpeed
INTEGER,
ifDuplexMode
INTEGER,
ifMemBaseLow
DisplayString,
ifMemBaseHigh
DisplayString,
ifInterrupt
INTEGER,
ifBusNumber
INTEGER,
ifDeviceNumber
INTEGER,
ifFunctionNumber
INTEGER,
ifIpv6NetworkAddress
InetAddressIPv6
}
ifiIndex OBJECT-TYPE
SYNTAX INTEGER(0..65535)
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"An unique value for each Broadcom interface.
The value for each interface must remain constant at
least from one re-initialization of the entity's
network management system to the next re-
initialization."
::= { ifiEntry 1 }
ifName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing name of the adapter or team"
::= { ifiEntry 2 }
ifiDescr OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" A textual string containing the adapter or team description"
::= { ifiEntry 3 }
ifNetworkAddress OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IP address of the adapter."
::= { ifiEntry 4 }
ifSubnetMask OBJECT-TYPE
SYNTAX IpAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IP subnet Mask of the adapter."
::= { ifiEntry 5 }
ifiPhysAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"MAC address of the adapter."
::= { ifiEntry 6 }
ifPermPhysAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Permanent MAC address of the adapter."
::= { ifiEntry 7 }
ifLinkStatus OBJECT-TYPE
SYNTAX INTEGER
{
link-up(1),
link-fail(2)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
" Adapter link status, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 8 }
ifState OBJECT-TYPE
SYNTAX INTEGER
{
normal-mode(1),
diagnotic-mode(2),
adapter-removed(3),
lowpower-mode(4)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The operating mode of the driver, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 9 }
ifLineSpeed OBJECT-TYPE
SYNTAX INTEGER
{
unknown(1),
speed-10-Mbps (2),
speed-100-Mbps (3),
speed-1000-Mbps (4),
speed-2500-Mbps (5),
speed-10-Gbps (6)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
" The operating speed of the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 10 }
ifDuplexMode OBJECT-TYPE
SYNTAX INTEGER
{
unknown(1),
half-duplex(2),
full-duplex(3)
}
ACCESS read-only
STATUS mandatory
DESCRIPTION
" Adapter duplex mode, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 11 }
ifMemBaseLow OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" memory low range of the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 12 }
ifMemBaseHigh OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION
" memory high range of the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 13 }
ifInterrupt OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
" IRQ value for the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 14 }
ifBusNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
" PCI Bus Number where the Adapter is situated, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 15 }
ifDeviceNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
" PCI Device Number of the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 16 }
ifFunctionNumber OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION
" PCI Function Number of the adapter, this information only
applicable to the Broadcom adapter"
::= { ifiEntry 17 }
ifIpv6NetworkAddress OBJECT-TYPE
SYNTAX InetAddressIPv6
ACCESS read-only
STATUS mandatory
DESCRIPTION
"IPv6 address of the adapter."
::= { ifiEntry 18 }
END

View File

@ -0,0 +1,426 @@
-- *******************************************************************
-- CISCO-LWAPP-DOT11-CLIENT-MIB.my: Dot11 Wireless Clients MIB
--
-- June 2006, Devesh Pujari, Srinath Candadai
--
-- Copyright (c) 2006 by Cisco Systems, Inc.
-- All rights reserved.
-- *******************************************************************
CISCO-LWAPP-DOT11-CLIENT-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-TYPE,
NOTIFICATION-TYPE
FROM SNMPv2-SMI
MODULE-COMPLIANCE,
OBJECT-GROUP,
NOTIFICATION-GROUP
FROM SNMPv2-CONF
TruthValue,
MacAddress
FROM SNMPv2-TC
ciscoMgmt
FROM CISCO-SMI
SnmpAdminString
FROM SNMP-FRAMEWORK-MIB
CLApIfType,
CLDot11ClientStatus
FROM CISCO-LWAPP-TC-MIB;
-- ********************************************************************
-- * MODULE IDENTITY
-- ********************************************************************
ciscoLwappDot11ClientMIB MODULE-IDENTITY
LAST-UPDATED "200611210000Z"
ORGANIZATION "Cisco Systems Inc."
CONTACT-INFO
"Cisco Systems,
Customer Service
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
Email: cs-wnbu-snmp@cisco.com"
DESCRIPTION
"This MIB is intended to be implemented on all those
devices operating as Central controllers, that
terminate the Light Weight Access Point Protocol
tunnel from Cisco Light-weight LWAPP Access Points.
Information provided by this MIB is about the
configuration and monitoring of 802.11 wireless
clients in the network.
The relationship between CC and the LWAPP APs
can be depicted as follows:
+......+ +......+ +......+ +......+
+ + + + + + + +
+ CC + + CC + + CC + + CC +
+ + + + + + + +
+......+ +......+ +......+ +......+
.. . . .
.. . . .
. . . . .
. . . . .
. . . . .
. . . . .
+......+ +......+ +......+ +......+ +......+
+ + + + + + + + + +
+ AP + + AP + + AP + + AP + + AP +
+ + + + + + + + + +
+......+ +......+ +......+ +......+ +......+
. . . .
. . . . .
. . . . .
. . . . .
. . . . .
+......+ +......+ +......+ +......+ +......+
+ + + + + + + + + +
+ MN + + MN + + MN + + MN + + MN +
+ + + + + + + + + +
+......+ +......+ +......+ +......+ +......+
The LWAPP tunnel exists between the controller and
the APs. The MNs communicate with the APs through
the protocol defined by the 802.11 standard.
LWAPP APs, upon bootup, discover and join one of the
controllers and the controller pushes the configuration,
that includes the WLAN parameters, to the LWAPP APs.
The APs then encapsulate all the 802.11 frames from
wireless clients inside LWAPP frames and forward
the LWAPP frames to the controller.
GLOSSARY
Access Point ( AP )
An entity that contains an 802.11 medium access
control ( MAC ) and physical layer ( PHY ) interface
and provides access to the distribution services via
the wireless medium for associated clients.
LWAPP APs encapsulate all the 802.11 frames in
LWAPP frames and sends them to the controller to which
it is logically connected.
Light Weight Access Point Protocol ( LWAPP )
This is a generic protocol that defines the
communication between the Access Points and the
Central Controller.
Mobile Node ( MN )
A roaming 802.11 wireless device in a wireless
network associated with an access point. Mobile Node,
Mobile Station(Ms) and client are used
interchangeably.
Wireless local-area network ( WLAN )
A local-area network that uses high-frequency radio
waves rather than wires to communicate between nodes.
Workgroup Bridge ( WGB )
A WGB can provide a wireless infrastructure connection
for a Ethernet-enabled devices. Devices that do not have
a wireless client adapter in order to connect to the
wireless network can be connected to a WGB through
Ethernet port.
REFERENCE
[1] Wireless LAN Medium Access Control ( MAC ) and
Physical Layer ( PHY ) Specifications
[2] Draft-obara-capwap-lwapp-00.txt, IETF Light
Weight Access Point Protocol "
REVISION "200611210000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 599 }
ciscoLwappDot11ClientMIBNotifs OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIB 0 }
ciscoLwappDot11ClientMIBObjects OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIB 1 }
ciscoLwappDot11ClientMIBConform OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIB 2 }
cldcConfigObjects OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIBObjects 1 }
cldcNotifObjects OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIBObjects 2 }
cldcStatusObjects OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIBObjects 3 }
-- ********************************************************************
-- Wireless Clients
-- ********************************************************************
cldcClientTable OBJECT-TYPE
SYNTAX SEQUENCE OF CldcClientEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table represents the 802.11 wireless clients
that are associated with the APs that have joined
this controller.
An entry is created automatically by the controller
when the client gets associated to the AP. An existing
entry gets deleted when the association gets dropped.
Each client added to this table is uniquely identified
by the client's MAC address."
::= { cldcStatusObjects 1 }
cldcClientEntry OBJECT-TYPE
SYNTAX CldcClientEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each entry represents a conceptual row in this
table and provides the information about the
clients associated to the APs that have joined
the controller. An entry is identified the client's
MAC address."
INDEX { cldcClientMacAddress }
::= { cldcClientTable 1 }
CldcClientEntry ::= SEQUENCE {
cldcClientMacAddress MacAddress,
cldcClientStatus CLDot11ClientStatus,
cldcClientWlanProfileName SnmpAdminString,
cldcClientWgbStatus INTEGER ,
cldcClientWgbMacAddress MacAddress,
cldcClientProtocol INTEGER ,
cldcAssociationMode INTEGER ,
cldcApMacAddress MacAddress,
cldcIfType CLApIfType
}
cldcClientMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This object specifies the MAC address of the
client for this entry and uniquely identifies
this entry. "
::= { cldcClientEntry 1 }
cldcClientStatus OBJECT-TYPE
SYNTAX CLDot11ClientStatus
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The object that represents the current status of
the client."
::= { cldcClientEntry 2 }
cldcClientWlanProfileName OBJECT-TYPE
SYNTAX SnmpAdminString (SIZE (0..32))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the WLAN Profile name
this 802.11 wireless client is connected to."
::= { cldcClientEntry 3 }
cldcClientWgbStatus OBJECT-TYPE
SYNTAX INTEGER {
regClient(1),
wgbClient(2),
wgb(3)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The object that represents the work group bridging
status of a DOT11 client.
'regClient' - The client is a wireless client
'wgbClient' - The client is connected via a WGB
'wgb' - The client is the WGB itself."
::= { cldcClientEntry 4 }
cldcClientWgbMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the MAC address of the
WGB this 802.11 wireless client to which it is
connected. This returns a non-zero value when
the cldcClientWgbStatus is wgbClient."
::= { cldcClientEntry 5 }
cldcClientProtocol OBJECT-TYPE
SYNTAX INTEGER {
dot11a(1),
dot11b(2),
dot11g(3),
unknown(4),
mobile(5),
dot11n24(6),
dot11n5(7)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The 802.11 protocol type of the client.
'dot11a' - The client is using 802.11a standard
to connect to the access point (AP)
'dot11b' - The client is using 802.11b standard
to connect to the access point (AP)
'dot11g' - The client is using 802.11g standard
to connect to the access point (AP)
'unknown' - The client protocol is unknown
'mobile' - The client using mobile wireless to
connect to the access point (AP).
'dot11n24' - The client is using 802.11n standard
with 2.4 GHz frequency to connect to
the access point (AP)
'dot11n5' - The client is using 802.11n standard
with 5 GHz frequency to connect to
the access point (AP)."
::= { cldcClientEntry 6 }
cldcAssociationMode OBJECT-TYPE
SYNTAX INTEGER {
unknown(1),
wep(2),
wpa(3),
wpa2(4)
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The association mode for which the key decrypt
error occurred."
::= { cldcClientEntry 7 }
cldcApMacAddress OBJECT-TYPE
SYNTAX MacAddress
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object specifies the radio MAC address
of a LWAPP AP."
::= { cldcClientEntry 8 }
cldcIfType OBJECT-TYPE
SYNTAX CLApIfType
MAX-ACCESS read-only
STATUS current
DESCRIPTION "This object specifies the wireless interace type."
::= { cldcClientEntry 9 }
-- ********************************************************************
-- * NOTIFICATION Control objects
-- ********************************************************************
cldcKeyDecryptErrorEnabled OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"The object to control the generation of
ciscoLwappDot11ClientKeyDecryptError notification.
A value of 'true' indicates that the agent generates
ciscoLwappDot11ClientKeyDecryptError notification.
A value of 'false' indicates that the agent doesn't
generate ciscoLwappDot11ClientKeyDecryptError notification."
DEFVAL { true }
::= { cldcConfigObjects 1 }
-- ********************************************************************
-- * NOTIFICATIONS
-- ********************************************************************
ciscoLwappDot11ClientKeyDecryptError NOTIFICATION-TYPE
OBJECTS {
cldcAssociationMode,
cldcApMacAddress,
cldcIfType
}
STATUS current
DESCRIPTION
"Issued when a decrypt error occurs. The WEP WPA or WPA2 Key
configured at the station may be wrong."
::= { ciscoLwappDot11ClientMIBNotifs 1 }
-- *******************************************************************
-- * Compliance statements
-- ********************************************************************
ciscoLwappDot11ClientMIBCompliances OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIBConform 1 }
ciscoLwappDot11ClientMIBGroups OBJECT IDENTIFIER
::= { ciscoLwappDot11ClientMIBConform 2 }
ciscoLwappDot11ClientMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for the SNMP entities that
implement this MIB."
MODULE -- this module
MANDATORY-GROUPS {
ciscoLwappDot11ClientMIBConfigGroup,
ciscoLwappDot11ClientMIBNotifsGroup,
ciscoLwappDot11ClientMIBStatusGroup
}
::= { ciscoLwappDot11ClientMIBCompliances 1 }
-- ********************************************************************
-- * Units of conformance
-- ********************************************************************
ciscoLwappDot11ClientMIBConfigGroup OBJECT-GROUP
OBJECTS { cldcKeyDecryptErrorEnabled }
STATUS current
DESCRIPTION
"This collection of objects specifies the required
configuration parameters for the 802.11 wireless
clients."
::= { ciscoLwappDot11ClientMIBGroups 1 }
ciscoLwappDot11ClientMIBNotifsGroup NOTIFICATION-GROUP
NOTIFICATIONS { ciscoLwappDot11ClientKeyDecryptError }
STATUS current
DESCRIPTION
"This collection of objects specifies the
notifications for the 802.11 wireless clients."
::= { ciscoLwappDot11ClientMIBGroups 2 }
ciscoLwappDot11ClientMIBStatusGroup OBJECT-GROUP
OBJECTS {
cldcClientStatus,
cldcClientWlanProfileName,
cldcClientWgbStatus,
cldcClientWgbMacAddress,
cldcClientProtocol,
cldcAssociationMode,
cldcApMacAddress,
cldcIfType
}
STATUS current
DESCRIPTION
"This collection of objects specifies the required
status parameters for the 802.11 wireless clients."
::= { ciscoLwappDot11ClientMIBGroups 3 }
END

2149
mibs/CISCO-LWAPP-SYS-MIB Normal file

File diff suppressed because it is too large Load Diff

754
mibs/CISCO-LWAPP-TC-MIB Normal file
View File

@ -0,0 +1,754 @@
-- *******************************************************************
-- CISCO-LWAPP-TC-MIB.my: Cisco LWAPP MIBs Textual Conventions
-- March 2006, Prasanna Viswakumar
--
-- Copyright (c) 2006, 2007, 2010-2011 by Cisco Systems Inc.
-- All rights reserved.
-- *******************************************************************
CISCO-LWAPP-TC-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
Unsigned32,
Gauge32
FROM SNMPv2-SMI
TEXTUAL-CONVENTION
FROM SNMPv2-TC
ciscoMgmt
FROM CISCO-SMI;
-- ********************************************************************
-- * MODULE IDENTITY
-- ********************************************************************
ciscoLwappTextualConventions MODULE-IDENTITY
LAST-UPDATED "201109130000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems,
Customer Service
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
Email: cs-wnbu-snmp@cisco.com"
DESCRIPTION
"This module defines textual conventions used
throughout the Cisco enterprise MIBs
designed for implementation on Central
Controllers that terminate the Light Weight
Access Point Protocol from LWAPP Access
Points.
The relationship between CC and the LWAPP APs
can be depicted as follows:
+......+ +......+ +......+ +......+
+ + + + + + + +
+ CC + + CC + + CC + + CC +
+ + + + + + + +
+......+ +......+ +......+ +......+
.. . . .
.. . . .
. . . . .
. . . . .
. . . . .
. . . . .
+......+ +......+ +......+ +......+ +......+
+ + + + + + + + + +
+ AP + + AP + + AP + + AP + + AP +
+ + + + + + + + + +
+......+ +......+ +......+ +......+ +......+
. . . .
. . . . .
. . . . .
. . . . .
. . . . .
+......+ +......+ +......+ +......+ +......+
+ + + + + + + + + +
+ MN + + MN + + MN + + MN + + MN +
+ + + + + + + + + +
+......+ +......+ +......+ +......+ +......+
The LWAPP tunnel exists between the controller and
the APs. The MNs communicate with the APs through
the protocol defined by the 802.11 standard.
LWAPP APs, upon bootup, discover and join one of the
controllers and the controller pushes the configuration,
that includes the WLAN parameters, to the LWAPP APs.
The APs then encapsulate all the 802.11 frames from
wireless clients inside LWAPP frames and forward
the LWAPP frames to the controller.
GLOSSARY
Access Point ( AP )
An entity that contains an 802.11 medium access
control ( MAC ) and physical layer ( PHY ) interface
and provides access to the distribution services via
the wireless medium for associated clients.
LWAPP APs encapsulate all the 802.11 frames in
LWAPP frames and sends it to the controller to which
it is logically connected.
Advanced Encryption Standard ( AES )
In cryptography, the Advanced Encryption Standard
(AES), also known as Rijndael, is a block cipher
adopted as an encryption standard by the US
government. It is expected to be used worldwide
and analysed extensively, as was the case with its
predecessor, the Data Encryption Standard (DES).
AES was adopted by National Institute of Standards
and Technology (NIST) as US FIPS PUB 197 in
November 2001 after a 5-year standardisation
process.
Central Controller ( CC )
The central entity that terminates the LWAPP protocol
tunnel from the LWAPP APs. Throughout this MIB,
this entity is also referred to as 'controller'.
Light Weight Access Point Protocol ( LWAPP )
This is a generic protocol that defines the
communication between the Access Points and the
Central Controller.
Management Frame Protection ( MFP )
A proprietary mechanism devised to integrity protect
the otherwise unprotected management frames of the
802.11 protocol specification.
Message Integrity Check ( MIC )
A checksum computed on a sequence of bytes and made
known to the receiving party in a data communication,
to let the receiving party make sure the bytes
received were not compromised enroute.
Mobile Node ( MN )
A roaming 802.11 wireless device in a wireless
network associated with an access point.
Temporal Key Integrity Protocol ( TKIP )
A security protocol defined to enhance the limitations
of WEP. Message Integrity Check and per-packet keying
on all WEP-encrypted frames are two significant
enhancements provided by TKIP to WEP.
Wired Equivalent Privacy ( WEP )
A security method defined by 802.11. WEP uses a
symmetric key stream cipher called RC4 to encrypt the
data packets.
802.11n
802.11n builds upon previous 802.11 standards by
adding MIMO (multiple-input multiple-output). MIMO
uses multiple transmitter and receiver antennas to
allow for increased data throughput through spatial
multiplexing and increased range.
Control/Extension Channel
A single 802.11 channel is 20 MHz wide. 802.11n allows
the use of channels of width 40 MHz by combining two
20 MHz channels. The channels are known as the primary
or control channel and secondary or extension channel.
Both the channels are used for transmission
and reception of data.
REFERENCE
[1] Part 11 Wireless LAN Medium Access Control ( MAC )
and Physical Layer ( PHY ) Specifications.
[2] Draft-obara-capwap-lwapp-00.txt, IETF Light
Weight Access Point Protocol.
[3] Enhanced Wireless Consortium MAC Specification,
v1.24.
[4] Enhanced Wireless Consortium PHY Specification,
v1.27."
REVISION "201109130000Z"
DESCRIPTION
"Added new textual conventions CcxServiceVersion"
REVISION "201002230000Z"
DESCRIPTION
"Added new textual conventions CLApDot11RadioRole,
CLClientPowerSaveMode,and CLApDot11RadioSubband."
REVISION "200709110000Z"
DESCRIPTION
"Added new textual convention CLWebAuthType."
REVISION "200702050000Z"
DESCRIPTION
"Added new textual conventions CLDot11ChannelBandwidth,
CLDot11Band and CLApAssocFailureReason."
REVISION "200610310000Z"
DESCRIPTION
"Added new textual conventions CLMfpEventSource,
CLCdpAdvtVersionType and CLDot11ClientStatus."
REVISION "200604130000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { ciscoMgmt 514 }
-- ********************************************************************
-- TEXTUAL CONVENTION
-- ********************************************************************
CLApIfType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the type of a
wireless interface.
The semantics are as follows:
dot11bg - This value indicates that the radio
interface follows 802.11b or 802.11g standard.
dot11a - This value indicates that the radio
interface follows 802.11a standard.
uwb - This value indicates that this is a Ultra
Wideband Interface."
SYNTAX INTEGER {
dot11bg(1),
dot11a(2),
uwb(3)
}
CLDot11Channel ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the possible channel
numbers in an 802.11 communication channel. The
802.11 radio interface of an Access Point operates
in one of the possible channels at any point of time
for wireless data communication with 802.11 based
wireless clients."
SYNTAX Unsigned32 (1..14 | 34 | 36 | 38 | 40 | 42 | 44 | 46
| 48 | 52 | 56 | 60 | 64 | 149 | 153
| 157 | 161)
CLDot11ClientStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the states
of an 802.11 client.
The semantics are as follows:
idle(1) - client is in idle mode.
aaaPending(2) - client's authentication is pending.
Request has been sent to AAA server for authentication.
authenticated(3) - client has been authenticated.
associated(4) - client is associated, but not
authenticated.
powersave(5) - client is in powersave mode.
disassociated(6) - client has dissociated and not in
any of the 802.11 networks managed by the controller.
tobedeleted(7) - client is marked for deletion.
probing(8) - state before association. The client
will be removed if it does not associate.
excluded(9) - client has been marked as excluded after fixed
number of authentication failures."
SYNTAX INTEGER {
idle(1),
aaaPending(2),
authenticated(3),
associated(4),
powersave(5),
disassociated(6),
tobedeleted(7),
probing(8),
excluded(9)
}
CLEventFrames ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the possible
802.11 management frame subtypes.
cLAssocRequestFrm - 802.11 Association Request
frame
cLAssocResponseFrm - 802.11 Association Response
frame
cLReAssocRequestFrm - 802.11 Reassociation
Request frame
cLReAssocResponseFrm - 802.11 Reassociation
Response frame
cLProbeRequestFrm - 802.11 Probe Request frame
cLProbeResponseFrm - 802.11 Probe Response
frame
cLReserved1 - Reserved for future use
cLReserved2 - Reserved for future use
cLBeaconFrm - 802.11 Beacon frame
cLAtimFrm - 802.11 Adhoc Traffic Indication
Map frame
cLDissociationFrm - 802.11 Dissociation
frame
cLAuthenticationFrm - 802.11 Authentication
frame
cLDeAuthenticationFrm - 802.11 Deauthentication
frame"
REFERENCE
"Part 11 Wireless LAN Medium Access Control ( MAC )
and Physical Layer ( PHY ) Specifications,
Section 7.1.3.1.2 - Type and Subtype fields"
SYNTAX BITS {
cLAssocRequestFrm(0),
cLAssocResponseFrm(1),
cLReAssocRequestFrm(2),
cLReAssocResponseFrm(3),
cLProbeRequestFrm(4),
cLProbeResponseFrm(5),
cLReserved1(6),
cLReserved2(7),
cLBeaconFrm(8),
cLAtimFrm(9),
cLDissociationFrm(10),
cLAuthenticationFrm(11),
cLDeAuthenticationFrm(12)
}
CLMfpEventType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The type of the MFP anomaly event.
invalidMic - The MFP Validation has identified
that the MIC carried by a particular management
frame is invalid.
invalidSeq - The MFP validation has identified
that a particular management frame is carrying an
invalid sequence number. Note that an invalid
sequence number error can also be detected due to an
incorrect timestamp in the MFP information element.
The incorrect timestamp could possibly be due to the
fact that the detecting AP's time window is not in
synchronization with that of other APs in the
MFP framework.
noMic - The MFP validation has detected a management
frame without the MFP information element.
unexpectedMic - The MFP validation has detected a
management frame as carrying a MIC value when
protection is not enabled on the WLAN.
ccmpDecryptError - An MFP frame that was apparently
received from a client in an AES-CCMP encrypted
session was rejected by the Access Point because it
could not be decrypted.
ccmpInvalidMhdrIe - An MFP frame that was apparently
received from a client in an AES-CCMP encrypted
session was rejected by the Access Point because it
contained an invalid MHDR information element, or the
MHDR information element was not present.
ccmpInvalidReplayCtr - An MFP frame that was apparently
received from a client in an AES-CCMP encrypted session
was rejected by the Access Point because the replay
counter was not valid.
tkipInvalidIcv - An MFP frame that was apparently
received from a client in a TKIP encrypted session was
rejected by the Access Point because it contained an
invalid Integrity Check Value.
tkipInvalidMic - An MFP frame that was apparently
received from a client in a TKIP encrypted session was
rejected by the Access Point because the message
integrity check failed.
tkipInvalidMhdrIe - An MFP frame that was apparently
received from a client in a TKIP encrypted session was
rejected by the Access Point because it contained an
invalid MHDR information element, or the MHDR
information element was not present.
tkipInvalidReplayCtr - An MFP frame that was apparently
received from a client in a TKIP encrypted session was
rejected by the Access Point because it the replay
counter was not valid.
bcastDisassociationFrameRcvd - The Access Point detected
a broadcast disassociation frame. Broadcast
disassociation frames are rejected by CCXv5 compliant
devices.
bcastDeauthenticationFrameRcvd - The Access Point
detected a broadcast deauthentication frame. Broadcast
deauthentication frames are rejected by CCXv5 compliant
devices.
bcastActionFrameRcvd - The Access Point detected a
broadcast action frame. Broadcast action frames are
rejected by CCXv5 compliant devices."
SYNTAX INTEGER {
invalidMic(1),
invalidSeq(2),
noMic(3),
unexpectedMic(4),
ccmpNoEncryptError(16),
ccmpDecryptError(17),
ccmpInvalidReplayCtr(19),
tkipNoEncryptError(20),
tkipInvalidIcv(21),
tkipInvalidMic(22),
tkipInvalidMhdrIe(23),
tkipInvalidReplayCtr(24),
bcastDisassociationFrameRcvd(32),
bcastDeauthenticationFrameRcvd(33),
bcastActionFrameRcvd(34)
}
CLMfpEventSource ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The source of the MFP anomaly event.
infrastructureMfp - The source of the MFP event is
an infrastructure device that implements MFP.
clientMfp - The source of the MFP event is a client
device that implements MFP."
SYNTAX INTEGER {
infrastructureMfp(1),
clientMfp(2)
}
CLMfpVersion ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention lists the versions of
the MFP protocol."
SYNTAX INTEGER {
mfpv1(1),
mfpv2(2)
}
CLTimeBaseStatus ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention is used to define the
time synchronization of entities with their
respective time bases.
cTimeBaseInSync - This value indicates that the
respective entity is in synchronization with
its time base.
cTimeBaseNotInSync - This value indicates that
the respective entity is not in synchronization
with its time base."
SYNTAX INTEGER {
cTimeBaseInSync(1),
cTimeBaseNotInSync(2)
}
CLSecEncryptType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the type of
encryption to be applied to a WLAN.
The semantics are as follows:
tkip - This value indicates that TKIP encryption
is configured for data protection.
aes - This value indicates that AES encryption
is configured for data protection."
SYNTAX BITS {
tkip(0),
aes(1)
}
CLSecKeyFormat ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the type of
the key configured for encryption."
SYNTAX INTEGER {
default(1),
hex(2),
ascii(3)
}
CLDot11RfParamMode ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines how the RF
parameters used to manage roaming are chosen
by the controller.
default - controller reverts back to the default
values specified for the RF parameters.
auto - controller determines the RF parameters
automatically without any input from the end user.
custom - controller uses the RF parameters
configured by the end user. User is allowed to
configure the parameters only if the mode is set
to 'custom'."
SYNTAX INTEGER {
default(1),
custom(2),
auto(3)
}
CLTsmDot11CurrentPackets ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"The number of packets received over a specified
period of time."
SYNTAX Gauge32
CLCdpAdvtVersionType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention lists the versions of
the CDP protocol in use in LWAPP APs and Controllers."
SYNTAX INTEGER {
cdpv1(1),
cdpv2(2)
}
CLDot11ChannelBandwidth ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the channel
bandwidth for 802.11n radio interfaces.
The semantics are as follows:
five - This value indicates that the bandwidth
is 5 MHz.
ten - This value indicates that the bandwidth
is 10 MHz.
twenty - This value indicates that the bandwidth
is 20 MHz.
aboveforty - This value indicates that the bandwidth
is 40 MHz with the extension channel above the control
channel.
belowforty - This value indicates that the bandwidth
is 40 MHz with the extension channel below the control
channel."
SYNTAX INTEGER {
five(1),
ten(2),
twenty(3),
aboveforty(4),
belowforty(5)
}
CLDot11Band ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the 802.11 frequency
band.
The semantics are as follows:
band2dot4 - This value indicates that the
2.4 GHz band is in use.
band5 - This value indicates that the
5 GHz band is in use."
SYNTAX INTEGER {
band2dot4(1),
band5(2)
}
CLApAssocFailureReason ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the possible reasons
for an AP's failure to get associated to a controller.
The semantics are as follows:
unknown - The reason for the AP not being able to
associate is unknown.
notSupported - The AP is not supported for management
by the controller."
SYNTAX INTEGER {
unknown(1),
notSupported(2)
}
CLWebAuthType ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"Represents either one of the following web auth types
internalDefault(1) -
The default login page will be
presented to the client for authentication.
internalCustom(2) -
The administrator has created and
uploaded a custom login page and it will be
presented to the clients for authentication.
external(3) -
This value indicates that the login page
will be served from the external web server. Note
that cLWAWebAuthType can be successfully set to this
value when the cLWAExternalWebAuthURL object has been
set to string with non-zero length."
SYNTAX INTEGER {
internalDefault(1),
internalCustom(2),
external(3)
}
CLClientPowerSaveMode ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines power management mode
of this client.
The possible two modes are:
active(1) - The client is not in power-save mode
and it is actively sending or receiving
data.
powersave(2) - The client is in power-save mode and it
wakes up once a while to check for
pending data."
SYNTAX INTEGER {
active(1),
powersave(2)
}
CLApDot11RadioSubband ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the possible values
of subbands a radio can support.
Currently, this information is applicable to
A radios.
all(1) - This radio is a regular A radio that operates
in the full A band spectrum in the frequency
range 4940 Mhz - 5850 Mhz.
sub49(2) - This is an A radio that operates only in the
public safety (4.9 Ghz) sub band in the
frequency range 4940 Mhz - 5100 Mhz.
sub52(3) - This is an A radio that operates only in the
5.2 Ghz sub band in the frequency range
5250 Mhz - 5350 Mhz.
sub54(4) - This is an A radio that operates only in the
5.4 Ghz sub band in the frequency range
5470 Mhz - 5725 Mhz.
sub58(5) - This is an A radio that operates only in the
5.8 Ghz sub band in the frequency range
5725 Mhz - 5850 Mhz."
SYNTAX INTEGER {
all(1),
sub49(2),
sub52(3),
sub54(4),
sub58(5)
}
CLApDot11RadioRole ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the possible values
of role a radio can support.
shutdown(0) - This role states that the radio is
shut down.
upDownlink(1) - This radio provides both uplink
and downlink access.
uplink(2) - This role is applicable only for Ethernet
ports. This radio provides uplink access.
downlink(3) - This radio provides downlink access.
downlink radio allows child APs to join.
access(4) - This radio provides the access to the
clients.
uplinkAccess(5) - This radio role states that the radio
provides the uplink access to the clients.
downlinkAccess(6) - This radio role states that the radio
provides the downlink access to
the clients.
upDownlinkAccess(7) - This radio role states that the radio
provides both uplink and downlink access
to the clients.
unknown(8) - This radio role is unknown."
SYNTAX INTEGER {
shutdown(0),
upDownlink(1),
uplink(2),
downlink(3),
access(4),
uplinkAccess(5),
downlinkAccess(6),
upDownlinkAccess(7),
unknown(8)
}
CcxServiceVersion ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"This textual convention defines the service versions
supported by a CCX Next client. The supported services
include foundation, location, management and voice."
SYNTAX INTEGER {
none(1),
version1(2),
version2(3)
}
END

View File

@ -1,326 +1,554 @@
-- *****************************************************************
-- CISCO-SMI.my: Cisco Enterprise Structure of Management Information
--
--
-- April 1994, Jeffrey T. Johnson
--
-- Copyright (c) 1994-1997 by cisco Systems, Inc.
--
-- Copyright (c) 1994-1997, 2001, 2009, 2012 by cisco Systems Inc.
-- All rights reserved.
--
-- *****************************************************************
--
--
-- ****************************************************************
CISCO-SMI DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY,
OBJECT-IDENTITY,
enterprises
FROM SNMPv2-SMI;
MODULE-IDENTITY,
OBJECT-IDENTITY,
enterprises
FROM SNMPv2-SMI;
cisco MODULE-IDENTITY
LAST-UPDATED "200001110000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
" Cisco Systems
Customer Service
LAST-UPDATED "201208290000Z"
ORGANIZATION "Cisco Systems, Inc."
CONTACT-INFO
"Cisco Systems
Customer Service
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Postal: 170 West Tasman Drive
San Jose, CA 95134
USA
Tel: +1 800 553-NETS
Tel: +1 800 553-NETS
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"The Structure of Management Information for the
Cisco enterprise."
REVISION "200001110000Z"
DESCRIPTION
"Added ciscoPolicy, ciscoPolicyAuto, ciscoPIB, and
ciscoPibToMib."
REVISION "9704090000Z"
DESCRIPTION
"Added ciscoPartnerProducts to generate sysObjectID
for partner platforms"
REVISION "9505160000Z"
DESCRIPTION
"New oid assignments for Cisco REPEATER MIB and others."
REVISION "9404262000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { enterprises 9 } -- assigned by IANA
E-mail: cs-snmp@cisco.com"
DESCRIPTION
"The Structure of Management Information for the
Cisco enterprise."
REVISION "201208290000Z"
DESCRIPTION
"Added ciscoSMB under otherEnterprises"
REVISION "200902030000Z"
DESCRIPTION
"Added ciscoSB under otherEnterprises"
REVISION "200203210000Z"
DESCRIPTION
"Added ciscoPKI for PKI policy and extension OIDs"
REVISION "200105220000Z"
DESCRIPTION
"Added transport protocol domains."
REVISION "200011012246Z"
DESCRIPTION
"Added ciscoDomains to define new transports. Also added
ciscoCpeCIB, which will contain managed objects that
contribute to the CPE Configuration Information Base (CIB)."
REVISION "200001110000Z"
DESCRIPTION
"Added ciscoPolicy, ciscoPolicyAuto, ciscoPIB, and
ciscoPibToMib."
REVISION "9704090000Z"
DESCRIPTION
"Added ciscoPartnerProducts to generate sysObjectID
for partner platforms"
REVISION "9505160000Z"
DESCRIPTION
"New oid assignments for Cisco REPEATER MIB and others."
REVISION "9404262000Z"
DESCRIPTION
"Initial version of this MIB module."
::= { enterprises 9 }
-- assigned by IANA
ciscoProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoProducts is the root OBJECT IDENTIFIER from
which sysObjectID values are assigned. Actual
values are defined in CISCO-PRODUCTS-MIB."
::= { cisco 1 }
STATUS current
DESCRIPTION
"ciscoProducts is the root OBJECT IDENTIFIER from
which sysObjectID values are assigned. Actual
values are defined in CISCO-PRODUCTS-MIB."
::= { cisco 1 }
local OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 MIBS were built."
::= { cisco 2 }
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 MIBS were built."
::= { cisco 2 }
temporary OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 experiments were
placed."
::= { cisco 3 }
STATUS current
DESCRIPTION
"Subtree beneath which pre-10.2 experiments were
placed."
::= { cisco 3 }
pakmon OBJECT-IDENTITY
STATUS current
DESCRIPTION
"reserved for pakmon"
::= { cisco 4 }
STATUS current
DESCRIPTION
"reserved for pakmon"
::= { cisco 4 }
workgroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by the Workgroup Business Unit"
::= { cisco 5 }
STATUS current
DESCRIPTION
"subtree reserved for use by the Workgroup Business Unit"
::= { cisco 5 }
otherEnterprises OBJECT-IDENTITY
STATUS current
DESCRIPTION
"otherEnterprises provides a root object identifier
from which mibs produced by other companies may be
placed. mibs produced by other enterprises are
typicially implemented with the object identifiers
as defined in the mib, but if the mib is deemed to
be uncontrolled, we may reroot the mib at this
subtree in order to have a controlled version."
::= { cisco 6 }
STATUS current
DESCRIPTION
"otherEnterprises provides a root object identifier
from which mibs produced by other companies may be
placed. mibs produced by other enterprises are
typicially implemented with the object identifiers
as defined in the mib, but if the mib is deemed to
be uncontrolled, we may reroot the mib at this
subtree in order to have a controlled version."
::= { cisco 6 }
ciscoSB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoSB provides root Object Identifier for Management
Information Base for products of Cisco Small Business.
This includes products rebranded from linksys aquisition.
MIB numbers under this root are managed and controlled
by ciscosb_mib@cisco.com."
::= { otherEnterprises 1 }
ciscoSMB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoSMB provides root Object Identifier for Management
Information Base for products of Cisco built for Small and
Medium Business market.The MIB numbers under this root are
managed and controlled by ciscosmb_mib@cisco.com"
::= { otherEnterprises 2 }
ciscoAgentCapability OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoAgentCapability provides a root object identifier
from which AGENT-CAPABILITIES values may be assigned."
::= { cisco 7 }
STATUS current
DESCRIPTION
"ciscoAgentCapability provides a root object identifier
from which AGENT-CAPABILITIES values may be assigned."
::= { cisco 7 }
ciscoConfig OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoConfig is the main subtree for configuration mibs."
::= { cisco 8 }
STATUS current
DESCRIPTION
"ciscoConfig is the main subtree for configuration mibs."
::= { cisco 8 }
ciscoMgmt OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoMgmt is the main subtree for new mib development."
::= { cisco 9 }
STATUS current
DESCRIPTION
"ciscoMgmt is the main subtree for new mib development."
::= { cisco 9 }
ciscoExperiment OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoExperiment provides a root object identifier
from which experimental mibs may be temporarily
based. mibs are typicially based here if they
fall in one of two categories
1) are IETF work-in-process mibs which have not
been assigned a permanent object identifier by
the IANA.
2) are cisco work-in-process which has not been
assigned a permanent object identifier by the
cisco assigned number authority, typicially because
the mib is not ready for deployment.
STATUS current
DESCRIPTION
"ciscoExperiment provides a root object identifier
from which experimental mibs may be temporarily
based. mibs are typicially based here if they
fall in one of two categories
1) are IETF work-in-process mibs which have not
been assigned a permanent object identifier by
the IANA.
2) are cisco work-in-process which has not been
assigned a permanent object identifier by the
cisco assigned number authority, typicially because
the mib is not ready for deployment.
NOTE WELL: support for mibs in the ciscoExperiment
subtree will be deleted when a permanent object
identifier assignment is made."
::= { cisco 10 }
NOTE WELL: support for mibs in the ciscoExperiment
subtree will be deleted when a permanent object
identifier assignment is made."
::= { cisco 10 }
ciscoAdmin OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoAdmin is reserved for administratively assigned
OBJECT IDENTIFIERS, i.e. those not associated with MIB
objects"
::= { cisco 11 }
STATUS current
DESCRIPTION
"ciscoAdmin is reserved for administratively assigned
OBJECT IDENTIFIERS, i.e. those not associated with MIB
objects"
::= { cisco 11 }
ciscoModules OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoModules provides a root object identifier
from which MODULE-IDENTITY values may be assigned."
::= { cisco 12 }
STATUS current
DESCRIPTION
"ciscoModules provides a root object identifier
from which MODULE-IDENTITY values may be assigned."
::= { cisco 12 }
lightstream OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by Lightstream"
::= { cisco 13 }
STATUS current
DESCRIPTION
"subtree reserved for use by Lightstream"
::= { cisco 13 }
ciscoworks OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoworks provides a root object identifier beneath
which mibs applicable to the CiscoWorks family of network
management products are defined."
::= { cisco 14 }
STATUS current
DESCRIPTION
"ciscoworks provides a root object identifier beneath
which mibs applicable to the CiscoWorks family of network
management products are defined."
::= { cisco 14 }
newport OBJECT-IDENTITY
STATUS current
DESCRIPTION
"subtree reserved for use by the former Newport Systems
Solutions, now a portion of the Access Business Unit."
::= { cisco 15 }
STATUS current
DESCRIPTION
"subtree reserved for use by the former Newport Systems
Solutions, now a portion of the Access Business Unit."
::= { cisco 15 }
ciscoPartnerProducts OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPartnerProducts is the root OBJECT IDENTIFIER from
which partner sysObjectID values may be assigned. Such
sysObjectID values are composed of the ciscoPartnerProducts
prefix, followed by a single identifier that is unique for
each partner, followed by the value of sysObjectID of the
Cisco product from which partner product is derived. Note
that the chassisPartner MIB object defines the value of the
identifier assigned to each partner."
::= { cisco 16 }
STATUS current
DESCRIPTION
"ciscoPartnerProducts is the root OBJECT IDENTIFIER from
which partner sysObjectID values may be assigned. Such
sysObjectID values are composed of the ciscoPartnerProducts
prefix, followed by a single identifier that is unique for
each partner, followed by the value of sysObjectID of the
Cisco product from which partner product is derived. Note
that the chassisPartner MIB object defines the value of the
identifier assigned to each partner."
::= { cisco 16 }
ciscoPolicy OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPolicy is the root of the Cisco-assigned OID
subtree for use with Policy Management."
::= { cisco 17 }
STATUS current
DESCRIPTION
"ciscoPolicy is the root of the Cisco-assigned OID
subtree for use with Policy Management."
::= { cisco 17 }
-- Note that 1.3.6.1.4.1.9.17.1 is currently unassigned
-- Note that 1.3.6.1.4.1.9.17.1 is currently unassigned
ciscoPIB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPIB is the root of the Cisco-assigned OID
subtree for assignment to PIB (Policy Information
Base) modules."
::= { ciscoPolicy 2 }
STATUS current
DESCRIPTION
"ciscoPIB is the root of the Cisco-assigned OID
subtree for assignment to PIB (Policy Information
Base) modules."
::= { ciscoPolicy 2 }
ciscoPolicyAuto OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPolicyAuto is the root of the Cisco-assigned
OID subtree for OIDs which are automatically assigned
for use in Policy Management."
::= { cisco 18 }
STATUS current
DESCRIPTION
"ciscoPolicyAuto is the root of the Cisco-assigned
OID subtree for OIDs which are automatically assigned
for use in Policy Management."
::= { cisco 18 }
-- Note that 1.3.6.1.4.1.9.18.1 is currently unassigned
-- Note that 1.3.6.1.4.1.9.18.1 is currently unassigned
ciscoPibToMib OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPibToMib is the root of the Cisco-assigned
OID subtree for MIBs which are algorithmically
generated/translated from Cisco PIBs with OIDs
assigned under the ciscoPIB subtree.
These generated MIBs allow management
entities (other the current Policy Server) to
read the downloaded policy. By convention, for PIB
'ciscoPIB.x', the generated MIB shall have the
name 'ciscoPibToMib.x'."
::= { ciscoPolicyAuto 2 }
STATUS current
DESCRIPTION
"ciscoPibToMib is the root of the Cisco-assigned
OID subtree for MIBs which are algorithmically
generated/translated from Cisco PIBs with OIDs
assigned under the ciscoPIB subtree.
These generated MIBs allow management
entities (other the current Policy Server) to
read the downloaded policy. By convention, for PIB
'ciscoPIB.x', the generated MIB shall have the
name 'ciscoPibToMib.x'."
::= { ciscoPolicyAuto 2 }
ciscoDomains OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoDomains provides a root object identifier from which
different transport mapping values may be assigned."
::= { cisco 19 }
ciscoCIB OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCIB is the root of the Cisco-assigned OID subtree for
assignment to MIB modules describing managed objects that
part of the CPE automatic configuration framework."
::= { cisco 20 }
ciscoCibMmiGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCibMmiGroup is the root of the Cisco-assigned OID
subtree for assignment to MIB modules describing managed
objects supporting the Modem Management Interface (MMI),
the interface that facilitates CPE automatic configuration."
::= { ciscoCIB 1 }
ciscoCibProvGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoCibStoreGroup is the root of the Cisco-assigned OID
subtree for assignment to MIB modules describing managed
objects contributing to the Configuration Information Base
(CIB)."
::= { ciscoCIB 2 }
ciscoPKI OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoPKI is the root of cisco-assigned OID subtree for PKI
Certificate Policies and Certificate Extensions."
::= { cisco 21 }
-- ciscoAdmin assignments follow
ciscoProxy OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoProxy OBJECT IDENTIFIERS are used to uniquely name
party mib records created to proxy for SNMPv1."
::= { ciscoAdmin 1 }
ciscoPartyProxy OBJECT IDENTIFIER ::= { ciscoProxy 1 }
ciscoContextProxy OBJECT IDENTIFIER ::= { ciscoProxy 2 }
STATUS current
DESCRIPTION
"ciscoProxy OBJECT IDENTIFIERS are used to uniquely name
party mib records created to proxy for SNMPv1."
::= { ciscoAdmin 1 }
ciscoPartyProxy OBJECT IDENTIFIER
::= { ciscoProxy 1 }
ciscoContextProxy OBJECT IDENTIFIER
::= { ciscoProxy 2 }
--
-- Administrative assignments for repeaters
--
ciscoRptrGroupObjectID OBJECT-IDENTITY
STATUS current
DESCRIPTION
"ciscoRptrGroupObjectID OBJECT IDENTIFIERS are used to
uniquely identify groups of repeater ports for use by the
SNMP-REPEATER-MIB (RFC 1516) rptrGroupObjectID object."
::= { ciscoAdmin 2 }
STATUS current
DESCRIPTION
"ciscoRptrGroupObjectID OBJECT IDENTIFIERS are used to
uniquely identify groups of repeater ports for use by the
SNMP-REPEATER-MIB (RFC 1516) rptrGroupObjectID object."
::= { ciscoAdmin 2 }
ciscoUnknownRptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of an unknown repeater port group."
::= { ciscoRptrGroupObjectID 1 }
STATUS current
DESCRIPTION
"The identity of an unknown repeater port group."
::= { ciscoRptrGroupObjectID 1 }
cisco2505RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2505 repeater
port group."
::= { ciscoRptrGroupObjectID 2 }
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2505 repeater
port group."
::= { ciscoRptrGroupObjectID 2 }
cisco2507RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2507 repeater
port group."
::= { ciscoRptrGroupObjectID 3 }
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2507 repeater
port group."
::= { ciscoRptrGroupObjectID 3 }
cisco2516RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2516 repeater
port group."
::= { ciscoRptrGroupObjectID 4 }
STATUS current
DESCRIPTION
"The authoritative identity of the Cisco 2516 repeater
port group."
::= { ciscoRptrGroupObjectID 4 }
ciscoWsx5020RptrGroup OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The authoritative identity of the wsx5020 repeater
port group."
::= { ciscoRptrGroupObjectID 5 }
STATUS current
DESCRIPTION
"The authoritative identity of the wsx5020 repeater
port group."
::= { ciscoRptrGroupObjectID 5 }
--
-- Administrative assignments for chip sets
--
-- Administrative assignments for chip sets
ciscoChipSets OBJECT-IDENTITY
STATUS current
DESCRIPTION
"Numerous media-specific MIBS have an object, defined as
an OBJECT IDENTIFIER, which is the identity of the chipset
realizing the interface. Cisco-specific chipsets have their
OBJECT IDENTIFIERS assigned under this subtree."
::= { ciscoAdmin 3 }
STATUS current
DESCRIPTION
"Numerous media-specific MIBS have an object, defined as
an OBJECT IDENTIFIER, which is the identity of the chipset
realizing the interface. Cisco-specific chipsets have their
OBJECT IDENTIFIERS assigned under this subtree."
::= { ciscoAdmin 3 }
ciscoChipSetSaint1 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 1 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 1 }
STATUS current
DESCRIPTION
"The identity of the Rev 1 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 1 }
ciscoChipSetSaint2 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 2 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 2 }
STATUS current
DESCRIPTION
"The identity of the Rev 2 SAINT ethernet chipset
manufactured for cisco by LSI Logic."
::= { ciscoChipSets 2 }
ciscoChipSetSaint3 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 3 SAINT ethernet chipset
manufactured for cisco by Plessey."
::= { ciscoChipSets 3 }
STATUS current
DESCRIPTION
"The identity of the Rev 3 SAINT ethernet chipset
manufactured for cisco by Plessey."
::= { ciscoChipSets 3 }
ciscoChipSetSaint4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The identity of the Rev 4 SAINT ethernet chipset
manufactured for cisco by Mitsubishi."
::= { ciscoChipSets 4 }
STATUS current
DESCRIPTION
"The identity of the Rev 4 SAINT ethernet chipset
manufactured for cisco by Mitsubishi."
::= { ciscoChipSets 4 }
-- Transport protocol domains
--
-- The textual conventions for these domains are defined in CISCO-TM.
ciscoTDomains OBJECT IDENTIFIER
::= { ciscoDomains 99999 }
ciscoTDomainUdpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The UDP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
::= { ciscoTDomains 1 }
ciscoTDomainUdpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The UDP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
::= { ciscoTDomains 2 }
ciscoTDomainTcpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The TCP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
::= { ciscoTDomains 3 }
ciscoTDomainTcpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The TCP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
::= { ciscoTDomains 4 }
ciscoTDomainLocal OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The Posix Local IPC transport domain. The corresponding
transport address is of type CiscoTAddressLocal. The Posix
Local IPC transport domain incorporates the well known UNIX
domain sockets."
::= { ciscoTDomains 5 }
ciscoTDomainClns OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The CLNS transport domain. The corresponding transport
address is of type CiscoTAddressOSI."
::= { ciscoTDomains 6 }
ciscoTDomainCons OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The CONS transport domain. The corresponding transport
address is of type CiscoTAddressOSI."
::= { ciscoTDomains 7 }
ciscoTDomainDdp OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The DDP transport domain. The corresponding transport
address is of type CiscoTAddressNBP."
::= { ciscoTDomains 8 }
ciscoTDomainIpx OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The IPX transport domain. The corresponding transport
address is of type CiscoTAddressIPX."
::= { ciscoTDomains 9 }
ciscoTDomainSctpIpv4 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The SCTP over IPv4 transport domain. The corresponding
transport address is of type CiscoTAddressIPv4."
REFERENCE
"RFC 2960 - Stream Control Transmission Protocol. R. Stewart,
Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor,
I. Rytina, M. Kalla, L. Zhang, V. Paxson. October 2000."
::= { ciscoTDomains 10 }
ciscoTDomainSctpIpv6 OBJECT-IDENTITY
STATUS current
DESCRIPTION
"The SCTP over IPv6 transport domain. The corresponding
transport address is of type CiscoTAddressIPv6 for global IPv6
addresses and CiscoTAddressIPv6s for scoped IPv6 addresses."
REFERENCE
"RFC 2960 - Stream Control Transmission Protocol. R. Stewart,
Q. Xie, K. Morneault, C. Sharp, H. Schwarzbauer, T. Taylor,
I. Rytina, M. Kalla, L. Zhang, V. Paxson. October 2000."
::= { ciscoTDomains 11 }
END

255
mibs/DCS3FRU-MIB Executable file
View File

@ -0,0 +1,255 @@
-------------------------------------------------------------------------------
--
-- Title: Systems Management Field Replaceable Unit (FRU) MIB
--
-- Version: 5.6.0
--
-- Release Date: April 2006
--
-- Description: This MIB defines MIB objects that make system FRU
-- information available to SNMP management applications.
--
-- Copyright (c) 2000-2006 Dell Inc.
-- All Rights Reserved.
--
-- Note: The information and functionality described by this MIB file,
-- like many MIB files, is subject to change without notice.
-- Please examine the version number of this MIB and compare it
-- to the version number you are expecting.
--
-- OID Format Legend:
-- <a> = attribute ID
-- <i> = index ID
--
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Begin MIB
-------------------------------------------------------------------------------
DCS3FRU-MIB DEFINITIONS ::= BEGIN
IMPORTS
enterprises
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB;
-------------------------------------------------------------------------------
-- Object Identifiers
-------------------------------------------------------------------------------
-- Enterprise ID
dell OBJECT IDENTIFIER ::= { enterprises 674 }
-- Server3 Branch
server3 OBJECT IDENTIFIER ::= { dell 10892 }
-- Server3 Groups
baseboardGroup OBJECT IDENTIFIER ::= { server3 1 }
-- Server3 Baseboard Groups for FRU
-- (Other Server3 Baseboard groups are defined in other MIB files.)
fruGroup OBJECT IDENTIFIER ::= { baseboardGroup 2000 }
-------------------------------------------------------------------------------
-- Textual Conventions
-------------------------------------------------------------------------------
DellObjectRange ::= INTEGER (1..128)
DellUnsigned8BitRange ::= INTEGER (0..255)
DellUnsigned16BitRange ::= INTEGER (0..65535)
DellUnsigned32BitRange ::= INTEGER (0..4294967295)
-- DellDateName dates are defined in the displayable format
-- yyyymmddHHMMSS.uuuuuu+ooo
-- where yyyy is the year, mm is the month number, dd is the day of the month,
-- HHMMSS are the hours, minutes and seconds, respectively, uuuuuu is the
-- number of microseconds, and +ooo is the offset from UTC in minutes. If east
-- of UTC, the number is preceded by a plus (+) sign, and if west of UTC, the
-- number is preceded by a minus (-) sign.
--
-- For example, Wednesday, May 25, 1994, at 1:30:15 PM EDT
-- would be represented as: 19940525133015.000000-300
--
-- Values must be zero-padded if necessary, like "05" in the example above.
-- If a value is not supplied for a field, each character in the field
-- must be replaced with asterisk ('*') characters.
DellDateName ::= DisplayString (SIZE (25))
--
-- Status
--
DellStatus ::= INTEGER {
other(1), -- status is not one of the following:
unknown(2), -- status of object is unknown (not known or monitored)
ok(3), -- status of object is OK (normal)
nonCritical(4), -- status of object is noncritical (warning)
critical(5), -- status of object is critical (failure)
nonRecoverable(6) -- status of object is non-recoverable (dead)
}
-------------------------------------------------------------------------------
--
-- MIB Groups
--
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Field Replaceable Unit (FRU) Group
--
-- OID: 1.3.6.1.4.1.674.10892.1.2000
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Field Replaceable Unit (FRU) Table
--
-- OID Format: 1.3.6.1.4.1.674.10892.1.2000.10.1.<a>.<i1>.<i2>
-------------------------------------------------------------------------------
DellFRUInformationState ::= INTEGER {
ok(1), -- FRU information is OK
notSupported(2), -- FRU information is not supported
notAvailable(3), -- FRU information is not available
checksumInvalid(4), -- FRU information checksum is invalid
corrupted(5) -- FRU information is corrupted
}
FruTableEntry ::= SEQUENCE {
fruChassisIndex DellObjectRange,
fruIndex DellObjectRange,
fruInformationStatus DellStatus,
fruInformationState DellFRUInformationState,
fruDeviceName DisplayString (SIZE (0..64)),
fruManufacturerName DisplayString (SIZE (0..64)),
fruSerialNumberName DisplayString (SIZE (0..64)),
fruPartNumberName DisplayString (SIZE (0..64)),
fruRevisionName DisplayString (SIZE (0..64)),
fruManufacturingDateName DellDateName,
fruAssetTagName DisplayString (SIZE (0..64))
}
fruTable OBJECT-TYPE
SYNTAX SEQUENCE OF FruTableEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"2000.0010 This object defines the Field Replaceable Unit table."
::= { fruGroup 10 }
fruTableEntry OBJECT-TYPE
SYNTAX FruTableEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"2000.0010.0001 This object defines the Field Replaceable Unit table entry."
INDEX { fruChassisIndex,
fruIndex }
::= { fruTable 1 }
fruChassisIndex OBJECT-TYPE
SYNTAX DellObjectRange
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0001 This attribute defines the index (one based) of the
chassis containing the field replaceable unit."
::= { fruTableEntry 1 }
fruIndex OBJECT-TYPE
SYNTAX DellObjectRange
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0002 This attribute defines the index (one based) of the
field replaceable unit."
::= { fruTableEntry 2 }
fruInformationStatus OBJECT-TYPE
SYNTAX DellStatus
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0003 This attribute defines the status of the
field replaceable unit information."
::= { fruTableEntry 3 }
fruInformationState OBJECT-TYPE
SYNTAX DellFRUInformationState
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0004 This attribute defines the state of the
field replaceable unit information. Some information for the
field replaceable unit may not be available if the state is
other than ok(1)."
::= { fruTableEntry 4 }
fruDeviceName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0005 This attribute defines the device name of the
field replaceable unit."
::= { fruTableEntry 5 }
fruManufacturerName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0006 This attribute defines the manufacturer of the
field replaceable unit."
::= { fruTableEntry 6 }
fruSerialNumberName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0007 This attribute defines the serial number of the
field replaceable unit."
::= { fruTableEntry 7 }
fruPartNumberName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0008 This attribute defines the part number of the
field replaceable unit."
::= { fruTableEntry 8 }
fruRevisionName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0009 This attribute defines the revision of the
field replaceable unit."
::= { fruTableEntry 9 }
fruManufacturingDateName OBJECT-TYPE
SYNTAX DellDateName
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0010 This attribute defines the manufacturing date of the
of the field replaceable unit."
::= { fruTableEntry 10 }
fruAssetTagName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..64))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"2000.0010.0001.0011 This attribute defines the asset tag of the
field replaceable unit."
::= { fruTableEntry 11 }
END
-------------------------------------------------------------------------------
-- End MIB
-------------------------------------------------------------------------------

1608
mibs/DCS3RMT-MIB Executable file

File diff suppressed because it is too large Load Diff

1172
mibs/DELL-ASF-MIB Executable file

File diff suppressed because it is too large Load Diff

521
mibs/DELL-RAC-MIB Normal file → Executable file

File diff suppressed because it is too large Load Diff

12901
mibs/IDRAC-MIB Executable file

File diff suppressed because it is too large Load Diff

13303
mibs/IDRAC-MIB-SMIv2 Executable file

File diff suppressed because it is too large Load Diff

1529
mibs/INTEL-LAN-ADAPTERS-MIB Executable file

File diff suppressed because it is too large Load Diff

33984
mibs/MIB-DELL-10892 Normal file → Executable file

File diff suppressed because it is too large Load Diff

353
mibs/MIB-Dell-CM Executable file
View File

@ -0,0 +1,353 @@
--
--
-- Title: Change Management MIB
--
-- Version: 1.0.7
--
-- Release Date: Jul 2004
--
-- Description: This file defines the change management MIB that is
-- implemented by the Server Administrator Update Service.
-- The MIB defines objects that make change management data available to SNMP
-- management applications. The MIB models inventory data described by the
-- inventory XML schema contained in the CM SDK Specification. Refer to this
-- for details on the inventory data obtained by the inventory collector.
--
-- Copyright (c) 2000-2004 Dell Inc.
-- All Rights Reserved.
--
-- Note: The information and functionality described by this MIB file,
-- like many MIB files, is subject to change without notice.
-- Please examine the version number of this MIB and compare it
-- to the version number you are expecting.
--
-- OID Format Legend:
-- <a> = attribute ID
-- <i> = index ID
--
--
--
-- Begin MIB
--
MIB-Dell-CM DEFINITIONS ::= BEGIN
IMPORTS
enterprises
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
DisplayString
FROM RFC1213-MIB;
--
-- Object Identifiers
--
-- Enterprise ID
dell OBJECT IDENTIFIER ::= { enterprises 674 }
-- Dell Groups
-- The cm group holds Change Management information. See the CM SDK
-- Specification for details.
cm OBJECT IDENTIFIER ::= { dell 10899 }
-- Change Management Groups
inventoryGroup OBJECT IDENTIFIER ::= { cm 1 }
operatingSystemGroup OBJECT IDENTIFIER ::= { cm 2 }
-- Product Groups
productID OBJECT IDENTIFIER ::= { cm 100 }
--
-- Textual Conventions
--
SystemID ::= OCTET STRING (SIZE (16))
Unsigned16BitRange ::= INTEGER (0..65535)
--
-- System Management Inventory
--
-- OID Format: 1.3.6.1.4.1.674.10899.1.1
--
inventoryLocale OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the locale for the system."
::= { inventoryGroup 1 }
inventorySchemaVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the version of the inventory schema
implemented by this system."
::= { inventoryGroup 2 }
inventorySystemID OBJECT-TYPE
SYNTAX SystemID
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the System ID for the system."
::= { inventoryGroup 3 }
--
-- Device Table
--
-- OID Format: 1.3.6.1.4.1.674.10899.1.5
--
deviceTable OBJECT-TYPE
SYNTAX SEQUENCE OF DeviceEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION "This defines a table of versioned devices as inventoried by the
product."
::= { inventoryGroup 5 }
deviceEntry OBJECT-TYPE
SYNTAX DeviceEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION "This defines a row of versioned devices as inventoried by the
product."
INDEX { deviceIndex }
::= { deviceTable 1 }
DeviceEntry ::= SEQUENCE {
deviceIndex Unsigned16BitRange, -- INDEX Item
deviceComponentID INTEGER,
deviceDisplayString DisplayString,
deviceVendorID OCTET STRING,
deviceDeviceID OCTET STRING,
deviceSubID OCTET STRING,
deviceSubVendorID OCTET STRING
}
deviceIndex OBJECT-TYPE
SYNTAX Unsigned16BitRange
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the unique index for this device."
::= { deviceEntry 1 }
deviceComponentID OBJECT-TYPE
SYNTAX INTEGER
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines an optional component id field for the
device."
::= { deviceEntry 2 }
deviceDisplayString OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute provides a displayable string that describes the
device."
::= { deviceEntry 3 }
deviceVendorID OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute represents the ID for the vendor supplying
the device."
::= { deviceEntry 4 }
deviceDeviceID OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute represents the ID for the device."
::= { deviceEntry 5 }
deviceSubID OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute provides additional device identification
information."
::= { deviceEntry 6 }
deviceSubVendorID OBJECT-TYPE
SYNTAX OCTET STRING
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute provides additional vendor identification
information."
::= { deviceEntry 7 }
--
-- Application Table
--
-- OID Format: 1.3.6.1.4.1.674.10899.1.6
--
applicationTable OBJECT-TYPE
SYNTAX SEQUENCE OF ApplicationEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION "This defines a table of application information for the system."
::= { inventoryGroup 6 }
applicationEntry OBJECT-TYPE
SYNTAX ApplicationEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION "This defines a row of application information for the system."
INDEX { applicationIndex }
::= { applicationTable 1 }
ApplicationEntry ::= SEQUENCE {
applicationIndex Unsigned16BitRange, -- INDEX Item
-- Device index for cross-indexing
applicationDeviceIndex Unsigned16BitRange,
applicationComponentType DisplayString,
applicationVersion DisplayString,
applicationDisplayString DisplayString,
applicationSubComponentID DisplayString
}
applicationIndex OBJECT-TYPE
SYNTAX Unsigned16BitRange
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the unique index for this application."
::= { applicationEntry 1 }
applicationDeviceIndex OBJECT-TYPE
SYNTAX Unsigned16BitRange
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines a cross-index to the device table for the
application."
::= { applicationEntry 2 }
applicationComponentType OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute identifies the type of application reported."
::= { applicationEntry 3 }
applicationVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute identifies the version of the application."
::= { applicationEntry 4 }
applicationDisplayString OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute provides a user visible display string that
describes the application."
::= { applicationEntry 5 }
applicationSubComponentID OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute provides the sub component id for the
application. This is usually valid on ESM device
reporting."
::= { applicationEntry 6 }
--
-- Operating System Group
--
-- OID Format: 1.3.6.1.4.1.674.10899.2
--
operatingSystemVendor OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the vendor of the Operating System."
::= { operatingSystemGroup 1 }
operatingSystemMajorVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the major version of the Operating System."
::= { operatingSystemGroup 2 }
operatingSystemMinorVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the minor version of the Operating System."
::= { operatingSystemGroup 3 }
operatingSystemSPMajorVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the Operating System's Service Pack major version."
::= { operatingSystemGroup 5 }
operatingSystemSPMinorVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the Operating System's Service Pack minor version."
::= { operatingSystemGroup 6 }
operatingSystemArchitecture OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the Operating System's architecture."
::= { operatingSystemGroup 7 }
--
-- Product ID group
--
-- OID Format: 1.3.6.1.4.1.674.10899.100.x
--
productIDDisplayName OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the display name of the product."
::= { productID 1 }
productIDDescription OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines a short description of the product."
::= { productID 2 }
productIDVendor OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the name of the manufacturer of the product."
::= { productID 3 }
productIDVersion OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS mandatory
DESCRIPTION "This attribute defines the version of the product."
::= { productID 4 }
productIDBuildNumber OBJECT-TYPE
SYNTAX DisplayString
ACCESS read-only
STATUS obsolete
DESCRIPTION "This attribute defines the software build number of the product."
::= { productID 5 }
END

194
mibs/MIB-Dell-OME Executable file
View File

@ -0,0 +1,194 @@
-------------------------------------------------------------------------------
-- OM Essentials MIB : OME.mib
--
-- Copyright (c) 2012 Dell Inc.
-- All Rights Reserved.
--
-- The information and functionality described by this MIB file,
-- like many MIB files, is subject to change without notice.
-- Please examine the version number of this MIB and compare it
-- to the version number you are expecting.
--
-- MIB Version 1.1 30 Oct 2012
--
--
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-- Begin MIB
-------------------------------------------------------------------------------
MIB-Dell-OME DEFINITIONS ::= BEGIN
IMPORTS
enterprises
FROM RFC1155-SMI
OBJECT-TYPE
FROM RFC-1212
TRAP-TYPE
FROM RFC-1215
DisplayString
FROM RFC1213-MIB;
-------------------------------------------------------------------------------
-- OME Branch Location (.1.3.6.1.4.1.674.11000.1000.100)
-------------------------------------------------------------------------------
dell OBJECT IDENTIFIER ::= { enterprises 674 }
enterpriseSW OBJECT IDENTIFIER ::= { dell 11000 }
sysMgmtBranch OBJECT IDENTIFIER ::= { enterpriseSW 1000 }
omEssentialsMIB OBJECT IDENTIFIER ::= { sysMgmtBranch 100 }
omEssentialsTrap OBJECT IDENTIFIER ::= { omEssentialsMIB 1 }
-------------------------------------------------------------------------------
--
-- Custom Types
--
-------------------------------------------------------------------------------
DellString ::= DisplayString (SIZE (0..512))
DellString1 ::= DisplayString (SIZE (0..128))
-------------------------------------------------------------------------------
--
-- Trap Attributes (Varbinds)
--
-------------------------------------------------------------------------------
omeAlertMessage OBJECT-TYPE
SYNTAX DellString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Message in the alert."
::= { omEssentialsTrap 1 }
omeAlertDevice OBJECT-TYPE
SYNTAX DellString
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Name of the device where alert originated."
::= { omEssentialsTrap 2 }
omeAlertSeverity OBJECT-TYPE
SYNTAX DellString1
ACCESS read-only
STATUS mandatory
DESCRIPTION
"Original severity of the alert."
::= { omEssentialsTrap 3 }
-------------------------------------------------------------------------------
--
-- Traps
--
-------------------------------------------------------------------------------
omeTestAlert TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice, omeAlertSeverity }
DESCRIPTION
"Test alert forwarded from OM Essentials."
--#TYPE "Test alert forwarded from OM Essentials."
--#SUMMARY "Test alert from OM Essentials. Sending device: %s, Severity: %s, Message: %s."
--#ARGUMENTS {1,2,0}
--#SEVERITY INFORMATIONAL
::= 1
omeAlertSystemUp TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System up message from OM Essentials. Sent when OM Essentials detects a device has come online."
--#TYPE "System Up Message from OM Essentials"
--#SUMMARY "%s: %s"
--#ARGUMENTS {0,1}
--#SEVERITY INFORMATIONAL
::= 1000
omeAlertSystemDown TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System down message from OM Essentials. Sent when OM Essentials detects a device has gone offline."
--#TYPE "System Down Message from OM Essentials"
--#SUMMARY "%s: %s"
--#ARGUMENTS {0,1}
--#SEVERITY CRITICAL
::= 1001
omeAlertForwardedAlert TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice, omeAlertSeverity }
DESCRIPTION
"Forwarded alert from OM Essentials. The event may have originated as an SNMP trap or CIM indication to the OM Essentials Console. The alert format is normalized."
--#TYPE "Forwarded Alert from OM Essentials"
--#SUMMARY "Forwarded Alert from OM Essentials. Sending device: %s, Severity: %s, Message: %s."
--#ARGUMENTS {1,2,0}
--#SEVERITY INFORMATIONAL
::= 2000
--
-- Device Status Internal Alerts.
--
omeAlertUnknownStatus TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System monitoring alert from Essentials. Sent when status of the remote device is Unknown."
--#TYPE "Status Alert"
--#SUMMARY "Device %s has changed status to Unknown."
--#ARGUMENTS {1}
--#SEVERITY MINOR
::= 3001
omeAlertNormalStatus TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System monitoring alert from Essentials. Sent when status of the remote device is Normal."
--#TYPE "Status Alert"
--#SUMMARY "Device %s has changed status to Normal."
--#ARGUMENTS {1}
--#SEVERITY INFORMATIONAL
::= 3002
omeAlertWarningStatus TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System monitoring alert from Essentials. Sent when status of the remote device is Warning."
--#TYPE "Status Alert"
--#SUMMARY "Device %s has changed status to Warning."
--#ARGUMENTS {1}
--#SEVERITY MINOR
::= 3003
omeAlertCriticalStatus TRAP-TYPE
ENTERPRISE omEssentialsTrap
VARIABLES { omeAlertMessage, omeAlertDevice }
DESCRIPTION
"System monitoring alert from Essentials. Sent when status of the remote device is Critical."
--#TYPE "Status Alert"
--#SUMMARY "Device %s has changed status to Critical."
--#ARGUMENTS {1}
--#SEVERITY CRITICAL
::= 3004
END
-------------------------------------------------------------------------------
-- End MIB
-------------------------------------------------------------------------------

17573
mibs/StorageManagement-MIB Normal file → Executable file

File diff suppressed because it is too large Load Diff