This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

NPM 12.0 Discovery Issues

Hi,

Just wondering has anyone seen any strangeness with NPM 12's discovery and automatic importing?  So far I've seen the following (though not 100% confirmed) -

1) Using IP ranges eg 10.0.0.0 to 10.0.5.255 doesn't seem to scan correctly / misses nodes that I know are on that range and accessible.

     I'm trying subnets to see if there is any difference now.

2) Sometimes a discovery finds a new node but when you import it a message is received saying it is already in the database (under manage nodes the IP/hostname doesn't show)

3) With Automatic Import will there always be discovered nodes with "New" beside the interfaces/drives that have not been configured to automatically import?

4) I have a scan that is picking up an IP that is outside of the subnet specified (eg London Scan which uses 10.0.0.0/24 is picking up an IP 10.100.0.10) - this is a monitored DHCP server in IPAM

Thanks,

Peter

  • Are you using hops doing the discovery?

    Then ever I do a scan of the network and set hops to more then 0, then I get this stack-trace in the log:

    2016-07-13 22:31:28,885 [STP SmartThreadPool Thread #0] DEBUG IpAddressRangeHelper - Start merging address range into existing ranges.

    2016-07-13 22:31:28,885 [STP SmartThreadPool Thread #0] DEBUG IpAddressRangeHelper - Found 1 different hops.

    2016-07-13 22:31:28,885 [STP SmartThreadPool Thread #0] ERROR StateLogger - Unhandled exception occured in discovery process.

    System.InvalidOperationException: Start address must be less or equal to end address.

    at SolarWinds.Orion.Discovery.Framework.Deduplication.IpAddressRangeHelper.GetStartEndAddressAsUint(IPAddress startAddress, IPAddress endAddress)

    at SolarWinds.Orion.Discovery.Framework.Deduplication.IpAddressRangeHelper.b__18(IAddressRangeProvider item)

    at System.Linq.Enumerable.<>c__DisplayClass12`3.b__11(TSource x)

    at System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()

    at System.Linq.Buffer`1..ctor(IEnumerable`1 source)

    at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)

    at SolarWinds.Orion.Discovery.Framework.Deduplication.IpAddressRangeHelper.GetIntervals(IEnumerable`1 rangeProviders)

    at SolarWinds.Orion.Discovery.Framework.Deduplication.IpAddressRangeHelper.MergeRangeProviders(IEnumerable`1 rangeProviders)

    at SolarWinds.Discovery.DiscoveryProcess.CreateRangesFromActualDetectorAndNewEnumerators(DuplicateTestFromRanges rangeDuplicateDetector, IList`1 newEndPointsEnumerators)

    at SolarWinds.Discovery.DiscoveryProcess.Invoke(IConfigurationManager configurationManager, ICredentialManager credentialManager)

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] INFO StateLogger - Discovery completed in 00:02:42.4237493

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - ---------------- DISCOVERY RUN [13-07-2016 22:31:28] Profile: 4 Engine 1 ---------------------------

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - Discovery start time: 13-07-2016 22:28:46

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - Discovery last for: 00:02:42.4237493

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - Endpoints discovered: 0

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger -

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - TOP 100 longest activities by execution time:

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger -

    2016-07-13 22:31:28,901 [STP SmartThreadPool Thread #0] DEBUG ResultDumpLogger - Activities that ends up with error:

    2016-07-13 22:31:28,917 [STP SmartThreadPool Thread #0] DEBUG VimDiscoveryPlugin - Loading result from discovery run

    2016-07-13 22:31:28,917 [STP SmartThreadPool Thread #0] DEBUG VimDiscoveryPlugin - Number of valid devices: 0

    2016-07-13 22:31:28,917 [STP SmartThreadPool Thread #0] DEBUG HyperVDiscoveryPlugin - Number of Hyper-V nodes: 0

    2016-07-13 22:31:29,026 [STP SmartThreadPool Thread #0] DEBUG JobMonitor - Stop tracking job 985668e9-4e9f-43f1-8816-8df42a77d543

    2016-07-13 22:31:29,026 [STP SmartThreadPool Thread #0] DEBUG AgentDispatcher - } ExecuteJob exited

    2016-07-13 22:31:29,463 [170] DEBUG WorkerExecutionEngine - { GetJobResult entered

    2016-07-13 22:31:29,463 [170] DEBUG WorkerExecutionEngine - } GetJobResult exited

    2016-07-13 22:31:29,463 [174] DEBUG WorkerExecutionEngine - { CleanupJobResults entered

    It works when I just scan subnets /22 or less (have not tried with larger subnets)..

    It might not be the same problem though.. This behaviour is only on v12.

    --

    Esben

  • I have it set to 0 hops and don't have it checking seed routers, just a couple of /22's and /23's per scan.  I've just noticed that its actually one of my DNS/DHCP Servers (which is also configured in IPAM) is showing in all scans.

  • I worked out what this was with the help of support.

    Basically I have a HP server which was monitored via iLO and also the OS, both of which see the Network Card MAC address (and fails to import because of a duplicate MAC address).

    There is a workaround for this and the engineer has update the KB article below.

    Disable Duplicate Detector for Discovery Engine - SolarWinds Worldwide, LLC. Help and Support

    One of the other issues was down to having an Agent Discovery on each "Site" discovery which showed the same node multiple times (from each scan).  The fix to remove it from the IP scans and create a dedicated Agent Discovery that can run on its own.

  • Sorry to reply to an older post, but I wanted to try to preserve this for posterity.

    We were getting the same error, but not the same cause. All of this information is valid and good, but I wanted to add on what our cause was:

    I generated some data to use all of our directly connected subnets which included /32s. It appears that the Orion Discovery engine doesn't support /32 subnets at this time, so if you have a discovery that won't run and see this error in the Core.BusinessLayer.log that may be your cause as well.