smcroute

Langue: en

Autres versions - même langue

Version: August, 2001 (debian - 07/07/09)

Section: 8 (Commandes administrateur)

NAME

SMCRoute - Static Multicast Router (-Interface) - Version 0.9

SYNOPSIS

smcroute < options > < commands >
options
-d - start daemon
-v - verbose output
commands - common
-h - print help
-k - kill daemon
commands - multicast routing related
-a <InputIntf> <OriginIpAdr> <McGroupAdr> <OutputIntf> [<OutputIntf>] ...

   -  add route
-r <InputIntf> <OriginIpAdr> <McGroupAdr>

   -  remove route
commands - multicast signaling related
-j <InputIntf> <McGroupAdr> - join MC group
-l <InputIntf> <McGroupAdr> - leave MC group

DESCRIPTION

SMCRoute is a command line tool to manipulate the multicast routes of the Linux kernel. It can be used as an alternative to dynamic multicast routers like 'mrouted' in situations where static multicast routes should be maintained and/or no proper IGMP signaling exists.

Generaly multicast routes exists in the kernel only as long as smcroute or another multicast routing daemon is running. Only one multicast router daemon can be active, so it's impossible to run smcroute and e.g. 'mrouted' at the same time.

The -d option smcroute is used to start the smcroute daemon otherwise smcroute searches for an already running smcroute daemon and passes the commands to it. The -k option will terminate a running daemon.

Multicast routes can be added with the -a command and removed with the -r command. A multicast route is defined by the input interface (<IntputIntf>), the multicast IP origin address (<OriginIpAdr>), the multicast group (<McGroupAdr>) and a list of output interfaces (<OutputIntf> ...). The output interfaces must not be given with the -r as the first three parameter are sufficient to identify the route to remove.

The intention of SMCRoute is to help in siutation where dynamic multicast routing does not work properly, but dynamic multicast routing is in nearly all cases the prefered solution. SMCRoute supports dynamic multicast routing with the multicast group 'join' -j and 'leave' -l commands. For both commands the input interface on which the multicast sessions should be received (<InputIntf>) and the multicast group address <McGroupAdr> must be given.

Superuser rights are necessary to start the smcroute daemon or to communicate with the daemon.

OPTIONS

-d
Starts the smcroute daemon before any of the optional following commands are executed.
-v
Gives verbose output in some error situations (don't expect too much, check syslog instead).

COMMANDS

-a
<InputIntf> <OriginIpAdr> <McGroupAdr> <OutputIntf> [<OutputIntf>] ...

The command is passed to the daemon that adds the given multicast route to the kernel's routing table. <InputIntf> can be any network interface as listed by 'ifconfig' or 'ip link list' (incl. tunnel interfaces), but not the loopback interface. <OriginIpAdr> is the source IP address of the multicast packets that will be routed by this entry. It is a unicast IP address not a multicast IP address. <McGroupAdr> is the IP address of the multicast group that will be forwarded. <OutputIntf> [<OutputIntf>] ... is a list of one or more network interfaces to which the multicast packets will be forwarded. The same rules for the selection of output interfaces applies as for the input interface.

Warning, by using multiple output interfaces (traffic multiplication), using the input interface also as output interface (direct loop) or constructing some other forms of indirect loop you can flood you network.

-r
<InputIntf> <OriginIpAdr> <McGroupAdr>

The command is passed to the daemon that removes a multicast route previously added with the -a command. The parameters are identical except to the omitted list of <OutputIntf>.

-j
<InputIntf> <McGroupAdr>

The command is passed to the daemon that passes it to the kernel. The kernen then tries to join the multicast group <McGroupAdr> on interface <InputIntf> by starting IGMP signaling on <InputIntf>. This signaling may be received by routers connected to <InputIntf>'s network that support IGMP multicast signaling and then hopfuly start forwarding of the requested multicast session to <InputIntf>'s network.

With this command smcroute allows the integration of nodes that needs static multicast routing into dynamic multicast routing networks.

-l
<InputIntf> <McGroupAdr>

The command is passed via the daemon to the kernel that initiate a 'leave' for a previously 'joined' multicast group.

LIMITS

The current version compiles and runs fine with the Linux kernel version 2.4. The known limits are:

Multicast routes: more then 200

Multicast group membership: max. 20

FILES

proc/net/ip_mr_cache
- contains the active multicast routes
/proc/net/ip_mr_vif
- contains the 'virtual' interfaces used by the active multicast routing daemon
/var/lib/smcroute
- IPC socket created by the smcroute daemon

SEE ALSO

mrouted

BUGS (known)

* The English wording of this man page

AUTHOR

Carsten Schill <carsten@cschill.de>

The current version is available at: http://www.cschill.de/smcroute  

TIPS

* A lot of extra information are send under the daemon facility and the debug priority to the syslog daemon.