四层分辨法

同一次查询,四个地方会给出四个不一样的地址先确定你查的是哪一层,再谈结果对不对

在网页上查一次,通常看到的是运营商出口;在命令行里敲一次,看到的是网卡自己那一层。两个结果不一致不是出错,是查询对象本身不同。把这几层的关系理顺,后面判断归属地才有依据。

网卡层地址
路由器出口
运营商出口
代理层改写

四层地址,从上往下逐层确认

顺序不能颠倒,颠倒就会拿出口的数据去解释网卡的故障

  1. 第一层,网卡自己拿到的那条地址

    打开命令提示符敲一行查询命令,看标记为自动配置的那个结果。若开头是 169.254,说明一直在等分配却没人回应,属于链路层问题,上面几层都不必再看。

  2. 第二层,路由器分给你的段

    家用路由器默认开着分配服务,会把你划进 192.168 开头的区间。这一层换个房间连别的信号就会变,拿它当固定标识没有意义。

  3. 第三层,路由器拨号出去那一条

    登录管理页看状态页里显示的外侧地址。它才是对外的身份。若这条本身也落在 10 开头或 100.64 往后的段里,说明上游还套了一层转换。

  4. 第四层,代理或加速节点替你写上的那条

    开着转发再查,看到的会是节点那一端的地址。判断方式很简单:断开转发再查一次,两次不一样就说明中间被换过。

  5. 把四层结果写在一行里做对比

    四行写下来,能同时看到哪一层缺失、哪一层被替换。只记其中一层,事后回看时无法判断当时到底走的什么路径。

私网段速查

下面这些区间不会出现在公网上,查到就说明你看的是内部那一层

10 开头从 10.0.0.0 一直到 10.255.255.255,一段就能装下整个园区,办公网与机房内网常见
172.16 到 172.31连续十六段,虚拟化平台与容器网络经常直接占用
192.168 开头家用路由器出厂默认,单个段最多带 254 台设备
169.254 开头系统自选的临时地址,出现它代表没等到分配,是故障信号
100.64 到 100.127共享地址区间,出口落在这里说明前面还有一层转换在起作用
127 开头永远指向本机自身,出现它往往是查询对象填错了

内部地址与对外地址,用途完全不同

内部这一层

由路由器或机房设备当场分配
换环境就变,无法用来定位人
不同网络里可以完全重名
对外访问必须先做一次转换
出现 169.254 代表分配失败

对外这一层

由运营商或机房下发,能在公网上被路由
相对稳定,但重拨一次也可能换掉
同一段不会同时分给两户人家
家庭接入通常也是多户共用一条
开着转发时你看到的可能只是节点

查到的位置与实际对不上,按这张表对号

每一种现象都有明确的验证动作,不用反复重查

看到的现象背后的原因怎么验证
显示在隔壁市该网段的出口被集中在别的地市同时用两条不同运营商的线路各查一次,看结果是否分开
手机与宽带不在同一省移动数据的出口经常跨省汇聚关掉无线,只用流量再查一遍
注册地是一个从没去过的城市整段地址挂在某家公司名下请分支同事同一时间查一次,两地一致即可确认
查到机房所在地而不是本人所在地云主机或节点在中间替你发起连接断开转发直连后再查一次
段很新但结果明显不对号段刚被回收再分配,各库还没跟上换一家数据源交叉对比,历史快照也一并看

位置偏差都是从哪来的

四条,覆盖了绝大多数情况

想快速判断一个地址准不准,最省事的办法是换两条互不相干的网络各查一次:一条固定宽带加一条手机流量。两次连省份都不同,就说明它只能当出口看待,不能当位置使用。

被问得最多的几条

都和查到的地址该不该信有关

为什么命令行里查到的和网页上查到的不是一条?

命令行走的是本机协议栈,返回的是网卡那一层;网页请求要经过路由器与运营商才能出去,返回的是出口那一层。两个都对,只是对象不同。

查到 169.254 开头是不是网卡坏了?

多数不是。这个区间是系统临时给自己挑的,说明它没等到分配回应。先看网线、无线密码与路由器是否正常,再考虑硬件。

手机流量查到的省份和宽带不一样,是卡有问题吗?

不是。移动数据的出口由运营商统一规划,跨省汇聚很常见;固定宽带多为本地出口。两者不同属于正常。

同一条地址昨天显示 A 城,今天显示 B 城?

地址池会轮换,同一段也能再次分配出去。若两次间隔很短就变了,多半是其中一次读了缓存,先清掉缓存再试。

开了加速器之后还用查吗?

要查,但得知道查到的是节点的位置。想确认本机真实出口,先断开加速器再查一次作为对照。

这几页会用得上