[Nut-upsuser] Need some pointers with Centiel UPS / Generex SC141 SNMP

Jim Klimov jimklimov at gmail.com
Sun Jun 13 14:50:39 BST 2021


Just in case: there have been some mistakes in NUT codebase for SNMPv3 (or
rather AES) support found and fixed during the past year, so the errors
could be already in a 2.7.4 release (did not check for that). Do you have a
chance to build current master branch from github and see if it works
better for the SNMPv3 case?

Alternately, it was not clear from your message if you had also tried NUT
connection with the SNMP v1/v2c (and then a correct community name,
otherwise SNMP server usually seems just AWOL and not responding)?

>From your SNMP walk, it seems that the card does support at least the
standard IETF upsMIB, so at least to some extent snmp-ups should recognize
it barring the network/crypto issues.

Jim

On Mon, May 24, 2021 at 6:07 PM Mathieu Simon (Lists) <
matsimon.lists at simweb.ch> wrote:

> Hi
>
> I've tried my luck at connecting nut-snmp to a central building UPS
> system which in our school which got a Centiel PremiumTower UPS system.
>
> However: So far not much luck, but I've tried to collect some as in the
> project support instructions. I'd appreciate some possible poointers
> what I could investigate next. :-)
>
> About the SNMP card: Centiel doesn't seem to make its own SNMP cards but
> OEMs them from a German company Generex, the cards is called "CS141".
>
> Apparently this cards seems to be used by quite some other OEMs
> considering the firmware variants in their download section.[1]
> The firware is slightly branded for Centiel (OEM logo in the web UI...)
>
> The card supports SNMPv2 and v3. Doing an SNMP walk works fine over
> SNMPv3, at least that's that. The results have been identical with both
> pfSense and Debian 10, but Debian was easier to get debug data so here
> is what I can provide:
>
> OS: Debian buster/10.9 (amd64)
> nut (package) version: 2.7.4-8
>
> Debug output of the driver:
> # /lib/nut/snmp-ups -DDDDDD -a exampleups \
>  -x snmp_version=v3 -x secLevel=authPriv \
>  -x secName=example \
>  -x authPassword=exampleAuth -x privPassword=examplePriv \
>  -x authProtocol=SHA -x privProtocol=AES
> Network UPS Tools - Generic SNMP UPS driver 0.97 (2.7.4)
>    0.000000     send_to_all: SETINFO driver.parameter.port "172.30.42.10"
>    0.000017     send_to_all: SETINFO driver.parameter.snmp_version "v3"
>    0.000021     send_to_all: SETINFO driver.parameter.secLevel "authPriv"
>    0.000027     send_to_all: SETINFO driver.parameter.authProtocol "SHA"
>    0.000033     send_to_all: SETINFO driver.parameter.privProtocol "AES"
>    0.000042     debug level is '6'
>    0.001013     SNMP UPS driver: entering upsdrv_initups()
>    0.001036     SNMP UPS driver: entering nut_snmp_init(snmp-ups)
>    0.002212     Setting SNMP retries to 5
>    0.002224     Setting SNMP timeout to 1 second(s)
>    0.017458     SNMP UPS driver: entering load_mib2nut(auto)
>    0.017470     trying the new match_sysoid() method
>    0.017473     Entering nut_snmp_get_oid()
>    0.017492     nut_snmp_get(.1.3.6.1.2.1.1.2.0)
>    0.017495     nut_snmp_walk(.1.3.6.1.2.1.1.2.0)
>    0.017497     nut_snmp_walk: max. iteration = 1
>    0.018447     Can't get sysOID value
>    0.018457     load_mib2nut: trying classic method with 'apcc' mib
> [...]
>
> (Considering that other classic methods also fail, I've removed them)
>
> [...]
>    0.019260     load_mib2nut: trying classic method with 'ietf' mib
>    0.019263     su_find_info: "ups.model" found
>    0.019267     Testing ups.model using OID 1.3.6.1.2.1.33.1.1.2.0
>    0.019272     Entering nut_snmp_get_str()
>    0.019274     nut_snmp_get(1.3.6.1.2.1.33.1.1.2.0)
>    0.019281     nut_snmp_walk(1.3.6.1.2.1.33.1.1.2.0)
>    0.019286     nut_snmp_walk: max. iteration = 1
>    0.019297     load_mib2nut: testOID provided and doesn't match MIB
> 'ietf'!
>    0.019302     No supported device detected
>
>
> Maybe it helps to provide the returned Values when doing snmpget
> .1.3.6.1.2.1.1.2.0 = OID: .1.3.6.1.2.1.33
>
> I've attached at the bottom a (minimally redacted) output of snmpwalk[2]
> of that OID returned - maybe this helps to identify if I or Generex are
> doing something wrong or what needs to be added on the NUT side of things?
>
> Regards
> Mathieu
>
>
> [1] https://www.generex.de/support/downloads/ups/cs141/update
> [2] snmpwalk -On -v3 -l authPriv -u example -a SHA -A "exampleAuth" -x
> AES -X "examplePriv" <ip> .1.3.6.1.2.1.33
> .1.3.6.1.2.1.33.1.1.1.0 = STRING: "CENTIEL"
> .1.3.6.1.2.1.33.1.1.2.0 = STRING: "Centiel UPS"
> .1.3.6.1.2.1.33.1.1.3.0 = STRING: "n/a"
> .1.3.6.1.2.1.33.1.1.4.0 = STRING: "CS141-SNMP V2.00.50 210317"
> .1.3.6.1.2.1.33.1.1.5.0 = STRING: "CS141 SNMP/WEB Adapter"
> .1.3.6.1.2.1.33.1.1.6.0 = STRING: "UPS,"
> .1.3.6.1.2.1.33.1.1.8.0 = STRING: "examplelocation"
> .1.3.6.1.2.1.33.1.1.9.0 = STRING: "examplecontact"
> .1.3.6.1.2.1.33.1.2.1.0 = INTEGER: 2
> .1.3.6.1.2.1.33.1.2.2.0 = INTEGER: 0
> .1.3.6.1.2.1.33.1.2.3.0 = INTEGER: 968
> .1.3.6.1.2.1.33.1.2.4.0 = INTEGER: 100
> .1.3.6.1.2.1.33.1.2.5.0 = INTEGER: 2730
> .1.3.6.1.2.1.33.1.2.6.0 = INTEGER: 0
> .1.3.6.1.2.1.33.1.2.7.0 = INTEGER: 999
> .1.3.6.1.2.1.33.1.3.1.0 = Counter32: 0
> .1.3.6.1.2.1.33.1.3.2.0 = INTEGER: 3
> .1.3.6.1.2.1.33.1.3.3.1.1.1 = INTEGER: 1
> .1.3.6.1.2.1.33.1.3.3.1.1.2 = INTEGER: 2
> .1.3.6.1.2.1.33.1.3.3.1.1.3 = INTEGER: 3
> .1.3.6.1.2.1.33.1.3.3.1.2.1 = INTEGER: 500
> .1.3.6.1.2.1.33.1.3.3.1.2.2 = INTEGER: 500
> .1.3.6.1.2.1.33.1.3.3.1.2.3 = INTEGER: 500
> .1.3.6.1.2.1.33.1.3.3.1.3.1 = INTEGER: 231
> .1.3.6.1.2.1.33.1.3.3.1.3.2 = INTEGER: 231
> .1.3.6.1.2.1.33.1.3.3.1.3.3 = INTEGER: 231
> .1.3.6.1.2.1.33.1.4.1.0 = INTEGER: 3
> .1.3.6.1.2.1.33.1.4.2.0 = INTEGER: 500
> .1.3.6.1.2.1.33.1.4.3.0 = INTEGER: 3
> .1.3.6.1.2.1.33.1.4.4.1.1.1 = INTEGER: 1
> .1.3.6.1.2.1.33.1.4.4.1.1.2 = INTEGER: 2
> .1.3.6.1.2.1.33.1.4.4.1.1.3 = INTEGER: 3
> .1.3.6.1.2.1.33.1.4.4.1.2.1 = INTEGER: 229
> .1.3.6.1.2.1.33.1.4.4.1.2.2 = INTEGER: 230
> .1.3.6.1.2.1.33.1.4.4.1.2.3 = INTEGER: 229
> .1.3.6.1.2.1.33.1.4.4.1.3.1 = INTEGER: 71
> .1.3.6.1.2.1.33.1.4.4.1.3.2 = INTEGER: 55
> .1.3.6.1.2.1.33.1.4.4.1.3.3 = INTEGER: 56
> .1.3.6.1.2.1.33.1.4.4.1.4.1 = INTEGER: 1324
> .1.3.6.1.2.1.33.1.4.4.1.4.2 = INTEGER: 1027
> .1.3.6.1.2.1.33.1.4.4.1.4.3 = INTEGER: 1156
> .1.3.6.1.2.1.33.1.4.4.1.5.1 = INTEGER: 6
> .1.3.6.1.2.1.33.1.4.4.1.5.2 = INTEGER: 5
> .1.3.6.1.2.1.33.1.4.4.1.5.3 = INTEGER: 5
> .1.3.6.1.2.1.33.1.5.1.0 = INTEGER: 500
> .1.3.6.1.2.1.33.1.5.2.0 = INTEGER: 3
> .1.3.6.1.2.1.33.1.5.3.1.1.1 = INTEGER: 1
> .1.3.6.1.2.1.33.1.5.3.1.1.2 = INTEGER: 2
> .1.3.6.1.2.1.33.1.5.3.1.1.3 = INTEGER: 3
> .1.3.6.1.2.1.33.1.5.3.1.2.1 = INTEGER: 231
> .1.3.6.1.2.1.33.1.5.3.1.2.2 = INTEGER: 231
> .1.3.6.1.2.1.33.1.5.3.1.2.3 = INTEGER: 231
> .1.3.6.1.2.1.33.1.6.1.0 = Gauge32: 0
> .1.3.6.1.2.1.33.1.7.1.0 = OID: .1.3.6.1.2.1.33.1.7.7.1
> .1.3.6.1.2.1.33.1.7.2.0 = INTEGER: 1
> .1.3.6.1.2.1.33.1.7.3.0 = INTEGER: 6
> .1.3.6.1.2.1.33.1.7.4.0 = STRING: "No test initiated."
> .1.3.6.1.2.1.33.1.7.5.0 = Timeticks: (0) 0:00:00.00
> .1.3.6.1.2.1.33.1.7.6.0 = INTEGER: 0
> .1.3.6.1.2.1.33.1.8.1.0 = INTEGER: 2
> .1.3.6.1.2.1.33.1.8.2.0 = INTEGER: -1
> .1.3.6.1.2.1.33.1.8.3.0 = INTEGER: -1
> .1.3.6.1.2.1.33.1.8.4.0 = INTEGER: -1
> .1.3.6.1.2.1.33.1.8.5.0 = INTEGER: 2
>
> _______________________________________________
> Nut-upsuser mailing list
> Nut-upsuser at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/nut-upsuser
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/nut-upsuser/attachments/20210613/a87274d5/attachment-0001.htm>


More information about the Nut-upsuser mailing list