cfgmaker - Creates mrtg.cfg files (for mrtg-2.9.6)
SYNOPSIS
cfgmaker [options] community@router [community@router ...]
OPTIONS
--ifref=nr interface references by Interface Number (default)
--ifref=ip ... by Ip Address
--ifref=eth ... by Ethernet Number
--ifref=descr ... by Interface Description
--ifref=name ... by Interface Name
--ifref=type ... by Interface Type
--ifdesc=nr interface description uses Interface Number (default)
--ifdesc=ip ... uses Ip Address
--ifdesc=eth ... uses Ethernet Number
--ifdesc=descr ... uses Interface Description
--ifdesc=name ... uses Interface Name
--ifdesc=alias ... uses Interface Alias
--ifdesc=type ... uses Interface Type
--global "x: a" add global config entries
--no-down do not look at admin or opr status of interfaces
--descint describe interface instead of just 'Traffic Analysis for'
--subdirs=format give each router its own subdirectory, naming each per
"format", in which HOSTNAME and SNMPNAME will be
replaced by the values of those items -- for instance,
--subdirs=HOSTNAME or --subdirs="HOSTNAME (SNMPNAME)"
--noreversedns do not reverse lookup ip numbers
--help brief help message
--man full documentation
--version print the version of cfgmaker
--output=file output filename default is STDOUT
DESCRIPTION
Cfgmaker creates MRTG configuration files based on infor
mation pulled from a router or another SNMP manageable
device.
community@router
Community is the community name of the device you want
to create a configuration for. The default community
name is 'public'; you might want to try this first if
you do not know the community name of a device. If you
are using the wrong comunity name you will get no
response from the device.
managable device. Following the name you can specify
6 further options separated by colons. The full syn
tax looks like this:
B<router>[:[B<port>][:[B<timeout>][:[B<retries>][:[B<backoff>][:B<version>]]]]]
Of special interest may be the last parameter, ver
sion. If you set this to '2' then your device will be
queried with SNMP version 2 requests. This allows to
poll the 64 bit traffic counters in the device and
will thus work much better with fast interfaces (no
more counter overrun).
--help
Print a brief help message and exit.
--man
Prints the manual page and exits.
--version
Print the version of cfgmaker. This should match the
version of MRTG for which config files are being cre
ated.
--ifref nr|ip|eth|descr|name
Select the interface identification method. Default
is nr which identifies the router interfaces by their
number. Unfortunately the interface numbering scheme
in an SNMP tree can change. Some routers change their
numbering when new interfaces are added, others change
thier numbering every full moon just for fun.
To work around this sad problem MRTG can identify
interfaces by 3 other properties. None of these works
for all interfaces, but you should be able to find one
which does fine for you. Note that especially ethernet
addrsses can be problematic as some routers have the
same ethernet address on most of their interface
cards.
Select ip to identify the interface by its IP number.
Use eth to use the ethernet address for identifica
tion. Or use descr to use the Interface description.
If your chosen method does not allow unique interface
identification on the device you are querying, cfg
maker will tell you about it.
--ifdesc nr|ip|eth|descr|name|type|alias
Select what to use as the description of the inter
face. The description appears in the Title[] property
for the target as well as the text header in the HTML
code defined in the target's PageTop[]. Default is to
always useful to the viewer of the graphs.
There are 6 other properties which could be used. Use
ip if you want to use the interface's IP-address. Use
eth if you want to use the interface's ethernet
address. If you want a better description, you can
use either descr, name or alias. Exactly what each of
these do varies between different equipment so you
might need to experiment. For instance, for a serial
interface on a Cisco router running IOS using name
might result in "S0" being the interface description ,
descr might result in "Serial0" and alias might result
in "Link to HQ" (provided that is what is used as the
interface's "description" in the router's configura
tion).
Finally, if you want to describe the interface by it's
type (i.e "ethernetCSMA", "propPointtoPoint" etc) you
can use type. This is roughly equivalent to the
--descint option above.
--global ""bla: abc""
Use this to add global options to the generated config
file. You can call --global several times to add mul
tiple options.
--global "workdir: /home/mrtg"
If you want some default Options you might want to put
--global "options[_]: growright,bits"
--noreversedns
Do not try to reverse lookup IP numbers ... a must for
DNS free environments.
--no-down
Normally cfgmaker will not include interfaces which
are marked anything but administratively and opera
tionally UP. With this switch you get them all.
--subdirs format
Give each router its own subdirectory for the HTML and
graphics (or .rrd) files. The directory name is the
given format string with a couple of pattern replace
ments. The string "HOSTNAME" will be replaced by the
hostname of the router (however you specified it on
the cfgmaker commandline -- it may be an actual host
name or just an IP address), and "SNMPNAME" will be
replaced with the device's idea of its own name (the
same name that appears on the right side of the
"Title" lines). For instance, a call like:
would result in the generation of lines looking some
thing like:
Directory[10.10.0.18_1]: 10.10.0.18__fp2200-bothrip-1.3
EXAMPLE
This example creates a config file for router.place.xyz:
the router has the community name public. Interfaces get
identified by their IP number. Two global options get
added to the config file. The config file gets redirected
to mrtg.conf. The '\' signs at the end of the line mean
that this command should be written on a single line.
cfgmaker --global "WorkDir: /home/tobi" \
--global "Options[_]: growright,bits" \
--ifref=ip \
public@router.place.xyz > mrtg.cfg
SEE ALSO
the reference manpage
AUTHOR
Tobias Oetiker <tobi@oetiker.ch>
LICENSE
GNU General Public License
COPYRIGHT
Cfgmaker is Copyright 2000 by Tobias Oetiker
<tobi@oetiker.ch>
Man(1) output converted with
man2html