`
hz_chenwenbiao
  • 浏览: 1007695 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

100万个IP如何快速查询所属IP段? (转)

 
阅读更多

 

有30万条IP段记录,每条记录有startip和endip,给100万个IP如何快速查询所属IP段?然后统计每个段占多少个IP ?

 

一朋友提出的问题,据说可以 500w/s的查询速度。请讨论!

另一朋友的想法

创建个对象,就叫collection吧,这个对象包含三个成员变量,int size,long startIP, long endIP,提供get和set方法,之后在main方法里将100w的IP处理成long,并放入一个long类型数组里,并排序好,之后再创建个长度为30w的collection类型的数组,将30w的IP段存入数组中,按endIP排序
之后就开始遍历100w的数组,比较long类型数组里每个元素是在30w长度的数组的哪个段里,通过与startIp和endIp比较,有一个落在某个IP段,那么某个collection的size加1

今天想到,如查保证了每个IP段不重叠,可以使用IP段的首地址生成的大整数,生成查找树,对一个来的IP,计算它的大整数值,然后在查找树里查一下就可以知道它是属于哪个IP段的了。
分享到:
评论

相关推荐

    全国ip段查询器.zip

    全国IP段查询器是一款用于搜索和分析中国境内活跃IP地址的实用工具。它可以帮助网络管理员、安全专家以及研究人员快速获取并了解全国各地的IP地址范围及其使用情况。在信息技术领域,了解IP段信息对于网络监控、网络...

    C# IP库地址查询

    本项目涉及的是“C# IP库地址查询”,这是一个关于如何在C#应用程序中实现IP地址到地理位置信息转换的功能。这个功能通常用于网站访问统计、网络安全分析或者个性化用户体验等方面。 1. **IP地址与地理位置关联** ...

    IP地址精准定位系统PHP源码

    而且还能直接在地图上显示,地图使用的是/百度地图的接口,你只需要输入一个IP地址然后点击查询按钮即可在地图上看到该IP地址所在的显示地理位置,误差最精可以达到100米以内。 api接口修改:js/heightaccapi.js(第...

    10个ip到100个ip的操作

    10个ip到100个ip的操作10个ip到100个ip的操作

    各地电信的ip段

    根据提供的文件信息,我们可以了解到这份文档主要记录了中国各地电信所使用的IP地址段。下面将对这些IP地址段进行详细的解读,并解释它们在互联网通信中的作用及其管理的重要性。 ### IP地址段简介 IP地址...

    把IP地址转换成实际地域名称

    IP地址分为IPv4和IPv6两种类型,IPv4由32位二进制组成,通常被分割成4个8位段,每段用十进制表示,并用点分隔,如192.168.1.1。IPv6则使用128位,形式更为复杂,这里我们主要讨论IPv4。 IP到地理位置的转换依赖于IP...

    IP地址精准定位系统源码php版v1.0

    我们知道以往的IP地址查询程序都是只能查询到该IP地址所属的市级单位,但是这套源码查询的IP地址能够精确到误差100米之内的范围,而且还能直接在地图上显示,地图使用的是百度地图的接口,你只需要输入一个IP地址...

    linux配置多个ip

    例如,假设我们的网卡名为`eth0`,已有一个IP地址`192.168.1.100`,我们想添加第二个IP`192.168.1.101`,可以执行以下命令: ``` sudo ifconfig eth0:1 192.168.1.101 netmask 255.255.255.0 up ``` 这里`eth0:1...

    PHP版IP地址精准定位系统源码 IP地址查询地图定位.zip

    使用说明: 直接将所有文件上传到服务器或虚拟主机即可使用。 在查询框中输入你要查询的IP地址,点击查询按钮后即可在下方的...IP定位较为精准,一般误差不差过100米-300米。 因为不需要后期维护,所以没有管理后台。

    java常用ip匹配

    通过以上代码,我们可以看到`InetAddress.getByName()`方法尝试解析传入的字符串参数为一个IP地址,如果解析成功,则返回一个`InetAddress`对象,否则抛出`UnknownHostException`异常。然后我们通过比较`...

    非常实用的小软件IP段生成软件

    这款"IP段生成软件"能够帮助用户快速生成指定范围内的IP地址列表,例如,如果你需要为一个小型网络分配100台设备的IP地址,只需输入起始IP(如192.168.1.1)和结束IP(如192.168.1.100),软件就能自动生成这个范围...

    java 阿里云IP定位查询

    本项目是一个基于Java实现的阿里云IP定位查询示例,旨在帮助开发者快速理解和应用这项功能。 首先,要使用阿里云IP定位服务,你需要在阿里云官网上注册账号并购买相应的IP定位服务。获取到API密钥后,才能进行请求...

    ip库+php类_ip归属地查询

    这个文件可能来自于17mon(中国较早的IP数据库提供商),它包含了全球范围内的IP段和对应的国家、地区、城市等地理信息。这类数据文件通常是二进制格式,用于提高查询效率。 其次,`IP.class.php`是一个PHP类文件,...

    移动IP段路由表

    例如,一个移动IP段可能是100.0.0.0到100.0.0.255,包含256个IP地址。这些IP段被分配给移动网络运营商,用于管理和追踪其网络上的设备。 在链路负载均衡中,IP段路由表起到关键作用。当网络流量需要从一个源IP地址...

    IP地址精准定位系统源码 ip地址精确定位软件

    我们知道以往的IP地址查询程序都是只能查询到该IP地址所属的市级单位,但是这套源码查询的IP地址能够精确到误差100米之内的范围,而且还能直接在地图上显示,地图使用的是百度地图的接口,你只需要输入一个IP地址...

    多网卡IP地址分配冲突问题

    - **合理规划网络**:在设计网络架构时,应充分考虑到设备的网络需求,合理规划IP地址段,确保每个子网内的IP地址都是唯一的。 - **使用DHCP服务**:对于小型网络,可以考虑使用DHCP服务来自动分配IP地址,这样可以...

    win10 快速切换ip 设置ip为公司网络或自动获取ip

    在Windows 10操作系统中,快速切换IP地址是日常工作中非常实用的一项技能,尤其是在需要频繁在公司网络和家庭网络之间切换的用户。本教程将详细解释如何设置IP为公司网络或者自动获取IP,并介绍如何通过批处理脚本来...

    国内IDC IP段

    3. **故障排查**:当遇到网络连接异常或性能下降等问题时,可以通过扫描受影响的IP段快速定位问题所在,加速故障解决进程。 ### 给定IP段解析 根据提供的部分IP段信息,可以看出这些地址主要分布在不同的CIDR块中...

    vb实现ip地址的转换和分离

    IP地址是由四个八位字节组成,通常以点分十进制的形式表示(例如,192.168.1.1)。本教程将深入探讨如何在VB中实现这些功能。 一、IP地址的表示与转换 1. 字符串到整数转换: 在VB中,我们可以使用`Val`函数或`C...

    各省市ip段分布

    ### IP地址概述与私有地址范围 在计算机网络中,IP地址是用于标识网络设备的逻辑地址,确保数据包能够准确地在网络中传输至目的地。根据互联网协议版本的不同(IPv4与IPv6),IP地址有不同的格式。IPv4采用32位二...

Global site tag (gtag.js) - Google Analytics