我正在尝试查找与已注册到特定网络接口的已解析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?
}
}
有谁知道如何找出已解决的hostname
的哪个IP地址属于已解决的ifIndex
?
非常感谢, Mattijs