CN108011987B - Ip地址定位方法及装置,电子设备及存储介质 - Google Patents
Ip地址定位方法及装置,电子设备及存储介质 Download PDFInfo
- Publication number
- CN108011987B CN108011987B CN201710942850.7A CN201710942850A CN108011987B CN 108011987 B CN108011987 B CN 108011987B CN 201710942850 A CN201710942850 A CN 201710942850A CN 108011987 B CN108011987 B CN 108011987B
- Authority
- CN
- China
- Prior art keywords
- geographic
- area
- geographical
- sample
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/69—Types of network addresses using geographic information, e.g. room number
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请提供了一种IP地址定位方法,属于IP地址定位领域,用于解决现有技术中IP地址定位方法存在的定位准确率低的问题。所述方法包括:获取待定位IP地址的地理位置样本;对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;对所述至少一个地理区域再次进行聚合而确定最优地理区域;根据所述最优地理区域中的地理位置样本。本申请公开的方法,通过对大量地理位置样本中携带的地理位置进行聚合,以对样本划分相应的地理区域,并进一步结合分布密度最大的地理区域中的地理位置样本的坐标确定待定位IP地址的地理位置,有效提高了IP地址定位的准确性。
Description
技术领域
本申请涉及IP地址定位领域,特别是涉及一种IP地址定位方法及装置,电子设备及存储介质。
背景技术
随着互联网及移动通讯技术的迅猛发展,网络应用和网络服务给人们的日常生活带来了极大的便利,而利用网络定位技术能够进一步给用户提供高质量的服务,并拓展服务领域。IP(Internet Protocol,网络协议)地址定位是网络定位技术中的重要方法之一。现有技术中的IP地址定位技术主要通过移动终端接收到的GPS(全球定位***)定位信号或周围的WIFI(一种无线网络通信技术)和基站信息确定用户所在位置。如果采集到的GPS定位信号或WIFI信号出现较大偏差或者无法获取GPS定位信号以及WIFI信号时,确定的IP地址对应的地理位置将出现较大偏离。
可见,现有技术中的IP地址定位方法至少存在IP地址定位准确率低的问题。
发明内容
本申请实施例提供一种IP地址定位方法,解决现有技术中的IP地址定位方法存在的定位准确率低下的问题。
为了解决上述问题,第一方面,本申请实施例提供了一种IP地址定位方法,包括:
获取待定位IP地址的地理位置样本,所述地理位置样本至少包括:地理位置和样本权重信息;
对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;
对所述至少一个地理区域再次进行聚合而确定最优地理区域;
根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置。
第二方面,本申请实施例提供了一种IP地址定位装置,包括:
地理位置样本获取模块,用于获取待定位IP地址的地理位置样本,所述地理位置样本至少包括:地理位置和样本权重信息;
样本聚合模块,用于对所述地理位置样本获取模块获取的地理位置样本中的地理位置进行聚合,得到至少一个地理区域;
最优地理区域确定模块,用于对所述样本聚合模块得到的至少一个地理区域再次进行聚合而确定最优地理区域;
IP地址定位模块,用于根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置。
第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例所述的IP地址定位方法。
第四方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请实施例所述的IP地址定位方法的步骤。
本申请实施例公开的IP地址定位方法,通过获取待定位IP地址的地理位置样本,然后,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;对所述至少一个地理区域再次进行聚合而确定最优地理区域;最后,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置,解决了现有技术中IP地址定位方法存在的定位准确率低的问题。通过获取大量地理位置样本,并对地理位置样本中携带的地理位置进行聚合,以对样本划分相应的地理区域,并进一步结合分布密度最大的地理区域中的地理位置样本的坐标确定待定位IP地址的地理位置,不仅提高了海量样本的处理效率,同时由于采用的大量的样本,并选择合适的样本做参考,有效提高了IP地址定位的准确性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例一的IP地址定位方法的流程图;
图2是本申请实施例二的IP地址定位方法中地理区域分布示意图;
图3是本申请实施例三的IP地址定位装置结构示意图之一;
图4是本申请实施例三的IP地址定位装置结构示意图之二;
图5是本申请实施例三的IP地址定位装置结构示意图之三。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
本申请公开的一种IP地址定位方法,如图1所示,该方法包括:步骤100至步骤130。
步骤100,获取待定位IP地址的地理位置样本。
所述地理位置样本至少包括:地理位置和样本权重信息。当用户通过移动终端登录应用程序,并执行搜索附近外卖、搜索附近商场或附件餐馆等行为时,应用程序会通过调用移动终端的***接口获取移动终端的位置信息,用户通过应用程序向服务器发起的服务请求中会包括用户的IP地址和用户的位置信息。应用程序的服务器将存储用户每次请求服务的行为日志,并在行为日志中记录访问服务的时间、用户的IP地址和地理位置信息,如地理位置经纬度坐标。通常,应用程序通过移动终端的***接口获取的移动终端的位置信息是根据移动终端的GPS定位数据和/或移动终端扫描到的附近WIFI信息对移动终端进行定位后得到的。
服务器通过记录每个用户的请求,将获得海量的包含访问时间、IP地址与该IP地址对应的地理位置的用户历史行为日志。
当某一用户通过电脑访问应用程序,或者通过移动终端访问应用程序时,或者用户访问网站页面时,网站页面或者应用程序可以获得用户的访问请求对应的IP地址,即用户的IP地址,以及访问时间。然后,从服务器中存储的用户历史行为日志中提取地理位置数据,生成地理位置样本。具体实施时,选择至少记录有访问时间、该IP地址和地理位置的日志,并从中提取访问时间和地理位置,生成一条地理位置数据,该地理位置数据包括:访问时间和地理位置。最后,根据该地理位置数据生成一条地理位置样本,所述地理位置样本至少包括:地理位置和样本权重信息,所述样本权重根据地理位置数据中的访问时间与当前时间之间的关系确定,访问时间距离当前时间越近的地理位置数据的样本权重越大。
步骤110,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域。
对于当前待定位的IP地址的地理位置样本,根据样本中携带的地理位置坐标对地理位置样本进行聚合,得到至少一个地理区域。具体实施时,可以通过对地理位置样本的坐标进行空间索引编码,然后将相同的空间索引编码对应的地理位置位置样本划分至同一个地理区域,以此实现对地理位置样本进行聚合。通过对地理位置样本中的坐标进行空间索引编码,坐标距离较近的地理位置样本将得到相同的空间索引编码。因此,经过编码后,每个空间索引编码对应的地理位置坐标将构成一个地理区域。
具体实施时,还可以根据行政区或者商区或者其他区域划分策略划分地理区域,然后,根据坐标值将地理位置样本划分至不同地理区域。
步骤120,对所述至少一个地理区域再次进行聚合而确定最优地理区域。
对于得到的地理区域,每个地理区域中都包括大量地理位置样本,根据各地理区域包括的地理位置样本确定各地理区域的区域权重。例如:将某个地理区域中包括的地理位置样本的权重之和作为该地理区域的区域权重;或者,将某个地理区域中包括的地理位置样本的权重之和与该IP地址的所有地理位置样本的权重之和的商作为该地理区域的区域权重。
优选的,确定地理区域的区域权重时,还结合该地理区域周围,与该地理区域的中心相聚小于预设距离的地理区域的区域权重。例如,将该地理区域的区域权重和与其相邻的地理区域的区域权重的和,作为该地理区域的最终区域权重。
具体实施时,确定区域权重的因素根据具体需求确定,各因素在确定区域权重时的作用大小也根据具体需求确定。
确定每个地理区域的区域权重之后,选择区域权重最大的地理区域作为最优地理区域。
步骤130,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置。
经过前述步骤处理之后,得到的最优地理区域通常是地理位置样本分布密度较高的区域,该区域的地理位置样本可信度较高,可以用来定位所述待定位IP地址。例如,可以将在该地理区域中分布区域权重最大的地理位置坐标作为所述待定位IP地址的坐标。或者,当分布区域权重最大的地理位置坐标大于一个时,可以将所有分布区域权重最大的地理位置坐标的质心作为所述待定位IP地址的坐标。其中,分布区域权重与携带该地理位置坐标的地理位置样本的数量成正比。
本申请实施例公开的IP地址定位方法,通过获取待定位IP地址的地理位置样本,然后,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;对所述至少一个地理区域再次进行聚合而确定最优地理区域;最后,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置,解决了现有技术中IP地址定位方法存在的定位准确率低的问题。通过获取大量地理位置样本,并对地理位置样本中携带的地理位置进行聚合,以对样本划分相应的地理区域,并进一步结合分布密度最大的地理区域中的地理位置样本的坐标确定待定位IP地址的地理位置,不仅提高了海量样本的处理效率,同时由于采用的大量的样本,并选择合适的样本做参考,有效提高了IP地址定位的准确性。
实施例二
基于实施例一,在本申请的另一具体实施例中,以通过对地理位置样本进行空间索引编码实现地理区域划分为例,详细说明得到地理区域的技术方案。
在获取待定位IP地址的地理位置样本时,所述地理位置样本至少包括:地理位置和样本权重信息。其中,所述地理位置样本的样本权重与相应地理位置的访问时间相关,访问时间越新,样本权重越高。具体实施时,所述样本权重可以通过以下公式表示:
其中,V表示样本权重值;△t表示访问时间和当前时间的差值,即该地理位置样本对应的用户历史行为日志中记载的用户访问该地理位置的时间和算法执行时间的差。例如,某一条用户历史行为日志中记载的用户访问地理位置(38.597011,116.437109)的时间为2017年01月01日,算法运行日期为2017年01月05日,则△t值为5,△t始终为正整数。由上式可见,所述地理位置样本的样本权重与相应地理位置的访问时间相关,访问时间越新,样本权重越高。具体实施时,待定位IP地址的地位置样本可以表示为Key_Value的键值对,其中,Key表示地理位置,Value表示该条地理位置样本的样本权重,例如:(38.597011,116.437109),1)。后续步骤中通过对地理位置进行聚合,以实现地理区域划分。而样本权重将作为确定地理区域权重的一个依据。
具体实施时,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域的步骤,包括:对地理位置样本的地理位置坐标进行空间索引编码;将相同空间索引编码对应的地理位置聚合到同一个地理区域。
空间索引编码(GeoHash)用一个字符串表示一片矩形地理区域,该区域大小由GeoHash字符串长度决定,字符串越长,GeoHash字符串表示的地理区域越小,例如4位GeoHash字符串可以表示40km*20km区域,6位GeoHash可以表示1.2km*0.6km区域,8位GeoHash表示40m*20m区域。本申请在获取到待定位IP地址对应的海量地理位置样本之后,首先对地理位置样本携带的地理位置坐标值(如,经纬度坐标值)分别进行空间索引编码。
以待定位IP地址为“192.168.0.1”为例,假设获取到的待定位IP地址为“192.168.0.1”的地理位置样本有1万条,每条地理位置样本的格式可以表示为(Lat,Lon)。例如,其中一条地理位置样本为(38.597011,116.437109),其中,38.597011为该地理位置的纬度值,116.437109为该地理位置的经度值。
分别对每一条地理位置样本的坐标值进行空间索引编码,得到1万条地理位置样本对应的1万个空间索引编码。例如,地理位置样本(38.597011,116.437109)的空间索引编码为一个6位的GeoHash,即wwfg9d;另一条地理位置样本(38.597100,116.437100)的空间索引编码同样是wwfg9d。因为wwfg9d可以表示一个1.2km*0.6km的矩形区域,该区域内所有地理位置坐标对应的6位GeoHash编码都是wwfg9d,因此,可以用6位GeoHash编码标识一个1.2km*0.6km的矩形区域。
在对每个地理位置样本的坐标值进行空间索引编码后,遍历所有空间索引编码,将相同空间索引编码对应的地理位置样本划分至同一个地理区域,既可以得到多个地理区域,并用空间索引编码标识相应的地理区域。例如,将地理位置样本(38.597011,116.437109)和(38.597100,116.437100)聚合到GeoHash值wwfg9d标识的地理区域。以1万条地理位置样本经过空间索引编码后得到对应的1万个空间索引编码值为例,遍历这1万个空间索引编码值,最终可能得到300个不同的空间索引编码值。这300个不同的空间索引编码值中,每个空间索引编码值至少对应1个地理位置样本。以空间索引编码值wwfg9d为例,对应的地理位置样本至少包括:(38.597100,116.437100)和(38.597011,116.437109)。若1万条地理位置样本经过空间索引编码后得到300个不同的空间索引编码值,则1万条地理位置样本将被划分至300个地理区域。
对地理位置坐标进行GeoHash编码的目的是数据降级,一个待定位IP地址可能对应上千万个地理位置坐标,如果直接按照地理位置坐标进行计算,会占用大量计算资源。而将千万级地理位置坐标转换成面积合理的GeoHash码,可能只有几千个,大大降低了运算数量级。具体实施时,空间索引编码长度可以取其他值,如4为长度,那么聚合得到的地理区域会大些。
基于实施例一,在本申请的另一具体实施例中,对所述至少一个地理区域再次进行聚合而确定最优地理区域,具体为:基于所述地理区域的区域权重对所述至少一个地理区域再次进行聚合而确定最优地理区域,其中,所述区域权重与该地理区域及其相邻地理区域的样本分布密度和样本权重正相关。所述基于所述地理区域的区域权重对所述至少一个地理区域再次进行聚合而确定最优地理区域,包括子步骤S1至子步骤S3。
子步骤S1,针对每个地理区域,根据标识该地理区域的空间索引编码对应的地理位置样本及相应的样本权重,确定该地理区域的初始区域权重。
地理区域的区域权重与标识该地理区域的空间索引编码对应的地理位置样本的数量和每个样本的样本权重正相关。
具体实施时,针对每个地理区域,可以将该地理区域包含的所有地理位置样本的样本权重之和,即标识该地理区域的空间索引编码对应的所有地理位置样本对应的样本权重之和,作为该地理区域的初始权重。
例如,对于空间索引编码wwfg9d标识的地理区域,统计该地理区域对应的地理位置样本的数量,即空间索引编码wwfg9d对应的地理位置坐标所属地理位置样本,然后,对该地理区域对应的所有地理位置样本的样本权重求和,将得到的样本权重之和作为空间索引编码wwfg9d标识的地理区域的区域权重。
或者,对于空间索引编码wwfg9d标识的地理区域,统计该地理区域对应的地理位置样本,即空间索引编码wwfg9d对应的地理位置坐标所属地理位置样本;然后,统计获取的待定位IP地址,如“192.168.0.1”,的所有地理位置样本;最后,对该地理区域对应的所有地理位置样本的样本权重求和,将得到的样本权重之和与待定位IP地址的所有地理位置样本的权重值和的比值,作为空间索引编码wwfg9d标识的地理区域的区域权重。
具体实施时,还可以通过其他方法根据该地理区域对应的地理位置样本的权重确定该地理区域的初始区域权重,本实施例不一一例举。
具体实施时,为了进一步减小运算量,在确定该地理区域的初始区域权重之后,还包括:选择预设数量区域权重最高的地理区域用于IP地址定位。具体实施时,可以将每个GeoHash编码标识的地理区域的区域权重按照由大到小的顺序排序,选择区域权重较大的预设数量的地理区域用于IP地址定位。例如,对于前一步骤聚合得到的300个地理区域,按照区域权重由大到小的顺序排序之后,可以取前100个地理区域用于定位该待定位IP地址。对于包含少量地理位置样本的地理区域或者包含的地理位置样本中的地理位置访问时间较早的地理区域,通常认为其中的地理位置样本不具备代表性,将其作为脏数据,不予考虑,可以进一步提高定位的准确率。
子步骤S2,针对每个地理区域,将其初始区域权重和与其相邻的地理区域的初始区域权重的和,作为该地理区域的区域权重,其中,所述相邻的地理区域为中心点之间的距离小于预设阈值距离的地理区域。
仅通过每个地理区域包括的地理位置样本的数量确定地理区域的区域权重,并据此选择最优地理区域用来定位IP地址,有时会出现错误。例如,对于一个IP地址,根据获得到的地理位置样本确定了五个地理区域,其中,有四个地理区域在北京,一个地理区域在重庆,尽管在重庆的区域权重较大,但是并不具备代表性。比如现实生活中,北京的用户出差至重庆,在重庆访问的请求生成的用户历史行为日志将是后续获取的一个地理区域的地理位置样本的数据源,但是对于该用户来说,分布在北京的地理区域才是定位的主要依据。因此,具体实施时,为了提高定位的准确性,需要结合一定范围内的多个地理区域的区域权重,确定某一地理区域的最终区域权重。即,根据地理区域周围一定范围内的地理位置样本分布确定地理区域的最终区域权重。
具体实施时,以GeoHash编码标识的地理区域对应一个矩形块,该矩形块有一个中心点。计算GeoHash编码标识的地理区域对应的矩形块的中心点的具体方法参见现有技术,此处不再赘述。如图2所示,假设待定位IP地址对应的地理位置样本被聚合到4个地理区域,分别为:210至240,每个地理区域中包括多个地理位置,如211、212。如图2中所示,地理区域210的中心点为O1,地理区域220的中心点为O2,地理区域230的中心点为O3,地理区域240的中心点为O4,分别计算每个地理区域与其他3个地理区域的中心点之间的距离。以地理区域210为例,分别计算O1和O2的距离L12、O1和O3的距离L13及O1和O4的距离L14。然后,分别判断L12、L13、L14是否大于预设阈值距离,如1公里,并将与地理区域210之间的距离小于预设阈值距离的地理区域的区域权重增补至地理区域210的区域权重中。以子步骤S1中确定的地理区域210的区域权重为W1、地理区域220的区域权重为W2、地理区域230的区域权重为W3、地理区域240的区域权重为W4为例,如果地理区域210与地理区域220、230的中心点之间的距离L12和L13均小于预设阈值距离,则通过地理区域210、地理区域220、地理区域230的区域权重的和更新地理区域210的区域权重,即W1’=W1+W2+W3。地理区域240与地理区域210、220、230的中心点之间的距离均大于预设阈值距离,则地理区域240的区域权重维持不变。采用上述方法,分别得到更新后的各地理区域的区域权重W1’、W2’、W3’和W4’。选择更新后的最大区域权重对应的地理区域作为最优地理区域。
具体实施时,计算两个地理区域的中心点之间的距离时,可以通过以下公式:
C=sin(LatA)*sin(LatB)*cos(LonA-LonB)+cos(LatA)*cos(LatB);
Distance=R*Arccos(C)*Pi/180;
其中,A和B分别表示两个地理区域的中心点,点A的经纬度为latA和lonA,点B的经纬度为latB和lonB,纬度范围(-90~90),经度范围(-180~180),R表示地球半径,Pi表示圆周率,Distance表示A和B两个地图点之间的距离。
子步骤S3,确定区域权重最高的地理区域作为最优地理区域。
具体实施时,如果更新后的最大区域权重对应的地理区域大于一个,可以随机选择其中一个区域权重最大的地理区域作为最优地理区域。还可以采用其他的附加因素进一步调整区域权重最大的地理区域的区域权重。具体实施时,采用的附加因素可以包括:子步骤S1中确定的地理区域的初始区域权重。例如,当更新后的地理区域210和220的区域权重W1’和W2’相同时,如果子步骤S1中确定的地理区域210的区域权重W1大于子步骤S1中确定的地理区域220的区域权重W2,则确定地理区域210为最优地理区域。
确定最优地理区域之后,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置,包括:将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的坐标值,作为所述待定位IP地址的地理位置。假设标识地理区域210的GeoHash编码wwfg9d对应的地理位置样本有200个,其中,携带地理位置坐标(38.597011,116.437109)的地理位置样本最多,有60个,则将地理位置坐标(38.597011,116.437109)作为待定位IP地址的地理位置。
具体实施时,将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的坐标值,作为所述待定位IP地址的地理位置的步骤之前,还包括:如果所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的数量大于1;则将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的质心作为所述待定位IP地址的地理位置。同样假设标识地理区域210的GeoHash编码wwfg9d对应的地理位置样本有200个,其中,携带地理位置坐标(38.597011,116.437109)和(38.597001,116.437110)的地理位置样本最多,各有60个,则将地理位置坐标(38.597011,116.437109)和(38.597001,116.437110)的质心作为待定位IP地址的地理位置。
本申请实施例公开的IP地址定位方法,通过获取待定位IP地址的地理位置样本,然后,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;对所述至少一个地理区域再次进行聚合而确定最优地理区域;最后,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置,解决了现有技术中IP地址定位方法存在的定位准确率低的问题。通过获取大量地理位置样本,并对地理位置样本中携带的地理位置进行聚合,以对样本划分相应的地理区域,并进一步结合分布密度最大的地理区域中的地理位置样本的坐标确定待定位IP地址的地理位置,不仅提高了海量样本的处理效率,同时由于采用的大量的样本,并选择合适的样本做参考,有效提高了IP地址定位的准确性。
通过本申请公开的IP地址定位方法,每一个IP地址的参考地理位置先经过Geohash块编码转换,以Geohash表示的区域作为单位参与计算,从而使***可以灵活处理任意量级采样数据。通过对地理位置样本先进行地图点聚合,可以有效规划出IP地址定位的大致范围,避免直接使用定位次数最多经纬度作为该IP的计算坐标,而造成异常数据区域权重过大的问题。在大致范围中确定最优地理区域,再确定最优坐标点,也符合互联网IP分配制度划定方法,因此能找到最准确的IP地址的地理位置。
通过本申请公开的IP地址定位方法,对于应用程序无法根据现有技术中的IP地址定位方法获得该IP地址对应的地理位置时,如:没有GPS定位信号或者没有WIFI信号,可以准确定位IP地址,以保证基于地理位置的服务的正常启动和准确执行。
实施例三
相应的,本申请实施例公开的一种IP地址定位装置,如图3所示,所述装置包括:
地理位置样本获取模块300,用于获取待定位IP地址的地理位置样本,所述地理位置样本至少包括:地理位置和样本权重信息;
样本聚合模块310,用于对所述地理位置样本获取模块300获取的地理位置样本中的地理位置进行聚合,得到至少一个地理区域;
最优地理区域确定模块320,用于对所述样本聚合模块310得到的至少一个地理区域再次进行聚合而确定最优地理区域;
IP地址定位模块330,用于根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置。
优选的,所述地理位置样本的样本权重与相应地理位置的访问时间相关,访问时间越新,样本权重越高。
可选的,如图4所示,所述样本聚合模块310包括:
地理位置编码单元3101,用于对地理位置样本的地理位置坐标进行空间索引编码;
地理位置聚合单元3102,用于将相同空间索引编码对应的地理位置聚合到同一个地理区域。
可选的,所述最优地理区域确定模块320用于,基于所述地理区域的区域权重对所述至少一个地理区域再次进行聚合而确定最优地理区域,其中,所述区域权重与该地理区域及其相邻地理区域的样本分布密度和样本权重正相关。
可选的,如图4所示,所述最优地理区域确定模块320包括:
地理区域权重确定单元3201,用于针对每个地理区域,根据标识该地理区域的空间索引编码对应的地理位置样本及相应的样本权重,确定该地理区域的初始区域权重;
地理区域权重调整单元3202,用于针对每个地理区域,将其初始区域权重和与其相邻的地理区域的初始区域权重的和,作为该地理区域的区域权重,其中,所述相邻的地理区域为中心点之间的距离小于预设阈值距离的地理区域;
最优聚合地理确定单元3203,用于确定区域权重最高的地理区域作为最优地理区域。
可选的,如图4所示,所述最优地理区域确定模块320包括:
地理区域选择单元3204,用于选择预设数量的地理区域权重最高的地理区域,以用作确定最优地理区域。
可选的,如图4所示,所述IP地址定位模块330包括:
第一IP地址定位单元3301,用于将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的坐标值,作为所述待定位IP地址的地理位置。
可选的,如图5所示,所述IP地址定位模块330还包括:
第二IP地址定位单元3302,用于如果所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的数量大于1,则将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的质心作为所述待定位IP地址的地理位置。
本申请实施例公开的IP地址定位装置,通过获取待定位IP地址的地理位置样本,然后,对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;对所述至少一个地理区域再次进行聚合而确定最优地理区域;最后,根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置,解决了现有技术中IP地址定位方法存在的定位准确率低的问题。通过获取大量地理位置样本,并对地理位置样本中携带的地理位置进行聚合,以对样本划分相应的地理区域,并进一步结合分布密度最大的地理区域中的地理位置样本的坐标确定待定位IP地址的地理位置,不仅提高了海量样本的处理效率,同时由于采用的大量的样本,并选择合适的样本做参考,有效提高了IP地址定位的准确性。
通过本申请公开的IP地址定位装置,每一个IP地址的参考地理位置先经过Geohash块编码转换,以Geohash表示的区域作为单位参与计算,从而使***可以灵活处理任意量级采样数据。通过对地理位置样本先进行地图点聚合,可以有效规划出IP地址定位的大致范围,避免直接使用定位次数最多经纬度作为该IP的计算坐标,而造成异常数据区域权重过大的问题。在大致范围中确定最优地理区域,再确定最优坐标点,也符合互联网IP分配制度划定方法,因此能找到最准确的IP地址的地理位置。
通过本申请公开的IP地址定位装置,对于应用程序无法根据现有技术中的IP地址定位方法获得该IP地址对应的地理位置时,如:没有GPS定位信号或者没有WIFI信号,可以准确定位IP地址,以保证基于地理位置的服务的正常启动和准确执行。
相应的,本申请还公开了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本申请实施例一和实施例二所述的IP地址定位方法。所述电子设备可以为PC机、移动终端、个人数字助理、平板电脑等。
本申请还公开了一种计算机可读的存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例一和实施例二所述的IP地址定位方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上对本申请提供的一种IP地址定位方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM(只读存储器)/RAM(随机存取存储器)、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
Claims (12)
1.一种IP地址定位方法,其特征在于,包括:
获取待定位IP地址的地理位置样本,所述地理位置样本至少包括地理位置和样本权重信息,所述地理位置样本的样本权重与相应地理位置的访问时间相关,访问时间越新,样本权重越高;
对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域;
对所述至少一个地理区域再次进行聚合而确定最优地理区域;
根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置;
其中,所述对所述至少一个地理区域再次进行聚合而确定最优地理区域的步骤,包括:
针对每个地理区域,根据标识该地理区域的空间索引编码对应的地理位置样本及相应的样本权重,确定该地理区域的初始区域权重;
针对每个地理区域,将其初始区域权重和与其相邻的地理区域的初始区域权重的和,作为该地理区域的区域权重,其中,所述相邻的地理区域为中心点之间的距离小于预设阈值距离的地理区域;
确定区域权重最高的地理区域作为最优地理区域。
2.根据权利要求1所述的方法,其特征在于,所述对所述地理位置样本中的地理位置进行聚合,得到至少一个地理区域的步骤,包括:
对地理位置样本的地理位置坐标进行空间索引编码;
将相同空间索引编码对应的地理位置聚合到同一个地理区域。
3.根据权利要求1所述的方法,其特征在于,确定该地理区域的初始区域权重的步骤之后,所述方法还包括:
选择预设数量的地理区域权重最高的地理区域,用于确定最优地理区域。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置的步骤,包括:
将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的坐标值,作为所述待定位IP地址的地理位置。
5.根据权利要求4所述的方法,其特征在于,
如果所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的数量大于1,则将所述最优地理区域中所述出现次数最多或预设时间内出现次数最多的地理位置样本的质心作为所述待定位IP地址的地理位置。
6.一种IP地址定位装置,其特征在于,包括:
地理位置样本获取模块,用于获取待定位IP地址的地理位置样本,所述地理位置样本至少包括:地理位置和样本权重信息,所述地理位置样本的样本权重与相应地理位置的访问时间相关,访问时间越新,样本权重越高;
样本聚合模块,用于对所述地理位置样本获取模块获取的地理位置样本中的地理位置进行聚合,得到至少一个地理区域;
最优地理区域确定模块,用于对所述样本聚合模块得到的至少一个地理区域再次进行聚合而确定最优地理区域;
IP地址定位模块,用于根据所述最优地理区域中的地理位置样本,确定所述待定位IP地址的地理位置;
所述最优地理区域确定模块包括:
地理区域权重确定单元,用于针对每个地理区域,根据标识该地理区域的空间索引编码对应的地理位置样本及相应的样本权重,确定该地理区域的初始区域权重;
地理区域权重调整单元,用于针对每个地理区域,将其初始区域权重和与其相邻的地理区域的初始区域权重的和,作为该地理区域的区域权重,其中,所述相邻的地理区域为中心点之间的距离小于预设阈值距离的地理区域
最优聚合地理确定单元,用于确定区域权重最高的地理区域作为最优地理区域。
7.根据权利要求6所述的装置,其特征在于,所述样本聚合模块包括:
地理位置编码单元,用于对地理位置样本的地理位置坐标进行空间索引编码;
地理位置聚合单元,用于将相同空间索引编码对应的地理位置聚合到同一个地理区域。
8.根据权利要求6所述的装置,其特征在于,所述最优地理区域确定模块包括:
地理区域选择单元,用于选择预设数量的地理区域权重最高的地理区域,以用作确定最优地理区域。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述IP地址定位模块包括:
第一IP地址定位单元,用于将所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的坐标值,作为所述待定位IP地址的地理位置。
10.根据权利要求9所述的装置,其特征在于,所述IP地址定位模块还包括:
第二IP地址定位单元,用于如果所述最优地理区域中出现次数最多或预设时间内出现次数最多的地理位置样本的数量大于1,则将所述最优地理区域中符合预设条件出现次数最多或预设时间内出现次数最多的地理位置样本的质心作为所述待定位IP地址的地理位置。
11.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5任意一项所述的IP地址定位方法。
12.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1至5任意一项所述的IP地址定位方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710942850.7A CN108011987B (zh) | 2017-10-11 | 2017-10-11 | Ip地址定位方法及装置,电子设备及存储介质 |
PCT/CN2018/108010 WO2019072092A1 (zh) | 2017-10-11 | 2018-09-27 | Ip地址定位方法及装置,电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710942850.7A CN108011987B (zh) | 2017-10-11 | 2017-10-11 | Ip地址定位方法及装置,电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108011987A CN108011987A (zh) | 2018-05-08 |
CN108011987B true CN108011987B (zh) | 2020-09-04 |
Family
ID=62051396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710942850.7A Active CN108011987B (zh) | 2017-10-11 | 2017-10-11 | Ip地址定位方法及装置,电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108011987B (zh) |
WO (1) | WO2019072092A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108011987B (zh) * | 2017-10-11 | 2020-09-04 | 北京三快在线科技有限公司 | Ip地址定位方法及装置,电子设备及存储介质 |
CN109299747B (zh) * | 2018-10-24 | 2020-12-15 | 北京字节跳动网络技术有限公司 | 一种类簇中心的确定方法、装置、计算机设备及存储介质 |
CN111221924B (zh) * | 2018-11-23 | 2023-04-11 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、存储介质和网络设备 |
CN109982413B (zh) * | 2019-02-19 | 2023-04-07 | 北京三快在线科技有限公司 | 移动热点的识别方法、装置、电子设备和存储介质 |
CN109743745B (zh) * | 2019-02-19 | 2021-01-22 | 北京三快在线科技有限公司 | 移动网络接入类型识别方法、装置、电子设备及存储介质 |
CN111225079B (zh) * | 2019-12-31 | 2024-03-05 | 苏州三六零智能安全科技有限公司 | 恶意软件作者地理位置定位方法、设备、存储介质及装置 |
CN111372242B (zh) * | 2020-01-16 | 2023-10-03 | 深圳市卡牛科技有限公司 | 欺诈识别方法、装置、服务器及存储介质 |
CN111382212B (zh) * | 2020-03-02 | 2021-07-27 | 拉扎斯网络科技(上海)有限公司 | 关联地址获取方法、装置、电子设备及存储介质 |
CN111711707B (zh) * | 2020-04-30 | 2023-08-08 | 国家计算机网络与信息安全管理中心江苏分中心 | 基于邻居关系的ip地址定位方法 |
CN111694914B (zh) * | 2020-06-08 | 2023-08-29 | 北京百度网讯科技有限公司 | 用户常驻区域确定方法及装置 |
CN115086411B (zh) * | 2022-06-16 | 2023-12-05 | 京东城市(北京)数字科技有限公司 | 一种ip定位方法、***、存储介质及电子设备 |
CN114793203B (zh) * | 2022-06-21 | 2022-08-30 | 北京奕千科技有限公司 | 一种种子下载的ip溯源方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677804A (zh) * | 2015-12-31 | 2016-06-15 | 百度在线网络技术(北京)有限公司 | 权威站点的确定以及权威站点数据库的建立方法和装置 |
CN105933294A (zh) * | 2016-04-12 | 2016-09-07 | 晶赞广告(上海)有限公司 | 网络用户定位方法、装置及终端 |
CN106646339A (zh) * | 2017-01-06 | 2017-05-10 | 重庆邮电大学 | 一种无线位置指纹室内定位中在线匹配定位方法 |
CN106792522A (zh) * | 2016-12-09 | 2017-05-31 | 北京羲和科技有限公司 | 一种基于接入点ap的指纹库定位方法及*** |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103220376B (zh) * | 2013-03-30 | 2014-07-16 | 清华大学 | 利用移动终端的位置数据来定位ip位置的方法 |
CN103248723B (zh) * | 2013-04-10 | 2015-11-25 | 腾讯科技(深圳)有限公司 | 一种ip地址所在区域的确定方法及装置 |
US9904932B2 (en) * | 2014-12-29 | 2018-02-27 | Google Llc | Analyzing semantic places and related data from a plurality of location data reports |
CN106534392B (zh) * | 2015-09-10 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 一种定位信息采集方法、定位方法及装置 |
CN106936887B (zh) * | 2015-12-31 | 2020-10-20 | 珠海金山办公软件有限公司 | 一种地理位置定位方法及装置 |
CN108011987B (zh) * | 2017-10-11 | 2020-09-04 | 北京三快在线科技有限公司 | Ip地址定位方法及装置,电子设备及存储介质 |
-
2017
- 2017-10-11 CN CN201710942850.7A patent/CN108011987B/zh active Active
-
2018
- 2018-09-27 WO PCT/CN2018/108010 patent/WO2019072092A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105677804A (zh) * | 2015-12-31 | 2016-06-15 | 百度在线网络技术(北京)有限公司 | 权威站点的确定以及权威站点数据库的建立方法和装置 |
CN105933294A (zh) * | 2016-04-12 | 2016-09-07 | 晶赞广告(上海)有限公司 | 网络用户定位方法、装置及终端 |
CN106792522A (zh) * | 2016-12-09 | 2017-05-31 | 北京羲和科技有限公司 | 一种基于接入点ap的指纹库定位方法及*** |
CN106646339A (zh) * | 2017-01-06 | 2017-05-10 | 重庆邮电大学 | 一种无线位置指纹室内定位中在线匹配定位方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108011987A (zh) | 2018-05-08 |
WO2019072092A1 (zh) | 2019-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108011987B (zh) | Ip地址定位方法及装置,电子设备及存储介质 | |
CN108446281B (zh) | 确定用户亲密度的方法、装置及存储介质 | |
US10278114B2 (en) | Systems, methods, and apparatus for geolocation platform mechanics | |
US10034141B2 (en) | Systems and methods to identify home addresses of mobile devices | |
CN109509327B (zh) | 一种异常行为预警方法及装置 | |
US20130054647A1 (en) | Information processing apparatus, information processing method, and program | |
CN109084795B (zh) | 基于地图服务的搜索服务设施的方法及装置 | |
CN103929719B (zh) | 定位信息的优化方法和优化装置 | |
KR20140112545A (ko) | 무선 네트워크 액세스 포인트를 찾는 방법 | |
RU2641246C2 (ru) | Способ и устройство оценки безопасности | |
CN109033128A (zh) | 一种地理位置识别方法及装置 | |
CN108574715A (zh) | 信息推荐方法、装置及*** | |
CN111723959A (zh) | 区域的划分方法、装置、存储介质及电子装置 | |
TW201644301A (zh) | 確定移動終端定位間隔的方法、移動終端及伺服器 | |
US20120150490A1 (en) | Management server, communication system and statistical processing method | |
CN111459723B (zh) | 终端数据处理*** | |
CN111447292A (zh) | 一种IPv6地理位置定位方法、装置、设备及存储介质 | |
CN112948674A (zh) | 基于Redis的智能推送服务的方法、装置及计算机设备 | |
US20210337400A1 (en) | Identification and prioritization of optimum capacity solutions in a telecommunications network | |
US10959041B1 (en) | Traffic analysis of mobile phones partitioned by geohash | |
Andrade et al. | RiSC: Quantifying change after natural disasters to estimate infrastructure damage with mobile phone data | |
Milusheva et al. | Assessing bias in smartphone mobility estimates in low income countries | |
WO2020119269A1 (zh) | 用户位置确定方法、装置、设备及计算机可读存储介质 | |
CN111143639B (zh) | 用户亲密度计算方法、装置、设备及介质 | |
CN112887910B (zh) | 异常覆盖区域的确定方法、装置和计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |