博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
判断用户ip是否在指定的一个ip段内
阅读量:4646 次
发布时间:2019-06-09

本文共 1202 字,大约阅读时间需要 4 分钟。

 

/**	 * 判断ip是否在一个ip段内	 * 			 * @param args	 */	public static boolean ipExistsInRange(String ip, String ipSection) {		ipSection = ipSection.trim();		ip = ip.trim();		int idx = ipSection.indexOf('-');		String beginIP = ipSection.substring(0, idx);		String endIP = ipSection.substring(idx + 1);		return getIp2long(beginIP) <= getIp2long(ip)				&& getIp2long(ip) <= getIp2long(endIP);	}	public static long getIp2long(String ip) {		ip = ip.trim();		String[] ips = ip.split("\\.");		long ip2long = 0L;		for (int i = 0; i < 4; ++i) {			ip2long = ip2long << 8 | Integer.parseInt(ips[i]);		}		return ip2long;	}	public static long getIp2long2(String ip) {		ip = ip.trim();		String[] ips = ip.split("\\.");		long ip1 = Integer.parseInt(ips[0]);		long ip2 = Integer.parseInt(ips[1]);		long ip3 = Integer.parseInt(ips[2]);		long ip4 = Integer.parseInt(ips[3]);		long ip2long = 1L * ip1 * 256 * 256 * 256 + ip2 * 256 * 256 + ip3 * 256				+ ip4;		return ip2long;	}	public static void main(String[] args) {		String ip = "10.10.10.116";		String ipSection = "10.10.1.00-10.10.255.255";		boolean exists = ipExistsInRange(ip, ipSection);		System.out.println(exists);	}

  

转载于:https://www.cnblogs.com/estellez/p/5002391.html

你可能感兴趣的文章
导出word之插入图片
查看>>
Servlet处理请求的流程(包括二次请求)
查看>>
eclipse设置maven加载国内镜像
查看>>
Vue 表单控件绑定
查看>>
帮助你操作数字和处理数字格式的javascript类库 - Numeral.js
查看>>
Error parsing XML: junk after document element
查看>>
Docker:集装箱式“运输”在软件上的实现
查看>>
[SQL Server] 数据库日志文件自动增长导致连接超时的分析
查看>>
lightoj1050_概率dp
查看>>
第七章 软件测试
查看>>
待补 http://acm.hdu.edu.cn/showproblem.php?pid=6583
查看>>
linux下搭建svn代码库
查看>>
ZeroMQ接口函数之 :zmq_msg_get - 获取消息的性质
查看>>
React 省市区三级联动
查看>>
再聊 cocos2dx -quick 适配
查看>>
安装mysql时提示The host 'xxx' could not be looked up with resolveip的解决办法
查看>>
Linux 磁盘分区方案简析
查看>>
Linux 改动inittab文件及忘记密码等导致无法进入系统的解决办法
查看>>
转载 ~shell简介
查看>>
Hadoop单机伪分布的搭建
查看>>