我可以使用哪些服务来根据 IP 地址查找用户的位置?

Posted

技术标签:

【中文标题】我可以使用哪些服务来根据 IP 地址查找用户的位置?【英文标题】:What services can I used to find a user's location based on their IP address? 【发布时间】:2010-09-07 09:53:04 【问题描述】:

如果您需要根据 IP 地址定位用户,可以使用哪些服务(免费服务和非免费服务都可以)?

附:我知道有些用户使用代理等,这意味着结果不是 100% 准确的。没关系。

【问题讨论】:

真正有趣的是找出他们如何获得这些信息。是否有任何人们不知道的隐私泄露被利用?等等…… 他们所能做的就是获取哪个ISP分配了哪个IP地址范围的记录。从那里他们可以找出 ISP 的位置。这仍然是一个猜测。我曾经在美国工作,使用来自英国的 IP 地址块。 我只想在这里做一个语义评论:您不是在寻找用户位置,而是在寻找 computers 位置。从法律的角度来看,这很重要。 【参考方案1】:

大多数地理定位服务允许您将包含 IP 地址的数据库下载到城市或国家地图。有些还免费(请求数量有限)或付费订阅提供 Web 服务 API。

MaxMind 有一项这样的服务,您可以使用它免费确定用户的位置。他们的 minFraud 服务每天允许 500 次免费查询。

他们在 ASP 中的 Web 服务示例

Dim objHttp, strQuery
strQuery = "http://geoip1.maxmind.com/a?l=" & license_key & _
    "&i=" & ipaddress
set objHttp = Server.CreateObject("Msxml2.ServerXMLHTTP")
objHttp.open "GET", strQuery, false
objHttp.send
Response.Write objHttp.ResponseText
Set objHttp = Nothing

他们还在付费版本中提供 API,用于根据位置、卡号等确定信用卡欺诈概率。

另一个服务是ip2location约翰·米利金

另外,IPLigence 每天提供 50 个免费查询。

对于 .NET Coders,有 IPAdressExtensions 模块(开源、免费且无需 Web 服务)purekrome


更多关于geolocation is available on wikipedia的信息。

【讨论】:

我刚刚尝试了 IPAddressExtensions,虽然它是免费的,但 IP 数据库和项目本身自 2008 年以来就没有更新过。它使用一个免费提供的 IP 数据库,每天在software77.net/geo-ip 更新。问题是数据库本身已作为资源嵌入到项目的 dll 中,因此更新数据库的唯一方法是重新编译项目。 我不会更新项目.. 如果你不提交补丁,我会尽快修补它.. 某个时候。 著名的遗言【参考方案2】:

另外值得注意的是,MaxMind 允许您将其地理位置数据库下载为 CSV 文件:

http://www.maxmind.com/app/geolitecity

【讨论】:

他们产品的精简版是免费的,例如 Geo Lite Country:maxmind.com/app/geolitecountry 根据该产品背后的公司的说法,精简版的准确率为 99.5%,付费版的准确率为 99.8%。我可以带着 0.3% 的差价离开。我使用他们自己的 .NET API 测试了他们的数据库并获得了非常好的结果。【参考方案3】:

当在我的一些 aspx 页面上提交表单时,我使用 hostip.info 来获取客户端位置信息。这是我不久前写的一篇博客文章www.fencerowproductions.com

【讨论】:

【参考方案4】:

对于付费产品,您可以查看来自 cyScape 的 CountryHawk。

我不能亲自担保这个产品,但我们使用他们的 BrowserHawk 产品进行浏览器和连接速度检测(例如优化视频流)并且没有任何问题。

【讨论】:

【参考方案5】:

这里是另一个免费服务:http://www.webservicex.net/WCF/ServiceDetails.aspx?SID=46

WebserviceX.NET 提供了很多不同的免费网络服务。

【讨论】:

【参考方案6】:

ClientLocation 的地理定位通常可以工作,当您使用Google's JSAPI 时,您可以免费获得它。

Demo site

【讨论】:

【参考方案7】:

简单 -> 我不久前made a .NET extension method。所有这些都包含在一个您可以使用和引用的 DLL 中。它不需要任何 WEB SERVICE 或第 3 方外部 API 调用。

它也是免费的。

它也是开源的。呜呜呜。

享受吧!

它叫IPAddressExtensions,位于Codeplex。

【讨论】:

我查看了您的项目,它依赖于嵌入式数据集。这些数据来自哪里?是否需要定期更新? 我想我已经对这些数据的来源发表了评论。这是一个免费的数据集,并且定期更新。这意味着您也需要更新嵌入数据并重新编译,或者不使用嵌入数据但引用外部文件并使用它(这就是为什么我认为我添加了该功能:)) 我刚刚提交了一个补丁来支持外部数据集(流),因为我找不到您所指的功能。 (补丁 9776) 干杯 ;) 我工作太忙了,我打算上个星期去做。对于延误,我深表歉意。这也是我嵌入的确切来源。我会更新并 NuGet 坏小子...【参考方案8】:

这个网站使用 maxminds 免费产品 - 这是一个不错的展示 - http://www.ipaddress1.com/

【讨论】:

【参考方案9】:

我推荐 userlocation.com。它易于使用且价格合理,而且非常准确。

【讨论】:

【参考方案10】:

php 中使用 MaxMinds 可下载数据库的简单介绍 Geolocation

【讨论】:

【参考方案11】:

使用这些成人广告有一个绝妙的解决方案,即。 “YOUR_TOWN 的女性今晚想‘见’你”

有人想出了一种无需加载广告即可提取位置字符串的方法。 我找不到代码,用谷歌搜索成人广告并不是很有效,但这里有人可能记得。

【讨论】:

那是天才,同时也是粗略的。哈哈哈

以上是关于我可以使用哪些服务来根据 IP 地址查找用户的位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Python 中根据 IP 地址获取服务器的位置

从IP地址查找时区

php 根据IP地址查找用户的位置

从用户 ip 地址查找位置和区域

使用Bind提供域名解析服务(正向解析)

如何在 Python 中使用 IP 地址查找位置?