TP-Link T1500G-10PS sysObjectID -> .0.0.0.0.0.0.0.0.0

Component Version
LibreNMS 1.41
DB Schema 253
PHP 7.2.7-1+ubuntu16.04.1+deb.sury.org+1
MySQL 10.0.34-MariaDB
RRDTool 1.5.5
SNMP NET-SNMP 5.7.3

====================================

[OK] Composer Version: 1.6.5
[OK] Dependencies up-to-date.
[OK] Database connection successful
[OK] Database schema correct
[WARN] IPv6 is disabled on your server, you will not be able to add IPv6 devices.
[WARN] Your install is over 24 hours out of date, last update: Sat, 30 Jun 2018 21:37:37 +0000
[FIX] Make sure your daily.sh cron is running and run ./daily.sh by hand to see if there are any errors.
[WARN] Your local git branch is not master, this will prevent automatic updates.
[FIX] You can switch back to master with git checkout master
[WARN] Your local git contains modified files, this could prevent automatic updates.
[FIX] You can fix this with ./scripts/github-remove
Modified Files:
logs/.gitignore
rrd/.gitignore
[FAIL] We have found some files that are owned by a different user than librenms, this will stop you updating automatically and / o
r rrd files being updated causing graphs to fail.
[FIX] chown -R librenms:librenms /opt/librenms
Files:
/opt/librenms/conf.d
/opt/librenms/conf.d/config.custom.php
/opt/librenms/conf.internal.d/syslog.conf.php
/opt/librenms/composer.phar

Story itself is as follows.

Added TP-Link T1500G-10PS into LibreNMS and it is recognized as TP-Link, platform itself is not recognized.

Now comes the funny part, on discovery, sysObjectID is reported as: .2.3047088.1280.20042.1702122356.1919246701.540552528.1869771808.1198090081

After next poll, it resets to .0.0.0.0.0.0.0.0.0

If I run rediscover it returns sysObjectID as .2.3047088.1280.20042.1702122356.1919246701.540552528.1869771808.1198090081 again.

In the Eventlog it shows as this:

2018-07-29 14:15:03 sysObjectID -> .0.0.0.0.0.0.0.0.0
2018-07-29 14:10:03 sysObjectID -> .2.3047088.1280.20042.1702122356.1919246701.540552528.1869771808.1198090081

Any ideas is it LibreNMS acting funky or switch itself?
And why poller resets sysObjectID to .0.0.0.0.0.0.0.0.0?

Funny thing is, that snmpwalk does not even list such OID as
2.3047088.1280.20042.1702122356.1919246701.540552528.1869771808.1198090081

Posted snmpwalk details here: https://pastebin.com/bsQFXjp1

Same happens with T1600G-52TS TP-Link device with latest updates. I assume this is a bug in TP-Link firmware, since it returns crap over plain snmpget (what LibreNMS ultimately does):

# snmpget -v2c -c "secret" -OUQn -m SNMPv2-MIB -M /opt/librenms/mibs:/opt/librenms/mibs/tplink 10.10.10.10 sysName.0 sysObjectID.0 sysDescr.0
.1.3.6.1.2.1.1.5.0 = <tplink device hostname>
.1.3.6.1.2.1.1.2.0 = .2.2138282217.1394635881.1953653101.1769427744.543712116.1752459639.1394619424.1394626630
.1.3.6.1.2.1.1.1.0 = JetStream 48-Port Gigabit Smart Switch with 4 SFP Slots

If snmpget/snmpbulkget happens with a single OID, correct data is returned. If multiple OIDs are requested, we see what we see.

Possible solutions: rewrite the source for this exception on TP-Link or request support from TP-Link. Unfortunately, this task is of low priority at my work, so I did not invest any time in this, sorry…

1 Like

I’m in touch with TP-Link already, will forward your story as well.

Interestingly, my old TL-SG2424 does not behave like this, so probably this issue was introduced with T-Series and their firmware.

1 Like

If anybody else has similar problem, with TP-Link switches, please let me know :+1:

Could you please test, how it behaves when you use v3 NoAuthNoPriv?

TP-Link engineer asked to test this, but T1500G-10PS behaves the very same way.

Please allow me some time for this, I’ll test as soon as possible (optimistically tomorrow, realistically this week - depends on another team).

1 Like

No worries, take your time… :slight_smile:

And I don’t actually expect different result.

Just made a test with SNMPv3 NoAuthNoPriv on T1600G-52TS - the situation is the same:

# snmpget -v3 -u "secret" -l noAuthNoPriv -OUQn -m SNMPv2-MIB -M /opt/librenms/mibs:/opt/librenms/mibs/tplink 10.10.10.10 sysName.0 sysObjectID.0 sysDescr.0
.1.3.6.1.2.1.1.5.0 = <tplink device hostname>
.1.3.6.1.2.1.1.2.0 = .2.2138282217.1394635881.1953653101.1769427744.543712116.1752459639.1394619424.1394626630
.1.3.6.1.2.1.1.1.0 = JetStream 48-Port Gigabit Smart Switch with 4 SFP Slots

Thank you very much for your effort, @Etz!

Can I ask firmware version you are running on that?

Interesting thing is, that despite the different tool outputs I provided them, they are seem to be unable reproduce it.

Also, could you run tcpdump (on LibreNMS host) when you execute that query on LibreNMS and send it to me via email?
Will provide you with my email address via PM.