`
lxy19791111
  • 浏览: 480881 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

判断一个IP地址是否为内网IP

    博客分类:
  • Java
阅读更多
java 代码
  1. public static boolean isInnerIP(String ipAddress){   
  2.         boolean isInnerIp = false;   
  3.         long ipNum = getIpNum(ipAddress);   
  4.         /**  
  5.         私有IP:A类  10.0.0.0-10.255.255.255  
  6.                B类  172.16.0.0-172.31.255.255  
  7.                C类  192.168.0.0-192.168.255.255  
  8.         当然,还有127这个网段是环回地址  
  9.         **/  
  10.         long aBegin = getIpNum("10.0.0.0");   
  11.         long aEnd = getIpNum("10.255.255.255");   
  12.         long bBegin = getIpNum("172.16.0.0");   
  13.         long bEnd = getIpNum("172.31.255.255");   
  14.         long cBegin = getIpNum("192.168.0.0");   
  15.         long cEnd = getIpNum("192.168.255.255");   
  16.         isInnerIp = isInner(ipNum,aBegin,aEnd) || isInner(ipNum,bBegin,bEnd) || isInner(ipNum,cBegin,cEnd) || ipAddress.equals("127.0.0.1");   
  17.         return isInnerIp;              
  18. }  
java 代码
  1. private static long getIpNum(String ipAddress) {   
  2.     String [] ip = ipAddress.split("\\.");   
  3.     long a = Integer.parseInt(ip[0]);   
  4.     long b = Integer.parseInt(ip[1]);   
  5.     long c = Integer.parseInt(ip[2]);   
  6.     long d = Integer.parseInt(ip[3]);   
  7.   
  8.     long ipNum = a * 256 * 256 * 256 + b * 256 * 256 + c * 256 + d;   
  9.     return ipNum;   
  10. }  
java 代码
  1. private static boolean isInner(long userIp,long begin,long end){   
  2.      return (userIp>=begin) && (userIp<=end);   
  3. }  
分享到:
评论

相关推荐

    java判断是内网ip还是公网ip

    要编写一个Java程序来判断IP地址类型,我们可以遵循以下步骤: 1. **获取IP地址**:首先,我们需要获取当前设备的IP地址。这可以通过多种方式实现,例如使用`InetAddress`类的静态方法`getLocalHost()`,或者通过...

    跨平台 获取本机IP/MAC地址,检测是否内网IP,字符串IP转换成Number地址

    本文将深入探讨如何在不同的操作系统上获取本机的IP和MAC地址,以及如何判断一个IP地址是否为内网IP,并将字符串形式的IP地址转换为数值表示。我们将主要关注以下几个知识点: 1. **跨平台获取本机IP地址**: 跨...

    获取内网ip地址3种方法

    在解析过程中,可以检查每个IP地址是否属于内网范围(通常为192.168.x.x或10.x.x.x)。如果找到这样的地址,就认为是内网IP地址。 这些方法各有优缺点:TIdIPWatch提供了事件驱动的方式,实时性较好;TGStack适合...

    Java判断IP地址为内网IP还是公网IP的方法

    在Java编程中,判断一个IP地址是内网IP(Private IP)还是公网IP(Public IP)通常涉及到网络通信和TCP/IP协议的理解。TCP/IP协议为了提高网络效率和安全性,将一部分IP地址范围预留给了内部网络使用,这些IP地址...

    获得内网的所有IP地址

    `InetAddress.isSiteLocalAddress()`方法用于判断是否为内网IP。 值得注意的是,由于操作系统和网络配置的差异,获取到的IP地址可能会有所不同。有些系统可能还需要处理IPv4与IPv6的问题。如果只需要IPv4地址,可以...

    获取android设备的内网IP地址

    在Android平台上,获取设备的内网IP地址是一个常见的需求,特别是在网络通信或者设备间互动的场景下。这个“获取android设备的内网IP地址”的demo就是为此目的设计的。它首先尝试通过WiFi接口获取IP,如果WiFi未开启...

    asp实现检查ip地址是否为内网或者私有ip地址的代码分享

    在ASP中,我们可以编写函数来判断一个给定的IP地址是否属于以上这些私有或内网IP。下面是一个ASP源代码示例,用于实现这个功能: ```asp function IpToNumber(ip) '将IP地址转换为数字 arr = split(ip, ".") ...

    内网已使用IP查询

    IPSeizer的工作原理主要是通过发送ICMP(因特网控制消息协议)请求到网络中的各个IP地址,根据响应来判断该IP是否已经被使用。如果某个IP地址未回应,则可能为空闲;若收到回应,表示该IP已被占用。这个过程称为网络...

    PHP通过$_SERVER['REMOTE_ADDR']得到的是内网IP?如何才能获得客户的公网IP(真实IP地址).zip

    在PHP开发中,获取用户公网IP(真实IP地址)是一个常见的需求,这通常涉及到网络通信和服务器配置。当我们使用PHP内置的全局数组`$_SERVER`中的`'REMOTE_ADDR'`来获取用户IP时,有时会发现它返回的是内网IP而非公网...

    java获取内网的所有IP地址.doc

    可以使用 iterator() 方法获取迭代器对象,然后使用 hasNext() 方法判断是否有下一个元素,使用 next() 方法获取下一个元素。 6. Swing 库:Java 中的 Swing 库提供了创建图形用户界面的方法。可以使用 JFrame 类...

    C#获取真实IP地址(IP转为长整形、判断是否内网IP的方法)

    接下来,我们来看如何判断一个IP地址是否为私有或内网IP。根据IPv4的规定,有三类私有IP地址范围: 1. A类私有IP地址:10.0.0.0 - 10.255.255.255 2. B类私有IP地址:172.16.0.0 - 172.31.255.255 3. C类私有IP地址...

    本机IP地址查看复制工具.rar

    标题中的“本机IP地址查看复制工具.rar”指的是一个压缩包文件,里面包含了一个用于查看和复制本机IP地址的小程序。这个工具对于需要频繁获取自己计算机网络信息的用户非常有帮助,尤其在处理网络问题或者进行远程...

    易语言内网IP搜索,端口检测源码

    1. **IP地址扫描**:通过发送ICMP(Internet Control Message Protocol)回显请求(ping命令)或者TCP/UDP的连接请求,来判断IP地址是否可达。易语言提供了相应的网络库函数,如`发送ICMP请求`或`建立TCP连接`,用于...

    Go-一个简单的IP地址的工具

    该包提供了`IP`类型和一系列方法,例如`ParseIP`用于解析IP字符串,`String`将IP地址转换为字符串,`Equal`比较两个IP地址是否相等,以及`To4`和`To16`用于判断和转换IP版本。此外,`net`包还提供了`IPNet`类型,...

    java过滤IP地址代码

    String remoteHost=request.getRemoteHost(); log.info("Request from host:"+remoteHost); //判断客户计算机IP地址是否合法,以127开头的表示不合法,禁止访问

    C#网络编程 内网ip扫描

    在IP扫描中,我们通常需要遍历一个IP地址范围,例如从192.168.1.1到192.168.1.254,这可以通过IPAddress.Parse()方法将字符串转换为IPAddress对象。 2. **NetworkInterface类**:通过NetworkInterface....

    显示本地IP地址代码

    Python提供了一个名为`socket`的内置模块,可以方便地获取本地IP地址。以下是一个简单的示例: ```python import socket def get_local_ip(): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: # ...

    Node.js-实现列出本地局域网上的所有IP

    - `os.networkInterfaces()`:这个方法返回一个对象,包含了所有网络接口的信息,包括IP地址、子网掩码和广播地址等。每个网络接口都是一个键值对,键是接口的名称,值则是一个接口详细信息的数组。 2. **网络接口...

    c#判断正确的ip地址格式示例

    判断ip地址是否正确,直接用.Net现成的类,方法如下 代码如下:string ipStr=”192.168.222.333″;IPAddress ip;if(IPAddress.TryParse(ipStr,out ip)){ Console.WriterLine(“合法IP”);}else{ Console....

Global site tag (gtag.js) - Google Analytics