那天我查了半天网络问题,最后发现是360改了DNS

说实话,写这篇文章之前我纠结了几秒钟要不要提“360”这三个字,因为我知道只要一说它,评论区就会冒出两拨人:一拨说“360就是流氓软件”,另一拨说“你自己不会设置怪谁”,但今天我不站队,就单纯讲一件我亲身经历的事——我的DNS被360改了,而且改动得毫无征兆。
事情是这样的,上周三下午,我正赶一个项目文档,突然发现网页打开变得特别慢,不是那种网速慢的卡,而是有些网站直接打不开,比如GitHub和某个国外的API文档页面,一开始我以为是公司网络抽风,就切到手机热点试了一下,结果一样,这时候我本能地打开命令行,ping了一下百度——通的,延迟也正常,再ping一下GitHub——超时,好,问题大概率出在DNS解析上。
我打开网络设置,看了一眼IPv4的DNS,发现它被改成了180.76.76.76 和180.76.76.77,这俩IP我太熟了,是百度的公共DNS,按理说百度DNS也不算差,但问题在于我本来用的是Cloudflare的1.1.1.1和谷歌的8.8.8.8,而且我是手动设置的,怎么会突然变成百度呢?
我第一反应是有人动过我电脑,但排查了一圈,办公室就我一个人,家里也没有别人,接着我检查了路由器,没变,然后我突然意识到,最近一次系统变化是我前两天帮老婆装了一个360安全卫士,因为她老抱怨电脑弹窗多,我想着360至少能管管那些垃圾软件,结果倒好,垃圾软件没管住,先把我自己的DNS给管了。
360为什么会改你的DNS

为了搞清楚它是不是真的干了这件事,我专门在虚拟机里重装了一遍360安全卫士,并且把DNS改回手动设置的114.114.114.114,然后观察它的行为,结果刚装完重启,再一看——DNS又变成了百度那两个地址,而且过程中没有任何弹窗提示你“我们要修改你的DNS设置”,也没有任何一步让你选择“是否使用360推荐的DNS”,它就是静悄悄地改了。
为什么改?其实原因很简单:为了“上网保护”,360安全卫士有一个功能叫“DNS安全防护”,默认开启,它会自动把你的DNS指向360自有的或者它认为安全的DNS服务器(通常就是百度DNS或者它自家的360DNS),在360的逻辑里,这是为了帮你拦截恶意网站、钓鱼页面、以及运营商劫持,从安全角度看,这确实有一定道理——国内很多运营商的DNS会有广告劫持、解析慢甚至返回错误IP的情况,换一个公共DNS确实能改善体验。
但问题出在行为方式上,它是无感知的,对于普通用户来说,他们根本不知道DNS是什么,改了也无所谓,但对于稍微懂一点网络的人来说,这简直就是“流氓行径”——你怎么能不经我同意就修改我的系统设置?更何况我本身已经用了一个更快的国际DNS,你这么一改,反而让我的GitHub解析不到了,为什么?因为百度DNS对某些海外域名的解析支持不如Cloudflare,尤其是在没有开启ECS(EDNS Client Subnet)的情况下,可能会被指向错误的CDN节点或者直接超时。
更尴尬的是,你想改回来还得跟它斗智斗勇
发现问题后,我第一件事就是去网络设置里把DNS改回1.1.1.1,然后运行ipconfig /flushdns 清空缓存,好,马上恢复正常了,但第二天我打开电脑,又卡了,一查,又被改回去了,这下我有点火大了。

