#   This is the configuration file for "pimd", an IP multicast router.
#   pimd looks for it in "/etc/pimd.conf".
#
#   $Id: pimd.conf,v 1.17 2001/09/10 20:31:37 pavlin Exp $
#
#   Command formats:
##########
# default_source_preference <preference>
# default_source_metric <metric>
#
# phyint <local-addr | ifname> [disable|enable]  [threshold <t>] [preference <p>]
#                              [metric <m>]
#                              [altnet <net-addr> masklen <masklen>]
#                              [scoped <net-addr> masklen <masklen>]
#
# cand_rp [<local-addr>] [priority <number> ] [time <number>]
# cand_bootstrap_router [<local-addr>] [priority <number>]
# rp_address <rp-addr> [<group-addr> [masklen <masklen>] [priority <number>]]
#
# group_prefix <group-addr> [masklen <masklen>]
# group_prefix <group-addr> [masklen <masklen>]
# .
# .
# group_prefix <group-addr> [masklen <masklen>]
#
#
# switch_data_threshold [rate <number> interval <number>]
#
# switch_register_threshold [rate <number> interval <number>]
##########
# By default PIM will be activated on all interfaces.  Use phyint to 
# disable on interfaces where PIM should not be run.
#
# Preferences are used by assert elections to determine upstream routers.
# Currently pimd cannot reliably obtain preferences and metrics from the
# unicast routing protocols, so a default preference may be configured.
# In an assert election, the router advertising the lowest assert preference
# will be selected as the forwarder and upstream router for the LAN.
# 101 should be sufficiently high so that asserts from Cisco or GateD
# routers are prefered over poor-little pimd.
#
# It is reccommended that preferences be set such that metrics are never
# consulted.  However, default metrics may also be set and will default to
# 1024.
#
#
# A "phyint" can be specified by either its IP address or interface name.
#
# `preference` and `metric` after "phyint" are used to configure manually
# the default preference and metric for the Assert messages sent on that
# interface. Usually you don't need this, but if you do, think of them
# like `preference` and `metric` defined per iif, but used by the
# Asserts on the oifs.
#
# If you want to add "alternative (sub)net" to a physical interface,
# e.g., if you want to make incoming traffic with a non-local source address
# to appear as it is coming from a local subnet, then use the command:
#   phyint <local-addr | ifname> altnet <net-addr> masklen <len>
# XXX: if you use this command, make sure you know what you are doing!!
#
# If you want administrative scoped multicast filtering, use the
# following command:
#   phyint <local-addr | ifname> scoped <net-addr> masklen <masklen>
# This allows interfaces to be configured as an administrative boundary
# for the specified scoped address. Packets belonging to the scoped
# address will not be forwarded. To use this compile with -DSCOPED_ACL
# option (in Makefile).
# 
# `local-addr` after "cand_rp" and "cand_bootstrap_router" specifies
#  the local address to be used in the Cand-RP and Cand-BSR messages.
#  If not specified, the largest local IP address will be used (excluding
#  the disabled interfaces)
#
# `time` after `cand_rp` specifies how often to send the Cand-RP messages.
#  Its default value should be 60 seconds. Use smaller value for faster
#  convergence.
#
# `group_prefix` is/are the prefix(es) advertised if cand_rp
#
# It is possible to set a static Rendez-Vous Point using the "rp_address"
# setting.  The argument can be either a unicast or a multicast address
# followed by an optional group address and optional masklen to that.
#
# `rate` specifies the minimum rate in bits/s before the last hop
#  router or the RP switch to the shortest path (`switch_data_threshold`
#  and `switch_register_threshold` respectively)
#  `interval` specifies the interval for periodical testing of the rate
#  Currently, `interval` must be at least 5 (seconds)
#  XXX: Both intervals should be the same
#
#
#default_source_preference	101  # smaller is better
#default_source_metric		1024 # smaller is better

# The phyint setting MUST BE AFTER default_source_*,
# BUT MUST BE BEFORE everything else
# By default, all non-loopback multicast capable interfaces are enabled.
#phyint de1 disable

phyint rmnet_data0 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data1 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data2 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data3 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data4 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data5 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data6 enable altnet 0.0.0.0 masklen 0
phyint rmnet_data7 enable altnet 0.0.0.0 masklen 0

# Smaller value means "higher" priority
cand_rp time 30 priority 20

# Bigger value means  "higher" priority
cand_bootstrap_router priority 5

# Static rendez-vous point
#rp_address 192.168.10.1 224.0.0.0 masklen 8 priority 5

# All multicast groups
group_prefix 224.0.0.0 masklen 4

# 
switch_data_threshold		rate 50000 interval 20	# 50kbps (approx.)
switch_register_threshold	rate 50000 interval 20	# 50kbps (approx.)

