I want to connect to a link-local IPv6 service represented by an NsdServiceInfo
. The service is announced in the LAN via zeroconf. Therefore I need the scope ID in addition to the IP (i.e. to create "<IPv6>%<scope ID>"
). However, I could not find a way to retrieve the scope ID (i.e. the network interface through which the service was discovered) out of the NsdServiceInfo
. For now, as an ugly workaround, I iterate over all network interfaces and check reachability of the server IP using NsdServiceInfo#getHost()#isReachable()
.
BTW NsdServiceInfo#getHost()#getScopeId()
and NsdServiceInfo#getHost()#getScopedInterface()
do always return 0 and null
respectively.
Am I missing something here or is there actually no straight forward solution to this?