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

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

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

【问题讨论】:

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

标签: ip-address location geography


【解决方案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 文件:

【讨论】:

  • 他们产品的精简版是免费的,例如 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 时,您可以免费获得它。

        【讨论】:

          【解决方案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 的女性今晚想‘见’你”

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

                【讨论】:

                • 那是天才,同时也是粗略的。哈哈哈
                猜你喜欢
                • 2022-11-05
                • 1970-01-01
                • 1970-01-01
                • 2018-01-05
                • 2014-11-06
                • 2014-07-31
                • 2013-01-05
                • 1970-01-01
                • 2013-11-15
                相关资源
                最近更新 更多