我找到360安全卫士的设置,翻遍了所有菜单,发现在“安全防护中心” > “网络安全防护” 下面有一个“DNS安全防护”的开关,默认是开启的,我把它关了,然后再次手动改回DNS,重启,这次没再变,但你以为这就完了?不,过了几天它又自动开了——好像是360软件自动更新后,某些设置会被重置,这种情况我在网上也看到过不少类似反馈,其实就是产品的“用户引导”做得太霸道:它把“更安全”的选择默认强加给你,而不考虑你是否需要。
如果你用的是360安全卫士的“极速版”或者“功能大全”里的“DNS优选”工具,那更要小心,那个工具会诱导你一键使用“360安全DNS”,而且就算你点了“不再提示”,它也可能在后续版本更新后再度弹出。
这事到底该怪谁?
我冷静下来想了想,360改DNS这件事,得分开看。
对小白用户来说,其实可能是个好事。 很多普通用户的电脑DNS是被运营商默认分配的,而运营商的DNS经常干坏事:你输错了网址它给你跳广告页面,你看视频它给你插片头广告,甚至有些还会因为缓存刷新慢导致你打不开新备案的网站,360帮你改成百度的公共DNS或者它自己的安全DNS,至少能避免这些劫持,而且百度DNS在国内的解析速度确实不错,延迟低,普通用户根本不需要知道DNS是什么,他们只关心“网页能不能打开”“电脑有没有中毒”,从这个角度讲,360的做法虽然粗暴,但出发点是保护。
但对进阶用户来说,这就是一种越权行为。 我把DNS手动改成了1.1.1.1,是经过我自己的判断和选择的,软件作为服务者,应该尊重用户的手动设置,而不是用自己的规则覆盖用户的选择,你可以推荐,可以弹窗询问,但不能静默修改,这就好比你家门锁本来挺好的,突然有个人说“你这个锁不安全,我帮你换成我推荐的锁”,然后趁你不在偷偷换了,就算他换的锁确实更安全,你也依然会觉得被冒犯。
而且还有一个更实际的问题:360的安全DNS并非对所有人都友好,比如你需要访问一些境外学术网站、开发者工具、或者使用代理的情况,360的DNS可能会因为政策原因对这些域名做特殊处理,导致你无法正常访问,我那次GitHub打不开,很可能就是百度DNS对GitHub的解析出现了问题——后来我切换到阿里DNS(223.5.5.5)就好了,没有一个DNS是万能的,用户应该有自己选择的权利。
如果你也遇到了类似的问题,可以这样处理
如果你发现自己的DNS被360改了,想彻底解决,可以按以下步骤来:
1、第一步:关闭360的DNS安全防护
打开360安全卫士 -> 点击右上角“三条杠”菜单 -> 设置 -> 安全防护中心 -> 网络安全防护 -> 关闭“DNS安全防护”开关,注意,这个开关有时候藏得比较深,不同版本路径略有差异,你也可以直接搜索“DNS”找到。
2、第二步:手动修改DNS并锁定
在Windows的网络设置中,把IPv4的DNS改为你想要的地址(比如阿里223.5.5.5、114.114.114.114,或者国外的1.1.1.1、8.8.8.8),然后可以配合组策略或者第三方工具锁定DNS设置(如果你不想再被改的话),不过最稳妥的办法还是卸载360安全卫士,换用更老实的杀毒软件。
3、第三步:检查路由器DNS
有时候360还会修改你路由器的DNS(通过它的路由器卫士功能),如果你发现电脑改了又变,可以去路由器管理后台看一眼,把DNS也改成固定的。
4、第四步:实在不行就卸载
如果你觉得360这种“过度保护”已经严重干扰了你,那就卸载吧,市面上替代品很多,比如火绒、腾讯电脑管家(也有类似行为但相对温和),或者干脆只用Windows自带的Defender。
最后说几句心里话
写这篇文章不是要黑360,实际上我自己以前也用过很长时间的360,它确实在清理垃圾、拦截恶意软件方面有两把刷子,但它的产品哲学一直很“爹味”:我为你做决定,我比你更懂你需要什么,这种风格在早期互联网安全环境恶劣的年代,确实帮助了很多小白用户,但到了今天,用户对隐私和自主控制的意识越来越强,这种“替你决定”的做法就显得格格不入了。
DNS这件事只是一个缩影,360还有没完没了的弹窗推送、自动安装推广软件、篡改浏览器首页……每一次你都要花时间去关,而对于那些不懂电脑的父母辈用户来说,他们可能根本不知道自己的电脑被改成了什么,也找不到关闭的地方,最后电脑变得越来越慢,他们还以为是正常老化。
如果你让我给建议:对于懂一点电脑的朋友,我建议直接用Windows自带防御+手动设置DNS,最多加一个火绒,对于完全不懂电脑的家人,我也建议你帮他们一次性设置好,然后卸掉360,因为一个软件如果连DNS都要替你决定,那它未来还会替你决定更多东西,而你的电脑,终究应该由你说了算。
文章摘自:https://idc.huochengrm.cn/dns/26697.html
评论
郯庆
回复打开360设置,找到网络连接,点击高级设置,修改DNS地址即可。