我不是在寻找能够做到这一点的服务。我只是好奇地理位置如何运作。
答案 0 :(得分:27)
将IP地址映射到地理位置是通过表格完成的,其中IP映射到特定位置。但是,这个位置不需要准确,因为IP地址不包含任何有关其位置的信息,这些信息近似。
来自http://en.wikipedia.org/wiki/Geolocation_software:
IP地址数据的主要来源是区域互联网注册管理机构,它们在位于各自服务区域的组织之间分配和分配IP地址:
- 美国互联网号码注册局(ARIN)
- RIPE网络协调中心(RIPE NCC)
- 亚太网络信息中心(APNIC)
- 拉丁美洲和加勒比地区互联网地址注册局(LACNIC)
- 非洲网络信息中心(AfriNIC)
次要来源包括:
- 数据挖掘或用户提交的地理位置数据。例如,天气网站可能会要求访问者查找城市名称以查找其本地预测。另一个例子是将用户的IP地址与他/她的帐户配置文件中的地址信息配对。
- 互联网服务提供商提供的数据。
- 合并来自不同供应商的数据库。
- 猜测来自相邻C类范围[2]和/或从网络跃点收集。
准确性得到改善:
- 数据清理过滤掉或识别异常情况。
- 用户提交数据的统计分析。
答案 1 :(得分:7)
据我所知,IP子网被分配给服务提供商上游的提供商 - 因此每个IP范围都被标记为在该提供商的原始国家/地区内,因此该范围内的每个IP都被认为是在该范围内国家。
这不是万无一失的 - 我们以前有一家比利时供应商向我们(在英国)提供卫星宽带。每当我们搜索任何内容时,我们都会被允许只看到比利时的页面。
答案 2 :(得分:1)
有许多组织负责管理IP地址的分配,例如美国互联网号码注册(ARIN)。这些组织维护已分配IP地址块的主列表及其分配位置,并经常发布更新列表。
地理定位软件充分利用这些列表,并提供将IP地址映射到各国的快速方法。通常,商业产品将争取更高的准确性并利用其他数据源。
查看维基百科上的Geolocation Software文章,了解该主题的一些有趣链接。
答案 3 :(得分:1)
在互联网基础设施中有一种称为自治系统的东西,定义here
每个提供商至少分配了其中一个。 AS具有唯一的ASN(自治系统号),在该AS内可以具有网络(WAN和LAN)。
这些被分配给提供商,这些提供商当然有一个位置,因此路由协议由ASN知道他们所在的区域。
使用WHOIS服务可以确定IP地址属于谁,因为我们大多数人在上网时被我们的提供商分配了IP地址,在WHOIS上,您通常会找到您所在的提供商所在的城镇。但是WHOIS是一个网站,你会发现它是它的所有者,因此Geolocation会大量使用这项服务。
答案 4 :(得分:1)
要快速启动地理定位,请打开命令行并输入tracert stackoverflow.com
并密切关注结果。大多数情况下,前几行已经提供了有关您所在位置的重要提示。
答案 5 :(得分:0)
基本上他们根据IP地址猜测。在某个地方,他们有一个ip-address范围和位置列表。他们根据针对whois,traceroute和/或用户反馈的查找来维护。
例如,MaxMind似乎主要依靠用户反馈来保持其列表的最新状态。人们使用VPN和代理来解决IP baes geoblocking问题。有时表只有错误的数据。
如果你想要那些价格便宜并且大部分都有效并且不担心疏远你的用户的话,这是一个很好的解决方案。不要期望超过99%的结果在实际用户位置的2000英里范围内。