SNMP-UPS(8)
π SNMP-UPS(8) β the NUT Manual glow-up
okay so bestie, buckle up π this is snmp-ups, the Multi-MIB Driver for SNMP UPS equipment. She lives in the NUT Manual (that's Network UPS Tools, iykyk) and she is so good at talking to your UPS over the network. Let's get into it β¨
β¨ SYNOPSIS β¨
snmp-ups -h
snmp-ups -a UPS_NAME [OPTIONS]
quick note bestie π«Ά β this man page only spills the tea on the hardware-specific features of thesnmp-upsdriver. Wanna know about the core driver? Go readnutupsdrv(8). Periodt.
π SUPPORTED HARDWARE π
The snmp-ups driver is lowkey a detective π β she automatically detects and supports a huge range of devices by loading various MIBs, like:
ietfβ a UPS that's RFC 1628 (UPS MIB) compliant, e.g. MGE UPS SYSTEMS, Liebert, maybe others too. This one's the 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, plus any others that support the APC POWERNET MIBnetvisionβ Socomec Sicon UPS with Netvision Web/SNMP management card/external boxeaton_pw_nm2β Powerware devices with ConnectUPS SNMP cards, plus UPSes with Eaton Gigabit Network Cards (Network-M2) β she got renamed frompw, glow-up era β¨eaton_pxg_upsβ Eaton devices with Power Xpert Gateway UPS Card β renamed frompxgx_upsaphel_genesisIIβ Eaton Powerware ePDU Monitoredaphel_revelationβ Eaton Powerware ePDU Managedraritanβ various Raritan PDUs (Dominion PX, PM, RPC)raritan-px2β various Raritan PDUs (Dominion PX2)baytechβ various BayTech PDUscpqpowerβ HP/Compaq AF401A management card, maybe otherscyberpowerβ Cyberpower RMCARD201. Should also support RMCARD100 (net version), RMCARD202 and RMCARD301huaweiβ Huawei UPS5000-E, perhaps otherstrippliteβ 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 future development
Wanna see the complete and up-to-date list? Just ask the driver directly by passing the mibs=--list argument (more on that below π).
π EXTRA ARGUMENTS π
This driver supports these optional settings in the ups.conf(5):
port=hostname[:port]β sets the SNMP hostname, or IP address, and the port number of the peer SNMP agent. There is no default for the hostname, but the default port is161.mibs=--listβ a special option that lets you list the currently known MIB-to-NUT mappings and then exit the driver binary. It's meant for command-line usage, like this:
:; snmp-ups -a snmp-test -x mibs=--list
mibs=nameβ set MIB compliance (default isauto; allowed entries: go peek at SUPPORTED HARDWARE above π). With"auto", the driver will try a select set of SNMP objects until it finds one the device actually responds to. And ngl, heads up: since NUT 2.6.2,snmp-upshas a new method that usessysObjectID(which is a pointer to the preferred MIB of the device) to detect supported devices β which renders void the requirement to use the"mibs"option. slay πcommunity=nameβ set the community name (default ispublic) for SNMPv1 and SNMPv2c connections. Not me warning you tho: an RW capable community name is required to change UPS settings and send commands (such as for a power-down) π₯snmp_version=versionβ set the 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β enables APCC three phase Symmetra quirks (use this on APCC three phase Symmetras): converts from three phase line-to-line voltage to line-to-neutral voltage (default: not enabled)pollfreq=numβ set the polling interval for full updates, in seconds, to reduce SNMP network traffic relative to the quick updates performed every"pollinterval"(that other option is described over inups.conf(5)). The default value is30(in seconds).notransferoidsβ disables the monitoring of the low and high voltage transfer OIDs in the hardware. This removesinput.transfer.lowandinput.transfer.highfrom the list of variables. It should only be used on APCC Symmetra equipment which has strangeness in the three-phase power reporting πsecLevel=valueβ set thesecurityLevelused for SNMPv3 messages (default =noAuthNoPriv, allowed:authNoPriv,authPriv). This parameter is mandatory if you use non-trivial authentication.secName=valueβ set thesecurityNameused 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,SHA384orSHA512) used for authenticated SNMPv3 messages (default =MD5). Ngl the exact protocol list depends on Net-SNMP library capabilities, so check the help of thesnmp-upsbinary program for the run-time supported list πprivProtocol=valueβ set the privacy protocol (DES,AES,AES192orAES256) used for encrypted SNMPv3 messages (default =DES). Same deal: the exact protocol list depends on Net-SNMP library capabilities, so check the help of thesnmp-upsbinary program for the run-time supported list.
πΈ REQUIREMENTS πΈ
You're gonna 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
Bestie, listen π β test the shutdown sequence before you rely on NUT to send a shutdown command to the UPS. The problem is that the host network stack may have already 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
A UPS network management card may be assigned a fixed/static IP address or a dynamic one (e.g. by DHCP) in your network. Because of this, you may want β or have to β use a dynamic naming service to access the UPS. But heads up: this can become a problem specifically during large outages and shutdowns, when your DHCP/DNS server might already be 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 π).
So it may be wise to make sure your OS name service client can cache the UPS name long enough, 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). Do that. For me. π«Ά
π¦ 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 it 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 π
Shoutout to the icons who made this happen π
- Arnaud Quette
- Dmitry Frolov
- Jim Klimov
π SEE ALSO π
The core driver:
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.5/
aaaand that's the whole thing, bestie π this page is from Network UPS Tools 2.8.5, dated 10/07/2026 β go forth and SNMP responsibly, mwah π β¨
π¦ where this page comes from
- fedora 43: nut 2.8.5-9.fc43 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 43: nut 2.8.5-9.fc43 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 44: nut 2.8.5-9.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- fedora 44: nut 2.8.5-9.fc44 Β· GPL-2.0-or-later AND GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms