DNS劫持(DNS Hijacking),通俗来说,就是互联网世界的“导航欺骗”或“指路造假”。

为了让你彻底理解并解决这个问题,我将从原理症状解决方案三个方面为你详细拆解。


1. DNS劫持的原理:为什么你会“迷路”?

首先,我们需要理解DNS(域名系统)的作用。它就像互联网的电话本导航仪,将你输入的网址(如 google.com)转换成计算机能识别的IP地址(如 172.217.1.1)。

正常流程:

  1. 你在浏览器输入网址。
  2. 你的电脑询问DNS服务器:“这个网址的IP是多少?”
  3. DNS服务器回答正确的IP。
  4. 浏览器访问该IP,打开网页。

劫持流程(攻击原理):

当发生DNS劫持时,在这个询问过程中出现了“坏人”:

  • 中间人拦截: 攻击者(有时甚至是某些不良ISP运营商)在你的请求到达正规DNS服务器之前,拦截了你的查询。
  • 伪造回复: 攻击者抢先一步,给你的电脑发送了一个假的IP地址
  • 结果: 你的浏览器以为拿到了正确地址,结果却跳转到了攻击者指定的网站(通常是满屏广告的页面、钓鱼网站,或者是无法访问的错误页面)。

比喻: 你打车说要去“市中心医院”,司机(DNS)本该带你去医院,但被某种力量控制,直接把你拉到了“莆田系诊所”或者荒郊野外。

常见的劫持手段

  • ISP(运营商)劫持: 为了推送广告或节省跨网流量,运营商强行将你解析到他们的缓存服务器或广告页。
  • 路由器DNS被篡改: 如果你的路由器密码太简单被黑客入侵,DNS设置会被修改,全家设备都会受影响。
  • 本地Hosts文件篡改: 电脑中的病毒或流氓软件修改了系统的hosts文件,强制指定域名的IP。

2. 如何判断自己被劫持了?

如果你遇到以下情况,很可能遭受了DNS劫持:

  • 广告弹窗: 打开正常的网站(如百度、淘宝),右下角或网页中突然出现不相关的悬浮广告。
  • 网页跳转: 输入一个网址,却跳转到了另一个完全无关的赌博、色情或导航网站。
  • 莫名报错: 朋友能打开的网站,你却打不开,或者提示“404”,但IP地址显示很奇怪。
  • 证书报警: 访问HTTPS网站时,浏览器提示“连接不安全”或证书错误(因为假IP无法提供真证书)。

3. 怎么解决 DNS 劫持?(实操指南)

解决DNS劫持的核心思路是:绕过不可信的DNS,使用加密且权威的DNS服务。

方法一:修改本地 DNS 服务器(最常用、最有效)

不要使用运营商(ISP)默认分配的DNS,手动修改为公共、无污染的DNS。

  • 推荐的公共DNS:
    • Google: 8.8.8.8 / 8.8.4.4
    • Cloudflare: 1.1.1.1
    • 阿里 DNS: 223.5.5.5 / 223.6.6.6
    • 腾讯 DNSPod: 119.29.29.29

操作步骤(以 Windows 为例):

  1. 打开「控制面板」 -> 「网络和共享中心」。
  2. 点击左侧的「更改适配器设置」。
  3. 右键点击你正在连接的网络(Wi-Fi或以太网),选「属性」。
  4. 双击 Internet 协议版本 4 (TCP/IPv4)
  5. 选择「使用下面的 DNS 服务器地址」,填入上述推荐的IP即可。

方法二:开启 DoH (DNS over HTTPS)

这是目前防止劫持的终极杀招。传统的DNS查询是明文的(谁都能看,谁都能改),DoH技术将DNS查询加密封装在HTTPS流量中,让运营商和黑客无法窃听,也无法篡改

  • Chrome / Edge 浏览器开启方法:
    1. 进入浏览器「设置」。
    2. 搜索 “DNS”。
    3. 找到「使用安全 DNS」。
    4. 选择「使用当前服务提供商」或手动选择 Cloudflare / Google (Public DNS)

方法三:检查并清理 Hosts 文件

如果是本地恶意软件作祟,修改DNS服务器没用,需要清理Hosts。

  1. 进入路径:C:\Windows\System32\drivers\etc
  2. 用记事本打开 hosts 文件。
  3. 检查里面是否有你没见过的奇怪网址指向。
  4. 如果有,删除它们并保存(通常 Hosts 文件只有前面几行注释,后面应该是空的,除非你自己加过)。

方法四:修改路由器密码

登录路由器管理后台(通常是 192.168.1.1192.168.0.1):

  1. 检查路由器的 DNS 设置是否被篡改。
  2. 务必修改路由器的默认管理员密码,防止再次被黑客扫描入侵。

总结

DNS劫持就是利用DNS明文传输的漏洞,给你指错误的路。

最简单的自救方案是:修改电脑/手机的DNS为 8.8.8.8 或 1.1.1.1,并在浏览器中开启“安全DNS”功能。

知乎的其他精彩回答:一文看透DNS污染、危害及解决方案 – 知乎

Categories:

Tags:

No responses yet

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注