[Xorp-users] iptv and multicast forwarding (newbie)
Pavlin Radoslavov
pavlin at icir.org
Mon Aug 7 12:49:35 PDT 2006
> For a start, here is my home network configuration:
>
> - linux box runing FC5
> - wan connected to eth1
> - vlan interface eth1.8 (1*)
> - lan switch connected to eth0
> - few lan PCs (max 4) connected to lan switch
>
> Besides internet access, my ISP is also providing iptv multicast
> service. (1*) I figured out they setup vlan with an id 8 for iptv
> service, so I added vlan interface eth1.8. With this setup I can watch
> tv on linux box (VLC). Now, I want to forward multicast traffic to lan
> clients (eth0). I wonder if someone can help me with config.boot? What
> interfaces/protocols must I include? Do I need PIM-SM in described
> scenario? It would be great if someone can post template config.boot for
> similar scenarion.
If the ISP doesn't allow you to connect your PIM-SM router to its
PIM-SM domain (probably the most likely scenario), then your PIM-SM
router won't be able to do much for you.
For example, if the ISP rejects your PIM-SM Join messages, then the
LAN clients on eth0 can receive traffic for a multicast group, ONLY
if there is a receiver on the vlan interface for the same group.
Eventually, you need an IGMP proxy to get around the problem:
http://www.ietf.org/internet-drafts/draft-ietf-magma-igmp-proxy-06.txt
Unfortunately, XORP doesn't implement (yet) the IGMP proxy
mechanism, and I am not aware of any open-source IGMP proxy
implementation.
Anyway, below is a sample template you could use to configure XORP
as a PIM-SM router (and RP).
Few notes about the configuration:
* You must replace <YOUR-IP-ADDRESS> with the IP address of eth0 or
eth1.8
* I have commented-out running IGMP on eth1.8 to avoid any
IGMP-related issues (in case your ISP is not filtering the IGMP
Query messages from your router).
However, if you have senders on eth0 and receivers on eth1, then
you need to run IGMP on eth1.8
* The dr-priority on eth1.8 is set to a very low value to avoid any
PIM-SM related issues (in case your ISP is not filtering the
PIM-SM messages from your router).
* The router is configured as a static RP, but practically it will
be an RP only for your network.
* Again, note that with this setup, you MUST join the same group on
both eth1.8 and eth0 if you want to receive the data traffic on
eth0.
However, if your ISP actually allows your PIM-SM router to connect
to their PIM-SM domain, then you can reuse the setup below with the
following modifications:
* Enable IGMP on interface eth1.8
* Comment the "static-rps" section.
Hope that helps,
Pavlin
interfaces {
interface eth0 {
default-system-config
}
interface eth1.8 {
default-system-config
}
}
fea {
unicast-forwarding4 {
disable: false
}
}
plumbing {
mfea4 {
interface eth0 {
vif eth0 {
disable: false
}
}
interface eth1.8 {
vif eth1.8 {
disable: false
}
}
interface register_vif {
vif register_vif {
/* Note: this vif should be always enabled */
disable: false
}
}
traceoptions {
flag all {
disable: false
}
}
}
}
protocols {
igmp {
interface eth0 {
vif eth0 {
disable: false
}
}
/*
interface eth1.8 {
vif eth1.8 {
disable: false
}
}
*/
traceoptions {
flag all {
disable: false
}
}
}
}
protocols {
pimsm4 {
interface eth0 {
vif eth0 {
disable: false
}
}
interface eth1.8 {
vif eth1.8 {
disable: false
dr-priority: 250
}
}
interface register_vif {
vif register_vif {
/* Note: this vif should be always enabled */
disable: false
}
}
static-rps {
rp <YOUR-IP-ADDRESS> {
group-prefix 224.0.0.0/4 {
rp-priority: 250
hash-mask-len: 30
}
}
}
switch-to-spt-threshold {
disable: false
interval: 100
bytes: 102400
}
traceoptions {
flag all {
disable: false
}
}
}
}
protocols {
fib2mrib {
disable: false
}
}
More information about the Xorp-users
mailing list