DOKK / manpages / debian 12 / rancid / rancid.types.conf.5.en
rancid.types.conf(5) File Formats Manual rancid.types.conf(5)

rancid.types.conf - rancid device type configuration file

rancid.types.conf contains formatted configuration lines that define the device types that are available for use in the <device_type> field of the router.db(5) configuration file.

The rancid.types.base configuration file follows the same format, but defines the base types described in router.db(5).

Users are STRONGLY discouraged from altering this file or overriding the base types in rancid.types.conf. Instead, copy the type definition to be altered from rancid.types.base to rancid.types.conf using a different <device_type>.

One directive is listed per-line, where the syntax is one of:


<device_type>;alias;<alternate_device_type>
<device_type>;command;<filter_function>;<device_command_string>
<device_type>;inloop;<input_loop_function>
<device_type>;login;<login_program>
<device_type>;module;<perl_module_name>
<device_type>;prescript;<rancid_script> XXX temporary knob?  add this?
<device_type>;postscript;<rancid_script> XXX temporary knob?  add this?
<device_type>;script;<rancid_script>
<device_type>;timeout;<login_program_timeout>

For example:

cisco;login;clogin
cisco;timeout;120
cisco;module;rancid::ios
cisco;inloop;ios::inloop
cisco;command;ShowVersion;show version
juniper;login;/usr/local/bin/jlogin
juniper;module;rancid::junos
juniper;inloop;junos::inloop
juniper;command;ShowVersion;show version
srx;alias;juniper

<device_type> is a lower case name used in the router.db(5) file. Its case is forced to lower case when reading the configuration files.

Each <device_type> may have the following directives defined. The login and script directives are required, unless it is an alias.

Defines an alias for another <device_type>, it does NOT augment it. The <device_type> target may be defined in either device type configuration file.
Defines commands to run for the <device_type> and the function that will process the input.
Intended for rancid(1), inloop defines a function to loop over the input from the device. It must have the calling signature f($INPUT, $OUTPUT).
Defines the login script used for the <device_type>, which does not need to be an FQPN, but then must be found in the path.
Loads a rancid perl module to supply functions used in the command directives for the <device_type>. Multiple module lines may exist for a device type, they are loaded in the order they appear.
Defines the rancid script used for the <device_type>, which does not need to be an FQPN, but then must be found in the process' path.
Defines the rancid login script timeout in seconds. In general, the default 90 seconds, but some modules themselves alter this.

/etc/rancid/rancid.types.conf
Configuration file described here.
/etc/rancid/rancid.types.base
Configuration file described here.

control_rancid(1), rancid(1), rancid-run(1), router.db(5), rancid(3)

24 March 2020