当网站用正确的语言欢迎你,或以你的货币显示价格时,它很可能在地理定位数据库中查了你的 IP 地址。这类数据库很有用,但也普遍被误解。
数据从哪里来
没有任何数据库能看到设备的实际位置。数据提供方会综合各种间接线索:
- 注册记录:地区互联网注册管理机构记录的地址块注册国家/地区。
- 路由数据:哪个网络宣告了该地址块,以及该网络在哪里运营。
- 网络测量:从许多观测点测得的时延;几毫秒的延迟就能限定一个地址可能的距离。
- 运营者发布的数据:一些网络会发布 geofeed(RFC 8805),说明其前缀在哪里使用。
- 合作方和用户提交的数据:网络运营者的更正,以及在商业产品中来自应用和 Wi-Fi 的数据。
结果是针对一个地址块的估算,而不是针对某台设备。
准确度如何?
准确度因数据提供方和连接类型而异,但规律是一致的:
- 国家/地区在绝大多数情况下是对的。
- 省/州在大国的固定宽带上通常是对的。
- 城市的准确率则低得多——有时是最近的大城市,有时是数百公里外运营商设备的所在地。
好的估算会附带一个精度半径,本站会把它画在地图上。坐标会四舍五入到约一公里,因为假装更精确会造成误导。
为什么你的 IP 显示了错误的地点
- 移动网络通过少数几个中心网关转发流量,所以全国的手机可能都显示在同一个城市。
- 运营商级 NAT 把许多用户放在位于中心位置的同一个地址之后。
- VPN、代理和隐私中继显示的是其出口服务器的位置。
- 卫星互联网可能在完全不同的国家接入互联网。
- 重新分配的地址块在数据库更新之前仍保留旧数据。
更正位置
如果你的地址总是被定位错,请联系地理定位数据提供方——本站的位置数据来自接受更正的 DB-IP,其他数据库也同样接受更正。网络运营者可以发布 geofeed,让所有数据提供方都获得正确信息。
绝不应该用于什么
IP 地理定位无法识别一个人或一处住宅。它不应被用来定位某人、派遣紧急救援,或作为对个人作出决定的唯一依据。如果某个应用需要你的精确位置,它必须通过浏览器征求你的同意——而你可以拒绝。
在 IP 地理定位工具中,可以查看任意地址的估算位置,以及它的精度半径和数据来源。