# SNMP-UPS(8)

## NAME

snmp-ups - Multi-MIB Driver for SNMP UPS equipment

## SYNOPSIS

snmp-ups -h

snmp-ups -a UPS_NAME [OPTIONS]

Note | This man page only documents the hardware-specific features of the snmp-ups driver. For information about the core driver, see nutupsdrv(8).

## SUPPORTED HARDWARE

The snmp-ups driver automatically detects and supports a wide range of devices by loading various MIBS, such as:

ietf

  UPS that is RFC 1628 (UPS MIB) compliant, e.g. MGE UPS SYSTEMS, Liebert, perhaps others (default)

mge

  MGE UPS SYSTEMS and MGE Office Protection Systems devices with SNMP cards (ref 66062, 66045, 66074 and 66244)

apcc

  APC AP9605, AP9606, AP9617, and AP9618 APC network management cards, as well as any others supporting the APC POWERNET MIB

netvision

  Socomec Sicon UPS with Netvision Web/SNMP management card/external box

eaton_pw_nm2

  Powerware devices with ConnectUPS SNMP cards, as well as UPSes with Eaton Gigabit Network Cards (Network-M2) (renamed from pw)

eaton_pxg_ups

  Eaton devices with Power Xpert Gateway UPS Card (renamed from pxgx_ups)

aphel_genesisII

  Eaton Powerware ePDU Monitored

aphel_revelation

  Eaton Powerware ePDU Managed

raritan

  Various Raritan PDUs (Dominion PX, PM, RPC)

raritan-px2

  Various Raritan PDUs (Dominion PX2)

baytech

  Various BayTech PDUs

cpqpower

  HP/Compaq AF401A management card, perhaps others

cyberpower

  Cyberpower RMCARD201. Should also support RMCARD100 (net version), RMCARD202 and RMCARD301

huawei

  Huawei UPS5000-E, perhaps others

tripplite

  TrippLite UPSes; at this time this is the IETF MIB mapping with just the Tripplite entry point OID to verify the device vendor, and a real hardware-specific configuration will be added in the future development.

For a complete and up-to-date listing, you can query the driver by passing the mibs=--list argument (see below).

## EXTRA ARGUMENTS

This driver supports the following optional settings in the ups.conf(5):

port=hostname[:port]

  Set SNMP hostname, or IP address, and port number of the peer SNMP agent. There is no default for the hostname, but the default port is 161.

mibs=--list

  A special option which allows to list the currently known MIB-to-NUT mappings and exit the driver binary, intended for command-line usage like this:

      :; snmp-ups -a snmp-test -x mibs=--list

mibs=name

  Set MIB compliance (default=auto, allowed entries: refer to SUPPORTED HARDWARE above).

  With "auto", the driver will try a select set of SNMP objects until it finds one that the device responds to.

  Note that since NUT 2.6.2, snmp-ups has a new method that uses `sysObjectID` (which is a pointer to the preferred MIB of the device) to detect supported devices. This renders void the requirement to use the "mibs" option.

community=name

  Set community name (default is public) for SNMPv1 and SNMPv2c connections. Note that an RW capable community name is required to change UPS settings and send commands (such as for a power-down).

snmp_version=version

  Set SNMP version (default = v1, allowed: v2c, v3)

snmp_retries=retries

  Specifies the number of Net-SNMP retries to be used in the requests (default=5)

snmp_timeout=timeout

  Specifies the Net-SNMP timeout in seconds between retries (default=1)

symmetrathreephase

  Enable APCC three phase Symmetra quirks (use on APCC three phase Symmetras): Convert from three phase line-to-line voltage to line-to-neutral voltage (default: not enabled)

pollfreq=num

  Set polling interval for full updates, in seconds, to reduce SNMP network traffic relative to the quick updates performed every "pollinterval" (the latter option is described in ups.conf(5)). The default value is 30 (in seconds).

notransferoids

  Disable the monitoring of the low and high voltage transfer OIDs in the hardware. This will remove input.transfer.low and input.transfer.high from the list of variables. This should only be used on APCC Symmetra equipment which has strangeness in the three-phase power reporting.

secLevel=value

  Set the securityLevel used for SNMPv3 messages (default=noAuthNoPriv, allowed: authNoPriv,authPriv) This parameter is mandatory if you use non-trivial authentication.

secName=value

  Set the securityName used for authenticated SNMPv3 messages (no default)

authPassword=value

  Set the authentication pass phrase used for authenticated SNMPv3 messages (no default)

privPassword=value

  Set the privacy pass phrase used for encrypted SNMPv3 messages (no default)

authProtocol=value

  Set the authentication protocol (MD5, SHA, SHA256, SHA384 or SHA512) used for authenticated SNMPv3 messages (default=MD5). Note that the exact protocol list depends on Net-SNMP library capabilities; check help of the `snmp-ups` binary program for the run-time supported list.

privProtocol=value

  Set the privacy protocol (DES, AES, AES192 or AES256) used for encrypted SNMPv3 messages (default=DES). Note that the exact protocol list depends on Net-SNMP library capabilities; check help of the `snmp-ups` binary program for the run-time supported list.

## REQUIREMENTS

You will need to install the Net-SNMP package from http://www.net-snmp.org/ before building this driver.

SNMP v3 also requires OpenSSL support from http://www.openssl.org.

## LIMITATIONS

### Shutdown

The shutdown sequence should be tested before relying on NUT to send a shutdown command to the UPS. The problem is that the host network stack may have been torn down by the time the driver is invoked to send the shutdown command. The driver attempts to send `shutdown.return`, `shutdown.reboot`, and `load.off.delay` commands to the UPS in sequence, stopping after the first supported command.

### Using host names for UPS NMC

An UPS network management card may be assigned a fixed/static IP address or a dynamic one (e.g. by DHCP) in your network. Due to this, you may want or have to use a dynamic naming service to access the UPS. Note that this may become a problem specifically during large outages and shutdowns, when your DHCP/DNS server might already go down while the driver needs to resolve the name involved (especially during late-shutdown hooks, when a new instance of the driver program might start just to tell the UPS to power off or to power-cycle).

It may be wise to ensure your OS name service client can cache the UPS name sufficiently long, or to use fixed IP addressing (and an entry in `/etc/hosts` for good measure, so you only have one spot to eventually re-configure this).

## INSTALLATION

This driver is only built if the Net-SNMP development files are present at configuration time. You can also force it to be built by using `configure --with-snmp=yes` before calling make.

## EXAMPLES

The hostname of the UPS is specified with the "port" value in `ups.conf`, and may include a non-standard (161) remote peer port:

            [snmpv1]
                    driver = snmp-ups
                    port = snmp-ups.example.com
                    community = public
                    snmp_version = v1
                    pollfreq = 15
                    desc = "Example SNMP v1 device"

            [snmpv3]
                    driver = snmp-ups
                    port = 166.99.224.132:170
                    snmp_version = v3
                    secLevel = authPriv
                    secName = mysecurityname
                    authPassword = myauthenticationpassphrase
                    privPassword = myprivatepassphrase
                    desc = "Example SNMP v3 device, with the highest security level"

## AUTHORS

- Arnaud Quette

- Dmitry Frolov

- Jim Klimov

## SEE ALSO

### The core driver:

nutupsdrv(8)

### NUT SNMP Protocols Library

Available at: https://www.networkupstools.org/ups-protocols.html#_snmp

### Internet resources:

The NUT (Network UPS Tools) home page: https://www.networkupstools.org/historic/v2.8.4/