Multicast Routing: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Pascal (Diskussion | Beiträge) |
Pascal (Diskussion | Beiträge) |
||
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 5: | Zeile 5: | ||
== pimd HowTo == | == pimd HowTo == | ||
− | * | + | * Stelle sicher, das der Kernel die folgenden Optionen aktiviert hat. Siehe /boot/config-$(uname -r) |
CONFIG_IP_MULTICAST | CONFIG_IP_MULTICAST | ||
CONFIG_IP_PIMSM_V2 | CONFIG_IP_PIMSM_V2 | ||
CONFIG_IP_MROUTE | CONFIG_IP_MROUTE | ||
− | + | sowie die NETLINK-bezogenen Optionen | |
− | * | + | * Wenn nicht, aktiviere sie, recompile den Kernel und starte neu |
− | * | + | * Aktiviere IP forwarding |
echo 1 >/proc/sys/net/ipv4/ip_forwarding | echo 1 >/proc/sys/net/ipv4/ip_forwarding | ||
− | * | + | * vorausgesetzt die Geräte sind eth0 und eth1, füge Multicast zur Routingtabelle hinzu |
route add -net 224.0.0.0/4 dev eth0 | route add -net 224.0.0.0/4 dev eth0 | ||
route add -net 224.0.0.0/4 dev eth1 | route add -net 224.0.0.0/4 dev eth1 | ||
− | * start the | + | * starte den pimd daemon |
+ | |||
+ | * Test ob multicast forward aktiv ist | ||
+ | cat /proc/sys/net/ipv4/conf/all/mc_forwarding # = 1 | ||
+ | |||
+ | == smcroute HowTo == | ||
+ | |||
+ | 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 | ||
+ | |||
+ | == igmpproxy == | ||
+ | <source lang="make"> | ||
+ | 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 | ||
+ | |||
+ | /proc/sys/net/ipv4/conf/<ifname>/force_igmp_version | ||
+ | - can be set to control what IGMP version the kernel should use on the upstream interface. Ex.: 'echo 2 > | ||
+ | /proc/sys/net/ipv4/conf/eth0/force_igmp_version' will force the kernel to use IGMPv2 on eth0 (provided this is the upstream interface). | ||
+ | </source> | ||
+ | |||
+ | == mrouted == | ||
+ | === Compiling === | ||
+ | ; Zuerst enfernen wir ein paar Compiler Parameter | ||
+ | <source lang="bash"> | ||
+ | # Respect user CFLAGS, remove upstream optimisation and -Werror | ||
+ | sed -i Makefile -e '/^CFLAGS/{s|[[:space:]]=| +=|g;s|-O2||g;s|-Werror||g}' || return 1 | ||
+ | </source> | ||
+ | |||
+ | unter Debian Systemen | ||
+ | make build-deb | ||
+ | |||
+ | sonstige | ||
+ | make | ||
+ | make install | ||
== Links == | == Links == | ||
Zeile 25: | Zeile 77: | ||
* [https://webcache.googleusercontent.com/search?q=cache:hT5tiUHoncsJ:manpages.ubuntu.com/manpages/hardy/man1/pimd.1.html+ubuntu+pimd&hl=en&client=firefox-a&strip=1 pimd Manpage - PIMv2-SM multicast routing daemon] | * [https://webcache.googleusercontent.com/search?q=cache:hT5tiUHoncsJ:manpages.ubuntu.com/manpages/hardy/man1/pimd.1.html+ubuntu+pimd&hl=en&client=firefox-a&strip=1 pimd Manpage - PIMv2-SM multicast routing daemon] | ||
* http://forum.soft32.com/linux2/Howto-enable-multicast-forwarding-Linux-ftopict31853.html | * http://forum.soft32.com/linux2/Howto-enable-multicast-forwarding-Linux-ftopict31853.html | ||
+ | * http://www.cschill.de/smcroute/ | ||
+ | * [http://www.angelfire.com/oz/noplacelikehome/router.html SMC router how-to] | ||
+ | * [http://www.cschill.de/smcroute/smcroute-man-0.9.html SMCRoute Manpage] | ||
+ | * [http://sourceforge.net/projects/igmpproxy/ igmpproxy] | ||
+ | * http://vmlinux.org/jocke/pimd.shtml | ||
+ | * http://fengnet.com/book/ICUNA/ch14lev1sec6.html |
Aktuelle Version vom 27. Juli 2011, 07:19 Uhr
Nutzbare Daemons
- pimd - multicast routing daemon (PIMv2)
- smcroute - static multicast router daemon
- mrouted
pimd HowTo
- Stelle sicher, das der Kernel die folgenden Optionen aktiviert hat. Siehe /boot/config-$(uname -r)
CONFIG_IP_MULTICAST CONFIG_IP_PIMSM_V2 CONFIG_IP_MROUTE
sowie die NETLINK-bezogenen Optionen
- Wenn nicht, aktiviere sie, recompile den Kernel und starte neu
- Aktiviere IP forwarding
echo 1 >/proc/sys/net/ipv4/ip_forwarding
- vorausgesetzt die Geräte sind eth0 und eth1, füge Multicast zur Routingtabelle hinzu
route add -net 224.0.0.0/4 dev eth0 route add -net 224.0.0.0/4 dev eth1
- starte den pimd daemon
- Test ob multicast forward aktiv ist
cat /proc/sys/net/ipv4/conf/all/mc_forwarding # = 1
smcroute HowTo
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
igmpproxy
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
/proc/sys/net/ipv4/conf/<ifname>/force_igmp_version
- can be set to control what IGMP version the kernel should use on the upstream interface. Ex.: 'echo 2 >
/proc/sys/net/ipv4/conf/eth0/force_igmp_version' will force the kernel to use IGMPv2 on eth0 (provided this is the upstream interface).
mrouted
Compiling
- Zuerst enfernen wir ein paar Compiler Parameter
# Respect user CFLAGS, remove upstream optimisation and -Werror
sed -i Makefile -e '/^CFLAGS/{s|[[:space:]]=| +=|g;s|-O2||g;s|-Werror||g}' || return 1
unter Debian Systemen
make build-deb
sonstige
make make install
Links
- Linux Documentation Project: Multicast over TCP/IP HOWTO
- Step By Step Setup Multicast Server Using Ubuntu 8.04
- http://ubuntuforums.org/showthread.php?t=1405360
- pimd Manpage - PIMv2-SM multicast routing daemon
- http://forum.soft32.com/linux2/Howto-enable-multicast-forwarding-Linux-ftopict31853.html
- http://www.cschill.de/smcroute/
- SMC router how-to
- SMCRoute Manpage
- igmpproxy
- http://vmlinux.org/jocke/pimd.shtml
- http://fengnet.com/book/ICUNA/ch14lev1sec6.html