我正在尝试查找与注册到特定网络接口的已解析 Bonjour 服务匹配的地址。
DNSSD 为我提供hostname
了服务的 和 网络接口索引:ifIndex
. 如果主机有多个网络接口,我必须找出哪个网络接口属于ifIndex
该服务注册到的(假设服务ifIndex
不是 0 或 -1)。
public void serviceResolved(DNSSDService resolver, int flags, int ifIndex, String fullName, String hostName, int port, TXTRecord txtRecord) {
InetAddress[] addresses = null;
try {
addresses = InetAddress.getAllByName(hostName);
} catch (UnknownHostException e) {}
for (InetAddress address : addresses) {
//How do I know what the appropriate address is?
}
}
有谁知道如何找出已解决的IP地址hostname
属于已解决的ifIndex
?
非常感谢, 马蒂斯