给定像“example.com”这样的主机名,我希望使用特定的名称服务器获取其IP地址。
java.net.InetAddress已
private static InetAddress getByName(String host, InetAddress reqAddr)
看起来像我需要的,但是blooper是该方法是私有的。
https://github.com/gilt/scala-srv-dns已
def lookup(serviceName: ServiceName,
transportProtocol: TransportProtocol,
dnsSearchPaths: List[String]): Seq[ServiceRecord]
但是,再次,私人方法。
那么,我可以使用哪些lib? 您是否知道为什么上面列出的库将这些方法设为私有?
答案 0 :(得分:2)
dnsjava是我的解决方案(http://www.dnsjava.org/)
def lookup(host: String, nameServer: String): Array[String] = {
val l = new Lookup(host)
l.setResolver(new SimpleResolver(nameServer))
l.run()
if (l.getResult() == Lookup.SUCCESSFUL)
l.getAnswers().map(_.rdataToString())
else
Array.empty[String]
}