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 }

^_^

时间: 2024-09-30 08:28:40

Java获取网络IP的相关文章

java获取客户端IP地址和MAC地址

最近项目中要获得客户端的mac地址.服务端是移植的centos系统,arm架构的盒子.客户端是手机和移动设备.(其它场景应该也是类似的) 首先要获得ip地址: 根据客户端的http请求,利用request.getRemoteAddr()获取客户端Ip地址.在局域网内getRemoteAddr()和getRemoteHost()获得的结果相同.request.getRemoteAddr()是获得客户端的ip地址 .getRemoteHost()是获得客户端的主机名 .在有些场景中,可能有Squid

Java获取访问者Ip并限制Ip访问页面

原文链接:https://www.zjhuiwan.cn/info/20200330/4006602464505049.html 最近遇到一个需求,一个只能内网访问的网站,需要限制ip访问.就是网站内的部分文章只有白名单内的ip才能打开.因为是静态化的网站,所有文章都是静态html页面.所以首先想到的就是直接js获取访问者ip然后再判断是否在白名单内,不在白名单内就到没有权限页面. 但是JS获取内网Ip还是比较麻烦的,查到几个方法最后试了都不行. 记录下查到的几个方法和最后实现的方法. JS获取

关于java获取本地ip的几种方法

关于java获取本地ip的几种方法1.获取本地ip的方法 System.out.println(InetAddress.getLocalHost().getHostAddress()); 2.域名解析ip的方法 System.out.println(InetAddress.getByName("www.sina.com.cn")); 3.获取本地出口ip的方法(局域网NAT或本地找交换机出口ip的方法) 建立通讯TCP,telnet,mina通讯等. Socket client = n

java获取客户端IP和服务器IP

一.Java获取服务器IP(转自:https://www.cnblogs.com/george93/p/6306579.html) //方法一,也是最简单的一种. String SERVER_IP = InetAddress.getLocalHost().getHostAdress().toString(); //方法二: /** * 获取服务器IP地址 * @return */ @SuppressWarnings("unchecked") public static String g

Java获取用户ip

Java 如何获取客户端IP呢? 下面是我总结的几种方法: /** * 获取客户端ip地址(可以穿透代理) * * @param request * @return */ public static String getRemoteAddr(HttpServletRequest request) { String ip = request.getHeader("X-Forwarded-For"); if (ip == null || ip.length() == 0 || "

java 获取访问者ip和mac地址

获取访问者ip,代码: <% String sip=""; try{ sip = (String)request.getRemoteAddr(); }catch(Exception e){ } %> 获取访问者mac地址,法是用UDP协议来发送查询mac指令然后返回值中解析mac.代码 <% String smac = ""; String sip = request.getHeader("x-forwarded-for");

Java获取电脑IP、MAC、各种版本

Java代码获取电脑IP.MAC.各种版本 package com.rapoo.middle.action; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.net.InetAddress; import java.net.NetworkInterface; import java.util.ArrayList; import java

Java获取系统IP地址

在一个项目中如果你想获取系统的ip地址那么可能许多同学在想那是多么容易,但是如果在多种操作系统貌似就不那么简单了,下面看看怎么获取系统的ip地址的. package easyway.tbs.commons; import java.net.InetAddress; import java.net.NetworkInterface; import java.net.SocketException; import java.net.UnknownHostException; import java.

JAVA获取公网ip

在ipv4地址稀缺的今天,分配到公网ip几乎是不可能的,但是我拨号之后的ip竟然是公网IP. 将自己的电脑作为服务器·,做点好玩的程序,就成为了可能. 由于运营商的ip是动态分配的公网ip的所以就需要做一个动态解析. 但是又没有服务器,应该怎么办呢? 思路是首先服务端获取公网ip,将IP加密后作为文章发布到莫个知名论坛上.客户端通过查询这篇文章,并解密来获取ip 这样就可以实现动态解析了 由于电脑还加了个路由器,所以不能直接获取公网ip,此时就需要借助第三方网站了. 百度搜索ip会出现 通过分析