如何用java获得一个域名的ip地址呢?提供这个功能的类叫做java.net.inetaddress.我们假设现在有这样一个域名,它用一个静态的getbyname来重新获得一个inetaddress,然后得到可以读出的ip地址.下面的代码是非常基本的命令行.
【程序编程相关:美安全专家撰写程序 iPod快速存储商业】 【推荐阅读:Google认帐:新版桌面搜索软件存在安】 【扩展信息:防恐怖分子 微软拟向警方授解密Vista】import java.net.inetaddress;
import java.net.unknownhostexception; public class nslookup { static public void main(string[] args) { try { inetaddress address = inetaddress.getbyname(args[0]); system.out.println(args[0]+" : "+address.gethostaddress()); } catch(unknownhostexception uhe) { system.err.println("unable to find: "+args[0]); } } } inetaddress也可以通过使用getaddress()来获得ip地址,但是它的返回值是一个4个字节的数组.因此尽管getaddress()在获得ip方面是有用的,但却不适于用来输出.上面的命令的输出结果看起来就是这样:
bash$ java code.nslookup www.sun.com
www.sun.com: 192.18.97.241有时一个域名会包含不止一个ip地址,比如微软的web服务器,这是为了保持负载平衡.inetaddress提供了一种可以得到一个域名的所有ip地址的方法.让我们来考虑以下代码:
import java.net.inetaddress;
... 下一页