多IP地址库源的集成

标签: CDN | 发表时间:2011-04-06 22:21 | 作者:德泰 Wolf
出处:http://rdc.taobao.com/blog/cs

摘要
IP地址库作为一种基础的网络服务,已经有了很多的商业版本和免费版本。不同的IP地址库在粒度、准确度、覆盖度等方面各有千秋,但由于IP地址库的提供方不同、IP地址自身的动态性、具体业务需求的不同,导致很难断定某一个IP地址库是最佳的。如果有最佳的IP库存在,那就不会存在如此之多的IP地址库版本。IP地址库作为淘宝的一项基础设施,我们希望能将现有的一些IP地址库的内容整合起来,各取所长,形成我们自己的IP地址库。

IP地址库的工作主要包括生成、校验、升级三方面的工作。本文主要讲述如何从多个不同的IP地址库生成综合IP地址库。


不同的IP地址库如何集成
不同的IP地址库在包含的IP段、IP段对应的地域、ISP、经纬度等信息、记录格式等方面差别比较大,我们该如何来集成它们呢?

既然需要集成,首先当然需要找出各IP地址库之间哪些是相同的,哪些是不同的?但如何比较出各IP地址库的不同呢?比较出不同后我们又该怎么做呢?下面介绍一下我们的做法。我们的做法也只是一家之言,欢迎大家批评指正。

IP地址库的层次结构与生成整体流程

我们简化问题的处理,我们为IP地址库设计了分层的结构,如下图所示:

明了了IP地址库的层次结构后,我们很容易想到利用下面的流程来实现IP地址库的综合:

Step 1) 获取各独立的第三方IP地址来源,生成第三方原始IP地址库
Step 2) 对第三方原始IP地址库进行规范化、校验、约束检查等操作,生成规范化的第三方IP地址库
Step 3) 将多个规范化第三方IP地址库对比,并记录对比后的结果
Step 4) 根据比对结果,结合各IP地址库(及各属性段)的置信度,生成最终的iP地址库
Step 5) 利用接口工具,动态或静态生成需要的接口数据

多个源IP地址库如何对比

这里有两个关键点:
(1)多个源IP地址库是可以对比的,这点就是通过上一节对第三方源IP地址库进行规范化来实现的。规范化后,不同源IP库的记录的属性都统一了,有了比较的基础
(2)如何做到对比的次数与源IP地址库的个数无关?
当我们有两个源IP库时,我们可以比较容易对比,但当源IP库是三个或者多个的时候,两两比较显然是行不通的了。
我们换一种思路,IP地址的数量级是2^32,划分成IP段则数目比这小得多,目前应该是10万到100万级别的,我们将对比的主体换成IP段,看每个IP段到底有多少种不同的记录信息,这样就避免了比对过程中出现的两两对比的问题。

具体说来,对于所有的源IP地址记录,我们找出所有的IP段的端点,利用这些端点对IP地址区间进行最小粒度的切割,对切割后的每个端点和端点之间的IP区间进行对比。下面的示意图说明了切割的方法:

至此,我们已经得到多个源IP地址库对比结果了,接下来是如何处理这些diff结果了

对比结果的综合
有了对比后的diff,我们自然需要对diff的结果进行验证,确认diff中哪些项更可信一些,这里就有很多种方法了

(1)通过traceroute查看目标IP附近几跳的IP属于哪个区域。这种方法有两个难点:a 实践中traceroute结果会有大量的***,很多30跳以内得不到结果,所以很多情况下很难找到最近的几跳IP b 最近几跳的IP我们又如何断定其区域呢?这又陷入了鸡生蛋、蛋生鸡的问题了
(2)通过目标IP所在c段或者更大的段来判断其区域,这一点同样会碰到上面的所在c段所属区域的判定问题
(3)IP地址所属区域问题是GeoLocation问题的一种,有很多的讨论和方法,目前这一块没有深入调查
(4)根据各源IP地址库自身的置信度计算diff结果的置信度,选取置信度最高的作为最终结果。这里又涉及到各源IP地址库的置信度设置问题,一种是人工根据经验设定;另外一种是通过可信的校验手段来计算得出。我们目前采用的是人工设定的方法,后期考虑通过检验得出源IP地址库及各属性段的置信度。

相关 [ip 地址] 推荐:

IP地址库介绍

- Wolf - 淘宝核心系统团队博客
在CDN系统中,IP地址库在流量调度、网络服务质量监测等方面起到重要的作用,本文主要介绍了IP地址库的功能、内容以及IP地址库的生成和评价方法. 所谓IP地址库,指的是提供了IP地址(段)同地理、ISP、结构等信息映射关系的一组数据. IP地址库应用的场合较为广泛,下面举几个常见的例子:. (1)根据客户的IP地址确定客户来源,为后期的客户行为分析提供基础,例如需要统计学生群体的访问特点,这时我们就是通过分析来自教育网的IP地址的那些请求得到的.

