|
Packit |
667938 |
=head1 NAME
|
|
Packit |
667938 |
|
|
Packit |
667938 |
mrtg-ipv6 - IPv6 support in MRTG
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 OVERVIEW
|
|
Packit |
667938 |
|
|
Packit |
667938 |
MRTG and cfgmaker support SNMP over IPv6. IPv6 targets can be specified by
|
|
Packit |
667938 |
hostname or IPv6 address, and if the required libraries are present (see
|
|
Packit |
667938 |
below), queries will use IPv6.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 USAGE
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Enabling IPv6
|
|
Packit |
667938 |
|
|
Packit |
667938 |
IPv6 is currently disabled by default and must be explicitly enabled. In
|
|
Packit |
667938 |
MRTG this is done by turning on the B<EnableIPv6> global option in the
|
|
Packit |
667938 |
configuration file. In cfgmaker, it is enabled with the B<--enable-ipv6>
|
|
Packit |
667938 |
command-line option.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
If IPv6 is disabled, MRTG and cfgmaker should behave in exactly the same way
|
|
Packit |
667938 |
as previous versions. So the addition of IPv6 support should have no effect
|
|
Packit |
667938 |
on existing MRTG setups unless IPv6 is enabled.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
IPv6 support requires the Socket6 and INET6 libraries (see below). If MRTG
|
|
Packit |
667938 |
can't find them, IPv6 is disabled.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Specifying IPv6 targets
|
|
Packit |
667938 |
|
|
Packit |
667938 |
IPv6 targets may be specified by name or IPv6 address. Numeric IPv6 addresses
|
|
Packit |
667938 |
may be used with both cfgmaker and MRTG, but they must be enclosed in square
|
|
Packit |
667938 |
brackets.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
For example, a target could be specified as:
|
|
Packit |
667938 |
|
|
Packit |
667938 |
public@[2001:760:4::]:161
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Hostnames work as expected: first an IPv6 name lookup is tried, then an IPv4
|
|
Packit |
667938 |
lookup.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Targets that do not support SNMP over IPv6
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Many targets (this currently includes all Cisco routers) do not yet support
|
|
Packit |
667938 |
SNMP over IPv6 and must be monitored over IPv4. This can cause problems if
|
|
Packit |
667938 |
you specify a target through its DNS name and the name maps to both the IPv6
|
|
Packit |
667938 |
address and the IPv4 address of the target: MRTG will only try IPv6, and will
|
|
Packit |
667938 |
fail.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
To query these targets, use the B<IPv4Only> per-target option, which tells
|
|
Packit |
667938 |
MRTG not to use SNMP over IPv6 for the target.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
MRTG does not fall back to IPv4 for performance and correctness reasons. If
|
|
Packit |
667938 |
there are many routers to query, a timeout for every router would make MRTG
|
|
Packit |
667938 |
take too long to query them all. And if, for some reason, IPv6 connectivity to
|
|
Packit |
667938 |
the target is lost, MRTG's error messages can help figure out what is wrong.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
cfgmaker does fall back from IPv6 to IPv4. If IPv6 is enabled and cfgmaker is
|
|
Packit |
667938 |
given a hostname that resolves to both an IPv6 and an IPv4 address, it first
|
|
Packit |
667938 |
tries to query the target over IPv6. If it receives no answer, it tries again
|
|
Packit |
667938 |
using IPv4. If the target answers, cfgmaker sets the IPv4Only option in the
|
|
Packit |
667938 |
generated config file.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 IPv6 LIBRARIES
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Libraries required
|
|
Packit |
667938 |
|
|
Packit |
667938 |
IPv6 support requires the B<Socket6> and B<INET6> Perl modules. Both can be
|
|
Packit |
667938 |
downloaded from CPAN:
|
|
Packit |
667938 |
|
|
Packit |
667938 |
http://search.cpan.org/author/UMEMOTO/Socket6/
|
|
Packit |
667938 |
|
|
Packit |
667938 |
http://search.cpan.org/author/MONDEJAR/INET6/
|
|
Packit |
667938 |
|
|
Packit |
667938 |
If you use Debian, you will need the packages B<libsocket6-perl> and
|
|
Packit |
667938 |
B<libio-socket-inet6-perl>, which are (or should soon be) in unstable.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
So far, IPv6 support has been tested on Linux only, and only with Socket6
|
|
Packit |
667938 |
version 0.12. Also note that IPv6 won't work at all if you don't have
|
|
Packit |
667938 |
INET6.pm version 2.00 or newer.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head2 Installing the libraries
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Building and installing Socket6 and INET6 is very simple. For each module,
|
|
Packit |
667938 |
just unpack the archive and then do:
|
|
Packit |
667938 |
|
|
Packit |
667938 |
perl Makefile.PL
|
|
Packit |
667938 |
make
|
|
Packit |
667938 |
|
|
Packit |
667938 |
and then:
|
|
Packit |
667938 |
|
|
Packit |
667938 |
su
|
|
Packit |
667938 |
make install
|
|
Packit |
667938 |
|
|
Packit |
667938 |
If you have installed the libraries successfully, cfgmaker and mrtg should
|
|
Packit |
667938 |
automatically detect them and allow IPv6 support to be enabled.
|
|
Packit |
667938 |
|
|
Packit |
667938 |
=head1 AUTHOR
|
|
Packit |
667938 |
|
|
Packit |
667938 |
Lorenzo Colitti E<lt>lorenzo location colitti.comE<gt>
|