> For the complete documentation index, see [llms.txt](https://docs.ipcheck.ing/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ipcheck.ing/knowledge-base/zh-tw/diagnose/is-my-dns-hijacked.md).

# 我的 DNS 是否遭到劫持或污染？

比較獨立解析器的回應，以找出 DNS 篡改。

每次你開啟網站時，總會有某個機制把名稱翻譯成位址。如果這個答案在傳送途中被改掉，你最後就會被帶到你沒有要去的地方——而瀏覽器不會顯示明顯的跡象。

{% hint style="success" %}
**簡短回答。** 透過 **進階工具 → DNS 解析**使用幾個彼此獨立的解析器查詢相同網域。知名且穩定的網域應該會得到大家都一樣的答案。當你的 ISP 解析器回傳的結果和每個公開解析器都不同時，那就是警訊。
{% endhint %}

## 「劫持」與「污染」的意思

這兩個詞都在描述同一個結果——名稱查詢得到錯誤答案——只是來源不同。

* **劫持** 通常表示你的解析器、路由器，或裝置上的惡意軟體，刻意回傳它自己選定的位址。常見用途是廣告、搜尋導向，或強制登入入口頁。
* **污染** （或毒化）通常表示網路路徑上的某個東西會在真正的答案到達前，插入偽造的回應。國家層級的過濾通常就是這樣運作。

你不需要先分辨它們，就能偵測到其中任一種。測試方法相同： **比較獨立來源。**

背景： [DNS 如何運作](/knowledge-base/zh-tw/concepts/how-dns-works.md)

## 值得調查的症狀

| 你注意到的現象                     | 可疑程度                   |
| --------------------------- | ---------------------- |
| 拼錯的網域會被導向由你的 ISP 執行的搜尋或廣告頁面 | 輕微——常見的 ISP 行為，但這仍然是竄改 |
| 你知道的某個網站載入了一個完全不相干、滿是廣告的頁面  | 高                      |
| 原本通常能正常運作的網站出現憑證警告          | 高——你連到的位址不是實際的伺服器      |
| 某個網域解析到一個奇怪的位址，而其他一切都正常     | 高                      |
| 某個網站透過 VPN 能用，但不用就不能用       | 中等——可能是 DNS，也可能是封鎖     |
| 廣告出現在原本不會有廣告的頁面中，像是被注入進去一樣  | 高                      |

{% hint style="warning" %}
**千萬不要因為憑證警告就點進去你在意的網站。** 那個警告是唯一能在 DNS 竄改後仍然保留下來的訊號。它代表回應你的伺服器無法證明自己就是正主。
{% endhint %}

## 比較測試

{% stepper %}
{% step %}

#### 選一個穩定的網域

挑一個大而無聊、位址不會每幾分鐘就變一次的網站。大型且知名的網站最合適。先不要拿大量使用 CDN 分散服務的網站來測，因為它們對不同解析器回傳不同位址是合理的，會讓情況變得混亂。
{% endstep %}

{% step %}

#### 透過 DNS 解析執行

開啟 **進階工具 → DNS 解析**，輸入網域，選擇記錄類型 **一個**，然後執行。

MyIP 會向全球一組知名服務提供者查詢——有些使用一般 DNS，有些使用加密的 DoH，並在結果表中以鎖頭標示——將每個答案並排顯示。
{% endstep %}

{% step %}

#### 看模式，不要只看單一列

| 模式                                                 | 結論              |
| -------------------------------------------------- | --------------- |
| 大家回傳相同位址                                           | 乾淨              |
| 答案略有不同，但都落在同一家供應商的範圍內                              | 正常的 CDN 行為，不是竄改 |
| 大多數解析器一致； **某一地區的解析器卻回傳不同結果**                      | 那個地區網路路徑上的干擾    |
| 某個解析器回傳私人位址（`10.x`, `192.168.x`, `127.0.0.1`）給公開網站 | 幾乎可以肯定是劫持       |
| 某個解析器回傳的位址屬於完全不相關的國家或網路                            | 明顯的竄改跡象         |

{% hint style="info" %}
解析器清單刻意涵蓋好幾個國家。當某一國家的解析器對某個特定網域與世界其他地方不一致時，這正是比較機制在發揮作用，而不是程式有問題——請用表格上方的區域標籤把它們分開，然後並排閱讀各列。
{% endhint %}
{% endstep %}

{% step %}

#### 和你自己的解析器比較

這個工具查的是公開服務提供者，不是你裝置實際使用的解析器。要把你的解析器也納入比較，請檢查你的電腦對同一個網域的回應：

{% tabs %}
{% tab title="macOS / Linux" %}

```bash
dig example.com +short
```

{% endtab %}

{% tab title="Windows" %}

```
nslookup example.com
```

{% endtab %}
{% endtabs %}

如果你自己的答案和公開共識一致，表示你的解析器行為正常。如果只有它不一致，那就是元兇。
{% endstep %}
{% endstepper %}

## 用加密 DNS 來確認

一般 DNS 傳輸時既未加密也未驗證身分，這正是竄改容易發生的原因。加密 DNS——DNS over HTTPS（DoH）或 DNS over TLS（DoT）——會把查詢包起來，讓路徑上的任何人都無法讀取或重寫。

這樣你就能得到一個乾淨的第二意見：

1. 在瀏覽器中開啟加密 DNS。大多數現代瀏覽器都有「安全 DNS」或「DNS over HTTPS」設定。
2. 重新載入先前異常的網站。
3. 如果現在能正常運作，就表示答案是在你和解析器之間的某處被改掉了。

在 MyIP 的 DNS 解析結果中，標記為 **DoH** 的列已經是透過加密通道回應。當 DoH 的各列彼此一致，而一般 DNS 的列不一致時，你就有證據了。

在官方網站上， **進階工具 → 深入 DNS 洩漏測試** 更進一步：它會擷取實際為你提供服務的解析器，並顯示是否有要求和驗證 DNSSEC 簽章。若某個解析器要求跳過驗證，值得再看一眼。此工具僅在 ipcheck.ing 提供。

## 切換解析器會做什麼、又不會做什麼

切換到公開解析器通常是第一步。要清楚了解它能帶來什麼。

| 它能修正                             | 它無法修正                                          |
| -------------------------------- | ---------------------------------------------- |
| 行為異常或注入廣告的 ISP 解析器               | 網路路徑上被注入的偽造回應——不論你詢問的是哪個解析器，這些回應都會到達，除非查詢本身有加密 |
| 偷偷覆寫你 DNS 設定的路由器——如果你是在裝置上直接設定的話 | 發生在 DNS 之後的封鎖，例如 IP 或 TLS 層級                   |
| 被你的 ISP 快取錯誤的回應                  | 你自己電腦上的惡意軟體，它可以在本機覆寫 DNS                       |
| 把拼錯的網域導向廣告頁面                     | 真正已經當機的網站                                      |

{% hint style="info" %}
如果對公開解析器使用一般 DNS 仍然得到錯誤答案，請使用 **加密** DNS。加密才是阻止路徑上注入的關鍵；單純更換你詢問的解析器並不夠。
{% endhint %}

<details>

<summary>我要怎麼確認是路由器出了問題？</summary>

直接在一台裝置上設定公開解析器，繞過路由器提供的設定，然後重複查詢。如果那台裝置現在正常，但其他裝置仍然錯誤，那就是路由器造成的。有些路由器不管用戶端怎麼設定，都會攔截所有 DNS 流量；在那種情況下，只有加密 DNS 才能通過。

</details>

<details>

<summary>大型服務的答案不同——這真的沒問題嗎？</summary>

通常是的。內容傳遞網路會回覆距離查詢者最近的邊緣伺服器，所以法蘭克福的解析器和新加坡的解析器合理地會回傳不同位址。判斷重點是這些位址是否仍屬於同一個營運者。你可以用搜尋按鈕，或用 [Whois 查詢](/knowledge-base/zh-tw/lookup-privacy/whois-search.md)查出來，然後確認 ASN。

</details>

<details>

<summary>我的電腦會不會是惡意軟體在作怪？</summary>

會。本機惡意軟體可以修改你的 DNS 設定、編輯 hosts 檔，或安裝能隱藏你本來會看到的憑證警告的根憑證。如果竄改行為跟著你的筆電跑到另一個網路上，應該懷疑的是電腦而不是網路，並執行可信賴的惡意軟體掃描。 [安全檢查清單](/knowledge-base/zh-tw/lookup-privacy/security-checklist.md) 涵蓋更廣泛的基本健檢。

</details>

## 還卡住嗎？

* [DNS 解析器](/knowledge-base/zh-tw/lookup-privacy/dns-resolver.md) —— 工具完整說明
* [無法開啟網站？](/knowledge-base/zh-tw/diagnose/cant-open-a-website.md) —— 更廣泛的決策樹
* [DNS 洩漏測試](/knowledge-base/zh-tw/connection-tools/dns-leak-test.md) —— 你實際正在使用哪些解析器


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ipcheck.ing/knowledge-base/zh-tw/diagnose/is-my-dns-hijacked.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
