IP 归属地查询:区县字段为什么经常是空的
用 IP 归属地查询,有人发现"区县"那一栏有时候是空的。
不是漏了,是本来就查不到。
归属地不是一个点,是一片
IP 地址是分配给一个网段的,不是一个设备一个地址。
运营商在某个地市划出一段地址,这一整段共用同一条归属记录。库里记的是"这段归谁、大概在哪"。
所以精度天生只能到城市,能到区县已经是靠补充数据猜出来的。
区县数据从哪来
三条路:运营商报备、路由探测、用户行为反推。
报备信息最准,但很多省份只到地市一级。探测能看出网络落点,但落点常常是机房,不是用户家。行为反推靠大量样本统计,覆盖率有限。
三条路都不全,拼起来就成了"有的 IP 有区县,有的没有"。
为什么移动网络特别容易空
手机流量走的是运营商的核心网,出口往往集中在一个省会节点。
你的位置在县城,出口 IP 却在省会机房。这种 IP 的区县字段当然是空的,连城市都可能标错。
看到自己的手机 IP 显示"省会某机房",不用怀疑被监控了,就是网络结构如此。
该信到什么粒度
国家、省份:基本可信,可以拿来做区域分流。
城市:大部分可信,个别会偏到相邻地级市。
区县及以下:只能当参考,不适合做任何自动决策。
想更准一点的做法
手机号归属地、GPS、Wi-Fi 定位都比 IP 准,但那是另外三套技术,IP 换不来。
真要查某个 IP,直接去 IP 地址查询 看返回结果,full 字段会把已有的层级拼好,缺的部分自然就省略了——空着不是故障,是数据边界。