mrouted.conf
—
mrouted configuration file
In many cases you do not need to configure
mrouted
. It configures itself automatically
to forward multicast on all multicast-capable interfaces, i.e., interfaces
that have the
IFF_MULTICAST
flag set,
excluding the loopback interface. It locates other DVMRP capable routers
directly reachable via those interfaces.
mrouted
- will not start with less than two enabled virtual interfaces (VIFs). A VIF
is either a physical multicast-capable interface or a tunnel.
mrouted
- will log a warning if all of its VIFs are tunnels; such a configuration is
likely better replaced by more direct (GRE) tunnels (i.e. eliminate the
middle man).
To override the default settings, for example to to add tunnel links to other
DVMRP routers, configuration commands may be placed in
/etc/mrouted.conf. There are five types of
commands:
The file format is free-form: whitespace (including newlines) is not
significant. The “#” character marks start of a comment to end
of line.
The
boundary
option to all commands can
accept either a name or a network boundary; the
boundary
and
altnet
options may be specified as many
times as necessary.
The
cache-lifetime
is a value that determines
the amount of time that a cached multicast route stays in kernel before timing
out. The value of this entry should lie between 300 (5 min) and 86400 (1 day).
It defaults to 300.
The
name
option assigns names to boundaries
to make configuration easier.
Some multicast routers, and some IGMP snooping switches, do not support IP
options like Router Alert, which is enabled in
mrouted
by default. Use
router-alert
off to disable this IP option. Regardless of
this setting,
mrouted
always calculates the
IP payload offset based on the IP header length value of ingressing DVMRP and
IGMP frames.
The
igmp-query-interval
setting controls the
IGMP query interval used when this router is elected querier on a LAN. It can
be set to any value in the range 1-1024, inclusive. However, it is not
recommended to go below 10 sec. Default: 125.
The
igmp-robustness
setting controls many
aspects of IGMP timers. It can be any value in the range 2-10, inclusive. The
query-response-interval used below is hard-coded to 10 sec in
mrouted
:
- Group Membership Timeout
- Number of seconds before
mrouted
determines that there are no more members of a group on a LAN. Formula:
(igmp-robustness x igmp-query-interval) + (1 x
query-response-interval)
- Other Querier Timeout
- Number of seconds before
mrouted
determines there is no longer an elected querier on the LAN. Formula:
(igmp-robustness x igmp-query-interval) + (0.5 x
query-response-interval)
- Last-member Query Count
- Number of group-specific queries sent before
mrouted
assumes there are no local
members of a group. The number of queries is equal to the value of the
robustness variable. However, mrouted
currently hard-codes this to 2
The
phyint
command can be used to disable
multicast routing (or enable if
mrouted
is
started with all interfaces disabled) on the physical interface identified by
local IP address
local-addr, or to associate
a non-default metric or threshold with the specified physical interface. The
local IP address
local-addr may be replaced
by the interface name (e.g. le0). If an interface is attached to multiple IP
subnets, describe each additional subnet with the
altnet
keyword.
mrouted
supports all IGMP versions and
defaults to use IGMP v3. Use
igmpv2
or
igmpv1
to force compatibility modes on the
phyint
.
NOTE: All
phyint
commands must precede tunnel commands.
The
pruning
command is provided for
mrouted
to act as a non-pruning router.
This is no longer supported and the configuration option is only kept for
compatibility reasons.
The
tunnel
command can be used to establish a
tunnel link between local IP address
local-addr and remote IP address
remote-addr, and to associate a non-default
metric or threshold with that tunnel. The local IP address
local-addr may be replaced by the interface
name (e.g. le0). The remote IP address
remote-addr may be replaced by a host name,
if and only if the host name has a single IP address associated with it. The
tunnel must be set up in the
mrouted.conf
files of both routers before it can be used.
boundary
- allows an interface to be configured as an administrative boundary for the
specified scoped address. Packets belonging to this address will not be
forwarded on a scoped interface. The boundary option accepts either a name
or a boundary spec.
metric
- is the "cost" associated with sending a datagram on the given
interface or tunnel; it may be used to influence the choice of routes. The
metric defaults to 1. Metrics should be kept as small as possible, because
mrouted
cannot route along paths with a
sum of metrics greater than 31.
rate-limit
- allows the network administrator to specify a certain bandwidth in kbps
which would be allocated to multicast traffic. It defaults to 500 kbps on
tunnels, and 0 (unlimited) on physical interfaces.
threshold
- is the minimum IP time-to-live required for a multicast datagram to be
forwarded to the given interface or tunnel. It is used to control the
scope of multicast datagrams. (The TTL of forwarded packets is only
compared to the threshold, it is not decremented by the threshold. Every
multicast router decrements the TTL by 1.) The default threshold is
1.
In general, all DVMRP routers connected to a particular subnet or tunnel should
use the same metric and threshold for that subnet or tunnel.
This is an example configuration for a mythical multicast router at a big
school.
#
# mrouted.conf example
#
# Name our boundaries to make it easier.
name LOCAL 239.255.0.0/16
name EE 239.254.0.0/16
# le1 is our gateway to compsci, don't forward our
# local groups to them.
phyint le1 boundary EE
# le2 is our interface on the classroom net, it has four
# different length subnets on it.
# Note that you can use either an IP address or an interface name
phyint 172.16.12.38 boundary EE
altnet 172.16.15.0/26
altnet 172.16.15.128/26
altnet 172.16.48.0/24
# atm0 is our ATM interface, which doesn't properly
# support multicasting.
phyint atm0 disable
# This is an internal tunnel to another EE subnet.
# Remove the default tunnel rate limit, since this
# tunnel is over Ethernets.
tunnel 192.168.5.4 192.168.55.101
metric 1 threshold 1 rate-limit 0
# This is our tunnel to the outside world.
# Careful with those boundaries, Eugene.
tunnel 192.168.5.4 10.11.12.13
metric 1 threshold 32
boundary LOCAL boundary EE
- /etc/mrouted.conf
- Main configuration file.
mrouted(8),
mroutectl(8)
This manual page was written by
Joachim
Nilsson ⟨mailto:troglobit@gmail.com⟩.