[Xorp-users] Problems with multicast routing on Linux

Pavlin Radoslavov pavlin at icir.org
Mon May 21 20:24:10 PDT 2007


Przemyslaw Wegrzyn <czajnik at czajsoft.pl> wrote:

> Hi!
> 
> I need a very simple multicast routing setup. I'm totally new to all
> multicast and IGMP, and Xorp actually, so forgive me if I'm asking silly
> questions.
> 
> I have one double-homed router, one local network (192.168.1.x) contains
> a multicast server, streaming to 3 multicast groups.  Another local
> network (10.1.1.x), contains a stream receiver which selectively
> attaches to one of these 3 groups. I don't need any PIM functionality,
> just a basic IGMP.

If you want multicast forwarding between two segments, you MUST use
a multicast routing protocol like PIM-SM.
The purpose of IGMP is to inform the multicast routing protocol
about directly connected receivers. Then it is up to the multicast
routing protocol to modify the multicast forwarding entries in the
kernel.

BTW, it is perfectly legal to run single PIM-SM instance on the host
that is between the server and the receiver. Though, that host
should be configured as Cand-RP so eventually it will become the RP.

Regards,
Pavlin

> Router IPs: 192.168.1.254 on eth1, 10.1.1.254 on eth0
> Streamer IP: 192.168.1.2
> Receiver's IP: 10.1.1.2
> 
> There are 3 groups: 239.252.100.8, 239.252.200.10, and 239.252.200.11
> 
> At this point I can see IGMP dialogue that looks valid, yet there are no
> multicast routes being set up (e.g. join/leave for 239.252.200.10 below).
> 
> [ 2007/05/21 18:36:16 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_V2_MEMBERSHIP_REPORT from 10.1.1.2 to 239.252.200.10 on vif eth0
> [ 2007/05/21 18:36:16 TRACE xorp_igmp MLD6IGMP ] Notify routing add
> membership for (0.0.0.0, 239.252.200.10) on vif eth0
> [ 2007/05/21 18:36:17 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_V2_MEMBERSHIP_REPORT from 192.168.1.254 to 224.0.0.2 on vif eth1
> [ 2007/05/21 18:36:18 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_V2_MEMBERSHIP_REPORT from 10.1.1.254 to 224.0.0.22 on vif eth0
> [ 2007/05/21 18:36:20 TRACE xorp_fea MFEA ] RX kernel signal:
> message_type = 1 vif_index = 1 src = 192.168.1.1 dst = 239.252.200.11
> [ 2007/05/21 18:36:20 TRACE xorp_fea MFEA ] RX kernel signal:
> message_type = 1 vif_index = 1 src = 192.168.1.1 dst = 239.252.200.10
> [ 2007/05/21 18:36:20 TRACE xorp_fea MFEA ] RX kernel signal:
> message_type = 1 vif_index = 1 src = 192.168.1.1 dst = 239.252.10.8
> [ 2007/05/21 18:36:22 TRACE xorp_igmp MLD6IGMP ] RX IGMP_V2_LEAVE_GROUP
> from 10.1.1.2 to 224.0.0.2 on vif eth0
> [ 2007/05/21 18:36:22 TRACE xorp_igmp MLD6IGMP ] TX
> IGMP_MEMBERSHIP_QUERY from 10.1.1.254 to 239.252.200.10
> [ 2007/05/21 18:36:22 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_MEMBERSHIP_QUERY from 10.1.1.254 to 239.252.200.10 on vif eth0
> [ 2007/05/21 18:36:23 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_V2_MEMBERSHIP_REPORT from 10.1.1.2 to 239.252.10.8 on vif eth0
> [ 2007/05/21 18:36:23 TRACE xorp_igmp MLD6IGMP ] TX
> IGMP_MEMBERSHIP_QUERY from 10.1.1.254 to 239.252.200.10
> [ 2007/05/21 18:36:23 TRACE xorp_igmp MLD6IGMP ] RX
> IGMP_MEMBERSHIP_QUERY from 10.1.1.254 to 239.252.200.10 on vif eth0
> [ 2007/05/21 18:36:24 TRACE xorp_igmp MLD6IGMP ] Notify routing delete
> membership for (0.0.0.0, 239.252.200.10) on vif eth0
> 
> I'd expect that "Notify routing add membership for (0.0.0.0,
> 239.252.200.10) on vif eth0" is a log of creating a multicast route,
> however multicast route table (as shown by 'ip mroute') is empty all the
> time.
> 
> Please note that if I run pimd on that host, it works! Kernel version is
> 2.6.16.
> 
> Any help appreciated. Below is my config.
> 
> interfaces {
>     interface eth0 {
>     description: "Client-side"
>     default-system-config
>     }
>    
>     interface eth1 {
>     description: "Server-side"
>     default-system-config
>     }
> }
> 
> fea {
>     unicast-forwarding4 {
>     forwarding-entries {
>         retain-on-startup: false
>         retain-on-shutdown:    false
>     }
>     }
> }
> 
> plumbing {
>     mfea4 {
>     disable: false
>     interface eth0 {
>         vif eth0 {
>         disable: false
>         }
>     }
>     interface eth1 {
>         vif eth1 {
>         disable: false
>         }
>     }
>     interface register_vif {
>         vif register_vif {
>         /* Note: this vif should be always enabled */
>         disable: false
>         }
>     }
>     traceoptions {
>         flag all {
>         disable: false
>         }
>     }
>     }
> }
> 
> protocols {
>     igmp {
>     disable: false
>     interface eth0 {
>         vif eth0 {
>         disable: false
>         version: 2
>         }
>     }
>     interface eth1 {
>         vif eth1 {
>         disable: false
>         version: 2
>         }
>     }
>     traceoptions {
>         flag all {
>         disable: false
>         }
>     }
>     }
> }
> 
> protocols {
>     fib2mrib {
>     disable: false
>     }
> }
> 
> 
> Best Regards,
> Przemyslaw
> 
> 
> _______________________________________________
> Xorp-users mailing list
> Xorp-users at xorp.org
> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users



More information about the Xorp-users mailing list