Loading

Java获取网络IP

Java获取获取网络IP,浅尝辄止咯~

 1 import java.net.InetAddress;
 2 import java.net.UnknownHostException;
 3 
 4 /**
 5  * 获取网络IP
 6  * 1、获取本地的IP地址
 7  * 2、获取本机的服务器名称
 8  * 3、获取远程服务器的主机IP地址
 9  * 4、获取远程服务器的所有主机IP
10  *
11  * 网络编程:
12  * InetAddress 是用来封装IP地址相关信息的类
13  *   getLocalHost()     为本地主机创建IP对象
14  *   getByName(host)    根据域名获取服务器主机地址对象
15  *   getAllByName(host) 为指定的一组同名的主机创建一个InetAddress对象数组
16  *
17  * Created by dsp on 2/25/15.
18  */
19 public class InternetInfo {
20 
21     /*
22      * 获取本地主机IP地址
23      */
24     public static void getLocalIP() {
25         // 创建本地主机IP地址对象
26         try {
27             InetAddress addr = InetAddress.getLocalHost();
28             String hostAddr = addr.getHostAddress();        // 获取IP地址
29             String hostName = addr.getHostName();           // 获取本地机器名
30             System.out.println("本地IP地址:" + hostAddr);
31             System.out.println("本地的机器名称:" + hostName);
32         } catch (UnknownHostException e) {
33             e.printStackTrace();
34         }
35     }
36 
37     /**
38      * 根据域名获取主机服务器的IP
39      * @param hostName  域名
40      */
41     public static void getIPByName(String hostName) {
42         try {
43             // 根据域名创建主机地址对象
44             InetAddress addr = InetAddress.getByName(hostName);
45             // 获取主机IP
46             String hostAddr = addr.getHostAddress();
47             System.out.println("域名为:" + hostName + "的主机IP地址:" + hostAddr);
48         } catch (UnknownHostException e) {
49             e.printStackTrace();
50         }
51     }
52 
53     /**
54      * 根据域名获得主机所有的IP地址
55      * @param hostName 域名
56      */
57     public static void getAllIPByName(String hostName) {
58         try {
59             InetAddress[] addrs = InetAddress.getAllByName(hostName);
60             String[] ips = new String[addrs.length];
61             System.out.println("域名为:" + hostName + "的主机所有的IP地址为:");
62             for(int i = 0; i < addrs.length; ++i) {
63                 ips[i] = addrs[i].getHostAddress();
64                 System.out.println(ips[i]);
65             }
66         } catch (UnknownHostException e) {
67             e.printStackTrace();
68         }
69     }
70 
71     // 测试
72     public static void main(String[] args) {
73         String hostName = "www.baidu.com";
74         getLocalIP();
75         getIPByName(hostName);
76         getAllIPByName(hostName);
77     }
78 
79 }

^_^

posted @ 2015-03-07 21:16  dai.sp  阅读(3442)  评论(0编辑  收藏  举报