[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(usagi-users 03086) Re: MLD version fallback on Linux 2.4.22



Hello,

There are a lot of bugs in 2.4.22 regarding MLDv1 and MLDv2.
I think that some of them aren't fixed in 2.4.27 yet.
The direct cause of the problem is described in
http://oss.sgi.com/archives/netdev/2003-11/msg00449.html
But there are also bugs of incorrect timeout value, which cause another
problem.

If you don't need MLDv2 at all, the easiest way is to force MLDv1 by the 
following patch.
Of cource, it isn't a right way.

-#define MLD_V1_SEEN(idev) ((idev)->mc_v1_seen && \
-                time_before(jiffies, (idev)->mc_v1_seen))
+#define MLD_V1_SEEN(idev) 1

Regards,
Takashi Hibi

> Hello,
> 
> I have one FC1 host <2.4.22+ usagi patch> and a FreeBSD 4.9 router 
> running XORP which supports only MLDv1. The router tries to do mldv1 
> membership query but never get a membership report from this host. This 
> host just keep sending MLDv2 report to ff01::16 from time to time and 
> never fall back to MLDv1.
> 
> This is the only message that the host keeps sending. <Although the icmp 
> type is not yet 143 but it should not be the point of fallback problem>
> 
> 14:03:23.397996 fe80::2e0:18ff:fea8:f2b9 > ff02::16: HBH icmp6: 
> type-#206 [hlim1]
> 
> 
> I take a look at mcast.c source code, it seems to have a portion of code 
> that detects MLDv1 presence.
> 
>          if (len == 24) {
>                  int switchback;
>                  /* MLDv1 router present */
> 
> On this host, sysctl does not support mld version force yet so I cannot 
> force it to use MLDv1 only.
> 
> Kindly suggest is there a way to make this host uses MLDv1 without 
> changing kernel version(patch is OK)??
> 
> Best regards,
> Patcharee
>