Java获取IP地址和域名:
2016-10-11 22:50
691 查看
获取IP地址和域名:
分析:
(1)getLocalIP方法获得本机的IP地址,首先通过InetAddress的getLocalHost静态方法获得本机的网络地址信息,然后通过getHostAddress实例方法获得该网络地址的IP地址;getLocalHostName方法获得本机的机器名,调用了getHostName方法。
(2)getIPByName方法根据域名获得主机的IP地址,使用了InetAddress的getByName静态方法;getAllIPByName方法根据域名获得主机的所有IP地址,使用了InetAddress的getAllByName方法。
本实例实现获取IP地址和域名的功能,能够获取本机的IP地址,机器名,以及远程服务器的IP地址。 关键技术: 获取IP地址和域名的关键技术: ---通过java.net.InetAddress的getLocalHost静态方法可以获得本机的网络地址信息,也是一个InetAddress对象 ---通过InetAddress的getHostAddress的实例方法可以获取该网络地址的IP信息。 ----通过InetAddress的getHostName的实例方法可以获得该网络地址的IP信息。 ----InetAddress的getByName静态方法根据域名获得该域名代表的主机的网络地址信息,返回的是一个InetAddress对象 ---当一个主机配置多个网络地址时,可以通过InetAddress的getAllByName静态方法根据域名获得该域名代表的主机的所有网络地址信息,返回的是一组InetAddress对象。 import java.net.InetAddress; import java.net.UnknownHostException; public class GetIPAddress { //获取本机的IP地址 public static String getLocalIP() throws UnknownHostException { InetAddress addr=InetAddress.getLocalHost(); return addr.getHostAddress(); } //获取本机的机器名 public static String getLocalHostName() throws UnknownHostException{ InetAddress addr=InetAddress.getLocalHost(); return addr.getHostName(); } //根据域名好的本机的IP地址 public static String getIPByName(String hostName) throws UnknownHostException{ InetAddress addr=InetAddress.getByName(hostName); return addr.getHostAddress(); } //根据域名获得主机所有的IP地址 public static String[] getAllIPByName(String hostName) throws UnknownHostException{ InetAddress[] addrs=InetAddress.getAllByName(hostName); String[] ips=new String[addrs.length]; for (int i = 0; i < ips.length; i++) { ips[i]=addrs[i].getHostAddress(); } return ips; } public static void main(String[] args) throws UnknownHostException { //获取本机的IP地址和机器名 System.out.println("本机IP Local IP"+GetIPAddress.getLocalIP()); System.out.println("本地主机名 Local HostName"+GetIPAddress.getLocalHostName()); //获得百度的IP地址 String hostName="www.baidu.com"; System.out.println("域名为"+hostName+"的主机的IP地址"); System.out.println(GetIPAddress.getIPByName(hostName)); System.out.println("域名为:"+hostName+"的主机饿所有IP地址"); String[] ips=GetIPAddress.getAllIPByName(hostName); for (int i = 0; i < ips.length; i++) { System.out.println(ips[i]); } } }
分析:
(1)getLocalIP方法获得本机的IP地址,首先通过InetAddress的getLocalHost静态方法获得本机的网络地址信息,然后通过getHostAddress实例方法获得该网络地址的IP地址;getLocalHostName方法获得本机的机器名,调用了getHostName方法。
(2)getIPByName方法根据域名获得主机的IP地址,使用了InetAddress的getByName静态方法;getAllIPByName方法根据域名获得主机的所有IP地址,使用了InetAddress的getAllByName方法。
相关文章推荐
- Java学习笔记之网络编程基础-根据域名自动到DNS上获取IP地址
- java网络编程-获取域名和ip地址
- 一、java根据域名获取ip地址
- Java InetAddress根据域名获取该域名对应的IP地址及本地IP地址
- Java学习笔记----网络编程(一):获取IP地址和域名
- java网络编程根据域名获取ip地址,URL
- [Java] 通过域名获取IP地址的方法与作用
- php 关于如何获取域名或者IP地址的$_SERVER['']
- 实现获取主机名称,IP地址的类 (java)
- 实现获取主机名称,IP地址,MAC地址的类 (java)
- Java获取请求客户端的真实IP地址
- Java获取请求客户端的真实IP地址
- JAVA IP地址相关:用Java来获取访问者真实的IP地址,IP地址转化成long型数的算法
- 如何在.NET中获取电脑名,IP地址, 用户名, 计算机所在域名
- Java获取IP地址:request.getRemoteAddr()警惕
- 用Java代码在wicket页面获取客户端IP地址
- 用Java来获取访问者真实的IP地址
- 如何在.net中获取电脑名称,IP地址,用户名,计算机所在域名
- Java获取客户端真实IP地址的两种方法
- 获取IP地址 域名解释