IPv6 multicast binding (Bugs: JDK-8210493 JDK-8215294)

Andre Naujoks nautsch2 at gmail.com
Thu May 2 09:33:31 UTC 2019


Am 02.05.19 um 10:25 schrieb Alan Bateman:
> On 02/05/2019 08:44, Andre Naujoks wrote:
>> Hello all.
>>
>> I just noticed, that the fix from Bug JDK-8210493 was reverted for Java
>> 12. With a new bug JDK-8215294 taking over the issue.
> Yes, it caused problems so had to be reverted. In addition to
> JDK-8215294 there is also JDK-8216417 which we expect to set the scopeID
> when binding a TCP socket to an IPv6 link-local address.
> 
>>
>> Just to let you know, the issue is not linux specific (as the new bug
>> states). A test on a windows machine resulted in the same behavior.
> The portability recommendation in the javadoc is to bind to the wildcard
> address. Yes, you might have issues on several platforms when trying to
> bind to an IPv6 multicast address when the scopeID is not set.
> (If I recall correctly, the original issue that Hendrik brought up here
> was binding to the multicast address to avoid interference on Linux. We
> thought we had that addressed with IP_MULTICAST_ALL but it turns not to
> be effective with IPv6 sockets. I believe there is a patch for that or a
> proposal to introduce an equivalent IPV6_MULTICAST_ALL).

Yes, I wrote that patch. It is part of Linux 4.20 [1]. It should be a
viable workaround for Java on Linux from that version onward. It just
takes a while until the fix arrives in distributions (I am on Debian
unstable and not yet on a fixed kernel-version.).

I just wanted to notify you, that the whole issue with binding to a
multicast address is not Linux specific.

We are currently trying to reproduce the original issue with the
reception of all multicast traffic on windows and will get back to you
about that.

Andre

[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=15033f0457dca569b284bef0c8d3ad55fb37eacb

> 
> -Alan.



More information about the net-dev mailing list