Duplicate host

Tags: #<Tag:0x00007fdb79c9aca0> #<Tag:0x00007fdb79c9ab10>

Hi guys,

We have a strange issue with our Librenms instance. We do have duplicated hosts, that are in reality completely different hosts.

Here is the validate.php output :

Component | Version
--------- | -------
LibreNMS  | 1.70.1-1-ga3635d0b7
DB Schema | 2020_10_12_095504_mempools_add_oids (191)
PHP       | 7.3.14-1~deb10u1
Python    | 3.7.3
MySQL     | 10.1.44-MariaDB-0+deb9u1
RRDTool   | 1.7.1
SNMP      | NET-SNMP 5.7.3

[OK]    Composer Version: 2.0.8
[OK]    Dependencies up-to-date.
[OK]    Database connection successful
[OK]    Database schema correct

Here are some screen about the problem :


As you can see, I have few devices to refer as the same device BUT which are not the same. The thing, is we poll from SNMP, and some devices from the list are polled with ipv6 and others with ipv4. We do not have duplicated ip. All the duplicates refers to our librenms server, which is monitored from itself in SNMP.

Here, you can see the Librenms device, which is OK :

And here, one of the duplicate, which is another device, not even a Linux server but a Huawei device :

In our config.php, we do have allowed duplicated hostnames.

Is there a way to clean this entry from the database? We had tried to delete all the device and add then again, but they always take the old informations.

I suggest you disable the allow duplicate sysname setting or disable arp discovery. There is a reason that it blocks adding duplicate syanames by default.

You can always force add when adding manually to ignore duplicate sysnames.


Thanks for your update.

I did have tried. I disabled it, and remove all the hosts which are duplicated, but when I add one of them once again, it add the hosts with the old references. And now, if I try to add a second host, it tells me that I can’t because of duplicate sysname. Obviously, it not the same sysname neither the same ip…

There is an option to allow you to add the ones with duplicate sysnames when you are adding them manually, you don’t have to disable the check globally.

It is called “force add”