[Xorp-users] Basic Multicast Router configuration
mrim22.cb
mrim22.cb@wanadoo.fr
Tue, 15 Mar 2005 21:23:15 +0100
Hi,
I'm a newbie in Multicast Routing Domain.
I'd like to make a basic Multicast Router configuration to work.
Here it is :
Workstation A --------------- Xorp Router -------------- Workstation B
192.168.0.2 192.168.0.199 / 172.20.16.199 172.20.16.22
eth0 eth0 eth1
eth0
Send Multicast Packets
Wait for Multicast Packets
using iperf -c (see below)
using iperf -s (see below)
Workstation B : iperf -s -u -B 224.0.55.55 -i 1
Workstation A : iperf -c 2240.0.55.55 -u -T 32 -t 10 -i 1
So TTL is set to 32
My router is a Linux Fedora Core 3 (I suppose MROUTE and PIM activate in
kernel)
unicast ip_forwardink is ok - Stations can ping to each other.
cat /proc/sys/net/ipv4/conf/all/rp_filter --> 0
cat /proc/sys/net/ipv4/conf/all/mc_forward --> 0
When B start iperf Xorp router seems to take it into account.
When A start sending Multicast Packet I can see them with tcpdump
but nothing happened and Xorp Router don't forward them to B
Thanks, help me !
Some questions about Multicast :
===========================
Is IGMP needed when using PIMSM ?
What is RP/RPS in PIM ?
Where can i find nice documentation about PIM configuration (for
beginners) ?
what's about targetname: "MFEA_4", "IGMP",... ?
Some other questions about my log :
===========================
Why did i get this messages from xorp_rtrmgr running :
[ 2005/03/15 18:34:36 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
Running module: igmp (/usr/local/xorp/mld6igmp/xorp_igmp)
[ 2005/03/15 18:34:50 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Target
"IGMP" does not exist or is not enabled.
[ 2005/03/15 18:34:53 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Target
"PIMSM_4" does not exist or is not enabled.
Here my xorp configuration file and some dumps :
=============================================================================
XORP> show
fea {
enable-unicast-forwarding4: true
targetname: "fea"
}
interfaces {
interface eth0 {
description: "data interface"
enabled: true
vif eth0 {
enabled: true
address 192.168.0.199 {
prefix-length: 24
broadcast: 192.168.0.255
enabled: true
}
}
}
interface eth1 {
description: "data interface"
enabled: true
vif eth1 {
enabled: true
address 172.20.16.199 {
prefix-length: 16
broadcast: 172.20.255.255
enabled: true
}
}
}
targetname: "fea"
}
plumbing {
mfea4 {
enabled: true
interface eth1 {
vif eth1 {
enabled: true
}
}
interface eth0 {
vif eth0 {
enabled: true
}
}
interface register_vif {
vif register_vif {
enabled: true
}
}
traceoptions {
flag {
all {
enabled: true
}
}
}
targetname: "MFEA_4"
}
}
protocols {
igmp {
interface eth0 {
vif eth0 {
enabled: true
}
}
interface eth1 {
vif eth1 {
enabled: true
}
}
traceoptions {
flag {
all {
enabled: true
}
}
}
targetname: "IGMP"
enabled: true
}
pimsm4 {
enabled: true
interface eth1 {
vif eth1 {
enabled: true
dr-priority: 1
}
}
interface register_vif {
vif register_vif {
enabled: true
dr-priority: 1
}
}
static-rps {
rp 172.20.16.199 {
group-prefix 224.0.0.0/4 {
rp-priority: 192
hash-mask-len: 30
}
}
}
switch-to-spt-threshold {
enabled: true
interval-sec: 100
bytes: 102400
}
traceoptions {
flag {
all {
enabled: true
}
}
}
targetname: "PIMSM_4"
}
fib2mrib {
enabled: true
targetname: "fib2mrib"
}
}
=============================================================================
Xorp> show pim interface
Interface State Mode V PIMstate Priority DRaddr Neighbors
eth0 DISABLED Sparse 2 NotDR 1 0.0.0.0 0
eth1 UP Sparse 2 DR 1 172.20.16.199 0
register_vif UP Sparse 2 DR 1 0.0.0.0 0
=============================================================================
Xorp> show pim join
Group Source RP Flags
224.0.55.55 0.0.0.0 172.20.16.199 WC
Upstream interface (RP): register_vif
Upstream MRIB next hop (RP): UNKNOWN
Upstream RPF'(*,G): UNKNOWN
Upstream state: Joined
Join timer: 39
Local receiver include WC: .O.
Joins RP: ...
Joins WC: ...
Join state: ...
Prune state: ...
Prune pending state: ...
I am assert winner state: ...
I am assert loser state: ...
Assert winner WC: ...
Assert lost WC: ...
Assert tracking WC: .OO
Could assert WC: .O.
I am DR: .OO
Immediate olist RP: ...
Immediate olist WC: .O.
Inherited olist SG: .O.
Inherited olist SG_RPT: .O.
PIM include WC: .O.
=============================================================================
Xorp> show pim mrib
DestPrefix NextHopRouter VifName VifIndex MetricPref Metric
172.20.0.0/16 172.20.16.199 eth1 1 0 0
192.168.0.0/24 192.168.0.199 eth0 0 0 0
=============================================================================
Xorp> show pim mfc
Group Source RP
=============================================================================
Xorp> show pim rps
RP Type Pri Holdtime Timeout ActiveGroups
GroupPrefix
172.20.16.199 static 192 -1 -1 1
224.0.0.0/4
Xorp>
=============================================================================
! Trace from xorp_rtrmgr
=============================================================================
[root@rxy bin]# ./xorp_rtrmgr
[ 2005/03/15 18:34:34 INFO xorp_rtrmgr:2657 RTRMGR +134
master_conf_tree.cc execute ] Changed modules: interfaces, fea, mfea4,
rib, fib2mrib, igmp, pimsm4
[ 2005/03/15 18:34:34 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: interfaces
(/usr/local/xorp/fea/xorp_fea)
[ 2005/03/15 18:34:36 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
[ 2005/03/15 18:34:38 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: fea (/usr/local/xorp/fea/xorp_fea)
[ 2005/03/15 18:34:44 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: mfea4 (/usr/local/xorp/fea/xorp_fea)
[ 2005/03/15 18:34:44 TRACE xorp_rtrmgr RTRMGR ] Startup with XRL:
>finder://MFEA_4/mfea/0.1/start_mfea<
[ 2005/03/15 18:34:45 INFO xorp_fea MFEA ] New vif: Vif[eth0] pif_index:
2 vif_index: 0 addr: 192.168.0.199 subnet: 192.168.0.0/24 broadcast:
192.168.0.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST UNDERLYING_VIF_UP
[ 2005/03/15 18:34:45 INFO xorp_fea MFEA ] New vif: Vif[eth1] pif_index:
3 vif_index: 1 addr: 172.20.16.199 subnet: 172.20.0.0/16 broadcast:
172.20.255.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST UNDERLYING_VIF_UP
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Enabled vif: eth1
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Started vif: eth1
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] New vif: Vif[register_vif]
pif_index: 3 vif_index: 2 addr: 172.20.16.199 subnet: 172.20.16.199/32
broadcast: 172.20.16.199 peer: 0.0.0.0 Flags: PIM_REGISTER UNDERLYING_VIF_UP
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Enabled vif: eth0
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Started vif: eth0
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Enabled vif: register_vif
[ 2005/03/15 18:34:46 INFO xorp_fea MFEA ] Started vif: register_vif
[ 2005/03/15 18:34:46 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: rib (/usr/local/xorp/rib/xorp_rib)
[ 2005/03/15 18:34:48 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: fib2mrib
(/usr/local/xorp/fib2mrib/xorp_fib2mrib)
[ 2005/03/15 18:34:50 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: igmp
(/usr/local/xorp/mld6igmp/xorp_igmp)
[ 2005/03/15 18:34:50 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Target
"IGMP" does not exist or is not enabled.
[ 2005/03/15 18:34:51 TRACE xorp_rtrmgr RTRMGR ] Startup with XRL:
>finder://IGMP/mld6igmp/0.1/start_mld6igmp<
[ 2005/03/15 18:34:52 INFO xorp_igmp MLD6IGMP ] New vif: Vif[eth0]
pif_index: 0 vif_index: 0 Flags:
[ 2005/03/15 18:34:52 INFO xorp_igmp MLD6IGMP ] Added new address to vif
eth0: addr: 192.168.0.199 subnet: 192.168.0.0/24 broadcast:
192.168.0.255 peer: 0.0.0.0
[ 2005/03/15 18:34:52 INFO xorp_igmp MLD6IGMP ] Vif flags changed:
Vif[eth0] pif_index: 0 vif_index: 0 addr: 192.168.0.199 subnet:
192.168.0.0/24 broadcast: 192.168.0.255 peer: 0.0.0.0 Flags: MULTICAST
BROADCAST UNDERLYING_VIF_UP
[ 2005/03/15 18:34:52 INFO xorp_igmp MLD6IGMP ] New vif: Vif[eth1]
pif_index: 0 vif_index: 1 Flags:
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Added new address to vif
eth1: addr: 172.20.16.199 subnet: 172.20.0.0/16 broadcast:
172.20.255.255 peer: 0.0.0.0
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Enabled vif: eth0
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Vif flags changed:
Vif[eth1] pif_index: 0 vif_index: 1 addr: 172.20.16.199 subnet:
172.20.0.0/16 broadcast: 172.20.255.255 peer: 0.0.0.0 Flags: MULTICAST
BROADCAST UNDERLYING_VIF_UP
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] New vif:
Vif[register_vif] pif_index: 0 vif_index: 2 Flags:
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] STARTING Vif[eth0]
pif_index: 0 vif_index: 0 addr: 192.168.0.199 subnet: 192.168.0.0/24
broadcast: 192.168.0.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST
UNDERLYING_VIF_UP UP IPv4 ENABLED
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] TX
IGMP_MEMBERSHIP_QUERY from 192.168.0.199 to 224.0.0.1
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Started vif: eth0
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Added new address to vif
register_vif: addr: 172.20.16.199 subnet: 172.20.16.199/32 broadcast:
172.20.16.199 peer: 0.0.0.0
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Enabled vif: eth1
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Vif flags changed:
Vif[register_vif] pif_index: 0 vif_index: 2 addr: 172.20.16.199 subnet:
172.20.16.199/32 broadcast: 172.20.16.199 peer: 0.0.0.0 Flags:
PIM_REGISTER UNDERLYING_VIF_UP
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] STARTING Vif[eth1]
pif_index: 0 vif_index: 1 addr: 172.20.16.199 subnet: 172.20.0.0/16
broadcast: 172.20.255.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST
UNDERLYING_VIF_UP UP IPv4 ENABLED
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] TX
IGMP_MEMBERSHIP_QUERY from 172.20.16.199 to 224.0.0.1
[ 2005/03/15 18:34:53 INFO xorp_igmp MLD6IGMP ] Started vif: eth1
[ 2005/03/15 18:34:53 INFO xorp_rtrmgr:2657 RTRMGR +356
module_manager.cc run ] Running module: pimsm4
(/usr/local/xorp/pim/xorp_pimsm4)
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_MEMBERSHIP_QUERY from 192.168.0.199 to 224.0.0.1 on vif eth0
[ 2005/03/15 18:34:53 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Target
"PIMSM_4" does not exist or is not enabled.
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.199 to 224.0.0.251 on vif eth0
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_MEMBERSHIP_QUERY from 172.20.16.199 to 224.0.0.1 on vif eth1
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.199 to 224.0.0.2 on vif eth0
[ 2005/03/15 18:34:53 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.2 on vif eth1
[ 2005/03/15 18:34:54 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
[ 2005/03/15 18:34:55 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
[ 2005/03/15 18:34:56 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
[ 2005/03/15 18:34:57 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.1 to 239.255.255.250 on vif eth0
[ 2005/03/15 18:34:57 WARNING xorp_rtrmgr:2657 XrlFinderTarget +406
finder_base.cc handle_finder_0_2_resolve_xrl ] Handling method for
finder/0.2/resolve_xrl failed: XrlCmdError 102 Command failed Xrl target
is not enabled.
[ 2005/03/15 18:34:58 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.251 on vif eth1
[ 2005/03/15 18:34:58 TRACE xorp_rtrmgr RTRMGR ] Startup with XRL:
>finder://PIMSM_4/pim/0.1/start_pim<
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] New vif: Vif[eth0]
pif_index: 0 vif_index: 0 addr: 192.168.0.199 subnet: 192.168.0.0/24
broadcast: 192.168.0.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST
UNDERLYING_VIF_UP
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] New vif: Vif[eth1]
pif_index: 0 vif_index: 1 addr: 172.20.16.199 subnet: 172.20.0.0/16
broadcast: 172.20.255.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST
UNDERLYING_VIF_UP
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] New vif: Vif[register_vif]
pif_index: 0 vif_index: 2 addr: 172.20.16.199 subnet: 172.20.16.199/32
broadcast: 172.20.16.199 peer: 0.0.0.0 Flags: PIM_REGISTER UNDERLYING_VIF_UP
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] Enabled vif: eth1
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] STARTING Vif[eth1]
pif_index: 0 vif_index: 1 addr: 172.20.16.199 subnet: 172.20.0.0/16
broadcast: 172.20.255.255 peer: 0.0.0.0 Flags: MULTICAST BROADCAST
UNDERLYING_VIF_UP UP IPv4 ENABLED
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] Started vif: eth1
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] Enabled vif: register_vif
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] STARTING Vif[register_vif]
pif_index: 0 vif_index: 2 addr: 172.20.16.199 subnet: 172.20.16.199/32
broadcast: 172.20.16.199 peer: 0.0.0.0 Flags: PIM_REGISTER
UNDERLYING_VIF_UP UP IPv4 ENABLED
[ 2005/03/15 18:34:59 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.13 on vif eth1
[ 2005/03/15 18:34:59 INFO xorp_pimsm4 PIM ] Started vif: register_vif
[ 2005/03/15 18:35:00 INFO xorp_rtrmgr:2657 RTRMGR +1366 task.cc
run_task ] No more tasks to run
[ 2005/03/15 18:35:00 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.13 on vif eth1
[ 2005/03/15 18:35:01 TRACE xorp_pimsm4 PIM ] TX PIM_HELLO from
172.20.16.199 to 224.0.0.13 on vif eth1
[ 2005/03/15 18:35:02 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.199 to 224.0.0.2 on vif eth0
[ 2005/03/15 18:35:02 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.2 on vif eth1
[ 2005/03/15 18:35:06 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.13 on vif eth1
[ 2005/03/15 18:35:08 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.2 on vif eth1
[ 2005/03/15 18:35:11 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.199 to 224.0.0.2 on vif eth0
[ 2005/03/15 18:35:16 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.22 to 224.0.55.55 on vif eth1
[ 2005/03/15 18:35:16 TRACE xorp_pimsm4 PIM ] Add membership for
(0.0.0.0,224.0.55.55) on vif eth1
[ 2005/03/15 18:35:19 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.22 to 224.0.55.55 on vif eth1
[ 2005/03/15 18:35:20 TRACE xorp_fea MFEA ] RX kernel signal:
message_type = 1 vif_index = 0 src = 192.168.0.2 dst = 224.0.55.55
[ 2005/03/15 18:35:20 TRACE xorp_pimsm4 PIM ] RX NOCACHE signal from
MFEA_4: vif_index = 0 src = 192.168.0.2 dst = 224.0.55.55
[ 2005/03/15 18:35:24 TRACE xorp_igmp MLD6IGMP ] TX
IGMP_MEMBERSHIP_QUERY from 192.168.0.199 to 224.0.0.1
[ 2005/03/15 18:35:24 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_MEMBERSHIP_QUERY from 192.168.0.199 to 224.0.0.1 on vif eth0
[ 2005/03/15 18:35:24 TRACE xorp_igmp MLD6IGMP ] TX
IGMP_MEMBERSHIP_QUERY from 172.20.16.199 to 224.0.0.1
[ 2005/03/15 18:35:24 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_MEMBERSHIP_QUERY from 172.20.16.199 to 224.0.0.1 on vif eth1
[ 2005/03/15 18:35:25 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.13 on vif eth1
[ 2005/03/15 18:35:25 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.2 on vif eth1
[ 2005/03/15 18:35:27 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 192.168.0.199 to 224.0.0.2 on vif eth0
[ 2005/03/15 18:35:27 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.22 to 224.0.55.55 on vif eth1
[ 2005/03/15 18:35:28 TRACE xorp_igmp MLD6IGMP ] RX
IGMP_V2_MEMBERSHIP_REPORT from 172.20.16.199 to 224.0.0.251 on vif eth1