一些特殊的IP地址

- fuckgfw - iGFW
应该说,这不是一个真正的IP地址,你可以把它理解成为IP地址的黑洞,所以不明确的主机及目标地址,都会被扔进这里. 如果你在网络设置中设置了缺省网关,那么Windows系统会自动产生一个目的地址为0.0.0.0的缺省路由. 对本机来说,这个地址指本网段内(同一广播域)的所有主机. 在Windows系统中,这个地址有一个别名“Localhost”.

多IP地址库源的集成

- Wolf - 淘宝核心系统团队博客
IP地址库作为一种基础的网络服务,已经有了很多的商业版本和免费版本. 不同的IP地址库在粒度、准确度、覆盖度等方面各有千秋,但由于IP地址库的提供方不同、IP地址自身的动态性、具体业务需求的不同,导致很难断定某一个IP地址库是最佳的. 如果有最佳的IP库存在,那就不会存在如此之多的IP地址库版本. IP地址库作为淘宝的一项基础设施,我们希望能将现有的一些IP地址库的内容整合起来,各取所长,形成我们自己的IP地址库.

IP地址的划分 -- The division of the IP address

- - CSDN博客研发管理推荐文章
现在的IP网络使用32位地址,以点分十进制表示,如172.16.0.0. 地址格式为:IP地址=网络地址+主机地址 或 IP地址=主机地址+子网地址+主机地址. 最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID. 同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应.

怎样隐藏ip地址?推荐3款简单易用的超强IP地址隐藏工具

- 勇 - 爱软件
出于某些原因,我们有时候需要隐藏自己的IP地址,匿名访问互联网各种各样服务. 在有些时候隐藏IP地址能有效提高上网的安全性,防止一些信息被泄露,网络上很多各种各样隐藏IP地址的方法,最多的莫非使用代理服务器. 今天介绍3款更加强悍的高度隐藏IP地址的小工具给各位童鞋,使用它们就可以轻松隐藏QQ的IP地址、真正实现匿名使用各种网络软件与服务,比起网络上提供的一些一般代理服务器来说,它们是更为强大的高度匿名代理,它不会改变你的Request Fields,它们无需设置,即可自动为你寻找高级代理服务器并应用,这样你就可以轻松访问所有来自国内外的网站.

全国DNS服务器IP地址【电信、网通、铁通】

- 勇 - HaoRuan.net
今天好软网给大家带来的是全国DNS服务器IP地址【电信、网通、铁通】,相信很多网友都不知道自己当地的DNS服务器是多少,不同的dns解析可以得到不同的访问权限是速度,希望给大家带来更多的互联网体验. 继续阅读《全国DNS服务器IP地址【电信、网通、铁通】 》的全文内容.... 分类: 网络科技 | Tags: DNS   服务器   | 添加评论(9).

世界IPv6日 各参与测试网站IP地址列表

- Leo - cnBeta.COM
世界IPv6日是由互联网协会(ISOC)发起的一项鼓励采用IPv6的纪念日. IPv6 是互联网协议的新版本. 互联网协议的当前版本 IPv4 可供使用的地址几乎已全部用完. 目前大多数网站只使用 IPv4. 但是,在2011 年 6 月 8 日(即今天)的世界IPv6日,主要的网络公司(包括 Google、Facebook、Yahoo.

使用Google和百度直接查自己的IP地址

- fuckgfw - iGFW
据说Google有不少实用的OneBox,例如使用Google搜索简单的四则运算公式即会得出答案,还可以使用Google搜索时间、天气、货币兑换、度量单位换算、股票、球赛时间……. 近来Google又多了一个功能,可以查自己的 IP 地址. 只需在Google.com搜索What is my IP即可得到你自己的公网IP(如下图).

Apanic IP地址段的获取与整理方法介绍

- Wolf - 淘宝核心系统团队博客
APNIC负责管理亚太地区国家的IP地址和AS号码分配. 本文介绍了如何通过APNIC提供的IP地址分配信息和whois工具生成一种IP地址库. 简而言之,Apnic是全球5个地区级的Internet注册机构(RIR)之一,负责亚太地区的以下一些事务:. (1)分配IPv4和IPv6地址空间,AS号.

谷歌可查询你的真实IP地址

- -_- - YesKafei Daily
Google Search 现在可以显示你的IP地址,只需要输入”my ip address“,在结果页面即可显示. 这种方式是不是让你想起了iPhone 4S的语音服务Siri,通过语言交流来获取服务和功能,谷歌搜索也在“语言”化. Google Search by Image,用图片来搜索图片.