RFR 8134989/10, java/net/MulticastSocket/TestInterfaces.java failed due to unexpected IP address

Mark Sheppard mark.sheppard at oracle.com
Fri Sep 1 14:44:05 UTC 2017


Hi
   it's  worth noting that there is diagnostic output for each of the 
test scenarios, and that for a failure scenario
the details of the network interface associated with the failure is 
displayed.

a typical failure scenario for this test is where a host has multiple 
network interfaces configured with an IPv4 address
and an unassigned IPv6 address. The unassigned IPv6 address causes 
problems in the MulticastSocket::getInterface call flow
which in turn uses NetworkInterface::getByInetAddress

this has been rectified in JDK10, afaik, by 
https://bugs.openjdk.java.net/browse/JDK-8179559

also, for the above configuration scenario, i.e. multiple network 
interfaces configured with unassigned IPv6 address, the
findInterfacewithDupAddress may not show duplicate addresses as the 
scope id will be different.
Would the ifconfig command allow two different network interfaces to be 
configured with the same IP address?
Not sure, but would expect not. Also would expect (IPv6) the scope id 
and index to be different.

NetworkConfiguration.printSystemConfiguration() for a complete 
diagnostic is a possible alternative.

regards
Mark

On 01/09/2017 14:41, Roger Riggs wrote:
> Hi Felix,
>
> Looks ok; though could be simpler to just print all the addresses of 
> all NIs.
>
> findIntefacesWithDupAddress could use streams more effectively (if its 
> worth the time to rewrite).
>
> The inetAddresses() method on NetworkInterface produces a stream of 
> InetAddress which could
> be filtered by "ia" and use anyMatch:.
>
> Maybe something like:
>
> List<NetworkInterface> nis = NetworkInterface.networkInterfaces()
>                     .filter(i -> !i.equals(ni))
>                     .filter(i -> i.inetAddresses().anyMatch(n -> 
> n.equals(ia)))
>                     .collect(Collectors.toList());
>
> $.02, Roger
>
> On 9/1/2017 3:47 AM, Felix Yang wrote:
>> Hi there,
>>
>>     please review a test patch for isolating a network configuration 
>> issue, which led to TestInterfaces failing from time to time.
>>
>> Bug:
>>
>>     https://bugs.openjdk.java.net/browse/JDK-8134989
>>
>> Webrev:
>>
>>     http://cr.openjdk.java.net/~xiaofeya/8134989/webrev.00/
>>
>> Thanks,
>>
>> Felix
>>
>



More information about the net-dev mailing list