[Xorp-users] Linux 2.6 multicast issue using PIM
Pavlin Radoslavov
pavlin@icir.org
Mon, 23 Aug 2004 10:05:28 -0700
> Bruce
> Thanks for the comment and this is why the local concern here is the kernel
> multicast functions are not really working in Linux 2.6, therefore, any
> user apps (aka PIM) wont function correctly.
>
> ...chris
Chris,
Based on my test results with a 2.6 kernel, I had no problems with
multicast forwarding, therefore to solve the problem faster I
would recommend that we try to isolate it by first looking somewhere
else.
Hence, can you do the following:
1. Make sure that you have the following options in you Linux-2.6
kernel configuration file:
CONFIG_IP_MULTICAST=y
CONFIG_IP_MROUTE=y
CONFIG_IP_PIMSM_V2=y
[those options are mentioned in xorp/pim/README]
If you don't have the above options enabled, the results are
unpredictable.
2. For consistency, please get the lastest XORP code from the
anonymous CVS repository.
3. Please answer my earlier question whether your PIM routers are
directly connected to each other (e.g., via a physical LAN), or
whether there is something between them. For example, do you have
switches, do you use some tunnels (e.g., openvpn), etc.
4. Once you start XORP PIM on two neighbor routers, please run
tcpdump on the neighboring interfaces on each router. E.g., in
your topology you have:
Host <--> Core 2 (acting as edge router) <--> Core 2 (acting as backbone
rtr) <--> Core 2 (edge rtr) <--> Host.
In that case, please run tcpdump on the interface that connects
the first edge router to the backbone router, and on the
corresponding interface of the backbone router.
In your previous email you said that each router is sending PIM
Hello messages, but those messages are not received by the other
routers. Hence, by running tcpdump can you confirm whether the
PIM Hello messages originated by the backbone router reach the
first edge router (and vice-versa). If tcpdump on the backbone
router shows that the Hello messages are sent on that interface,
but tcpdump on the first edge router does not see those Hello
messages, then the Hellos have been lost somewhere between the
routers (e.g., a switch in the middle may have filtered them, a
virtual tunnel may have been misconfigured, etc). If tcpdump on
the receiving side does see the Hellos, but PIM userland daemon
doesn't see them, then the problem is within the router itself,
and we can take additional steps to find it.
Once we have the above information, we can trace the problem
further. Otherwise, we will be just guessing...
Thanks,
Pavlin
>
> At 08:21 AM 8/23/2004, Bruce M Simpson wrote:
>
> >On Mon, Aug 23, 2004 at 02:04:14PM +0200, Arnaud Le Taillanter wrote:
> > > Just out of curiosity, why is PIM kernel support necessary for the Xorp
> > > PIM daemon to operate?
> > > I've successfully run XORP PIM on a FreeBSD box, I followed the
> > > documentation and enabled the kernel options MROUTING (fair :) and also
> > > PIM, but I don't see why Xorp PIM would need PIM support from the
> > > kernel. Xorp BGP doesn't need BGP support from the kernel for example.
> >
> >BGP lives entirely in userland; it only requires specific kernel support
> >in special circumstances (TCP-MD5).
> >
> >PIM does not live entirely in userland. Multicast forwarding functions are
> >located within the kernel.