[Xorp-users] communication between IGMP and PIM

Dr Ben G Wu ben at sparkcomputing.co.uk
Thu Jun 19 09:55:30 PDT 2008


1. I got the same problem. I just found out that i should not use
224.0.0.0/4. I used 239.255.0.0/16 and my simple multicast routing
just starts working!

 my network is vlan1 ------ Rotuer ----- vlan2

2. i do not need mrib-route configured in my case. that's that mean
the multicast source will not be known then? I run 'show igmp group'
command i got these:
Interface    Group           Source          LastReported Timeout V State
eth2         239.255.1.10    0.0.0.0         192.168.2.253     227 2     E

The Source is 0.0.0.0. I will try to put mrib-route back to see if the
source ip can be listed correctly

cheers,
Ben

On Thu, Jun 19, 2008 at 4:58 PM, Pavlin Radoslavov
<pavlin at icsi.berkeley.edu> wrote:
> Jigar <jjajal at gmail.com> wrote:
>
>> Please refer following setup....:
>>
>> -- I have a setup of XORP (version 1.4 ) with PIM and IGMP enabled on all
>> PCs. Setup is as shown in figure  (PIM_config.jpg)
>> -- I am having H1 which is joined in multicast group 224.0.0.50. It is sending
>> IGMP report for that group with correct interval. This group entry can also be
>> seen on xorpsh through "show igmp group". It is connected to eth0 interface of
>> R2, so group is added for that interface only.
>> -- This means that IGMP is runing fine on my R2. But this group informations
>> should be forwarded by PIM-SM. This is not happening in my setup
>> scenario. PIM-SM router should send JOIN messages towards RP periodically for
>> particular group. I have configured R1 as RP of 224.0.0.0/4 statically.
>> -- I can see that R2 (on eth1) has recognized R1 as its RP in not_joined state.
>> -- I have configured RP as itself in R1.
>>
>> *Is there any configuration missing?*
>
> Multicast group 224.0.0.50 belongs to the link-local multicast
> address space 224.0.0.0 - 224.0.0.255 which are never forwarded by
> multicast routers.
> You should use some other multicast address outside of that range.
>
> FYI, the mrib-route entries should specify unicast prefixes that are
> to be used for the multicast reverse path forwarding check (toward
> the sender or the RP). I.e., a mrib-route entry should not be used
> to specify a multicast group range.
>
> Pavlin
>
>
>> Here I am providing XORP configuration file on *R1 and R2 *for your reference.
>> config.boot file-------> ON R1
>> .................start.................
>>
>> interfaces {
>>     restore-original-config-on-shutdown: false
>>     interface eth0 {
>>     description: "data interface"
>>     disable: false
>>     default-system-config     }
>> }
>>
>> fea {
>>     targetname: "fea"
>>     unicast-forwarding4 {
>>     disable: false
>>     forwarding-entries {
>>         retain-on-startup: false
>>         retain-on-shutdown:    false
>>     }
>>     }  }
>>
>> protocols {
>>     static {
>>     targetname: "static_routes"
>>     disable: false
>>    /*    mrib-route 224.0.0.0/8 {
>>         next-hop: 10.100.3.226
>>         metric: 1         }*/
>>     }
>> }
>>
>> policy {
>>     /* Describe connected routes for redistribution */
>>     policy-statement connected {
>>     term export {
>>         from {
>>         protocol: "connected"
>>         }
>>     }
>>     }
>> }
>>
>> policy {
>>     /* Describe static routes for redistribution */
>>     policy-statement static {
>>     term export {
>>         from {
>>         protocol: "static"
>>         }
>>     }
>>     }
>> }
>>
>> plumbing {
>>     mfea4 {
>>     disable: false
>>
>>     interface eth0 {
>>         vif eth0 {
>>         disable: false
>>         }
>>     }
>>
>>     interface register_vif {
>>         vif register_vif {
>>         /* Note: this vif should be always enabled */
>>         disable: false
>>         }
>>     }
>>
>>     traceoptions {
>>         flag all {
>>         disable: false
>>         }
>>     }
>>     }
>> }
>>
>> protocols {
>>     igmp {
>>     targetname: "IGMP"
>>     disable: false
>>     interface eth0 {
>>         vif eth0 {
>>         disable: false
>>         version: 3
>>         /* enable-ip-router-alert-option-check: false */
>>         query-interval: 15
>>         /* query-last-member-interval: 1 */
>>         /* query-response-interval: 10 */
>>         /* robust-count: 2 */
>>         }
>>     }
>>      traceoptions {
>>         flag all {
>>         disable: false
>>         }
>>     }
>>     }
>> }
>>
>> protocols {
>>     pimsm4 {
>>     targetname: "PIMSM_4"
>>     disable: false
>>     interface eth0 {
>>         vif eth0 {
>>         disable: false
>>         /* enable-ip-router-alert-option-check: false */
>>         /* dr-priority: 1 */
>>         hello-period: 10
>>         /* hello-triggered-delay: 5 */
>>         /* alternative-subnet 10.40.0.0/16 */
>>         }
>>     }
>>      interface register_vif {
>>         vif register_vif {
>>         /* Note: this vif should be always enabled */
>>         disable: false
>>         }
>>     }
>>
>>     static-rps {
>>         rp 10.100.3.225 {
>>         group-prefix 224.0.0.0/4 {
>>             /* rp-priority: 192 */
>>             /* hash-mask-len: 30 */
>>         }
>>         }
>>     }     switch-to-spt-threshold {
>>         /* approx. 1K bytes/s (10Kbps) threshold */
>>         disable: false
>>         interval: 100
>>         bytes: 102400
>>     }
>>
>>     traceoptions {
>>         flag all {
>>         disable: false
>>         }
>>     }
>>     }
>> }
>>
>> /*
>>  * Note: fib2mrib is needed for multicast only if the unicast protocols
>>  * don't populate the MRIB with multicast-specific routes.
>>  */
>> protocols {
>>     fib2mrib {
>>     disable: false
>>     }
>> }
>>
>> .................end.................
>>
>>
>> config.boot file-------> ON R2
>> .................start.................
>> /* $XORP: xorp/rtrmgr/config.boot.sample,v 1.46 2007/03/12 10:16:05 atanu Exp
>> $ */
>>
>>
>> interfaces {
>>     restore-original-config-on-shutdown: false
>>     interface eth0 {
>>     description: "data interface"
>>     disable: false
>>     default-system-config
>>     }
>>
>>     interface eth1 {
>>     description: "data interface"
>>     disable: false
>>     default-system-config
>>     }
>> }
>>
>> fea {
>>     targetname: "fea"
>>     unicast-forwarding4 {
>>     disable: false
>>     forwarding-entries {
>>         retain-on-startup: false
>>         retain-on-shutdown:    false
>>     }
>>     }  }
>> /*
>> protocols {
>>     ip {
>>     interface eth0 {
>>         vif eth0 {
>>             address 192.168.1.10 {
>>                 disable: false
>>                 }
>>             }
>>         }
>>
>>      interface eth1 {
>>         vif eth1 {
>>             address 10.100.3.226 {
>>                 disable: false
>>                 }
>>             }
>>         }
>>     }
>> }
>>
>> */
>>
>>
>> protocols {
>>     static {
>>     targetname: "static_routes"
>>     disable: false
>> /*
>>     mrib-route 224.0.0.0/4 {
>>         next-hop: 192.168.1.10
>>         metric: 1
>>     }
>>
>>     mrib-route 10.100.3.0/8 {
>>         next-hop: 10.100.3.1
>>         metric: 1
>>     }
>> */    }
>>
>> }
>>
>> policy {
>>     policy-statement connected {
>>     term export {
>>         from {
>>         protocol: "connected"
>>         }
>>     }
>>     }
>> }
>>
>>
>> policy {
>>     policy-statement static {
>>     term export {
>>         from {
>>         protocol: "static"
>>         }
>>     }
>>     }
>> }
>>
>>
>>
>>
>> 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 {
>>     targetname: "IGMP"
>>     disable: false
>>     interface eth0 {
>>         vif eth0 {
>>         disable: false
>>         version: 3
>>         /* enable-ip-router-alert-option-check: false */
>>         query-interval: 15
>>         /* query-last-member-interval: 1 */
>>         /* query-response-interval: 10 */
>>         /* robust-count: 2 */
>>         }
>>     }
>>
>>     interface eth1 {
>>         vif eth1 {
>>         disable: false
>>         version: 3
>>         /* enable-ip-router-alert-option-check: false */
>>         query-interval: 15
>>         /* query-last-member-interval: 1 */
>>         /* query-response-interval: 10 */
>>         /* robust-count: 2 */
>>         }
>>     }     traceoptions {
>>         flag all {
>>         disable: false
>>         }
>>     }
>>     }
>> }
>>
>> protocols {
>>     pimsm4 {
>>     targetname: "PIMSM_4"
>>     disable: false
>>     interface eth0 {
>>         vif eth0 {
>>         disable: false
>>         /* enable-ip-router-alert-option-check: false */
>>         dr-priority: 200
>>         hello-period: 10
>>         /* hello-triggered-delay: 5 */
>>         /* alternative-subnet 10.40.0.0/16 */
>>         }
>>     }
>>
>>     interface eth1 {
>>         vif eth1 {
>>         disable: false
>>         /* enable-ip-router-alert-option-check: false */
>>         dr-priority: 200
>>         hello-period: 10
>>         /* hello-triggered-delay: 5 */
>>         /* alternative-subnet 10.40.0.0/16 */
>>         }
>>     }
>>
>>     interface register_vif {
>>         vif register_vif {
>>         /* Note: this vif should be always enabled */
>>         disable: false
>>         }
>>     }
>>
>>     static-rps {
>>
>>             rp 10.100.3.225 {
>>         group-prefix 224.0.0.0/4 {
>>         }
>>         }
>>          }
>>
>>     switch-to-spt-threshold {
>>         /* approx. 1K bytes/s (10Kbps) threshold */
>>         disable: false
>>         interval: 100
>>         bytes: 102400
>>     }
>>
>>     traceoptions {
>>         flag all {
>>         disable: false
>>         }
>>     }
>>     }
>> }
>>
>> /*
>>  * Note: fib2mrib is needed for multicast only if the unicast protocols
>>  * don't populate the MRIB with multicast-specific routes.
>>  */
>> protocols {
>>     fib2mrib {
>>     disable: true
>>     }
>> }
>> .................end.................
>> _______________________________________________
>> Xorp-users mailing list
>> Xorp-users at xorp.org
>> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>
> _______________________________________________
> Xorp-users mailing list
> Xorp-users at xorp.org
> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>



-- 
Dr. Ben G Wu, Ph.D, B. Eng, M.BCS
5 Dargate, Shrewsbury, Shropshire, SY3 9QE, UK
T: +44(0)1743 290009
M: +44(0) 7980546757
F: +44(0)7092 861166
W: http://www.sparkcomputing.co.uk

Website & Software development



More information about the Xorp-users mailing list