commit 43a3729a206c8d04f9e156d1d811a1b7cfb84089
Author: Oliver Gorwits <oliver@cpan.org>
Date: Sun May 6 22:44:09 2018 +0100
#408 improvements to MakeRancidConf (earendilfr)
commit 205911175ef52e0107ca59b96f51fee393120582
Author: Ambroise <earendil@toleressea.fr>
Date: Thu Apr 26 17:44:15 2018 +0200
Add the following parameters to the MakeRancidConf:
+ Change the default delimiter character from ':' to ';' that is the default RANCID delimiter since
RANCID 3.x
+ Add an option to define the rancid config directory.
This directory will be used to extract the vendor defined in the RANCID configuration to avoid to extract
unexisting vendor devices in RANCID configuration (by example, Ubiquiti AirOS devices).
+ Add an option to define a default_group.
If a device doesn't match the defined group, it will add to this group
+ Add an option to defined a manually excluded ACL
To permit to not export devices from Netdisco to RANCID based on an ACL.
The PAN CLI tries to do friendly auto-completion things and makes the SSH
Collector fail sporadically. This change uses the "set cli scripting-mode on"
command to calm down the PAN CLI and works around the extra echoed prompts that
get sent.
This change also adds collection of IPv6 neighbor information.
While setting up an sshcollector, I found that the script doesn't handle an
arpless device very gracefully. The log looks like:
[46567] 2018-04-10 16:59:08 warn WARNING: no entries received from <IP>
Can't use string ("1") as an ARRAY ref while "strict refs" in use at perl5/bin/netdisco-sshcollector line 114, <__ANONIO__> line 3.
This is fixed by making the process function always return the expected
structure, even if it's empty. After this error, the following errors showed
up:
[53232] 2018-04-10 17:06:15 warn WARNING: no entries received from <IP>
[53210] 2018-04-10 17:06:15 info [134.71.0.126] arpnip - retrieved 0 entries
Use of uninitialized value in sprintf at perl5/bin/netdisco-sshcollector line 119, <__ANONIO__> line 3.
[53210] 2018-04-10 17:06:15 info arpnip - processed ARP Cache entries from 1 devices
This is because $stats{entry} only becomes an integer by being incremented, so
if there aren't any entries, it never exists. This is fixed by starting it at 0.