查找如何快速查找IP归属地

查找ip  时间:2021-03-01  阅读:()

如何快速查找IP归属地

这两天遇到这么一个问题就是查找一个IP的归属地。当然我会有一个IP段的分配列表格式如下

16777472 16778239 XX省XX市

第一列是IP段的起始IP第二列是IP段的终止IP第三列是对应的省份。一共大概200万条左右。

那么好了如何进行查找呢

想到的最简单的办法就是二分查找。首先对这些IP段进行首位相接的排序之后一个二分查找。那么有没有比这个还快的方法呢

我们分析一下上面的二分查找的一个缺点就是要在所有的IP段上进行二分查找大概要查找log(2000000)次才能找到一个IP的归属地。那么我们一个自然的想法就是缩小二分的IP段的数量。可以这样做

根据IP的前两个字节把IP段进行分组。之后在对要查找的IP首先根据IP的前两个字节快速定位到某一个分组之后在这个分组中进行查找。 由于分组后每一个组中的IP段会少很多。所以这个方法要比赤裸裸的二分快50%左右。

左面代表所有两字节组合每个单元都有两个索引记录其在右侧数组中的起始位置。起始位置之间的IP的前两字节都等于左侧单元编号。

当来一个ip时 首先计算ip>> 16之后找到相应的索引区间之后在相应的区间上进行查找。

其实第二中方法就是一个以空间换时间的方法。如果内存放得下我们完全可以计算出每个IP的对应的省和市存放在一个大小为2^32次方的表中。在这里我们取了一个折中。

分类:算法

ucloud香港服务器优惠活动:香港2核4G云服务器低至358元/年,968元/3年

ucloud香港服务器优惠降价活动开始了!此前,ucloud官方全球云大促活动的香港云服务器一度上涨至2核4G配置752元/年,2031元/3年。让很多想购买ucloud香港云服务器的新用户望而却步!不过,目前,ucloud官方下调了香港服务器价格,此前2核4G香港云服务器752元/年,现在降至358元/年,968元/3年,价格降了快一半了!UCloud活动路子和阿里云、腾讯云不同,活动一步到位,...

日本美国站群服务器raksmart站群新增,限量低至月1.99美元

RAKsmart 商家八月份的促销活动今天更新。基本上和上个月的产品套餐活动差不多的,不过也是有简单的微调。对于RAKsmart商家还是比较了解的,他们家产品虽然这两年增加多个机房,以及在VPS主机方案上有丰富的机房和调整到一些自营机房,他们家的策划能力还是有限,基本上每个月的套餐活动都差不多。RAKsmart 在八月份看到有新增香港高防服务器可选,最高100GB防御。同时原来上个月缺货的日本独立...

ZJI(月付450元),香港华为云线路服务器、E3服务器起

ZJI发布了9月份促销信息,针对香港华为云线路物理服务器华为一型提供立减300元优惠码,优惠后香港华为一型月付仅450元起。ZJI是原来Wordpress圈知名主机商家:维翔主机,成立于2011年,2018年9月更名为ZJI,提供中国香港、台湾、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册等业务,商家所选数据中心均为国内访问质量高的机房和线路,比如香港阿里云、华为...

查找ip为你推荐
镜像文件是什么镜像文件是什么意思?如何建立自己的网站如何建立自己的网站腾讯文章怎样才能在手机腾讯网上发表文章?神雕侠侣礼包大全神雕侠侣陈晓礼包兑换码怎么获得xv播放器下载求手机可以看xv格式的视频播放器怎么点亮qq空间图标怎样点亮qq空间的图标xp系统停止服务XP停止服务后该怎么办?人人逛街人人都喜欢逛街吗网络广告投放网络广告的投放目的是什么?小米手柄买了个小米蓝牙手柄,游戏是可以玩但是按键位置不舒服,怎么可以改按键
me域名 重庆虚拟主机 深圳域名空间 域名备案号查询 photonvps enzu 台湾服务器 ix主机 腾讯云数据库 mobaxterm 回程路由 搜狗抢票助手 777te 免空 宁波服务器 tna官网 卡巴斯基免费试用版 drupal安装 国外视频网站有哪些 万网主机管理 更多