`
花太香
  • 浏览: 24956 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

验证IP是否在范围内

    博客分类:
  • Java
 
阅读更多
public class IpUtil {

/**
* 验证IP是否在范围内。
*
* @param ip
*            子网
* @param mask
*            子网掩码
* @param clientIp
*            需要验证的IP
* @return
*/
public static boolean isInRange(String ip, int mask, String clientIp) {
byte maskByte = Byte.parseByte(String.valueOf(mask));
int intMask = ~((1 << (32 - maskByte)) - 1);
int intIp = convertIp2Int(ip);
int intClientIp = convertIp2Int(clientIp);
return ((intIp & intMask) == (intClientIp & intMask));
}

private static int convertIp2Int(String ipAddress) {
int result = 0;
Inet4Address i4ip = null;
try {
i4ip = (Inet4Address) InetAddress.getByName(ipAddress);
} catch (UnknownHostException e) {
e.printStackTrace();
}
if (null != i4ip) {
byte[] temp = i4ip.getAddress();
result = (temp[0] << 24) | ((temp[1] & 0xFF) << 16)
| ((temp[2] & 0xFF) << | (temp[3] & 0xFF);
}
return result;

}

}
分享到:
评论

相关推荐

    CIDRUtils.java 判断IP是否在指定范围内

    java判断IP是否在指定范围内,支持IPV4和IPV6。

    ip工具类(用于判断IP是否在网段内,给定网段判断IP的范围)

    ip工具类(用于判断IP是否在网段内,给定网段判断IP的范围)

    能测试设定范围内IP是否能ping通

    在描述中,“能测试设定范围内IP是否能ping通”进一步强调了这个工具可以对一个连续的IP地址范围进行批量测试,而不是仅仅针对单个IP地址。这种功能对于网络管理员或系统管理员来说非常有用,因为他们可能需要快速...

    java正则表达式验证IP地址

    在Java中,可以使用正则表达式来验证IP地址是否正确。 正则表达式的作用是将字符串分割成多个小组,并通过这些小组来匹配指定的模式。在Java中,我们可以使用java.util.regex包来使用正则表达式。在这个包中,有两...

    JS验证IP函数(支持分段验证)

    ### JS验证IP函数(支持分段验证) 在日常的网络管理与开发工作中,经常会遇到需要验证用户输入的IP地址是否合法的需求。对于某些特定场景,如仅需输入IP地址的一部分来搜索或过滤设备时,传统的全量IP地址验证就...

    用CustomValidator控件客户端验证IP地址

    利用`RegExp.$1`、`RegExp.$2`等,我们可以访问这些捕获的值,并检查它们是否在0到255的范围内。 如果所有部分都在有效范围内,`arguments.IsValid`被设置为`true`,表示验证通过;否则,将其设置为`false`,表示...

    java中用正则表达式检测IP地址是否合理

    这种方法不仅可以确保IP地址的格式正确,还可以确保每段数字都在合法范围内。 通过以上介绍,我们可以看出,在Java中使用正则表达式来验证IP地址的有效性是一种非常实用的方法。不仅可以提高代码的可读性和可维护性...

    正则表达式验证Email和IP地址

    ### 二、验证IP地址 对于IP地址的验证,特别是IPv4地址,其结构为四组0到255之间的数字,每组之间用点分隔。为了实现这一点,可以设计如下的正则表达式: ```csharp public bool IPCheck(string IP) { string num...

    PHP授权验证系统V2.1完整版,域名 IP双重验证 一键更新授权系统.zip

    这增加了另一层安全,因为即使攻击者获取了授权域名,若不在许可的IP范围内,也无法运行程序。IP验证可以通过比较预设的授权IP列表与当前请求的IP来完成。 3. **一键更新授权**:此功能允许用户轻松地更新他们的...

    验证器 ip验证器.rar

    2. **有效范围验证**:验证器可能会确保IP地址落在有效的地址空间内,比如排除私有IP地址(如10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)或保留的IP地址。 3. **可用性检测**:通过DNS查询或ICMP回显请求(ping...

    国标IP范围下载

    标题中的“国标IP范围下载”指的是中国国家标准中定义的IP地址范围的获取与处理,这通常涉及到网络管理和网络安全领域。在互联网上,IP地址是每个设备接入网络时的唯一标识,而“国标”则可能指的是中国国家标准化...

    获取输入的ip范围并显示出来

    在处理完IP范围后,我们进入“并将范围内的IP都显示在list control里”这一环节。CLISTCTRL是MFC(Microsoft Foundation Classes)库中的一个控件,用于创建类似Windows资源管理器的列表视图。在VC++中,我们可以...

    Delphi 判断IP是否合法.rar

    7. **单元测试**:为了确保代码的正确性,程序可能还包括一些单元测试,验证IP地址验证功能在各种边缘情况下的表现。 8. **用户界面**:虽然没有具体提及,但通常这样的程序会有用户界面元素(如输入框和按钮),...

    C# 判断主机IP合法性算法

    这通常涉及到验证一个给定的IP地址字符串是否符合IPv4或IPv6的标准格式,并且处于有效的地址范围内。下面我们将详细讨论如何实现这样的算法。 首先,我们需要了解IP地址的基本结构。IPv4地址由四个十进制数组成,每...

    验证输入的IP地址是否正确.rar

    这个正则表达式分别匹配每个数字段,确保它们都在0到255的范围内,并且确保有三个点号分隔。 另外,如果你需要处理的IP地址可能包含子网掩码,那么可以使用`ipaddress`模块的`IPv4Network`类进行验证: ```python ...

    ·IP项目实践:AHB-SRAM设计与验证 (AMBA 2.0 AHB 可以写入简历)

    ### IP项目实践:AHB-SRAM设计与验证 #### 背景介绍 在系统级芯片(SoC)设计领域,内存子系统的设计是至关重要的一个环节。内存接口的性能直接影响到整个系统的运行效率和可靠性。其中,高级微控制器总线架构...

    基于Python的验证输入的IP地址是否正确.zip

    这样,在其他需要验证IP地址的场景中,只需调用这个函数即可。 5. **测试**:在项目中提到,所有源码均经过严格测试,这意味着我们应该有相关的测试用例来确保验证功能的正确性。可以编写单元测试,覆盖各种可能的...

    asp验证Ip格式的函数

    如果不在这个范围内,那么这不是一个有效的IP地址部分,函数结束。 4. 如果成功执行完上述所有检查,说明IP地址格式正确,`CheckIp`变量被赋值为1,表示验证通过。 最后,函数返回`CheckIp`变量的值。在示例中,你...

    php本地匹配ip地址类.zip

    该类库可能包含了各种方法,如验证IP地址的有效性、解析IP地址、判断IP是否在特定范围内等功能。 首先,类库的核心是定义一个IP地址处理类,可能命名为`IpAddress`。此类通常会包含以下方法: 1. **构造函数**:...

Global site tag (gtag.js) - Google Analytics