【Java获取ip地址的几种方法】教程文章相关的互联网学习教程文章

用java的程序得到本机的ip地址

我们一般查看ip地址都是在命令行中输入ipconfig。原来在java的jdk中也提供了获取本机ip地址的方法.而且得到ip地址就一句话。源码如下:package com.evan.server;import java.net.InetAddress; import java.net.UnknownHostException;public class HelloWebService {public static void main(String[] args) throws UnknownHostException {//192.168.1.105System.out.println(InetAddress.getLocalHost().getHostAddress());} } 原文...

Java获取ip地址的几种方法【代码】

以下内容介绍下java获取ip地址的几种思路。1、直接利用java.net.InetAddress类获取,不过这种方法只在windows环境下有效,在linux环境下只能获取localhost地址(即/etc/hosts文件内容)  代码如下:  1import java.net.InetAddress;2 3/** 4 * This method works well in windows system.5 * In Linux system it returns 127.0.0.1 the content of the hosts file.6*/ 7publicstaticvoid getIpAddressInWindows() {8tr...

java通过免费接口获取ip地址的服务商信息【代码】

今天分享一个免费在线的小工具的开发代码就是通过淘宝提供的接口获取服务商信息,工具地址:http://www.yzcopen.com/seo/ipadress代码如下:publicclass YzcPattern { /** * ip地址接口 */privatefinalstatic String ipurl ="http://ip.taobao.com/service/getIpInfo.php?ip=";/** * 判断ip * @param text * @return*/publicstaticboolean ipCheck(String text) { if (text != null && !text.isEmpty()) { // 定义正则表达式 Strin...

java 将一个ip地址分割成一个数组【代码】

这个问题以前真还没注意,好像记得分割过规律的字符串,但是不是像IP这样是以"."为分割规律字符,而是其他的。今天又用到类似功能,代码写好了也没测试,直接上传服务器,但是就是会报错,之后看了日志是ip分割部分代码除了问题,然后网上找资料,找到的资料说的方法都是我当前报错这方法, 无语了人旷了一小会,想能不能用正则表达式来分割,然后网上找了方法,然后将正则表达式中的分割标识符换乘了".",没想到分割出来也不对,但是之...

JAVA获取计算机IP地址

import java.net.InetAddress;import java.net.UnknownHostException;public class HuoQu { public static void main(String[] args) throws UnknownHostException { // TODO Auto-generated method stub InetAddress IP = InetAddress.getByName("DESKTP-MDC2C"); //在我的电脑属性查看名称粘贴过来,此为我的虚拟名。 System.out.println("第一种方式"+IP); InetAddr...

java 求主机IP地址及其相对应的子网掩码【图】

不多说,直接上代码。package com.ckw.test;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; import java.util.Map.Entry;public class TestOfSubNetMask { Map<String, String> map = new HashMap<String, String>();String ipAddress;String subNetMask;boolean flag = false; //用来标记一对IP地址跟子网掩码 (位置相邻的即为一对)//获取相对应IP...

java获取客户端ip地址工具类【代码】

1publicclass IpUtils {2privatestaticfinal String[] HEADERS = {3 "X-Forwarded-For",4 "Proxy-Client-IP",5 "WL-Proxy-Client-IP",6 "HTTP_X_FORWARDED_FOR",7 "HTTP_X_FORWARDED",8 "HTTP_X_CLUSTER_CLIENT_IP",9 "HTTP_CLIENT_IP", 10 "HTTP_FORWARDED_FOR", 11 "HTTP_FORWARDED", 12 "HTTP_VIA", 13 "REMOTE_ADDR", 14 "X...

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

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

java把ip地址存放到一个int型变量

java把ip地址存放到一个int型变量package com.zwx;public class test {public static void main(String[] args) {byte[] bt = new byte[4];bt[0] = 111;bt[1] = 112;bt[2] = 113;bt[3] = 114;int i = byteArrayToInt(bt); System.out.println("int--->" + i);byte[] b = intToByteArrayl(i);System.out.print("ip--->");for (byte bb : b) {System.out.print(bb + ".");}}//int转ip(字节数组)public static byte[] intToByteArray...

Java获取IP地址:request.getRemoteAddr()警惕【图】

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr() ,这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,将http://192.168.1.110:2046/ 的URL反向代理为http://www.xxx.com/ 的URL时,用request.getRemoteAddr() 方法获取的IP地址是:127.0.0.1 或 192.168.1.110 ,而并不是客户端的真实IP。经过代理以后,由于在客户端和服务...

java正则表达式小练习(IP地址检测、排序,叠词的处理,邮件地址的获取)【代码】

import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern;class MyComparator implements Comparator<String>{publicint compare(String ip1, String ip2) {Pattern p = Pattern.compile("\\d{1,3}");Matcher m1 = p.matcher(ip1);Matcher m2 = p.matcher(ip2);while(m1.find()){m2.find();System.out.println(m1.group() + " " + m2.g...

java中获取真是ip地址方法

在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid,nginx等反向代理软件,由于在客户端和服务之间增加了中间层,所以request.getRemoteAddr()方法获取的IP实际上是代理服务器的地址,并不是客户端的IP地址。但是在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息。用以跟踪原有的客户端IP地址和原来客户端请求的服务器地址。package com.ra...

Java获取本机IP地址(屏蔽无用地址)【代码】

Java利用HostUtil工具类抓取本地IP地址(屏蔽无用地址) 一、现有的解决方法:通过黑名单屏蔽 会维护一个blackPrefixs的list类型,会屏蔽掉回环地址、ipv6以及以blackPrefixs中以"docker0", "br-", "veth"开头的地址。不是很灵活,经常会出现抓到了不以这些前缀开头的NetworkInterface,则会出现ip地址不是自己的地址的情况。 //核心逻辑 Iterator var5 = blackPrefix.iterator();while(var5.hasNext()) {String prefix = (String)...

Java获取本机ip地址及主机名【代码】

package xuexi.Java.Two;import java.net.InetAddress;//演示如何使用 InetAddress 类的 getLocalAddress() 方法获取本机ip地址及主机名public class Main2 { public static void main(String[] args) throws Exception { InetAddress addr = InetAddress.getLocalHost(); System.out.println("主机地址:"+addr.getHostAddress()); String hostname = addr.getHostName(); Syst...

JAVA获取请求的IP地址【代码】

private static final String[] ADDR_HEADER = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP","X-Real-IP" };private static final String NUKNOWN = "unknown";/*** 获得真实IP地址。* 在使用了反向代理时,直接用HttpServletRequest.getRemoteAddr()无法获取客户真实的IP地址。* @param request * @return*/public static String getRemoteAddr(ServletRequest request) {String addr = null;if (request insta...