java.net.InetAddress类是java对IP地址的高层表示。一般来讲,它包括一个主机名和一个IP地址。
通过主机名获取IP地址
InetAddress address1=InetAddress.getByName("www.baidu.com");
InetAddress address2=InetAddress.getByName("183.232.231.172");
String hostName2=address2.getHostName();//hostName=www.baidu.com
InetAddress me=InetAddress.getLocalHost();//尝试连接DNS服务获得本机的主机名和IP,若得不到则为localhost/127.0.0.1
这个方法会建立与本地DNS服务器的连接,查找地址或主机名并缓存,若设备中已有缓存则不必再建立连接。若查询不到对应主机名的IP地址,则会抛出UnknownHostException异常。
注意:DNS查询开销较大。
网友评论