FUNNY 发表于 前天 12:20

一个域名解析出几十个 IP 是不是被污染了?用 DNS 拨测看...

一句话答案:大概率正常。域名解析出几十个 IP,通常是接了 CDN——按访客地域就近调度到不同边缘节点,再配合多 IP 做负载均衡和冗余;真正要警惕的是解析到陌生 IP 或全国异常一致的结果。


有朋友在命令行里查域名,看到蹦出来一长串 IP 就慌了:"是不是 DNS 被污染了?"其实多数情况恰恰相反——解析出多个 IP 是 CDN 站点的正常形态。下面用宝塔拨测(t.bt.cn)的 DNS 方式对 www.qq.com 做一次真实拨测,带大家看看"多 IP"长什么样、怎么读,以及怎么和真正的劫持区分开。

实测:一次 DNS 拨测,解析出 30 个不同 IP
对 www.qq.com 的 A 记录做 DNS 拨测,实测结果如下(采集于 2026-09-28 20:31 前后,数值仅代表采集时刻的情况):

指标
本次实测值

目标
www.qq.com(DNS A 记录)

节点
333 个节点成功 / 333 个选中(成功率 100%)

覆盖地区
59 个(大陆 31 个 + 港澳台及海外 28 个)

解析到不同 IP
30 个

解析耗时(中位数)
12.5 毫秒

解析耗时(p95)
138 毫秒

解析耗时(最快 / 最慢)
0.3 毫秒 / 3062.2 毫秒

这 30 个 IP 并非乱分,按城市聚合后落在大陆和港澳台及海外的 9 处位置:

[*]大陆:天津、广东深圳、广东广州、上海、湖北武汉、江苏南京

[*]港澳台及海外:香港、新加坡、台湾台北
其中带「腾讯云 / CDN」标识的边缘节点包括香港(5 个节点)、新加坡(33 个节点)、广东广州(3 个节点)、上海国际节点(3 个节点)、天津(1 个节点)。换句话说,同一个 www.qq.com:广东的节点解析到广东的 IP、上海的节点解析到上海的 IP、新加坡的节点解析到新加坡的 IP——这就是 CDN 就近调度在起作用。

为什么一个域名能有几十个 IP
两种机制叠加的结果:

[*]就近调度:CDN 在全国乃至全球布了边缘节点,DNS 会根据发起查询的节点所在地,返回离它最近的边缘 IP。于是同一域名在不同地区解析出不同的 IP,结果横向铺开到多地。

[*]负载均衡 + 冗余:即便在同一个地区,也会配置多个 IP 轮流分担流量,某个 IP 挂了还能自动切换。所以解析结果天然不止一个。
这也正是"多 IP"与"没接 CDN 的裸源站"最直观的差别:裸源站通常全国各节点都解析到同一个源站 IP;接了 CDN 的站点则解析到分布在不同地区、不同运营商的一批边缘节点。

多 IP 和 DNS 劫持,怎么区分
看到几十个 IP 先别慌,从两个角度判断:

[*]看 IP 归属:正常的多 IP 解析到的是该域名自己的 CDN 边缘节点(比如本例的腾讯云 CDN)。若解析到陌生的、与该域名无关的 IP,或指向可疑的境外服务器,才需要怀疑被劫持。

[*]看是否全国一致:正常多 IP 是"按地区就近调度",各地解析到各自附近的节点,整体有规律、可解释;被劫持时往往是大量节点被统一指到某个陌生 IP,规律异常。
以本次实测为例:333 个成功节点解析出的 30 个 IP 全部归属于 QQ 的 CDN 节点(腾讯云 / 各地电信联通移动线路边缘),且按地区分布有明显规律——这是正常的 CDN 多 IP,不是劫持。

解析耗时也在传递信息
DNS 拨测除了看解析正确性,还看解析耗时。本次 www.qq.com 的解析耗时中位数 12.5 毫秒(p95 138 毫秒、最快 0.3 毫秒),说明多数节点借助本地递归解析器的缓存或就近调度,很快就能拿到结果。
各运营商的平均解析耗时如下(节点越少,均值越容易被个别慢节点拉高):

