Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
NETDISCO-DO(1)	      User Contributed Perl Documentation	NETDISCO-DO(1)

       netdisco-do - Run any Netdisco job from the command-line.

	~/bin/netdisco-do <action> [-DISQR] [--enqueue]	[--quiet] [-d <device> [-p <port>] [-e <extra>]]

       This program allows you to run any Netdisco poller job from the

       Note that some jobs ("discoverall", "macwalk", "arpwalk", "nbtwalk")
       simply add entries to the Netdisco job queue for	other jobs, so won't
       seem to do much when you	trigger	them. Everything else happens in real-

       However the ""--enqueue"" option	will force the queueing	of the job,
       regardless of type. This	may be useful for cron-driven actions, or for
       actions working across large IP spaces.

       For any action, if you wish to run one of its individual	worker stages,
       then pass "action::stage" as the	first argument to "netdisco-do", for
       example "discover::neighbors".

       Any action taking a "device" parameter can be passed either a hostname
       or IP address of	any interface of a known or unknown device, or an IP
       prefix (subnet) which will cause	"netdisco-do" to run the action	on all
       addresses in that range.

       The "device" parameter may be passed multiple times. In this case, all
       addresses (after	expanding IP Prefixes) will be handled one by one.

       Run a discover on the device (specified with "-d").

	~/bin/netdisco-do discover -d

       Run a discover on two different devices (specified with "-d").

	~/bin/netdisco-do discover -d	-d

       Queue a discover	for all	known devices.

       Run a macsuck on	the device (specified with "-d").

	~/bin/netdisco-do macsuck -d

       Queue a macsuck for all known devices.

       Run an arpnip on	the device (specified with "-d").

	~/bin/netdisco-do arpnip -d

       Queue an	arpnip for all known devices.

       Delete a	device (specified with "-d"). Pass a log message for the
       action in the "-e" parameter. Optionally	request	for associated nodes
       to be archived (rather than deleted) by setting the "-p"	parameter to
       ""yes"" (mnemonic: preserve).

	~/bin/netdisco-do delete -d
	~/bin/netdisco-do delete -d -e 'older	than the sun'
	~/bin/netdisco-do delete -d -e 'older	than the sun' -p yes

       Change the canonical IP address of a device (specified with "-d"). Pass
       the new IP address in the "-e" parameter. All related records such as
       topology, log and node information will also be updated to refer	to the
       new device.

       Note that no check is made as to	whether	the new	IP is reachable	for
       future polling.

	~/bin/netdisco-do renumber -d	-e

       Run an nbtstat on the node (specified with "-d").

	~/bin/netdisco-do nbtstat -d

       Queue an	nbtstat	for all	known nodes.

       Run Device and Node expiry actions according to configuration.

       Archive nodes on	the specified device. If you want to delete nodes, set
       the "-e"	parameter to ""no"" (mnemonic: expire).	If you want to perform
       the action on a specific	port, set the "-p" parameter.

	~/bin/netdisco-do expirenodes -d
	~/bin/netdisco-do expirenodes -d -p FastEthernet0/1 -e no

       Generate	GraphViz graphs	for the	largest	cluster	of devices.

       You'll need to install the Graph::Undirected and	GraphViz Perl modules,
       and possibly also the "graphviz"	utility	for your operating system.
       Also create a directory for the output files.

	mkdir ~/graph
	~/bin/localenv cpanm Graph::Undirected
	~/bin/localenv cpanm GraphViz

       Dump the	content	of an SNMP MIB leaf, which is useful for diagnostics
       and troubleshooting. You	should provide the ""-e"" option which is the
       name of the leaf	(such as "interfaces" or "uptime").

       If you wish to test with	a device class other than that discovered,
       prefix the leaf with the	class short name, for example
       ""Layer3::C3550::interfaces"" or	""Layer2::HP::uptime"".	Using ""::""
       as the start of the prefix will test against the	base ""SNMP::Info""

       As well,	SNMP OID names can be used as an argument for ""-e"", so you
       can use "ifName"	for example, which will	use the	netdisco-mibs files
       for translations.

       All ""-e"" parameters are case sensitive.

	~/bin/netdisco-do show -d -e interfaces
	~/bin/netdisco-do show -d -e Layer2::HP::interfaces
	~/bin/netdisco-do show -d -e ::interfaces
	~/bin/netdisco-do show -d -e ifName

       A parameter may be passed to the	"SNMP::Info" method or SNMP object in
       the ""-p"" parameter:

	~/bin/netdisco-do show -d -e has_layer -p 3
	~/bin/netdisco-do show -d -e ifName -p 2

       The ""-e"" parameter "specify" will show	the used configuration for the
       specified device.

	~/bin/netdisco-do show -d -e specify

       Start an	interactive terminal with the Netdisco PostgreSQL database. If
       you pass	an SQL statement in the	"-e" option then it will be executed.

	~/bin/netdisco-do psql
	~/bin/netdisco-do psql -e 'SELECT ip, dns FROM device'
	~/bin/netdisco-do psql -e 'COPY	(SELECT	ip, dns	FROM device) TO	STDOUT WITH CSV	HEADER'

       Updates Netdisco's statistics on	number of devices, nodes, etc, for

       Set the SNMP location field on the device (specified with "-d").	Pass
       the location string in the "-e" extra parameter.

	~/bin/netdisco-do location -d	-e 'wiring closet'

       Set the SNMP contact field on the device	(specified with	"-d"). Pass
       the contact name	in the "-e" extra parameter.

	~/bin/netdisco-do contact -d -e 'tel:	555-2453'

       Set the description on a	device port. Requires the "-d" parameter
       (device), "-p" parameter	(port),	and "-e" parameter (description).

	~/bin/netdisco-do portname -d	-p FastEthernet0/1 -e 'Web Server'

       Set the up/down status on a device port.	Requires the "-d" parameter
       (device), "-p" parameter	(port),	and "-e" parameter ("up" or "down").

	~/bin/netdisco-do portcontrol -d -p FastEthernet0/1 -e up
	~/bin/netdisco-do portcontrol -d -p FastEthernet0/1 -e down

       Set the native VLAN on a	device port. Requires the "-d" parameter
       (device), "-p" parameter	(port),	and "-e" parameter (VLAN number).

	~/bin/netdisco-do vlan -d -p FastEthernet0/1 -e 102

       Set the PoE on/off status on a device port. Requires the	"-d" parameter
       (device), "-p" parameter	(port),	and "-e" parameter ("on" or "off").

	~/bin/netdisco-do power	-d -p	FastEthernet0/1	-e on
	~/bin/netdisco-do power	-d -p	FastEthernet0/1	-e off

       Generates rancid	configuration for known	devices. See
       App::Netdisco::Worker::Plugin::MakeRancidConf for configuration needs.

	~/bin/netdisco-do makerancidconf

       Generates an API	key for	the supplied username. See the API doc
       <> for further

	~/bin/netdisco-do getapikey -e the_username

       Will dump the loaded and	parsed configuration for the application. Pass
       a specific configuration	setting	name to	the "-e" parameter to dump
       only that.

       Some configuration items	like device_auth are evaluated against the ACL
       first.  Pass a device in	"-d" to	display	them:

	~/bin/netdisco-do dumpconfig -d -e device_auth

       The flag	""-R"" will cause any changes to the database to be rolled
       back at the end of the action.

       The flags ""-DISQ"" can be specified, multiple times, and enable	the
       following items in order:

	   Netdisco debug log level.

       "-I" or "-II"
	   SNMP::Info trace level (1 or	2).

       "-S" or "-SS" or	"-SSS"
	   SNMP	(net-snmp) trace level (1, 2 or	3).

	   DBIx::Class trace enabled.

       In case of issues with the colored output, setting the environment
       variable	"ANSI_COLORS_DISABLED" can be used to suppress it.

perl v5.32.0			  2020-08-30			NETDISCO-DO(1)


Want to link to this manual page? Use this URL:

home | help