/*** 判断给定的IP地址是否是内网IP* * @author GaoHuanJie*/
public class Test{public boolean isInnerIP(String ipAddress){/*判断是否是内网IP*/    boolean isInnerIp = false;//默认给定IP不是内网IP    long ipNum = getIpNum(ipAddress);    /*** 私有IP:A类  10.0.0.0    -10.255.255.255*       B类  172.16.0.0  -172.31.255.255   *       C类  192.168.0.0 -192.168.255.255  *       D类   127.0.0.0   -127.255.255.255(环回地址) **/   long aBegin = getIpNum("10.0.0.0");    long aEnd = getIpNum("10.255.255.255");    long bBegin = getIpNum("172.16.0.0");    long bEnd = getIpNum("172.31.255.255");    long cBegin = getIpNum("192.168.0.0");    long cEnd = getIpNum("192.168.255.255"); long dBegin = getIpNum("127.0.0.0");    long dEnd = getIpNum("127.255.255.255");isInnerIp = isInner(ipNum,aBegin,aEnd) || isInner(ipNum,bBegin,bEnd) || isInner(ipNum,cBegin,cEnd) || isInner(ipNum,dBegin,dEnd);    return isInnerIp;}private long getIpNum(String ipAddress) {/*获取IP数*/    String [] ip = ipAddress.split("\\.");    long a = Integer.parseInt(ip[0]);    long b = Integer.parseInt(ip[1]);    long c = Integer.parseInt(ip[2]);    long d = Integer.parseInt(ip[3]);long ipNum = a * 256 * 256 * 256 + b * 256 * 256 + c * 256 + d;    return ipNum;    }   private boolean isInner(long userIp,long begin,long end){    return (userIp>=begin) && (userIp<=end);    } public static void main(String[] args) {if (new Test().isInnerIP("22.8.129.60")) {//172.16.0.119System.out.println("该IP地址为内网IP!");} else {System.out.println("该IP地址为外网IP!");}}
}

判断给定的IP地址是否是内网IP相关推荐

  1. 推断给定的IP地址是否是内网IP

    /*** 推断给定的IP地址是否是内网IP* * @author GaoHuanJie*/ public class Test{public boolean isInnerIP(String ipAd ...

  2. 网吧局域网里的设置外网IP地址、设置内网IP地址、限制内网速度和路由器共享...

    现在啊,网吧的需求越来越高,同时在经济比较充裕的情况下,作为网吧的老板可能希望打造全千兆的网吧,让每个进入网吧的人都能充分体验高速的感觉,当然更重要的是在同行竞争中处于上游,特别是对网络游戏爱好者的吸 ...

  3. iOS 如何获取手机外网IP地址(附内网IP地址)

    查找了一些方法,最初以为拿到的就是手机对外的公网地址,其实只是本地IP地址.下面把获取手机内外网IP地址的方法总结下: 一.获取手机本地静态IP地址:(局域网) 方法1: 首先导入头文件: //IP地 ...

  4. 什么是 IP地址 NAT 公网 内网 端口

    目录 什么是IPv4? 什么是NAT 公网 内网? 什么是IPv6? 什么是端口? 引言 随着网络信息技术的发展,互联网逐渐庞大,人们在网络上又建立了一个全新的生态环境. 正如每个人的身份证号上都写着 ...

  5. 七月文章导读【TCP/IP相关】:解密 TCP/IP;什么是公网ip?什么是内网ip?为什么ip地址通常以192.168开头?

    Table of Contents 解密 TCP/IP! TCP/IP是什么 网络分层 分层 封装 地址 端口 域名系统 分用 小结 什么是公网ip?什么是内网ip?为什么ip地址通常以192.168 ...

  6. python3 判断ip有效性 是否是内网ip

    1.判断ip有效性 import ipaddressdef check_ip_valid(ip):try:ipaddress.ip_address(ip.strip())return Trueexce ...

  7. 为什么ip地址通常以192.168开头?什么是公网ip?什么是内网ip?

    我们的生活中常常要与ip地址接触,通常也会经常听到公网.内网?那什么是公网ip地址呢?什么是私网ip地址呢?为什么我们常见到的ip地址以192.168开头呢?我们今天来了解下. 内.外网是相对于防火墙 ...

  8. 多IP服务器自动切换内网IP易语言源码

    介绍: 自动切换电脑内网IP, 记得以前开发这个主要是适应国外多IP服务器切换,对一般用户 用处不大. 所以把源码代码发出来 可以根据自己需求修改了或者学习一下. 网盘下载地址: http://kek ...

  9. 怎么让内网显示云服务器ip,腾讯云内网IP怎么用

    内网服务即局域网(LAN)服务,云服务之间经由内部链路互相访问.腾讯云上的云产品可以经由 Internet 访问,也可经由腾讯云内网互相访问.腾讯云机房均由底层万兆/千兆互联,提供带宽高.时延低的内网 ...

  10. 通过ZeroTier访问无公网IP地址,实现内网穿透

    # 介绍 ZeroTier是一款非常好用的内网穿透工具,不需要配置,就能实现虚拟局域网的组建,让你可以在外也能连回家中.学校.办公室的电脑获取资料,数据.配置与使用都非常简单,堪称「 无配置,零基础」 ...

最新文章

  1. UI设计培训分享:学习UI设计有哪些技巧
  2. Hadoop 单机版和伪分布式版安装
  3. python脚本画pie饼图_python 使用matplotlib.pyplot.pie绘制饼图
  4. Tengine 反向代理状态检测
  5. MyBatis 特殊字符处理
  6. 高效开发iOS系列 -- 那些不为人知的KVC
  7. Zookeeper C 回调函数
  8. 迪士尼正式收购21世纪福克斯!网友:原来米老鼠才是灭霸…
  9. 我的Python成长之路---第三天---Python基础(13)---2016年1月16日(雾霾)
  10. azure blob_Azure Blob存储–名义上是混合数据库部署
  11. 得益于数据中心芯片业务提升,AMD公司财务表现令投资者欣喜
  12. 9008刷机工具_黔隆科技刷机教程OPPOR11T忘记密码免刷机保资料解屏幕锁教程
  13. 【iOS逆向与安全】frida-trace入门
  14. 解决屏幕大小不一导致页面下方出现多余空白的问题
  15. 淘宝客户端安全生产体系建设
  16. 面向初学者的 40 多个 Python 项目——开始编写 Python 代码的简单想法
  17. Python绘图库Matplotlib.pyplot之网格线设置(plt.grid())
  18. xbox会员中心在哪_白金会会员中心
  19. 【文件上传漏洞11】中间件文件解析漏洞基础知识及实验——Nginx
  20. 二次规划问题(qp)和序列二次规划问题(sqp)的简单理解

热门文章

  1. 用JavaScript实现更复杂的交互
  2. 九度 1188 约瑟夫环问题
  3. mongoDB VS PostgreSQL dml performance use python (pymongo py-postgresql)
  4. this kernel requires an x86-64 CPU, but only detected an i686 CPU
  5. 自动登录Windows系统
  6. 5.Linux性能诊断 --- 追踪技术
  7. 1.Linux 程序设计入门
  8. 1. 第一个lavarel 项目
  9. [CCPC-Wannafly Comet OJ 夏季欢乐赛(2019)]飞行棋
  10. Delphi、Lazarus保留字、关键字详解