On Thu, 16 Feb 2023 17:56:58 GMT, Rich DiCroce <d...@openjdk.org> wrote:

>> src/java.base/windows/native/libnet/NetworkInterface.c line 72:
>> 
>>> 70:         return FALSE;
>>> 71:     }
>>> 72:     if (GetAnycastIpAddressTable(addrFamily, anyAddrs) != NO_ERROR) {
>> 
>> Were the anycast addresses covered by the existing code, or is this a 
>> functional change?
>
> For the IPv6 code, this should be the same as before. See getAddrsFromAdapter 
> in the original code, which enumerates the unicast addresses first and then 
> does the anycast addresses.
> 
> For IPv4, I'm not sure. The MS docs for GetIpAddrTable don't say, and I don't 
> have any systems where I could determine it experimentally.

I tried creating an anycast address using the [CreateAnycastIpAddressEntry 
API](https://learn.microsoft.com/en-us/windows/win32/api/netioapi/nf-netioapi-createanycastipaddressentry)
 and the [New-NetIPAddress Powershell 
command](https://learn.microsoft.com/en-us/powershell/module/nettcpip/new-netipaddress?view=windowsserver2022-ps),
 but I only managed to lock myself out from a VM; creating the address failed 
with ERROR_NOT_SUPPORTED, and the powershell command additionally disabled DHCP 
on the selected interface.

With that in mind I'm fine with the code in its current form. We may revisit 
the issue if and when someone figures out how to add an anycast address.

-------------

PR: https://git.openjdk.org/jdk/pull/12593

Reply via email to