运营商
节点数
平均解析耗时

电信
121
44.4 毫秒

移动
93
50.6 毫秒

联通
73
57.4 毫秒

广电
2
28.8 毫秒

港澳台
8
62.9 毫秒

海外
36
128.4 毫秒

最慢的个别节点(如陕西宝鸡电信 3062.2 毫秒)属于长尾——通常是该节点碰上了一次无缓存的冷解析,不代表整体变慢。判断解析是否正常,看中位数远比盯极端值靠谱。

操作步骤:用宝塔拨测查一个域名的多 IP

[*]打开宝塔拨测首页(https://t.bt.cn/ );
[*]检测方式选「DNS测速」,记录类型选「A 记录」;
[*]输入目标域名(例如 www.qq.com),一键拨测;
[*]等全国各节点解析完成后,重点看解析 IP 的数量、位置分布和解析耗时三项。
一句话收尾:域名解析出几十个 IP,绝大多数是 CDN 就近调度加多线路冗余的正常表现,不是 DNS 故障;需要提防的是解析到陌生 IP,或全国节点异常一致地指向同一地址这类劫持迹象。
本文拨测数据采集于 2026-09-28 20:31 前后,节点池和线路是动态的,数值仅代表采集时刻的情况。宝塔拨测 DNS 方式监控"域名解析正确性、解析耗时",具体以官方文档(https://docs.bt.cn/user-guide/baota-probe/monitoring-guide )为准。

常见问题一个域名查出来几十个 IP,这情况正常吗?
正常。这多半说明域名接入了 CDN,会把访客就近调度到不同地区、不同运营商的边缘节点,同时用多个 IP 承担负载均衡和冗余。以 www.qq.com 的实测为例:用宝塔 DNS 拨测查一次,333 个节点解析出 30 个不同 IP,成功率 100%。

接了 CDN 之后,为什么域名会解析出多个 IP?
CDN 会把同一个域名在不同地区解析到各自的边缘节点 IP,让用户访问离自己最近的那一个;同时同一个地区内部也会备多个 IP 用于分流和故障切换。所以解析结果会铺开到多个地址,而不是全部指向同一个源站。

怎么用宝塔拨测查看一个域名解析到了哪些 IP?
打开宝塔拨测(t.bt.cn)首页,方式选「DNS测速」、记录类型选 A 记录,填入域名后一键拨测,就能让全国各节点各自解析一次,然后查看解析出的 IP 数量、分布位置以及解析耗时。

多 IP 解析和 DNS 劫持要怎么区分开?
关键是看解析出的 IP 归属。正常情况下,多 IP 都指向该域名自己的 CDN 边缘节点,且各地结果有规律可循;如果出现了与该域名无关的陌生 IP,或大量节点整齐划一地解析到可疑服务器,才要怀疑遭遇了劫持。

DNS 拨测里的「解析正确性」和「解析耗时」分别看什么?
解析正确性看解析出来的记录值对不对、是不是这个域名应有的 IP;解析耗时看从发起查询到拿到结果用了多久。以本次 www.qq.com 为例,解析耗时中位数 12.5 毫秒,说明本地递归解析器和 CDN 缓存命中速度很快。

域名只解析出一个 IP,是不是说明没接 CDN?
不一定。是否多 IP 取决于 CDN 与 DNS 的配置策略:有的站点用一个固定入口 IP 再在内部调度,有的按地区拆成多个 IP。想判断是否接了 CDN,更可靠的办法是看解析 IP 的归属是否为 CDN 厂商,或者查域名有没有走 CDN 的 CNAME 别名。


延伸阅读:换个角度看解析,推荐 解析IP与响应IP;各地区解析快慢差多少,可看 解析耗时地区差异;解析结果可疑时的完整排查思路,参考 拦截污染综合排查。有问题欢迎回帖。

页: [1]
查看完整版本: 一个域名解析出几十个 IP 是不是被污染了?用 DNS 拨测看...