IP 地理定位究竟有多准确?

IP 地理定位有多准确?

诚实的答案是:这完全取决于你要求的精度级别。在国家层级,IP 地理定位是网络取证中最可靠的推断之一。在城市层级,它更像是一次略微偏向你这一方的抛硬币。而对于某些类型的连接——移动运营商、VPN 出口、卫星链路——所报告的位置可能会自信满满地、系统性地出错。正因如此,Uplink Trace 追踪器生成的每一份档案都会附带明确的置信度评级,而不是给出一个看似权威的单一定位标记。

数据本身,不加粉饰

精度级别 典型准确率 原因
国家 95–99% 以注册机构的地址分配为锚点,而这些分配极少跨越国界
地区 / 州省 55–80% ISP 会在不发通知的情况下跨地区调配地址块
城市(固定宽带) 50–75% 依据路由和延迟推断得出,而非来自任何权威记录
移动网络 经常出错 运营商级 NAT 会把流量定位到网关所在城市,而非设备附近
VPN / 代理 显示的是出口服务器 可见的 IP 属于 VPN 运营商的数据中心
企业网络 往往显示总部 分支机构的流量从一个中央出口点流出
卫星 可能偏差整个国家 IP 出现在地面站,而地面站可能位于另一个大洲

为什么国家层级几乎总是正确的

IP 地址块由各区域互联网注册机构——RIPE NCC、ARIN 及其同类机构——分配给特定国家的特定运营商,而这一书面记录是公开的。分配给某家德国 ISP 的地址块绝大多数服务于德国客户,跨国界的重新分配既罕见又缓慢。诸如 DB-IP 之类的地理定位数据库正是以这些注册数据为起点再加以细化,这就是为什么档案中的国家字段值得高度信任,而其下的一切都值得怀疑。

为什么地区和城市要软得多

没有任何注册机构记录某个地址服务于哪座城市。地区级和城市级的条目都是推断出来的:依据运营 ISP 在何处集中部署基础设施、依据延迟测量、依据路由结构,以及依据该提供商历来部署地址块的模式。这些推断会随时间失效。ISP 可能在一次网络重组中悄悄把某个地址块从里昂迁到马赛,而在新的证据积累起来之前,数据库会一直报告里昂。在固定宽带上,城市的判断大约有一半到四分之三的时间是正确的——足以用于初步筛查,却绝不足以得出结论。其中的机制在IP 地理定位如何运作一文中有更深入的探讨。

移动网络与运营商级 NAT

移动运营商没有足够的 IPv4 地址给每一部手机分配一个专属地址。于是他们改用运营商级 NAT(即 RFC 6598 定义的共享地址空间),让成千上万的用户通过区域网关处的一小批公网地址汇聚流出。你观察到的 IP 属于那个网关,而它可能距离任何单个用户数百公里之遥。位于小镇的一部手机通常会被定位到运营商设在最近的大城市里的网关。当一次追踪落到某家移动运营商的 AS 上时,请把城市字段当作运营商的管路布置,而非用户的所在之处。

VPN、代理与数据中心地址段

VPN 所做的恰恰正是它所承诺的:可见的 IP 是出口服务器的,因此地理定位会准确地报告出口服务器的数据中心。数据库并没有失灵;它正确地定位了一台你并不关心的机器。Uplink Trace 会依据 AS 运营商的名称,用启发式方法标记数据中心和 VPN 地址段,并将其标注为疑似(LIKELY),而不是断言已获证实,因为运营商名称是证据,而非确凿的定论。理解什么是 ASN在这里很有帮助:自治系统会告诉你是谁在运营这张网络,而这往往比坐标更能说明问题。

企业网络与卫星链路

大型组织常常把分支机构的流量经由一个中央互联网出口路由出去,因此一名身处卡尔加里的员工,其流出的 IP 可能注册在位于多伦多的总部。卫星互联网则是极端情形:流量在某个地面站接入陆基互联网,而这个地面站可能与卫星天线位于不同的国家——偶尔甚至是不同的大洲。这两种模式产生的地理定位结果内部彼此自洽,在实际使用中却极具误导性。

为什么准确率因国家而异

准确率在地图上并非处处一致。小国在国家层级上准确得毫不费力,在城市层级往往也很准,因为可供出错的地域本就更少。那些拥有密集、竞争充分的 ISP 市场并按地区结构进行地址分配的国家——西欧大部分地区、北美城市地带——地理定位相对较好。而在由一家全国性运营商从单一的全国地址池中取用地址的国家里,国家层级以下的定位就很糟糕,因为寻址结构中没有任何东西能把一座城市与另一座区分开来。同一个数据库在荷兰可能表现出色,在别处的城市层级却近乎无用。

如何解读置信半径

一个诚实的地理定位结果是一个圆,而不是一个点。地图上的定位标记宣称了底层数据无法支撑的精度;而一个圆则表达的是网络证据把这个地址置于这一可能区域内的某处。请把这个半径当作误差棒来读:落在某家固定宽带 ISP 覆盖的城市之上的一个紧凑圆圈,是相当有力的信号;而以某个移动网关或数据中心为圆心的一个宽阔圆圈,则是工具在告诉你,其圆心几乎是任意选取的。当 Uplink Trace 画出一个宽阔的半径时,那本身就是结论——进一步收窄它便成了臆造。你可以在 8.8.8.8 的示例追踪中看到这在一个有充分记录的地址上是如何呈现的。

这在实践中意味着什么

国家层级的结果对于合规筛查、日志初筛和滥用分析而言足够可靠。地区和城市层级的结果是有待佐证的线索,而非可供引用的事实。而这一切都无法识别出某个人:IP 地理定位近似的是网络接入互联网的位置,而不是谁在使用它、或此人居于何处——这一区别在别人能否通过我的 IP 找到我的住址一文中有所剖析。任何一款给你一个精确定位标记却不附置信度评级的工具,并不比数据所允许的更准确;它只是比它应有的样子更加自信而已。