[Xorp-users] IGMP and PIM-SSM problem

Pavlin Radoslavov pavlin at ICSI.Berkeley.EDU
Mon Oct 13 10:53:51 PDT 2008


Jigar <jjajal at gmail.com> wrote:

> Hi All,
> I have two PCs with Red Hat Linux installed in them. Both have two
> NICs. XORP-1.4 is running in PC-A with IGMPv3 and PIM-SM enabled. PC-A and
> PC-B are connected to each other through both interfaces.
> 
> PC-A eth0: 10.100.3.107/24
> PC-A eth1: 192.168.14.212/24
> PC-B eth1: 10.100.3.220/24
> PC-B eth0: 192.168.14.211/24
> 
> PC-A eth0 and PC-B eth1 are directly connected to each other. Similarly, PC-A
> eth1 and PC-B eth0 are directly connected to each other.
> 
>     Here, 192.168.14.211 is configured as static RP in PC-A. I am sending IGMP
> join report for 232.11.22.33 group and 192.168.14.14 source with INCLUDE mode
> from 10.100.3.220. I have sent PIM hello message from 192.168.14.211. As
> IGMPv3 and PIM-SM are runing on PC-A, it should convert that report into PIM
> JOIN(S,G) message and send it towards RP(192.168.14.211). But no message was
> sent by PC-A on its eth1. Tell me where I went wrong?

The sender 192.168.14.14 is directly connected to both PC-A and
PC-B. Hence, the PIM-SM router connected to it will NOT
send PIM-SM Join message toward it. PIM-SM Join messages are only
sent to PIM-SM routers toward the sender (or the RP), and only if
the sender (or the RP) is not directly connected.

Pavlin

232.11.22.33    192.168.14.14   192.168.14.211  SG DirectlyConnectedS
    Upstream interface (S):    eth1
    Upstream interface (RP):   eth1
    Upstream MRIB next hop (RP): 192.168.14.211
    Upstream MRIB next hop (S):  UNKNOWN
    *Upstream RPF'(S,G):        UNKNOWN               (I have doubt in
                                  this. How can I configure RPF'(S,G)?)*
    Upstream state:            Joined

> 
>     I have copied my configuration file and condition of PC-A when I sent the
> IGMP report.
> *
> XORP Configuration file (On PC-A):*
> 
> 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 {
>     unicast-forwarding4 {
>         disable: false
>         forwarding-entries {
>             retain-on-startup: false
>             retain-on-shutdown: false
>         }
>     }
> }
> 
> 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 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: 3
>             }
>         }
>         interface eth1 {
>             vif eth1 {
>                 disable: false
>                  version: 3
>             }
>         }
>         traceoptions {
>             flag all {
>                 disable: false
>             }
>         }
>     }
> }
> 
> protocols {
>  pimsm4 {
>         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
>             }
>         }
> 
>     }
> }
> 
> /*
>  * Note: fib2mrib is needed for multicast only if the unicast protocols
>  * don't populate the MRIB with multicast-specific routes.
>  */
> protocols {
>     fib2mrib {
>         disable: false
>     }
> }
> 
> *I have made 192.168.14.211 as static RP from configuration mode of xorpsh.
> Here is the command: set protocols pimsm4 static-rps rp 192.168.14.211
> group-prefix 224.0.0.0/4*
> *then commit.*
> 
> *XORPSH Console when I sent IGMP report:*
> root at localhost.localdomain> show pim join all
> Group           Source          RP              Flags
> 224.0.0.0       192.168.14.211  192.168.14.211  RP
>     Upstream interface (RP):   eth1
>     Upstream MRIB next hop (RP): 192.168.14.211
>     Upstream state:            NotJoined
>     Join timer:                -1
>     Joins RP:                  ...
>     Join state:                ...
>     Prune state:               ...
>     Prune pending state:       ...
>     Could assert WC:           ...
>     I am DR:                   OOO
>     Immediate olist RP:        ...
>     Inherited olist SG:        ...
>     Inherited olist SG_RPT:    ...
> 232.11.22.33    192.168.14.14   192.168.14.211  SG DirectlyConnectedS
>     Upstream interface (S):    eth1
>     Upstream interface (RP):   eth1
>     Upstream MRIB next hop (RP): 192.168.14.211
>     Upstream MRIB next hop (S):  UNKNOWN
>     *Upstream RPF'(S,G):        UNKNOWN               (I have doubt in
> this. How can I configure RPF'(S,G)?)*
>     Upstream state:            Joined
>     Register state:            RegisterNoinfo RegisterNotCouldRegister
>     Join timer:                1
>     KAT(S,G) running:          false
>     Local receiver include WC: ...
>     Local receiver include SG: O..
>     Local receiver exclude SG: ...
>     Joins RP:                  ...
>     Joins WC:                  ...
>     Joins SG:                  ...
>     Join state:                ...
>     Prune state:               ...
>     Prune pending state:       ...
>     I am assert winner state:  ...
>     I am assert loser state:   ...
>     Assert winner WC:          ...
>     Assert winner SG:          ...
>     Assert lost WC:            ...
>     Assert lost SG:            ...
>     Assert lost SG_RPT:        ...
>     Assert tracking SG:        OO.
>     Could assert WC:           ...
>     Could assert SG:           ...
>     I am DR:                   OOO
>     Immediate olist RP:        ...
>     Immediate olist WC:        ...
>     Immediate olist SG:        O..
>     Inherited olist SG:        O..
>     Inherited olist SG_RPT:    ...
>     PIM include WC:            ...
>     PIM include SG:            O..
>     PIM exclude SG:            ...
> 
> _______________________________________________
> 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