[Xorp-users] Problems with PIM-SM

Pavlin Radoslavov pavlin at icir.org
Wed Apr 18 22:41:32 PDT 2007


> I am having trouble getting xorp to route multicast packets. I have read 
> through the archives as far back as Dec 2005, and have found an number 
> of related postings, but nothing that has helped me so far.
> 
> I have tried various configuration settings, and am currently using the 
> config suggested by Pavlin a few months ago:
> http://mailman.icsi.berkeley.edu/pipermail/xorp-users/2006-December/001579.html
> 
> Notes:
>   The only changes I have made to the config above is:
>    - the IP address of the statically configured RP to match my network.
>    - enabled pimsm4 trace options with 'set protocols pimsm4 
> traceoptions flag all disable false'
>   The group address for all tests is 225.1.1.2
>   Between each test, I issued "clear ip mroute 225.1.1.2" on the cisco 
> router.
>   I've substituted the words TestA, TestB etc in some of the output 
> below in place of the specific IP addresses involved
>   In all tests, I have verified I can ping back and forth between the 
> test machines.
>   In all tests, 'show pim mrib' shows the unicast routes, as expected.
> 
> Scenario 1:
> TestA(LISTENING) --[switch1]---  CiscoRtr(RP) ---[switch2] ---- 
> eth0:xorp:eth1 ----[switch3]--- TestB(SENDING)
> - Cisco router shows an ip mroute for (*,225.1.1.2), with no incoming 
> interfaces, and one outgoing interface (to TestA)
> - xorp pimsm4 trace output shows it receives and sends lots of PIM_HELLO 
> messages, and it sees the cisco as a neighbour (show pim nei)

What about Cisco: does it see the XORP router as a neighbor?

> - The output of 'show pim join' does NOT show anything about 225.1.1.2, 
> but does show the expected 224 groups that xorp is a member of
> - the output of 'show igmp group' does NOT show anything about 
> 225.1.1.2, but does show all the 224 groups (as above)

If TestB is not a receiver, then "show igmp group" shouldn't show
anything about 225.1.1.2. Also, the "show pim join" command
shouldn't show any (*,G) state about 225.1.1.2. Only after TestB
starts sending, then the XORP router should have a (S,G) PIM-SM
state that you should see by "show pim join": the incoming interface
for that entry should be eth1, while the outgoing interface should
be the pim_register vif. The data packets from TestB should be
encapsulated inside PIM Register and unicast to the RP.

If you don't see the (S,G) state, please make sure that the RP Set
inside XORP is fine ("show pim rps") and the RPF information toward
the RP is in place ("show pim mrib"). If they are fine, please
enable the traceoptions in the MFEA and PIM-SM and look for any
logs for UPCALL messages from the kernel: those messages should
start appearing after TestB starts transmitting.

> - Client TestA sees nothing
> 
> Scenario 2:
> TestA(SENDING) --[switch1]---  CiscoRtr(RP) ---[switch2] ---- 
> eth0:xorp:eth1 ----[switch3]--- TestB(LISTENING)
> - Cisco router shows ip mroute entry for (*,225.1.1.2), incoming null, 
> outgoing null
> - Cisco router shows ip mroute entry for (TestA, 225.1.1.2), incoming 
> TestA_Subnet, outgoing null
> - Xorp 'show igmp groups' shows "eth1         225.1.1.2       
> 0.0.0.0         TestB     223 2     E"

The "show igmp groups" output seems fine.

> - Xorp 'show pim mfc' shows 224.0.1.39, 224.0.1.40, but NOT 225.1.1.2
> - Xorp 'show pim join' shows an entry for 225.1.1.2, with upstream state 
> on eth0 'NotJoined' - I think this is a problem.

Yes, this is a problem.
Same as the previous case, please check that the "show pim rps"
lists CiscoRtr as the RP, and that "show pim mrib" shows the correct
RPF information toward the RP. Finally, double check that XORP
indeed sees Cisco as a neighbor (and vice versa).
If all this information seems fine, please send the "show pim join"
output.

Regards,
Pavlin


> - Client TestB sees nothing
> 
> Control Test 1:
> TestA(SENDING)--[switch1]--TestB(RECEIVING)
>  - Works fine
> 
> Control Test 2:
> TestA(SENDING)--[switch1]--CiscoRouter--[switch2]--TestB(RECEIVING)
>  - Works fine
> 
> It seems to me that although xorp picks up the IGMP information 
> correctly when it has the client connected to it, it doesn't get that 
> info into PIM, or at least not to the PIM neighbours.
> 
> What can I check next ?
> 
> 
> 
> 
> 
> _______________________________________________
> 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