在Java中,通过使用InetAddress类,将主机名解析为IP地址相当容易,就像这样:
InetAddress address = InetAddress.getByName("www.example.com");
但是这种方法使用的是正在运行系统所使用的DNS服务器。
是否有任何方法可以指定用于解析的DNS服务器?
如果您使用 Sun Java,您可以使用以下代码:
//Override system DNS setting with Google free DNS server
System.setProperty("sun.net.spi.nameservice.nameservers", "8.8.8.8");
System.setProperty("sun.net.spi.nameservice.provider.1", "dns,sun");
查看此博客文章:如何使用Java系统属性设置自定义DNS服务器 了解更多详情。