SMCRoute

Helfe beim Thema SMCRoute in Windows 10 Support um eine Lösung zu finden; 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... Dieses Thema im Forum "Windows 10 Support" wurde erstellt von TobiasDrevello, 12. August 2015.

  1. TobiasDrevello
    TobiasDrevello Gast

    SMCRoute


    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.




    Release Changes
    Release 0.92 from July 2002 contains the sources and binareies compiled on RedHat 7.2.
    Download
    Man page


    • fixed the 'mroute: pending queue full, dropping entries' error

      Smcroute 0.90 didn't care about the IGMP messages delivered to the UDP socket that establish the MC-Router API. After some time the queue for the sockets filled up and the 'pending queue full' message was send from the kernel. To my knowledge this didn't affect smcroute or the operating system.
      • version 0.92 reads the ICMP messages now from the UDP socket and logs them to syslog with daemon/debug
      • smcroute does no further processing of this messages
    • increased the number of supported interfaces The 16 interface limit of version 0.90 (interfaces as listed with ifconfig) was to small, especially when alias interfaces where defined.
      • up to 40 interfaces are no recognized by smcroute - this does not change the number of 'virtual interfaces' supported by the kernel (32)
      • not all interfaces recognized by smcroute (40) results in a 'virtual interface' of the kernel (32)
    Release 0.9 from September 2001 contains the sources and binaries compiled on RedHat 7.1.
    Download
    Man page

    • added MC group join (-j) and leave (-l) functionality
      • the options enable/disable the sending of IGMP join messages for a multicast group on a specific interface
    • removed the '<OutputIntf> [<OutputIntf>] ...' for the '-r' option
      • they are not used by the kernel to identify the route to remove
      • smcroute will not complain about extra arguments for the '-r' option to stay compatible with releases <= 0.80
    • improved error handling for some typical error situations
    • added a test script (tst-smcroute.pl)
    • added a man page
    • fixed some minor bugs
    Release 0.8 from 2. August 2001 contains the sources and binaries compiled on RedHat 7.1.
    Download
    Description

    ChangeLog.txt



    smcroute
    Section: Maintenance Commands (8)
    Updated: September, 2001
    Index
    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
     
    #1 TobiasDrevello, 12. August 2015
  2. Hobi Expert
    Willkommen,

    Die folgenden Tipps sollten helfen:
    Thema:

    SMCRoute

    Andere User suchten nach Lösungen mit:

    1. http://www.cschill.de/smcroute/

    1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
      Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
      Information ausblenden