"我明明在上海,为什么查出来是杭州?""这个 IP 显示在美国,但服务商说是新加坡的。"几乎每个用过 IP 查询工具的人都遇到过归属地"不准"的情况。
先说结论:IP 地址本身不带位置信息,所谓归属地都是推断出来的。 推断就会有误差,而误差有规律可循。理解这些规律,你就能判断一个"不准"的结果到底要不要在意,以及能不能纠正。
IP 归属地是怎么得出来的
IP 地理定位数据库(常见的有 MaxMind、IP2Location、IPinfo 等)通常综合多种来源,具体比例和算法各家不公开,下面是公开可知的主要线索:
- 注册信息:全球 IP 由五大区域注册机构(ARIN、RIPE NCC、APNIC、LACNIC、AFRINIC)分配,登记信息里有机构名称和国家、地址。这反映的是"谁持有这段 IP",不是"用户在哪"。
- 网络测量:从分布在各地的测量点对 IP 做延迟和路由探测,用网络距离反推大致位置。
- 运营商自报:网络运营者可以按 RFC 8805 发布自己的 geofeed 文件,直接声明各 IP 段对应的地区,数据库厂商可以采用。
- 其他数据融合:部分厂商称会结合其他来源数据并人工校正,具体做法不公开。
最终你看到的"城市",是这些线索加权合成的一个最佳猜测。
为什么会不准:六个常见原因
1. IP 登记在总部,用户在外地。 运营商往往全国一张网,一段 IP 登记在省会或总部城市,实际用户分布在整个区域。
2. 移动网络出口集中。 手机流量通常汇聚到省级甚至更大范围的网关再出网,城市级定位误差在移动网络里尤其大。共享出口的背景可以看《CGNAT 与共享 IP》。
3. 数据更新滞后。 IP 段被转让、租赁或重新规划后,数据库里的位置可能很久没更新。
4. VPN、代理和云服务。 你看到的是出口服务器所在机房的位置,而不是使用者所在地,这是预期行为,不算"不准"。
5. 只能定位到国家时的默认坐标。 当数据只够判断到国家,数据库会给出一个代表性坐标。公开报道过美国有一户人家因为成为这类默认坐标点,被大量无关的 IP 查询"指向",后来厂商调整了默认坐标的做法。这个例子说明:看到一个很具体的位置,不代表它真的具体。
6. 不同数据库互相不一致。 同一个 IP 在不同数据库里常常得到不同城市。ipscoper 的数据来自第三方公开接口(主源和备用源),换了数据源,同一个 IP 的结果可能略有差异,原因见《IP 查询工具对比》。
精度该怎么理解
- 国家级:通常比较可靠;
- 城市级:差异较大,取决于地区、运营商和数据库;
- 街道、门牌级:IP 查询做不到,也不应该被期待做到。
我们不给出具体的准确率百分比,因为不同国家、不同网络类型的差别很大,任何单一数字都容易误导。
什么情况下你该在意
- 国家对不上:比如目标市场是美国,IP 显示成了其他国家,这是实质性问题。
- 城市级偏差:多数情况下影响有限,这是经验判断,具体取决于业务场景。
- 和时区、语言不一致:IP 位置本身不一定重要,重要的是和账号其他环境信息是否自洽,见《时区、语言与 IP 不一致》。
怎么自查和交叉验证
- 用 ipscoper IP 查询 查一次,记录国家、城市、运营商和 ASN;
- 再用一到两个其他查询站查同一个 IP,对比结果;
- 对比时优先看国家和 ASN/运营商,它们通常比城市更稳定;
- 用 环境检测 看浏览器时区是否与 IP 地区吻合。
如果几个来源在国家和 ASN 上一致,只是城市不同,一般不需要太担心。ASN 的含义见《什么是 ASN》。
能不能纠正
这取决于这个 IP 是谁的:
- IP 属于你自己的网络或租用的专线:可以联系你的网络提供商更新登记信息,并按 RFC 8805 发布 geofeed。同时向主要数据库厂商提交更正申请,通常需要提供证据,生效时间不确定。
- IP 是向服务商租用的:请服务商出面处理,个人用户的申请往往不会被采信。
- 只是访客的 IP 被判错:无法纠正,只能接受误差,在业务逻辑里别把城市级结果当作确定事实。
还要注意:你改了某一个数据库,不代表平台用的那个库也会改。平台具体用哪家数据没有公开说明。
ipscoper 的边界
我们不自己做定位,只展示第三方接口返回的结果,并明确标注为"大致区域,并非精确物理地址"。风控值也是启发式估算,说明见方法学页面。
小结
归属地不准不是 bug,而是推断方式决定的。把它当作"带误差范围的参考",国家看准、城市看趋势、街道不要信;遇到关键业务对不上,就多源交叉验证,再决定是否去纠错。更完整的 IP 信息解读,可以继续阅读《IP 查询能告诉你什么》。