什麼是 DNS 污染,一句話:你的設備問「這個域名對應哪個 IP」,答案還沒從真正的 DNS 伺服器回來,路上就有人搶先塞給你一個錯誤的 IP,於是網址明明沒打錯,頁面卻打不開、超時,或者跳到一個莫名其妙的地方。它不是你的網絡壞了,也不是網站掛了,而是「查地址」這一步被人插了話。和它經常被混在一起的 DNS 泄露是另一回事:泄露是你的查詢被別人看見,污染是別人給你假答案。

這篇講它怎麼發生、怎麼判斷自己遇到的是不是它、加密 DNS 能防到哪一步,以及為什麼把解析放進隧道才是根本解法。

它怎麼發生

傳統 DNS 查詢是明文的 UDP 包,沒有簽名,誰先回答設備就信誰。國際出口和某些網絡設備會監聽經過的 DNS 查詢,一旦看到特定域名,就立刻回一個偽造的答案,比真正的伺服器快得多。設備拿到假 IP 去連,自然連不上。這個機制對所有經過它的明文查詢有效,不管你把 DNS 伺服器設成誰,因為攔截的是問題本身,不是你問誰。所以「換個 DNS 伺服器」對污染基本無效,這是它和普通 DNS 故障最大的區別。

怎麼判斷是不是污染

  1. 同一個域名,不同網絡結果不同。 手機流動數據和家裏 Wi‑Fi 解析出的 IP 不一樣,或者一個能開一個不能。
  2. 解析出來的 IP 很奇怪。 明顯不屬於那家公司的地址段,或者是保留地址。
  3. 換加密 DNS 後能開了。 用 DNS over HTTPS 查到的 IP 和明文查到的不同,而且能連上。
  4. 用隧道內解析能開了。 這是最直接的證據。

如果你換了任何 DNS 伺服器都拿到同一個錯誤答案,幾乎可以確定是污染而不是配置問題。DNS 本身的工作原理在DNS 泄露是什麼意思裏有一節説明。

加密 DNS 能防什麼、防不了什麼

DNS over HTTPS 或 DNS over TLS 把查詢封在加密連接裏,路上的人看不到你在問什麼,也就無法針對特定域名搶答,污染這一步被堵住了。能防的:明文查詢被搶答。防不了的:拿到正確 IP 之後,到那個 IP 的連接本身仍可能被過濾;加密 DNS 服務商的地址本身也可能被過濾,導致查詢發不出去;而且你的真實 IP 仍然暴露給 DNS 服務商。怎麼選加密 DNS 見DNS over HTTPS 怎麼選

隧道內解析:根本解法

在代理或 VPN 客戶端裏開啓遠程 DNS 或 fake-ip 模式,「查地址」這一步就在隧道另一端完成:查詢在隧道里加密傳到海外伺服器,由它去問真正的 DNS,答案再傳回來。路上沒人看得到查詢,也沒人能搶答。同時它順手解決了泄露:電訊商拿不到域名列表。這就是為什麼各家教程都強調「DNS 要進隧道」,它一次解決兩個問題。

配置要點:Clash 系客戶端把 DNS 模塊的 enhanced-mode 設為 fake-ip,nameserver 填經代理發出的加密 DNS;Xray 系客戶端在 DNS 設定裏指定遠程解析器,並把 DNS 出站指向代理;iOS 客戶端在設定裏填 DNS 覆寫。操作細節在Clash Verge 使用教程與排錯

常見誤區

「我用了公共 DNS 就沒事了。」 明文查詢不管發給誰都會被搶答,除非查詢本身加密。

「污染就是被封了。」 不完全是。污染隻影響查地址,有些域名解析被污染、直連 IP 卻能通;也有域名解析正常、連接被過濾。兩者經常同時出現,但機制不同。

「改 hosts 檔案一勞永逸。」 短期可用,但目標站換 IP 你就得跟着改,而且 hosts 對 HTTPS 證書沒有幫助,還容易忘掉當初為什麼改。

兩分鐘自查

  1. 在客戶端關閉狀態下,用系統的 nslookup 或 dig 查一個海外域名,記下 IP。
  2. 開啓客戶端並開啓隧道內解析,再查一次,對比。
  3. 開啟我的 IP 是什麼確認隧道生效,跑一次IPv6 泄露檢測,IPv6 繞過隧道時 DNS 也常常跟着繞過。

什麼是不能承諾的

加密 DNS 和隧道內解析能堵住污染和泄露這兩個環節,堵不住到目標 IP 的連接被過濾,也堵不住 DNS 服務商本身被過濾。它們是必要條件,不是充分條件。法律層面:在中內地地,國際聯網須使用國家公用電信網提供的國際出入口信道,個人使用未經批准的渠道屬於違反相關規定;使用代理與否由你自己判斷並承擔責任,本文是技術説明,不構成法律意見。

404 VPN 的客戶端把 DNS 查詢預設放在 VLESS 或 WireGuard 隧道內解析,污染和泄露兩個環節一起堵住,帶 Kill Switch 防止斷線時退回明文 DNS,私隱政策寫明不保存 DNS 查詢。我們不承諾從中內地地任何網絡都能連上。開始使用請到首頁