DNS 查詢
線上查詢網域的 DNS 記錄(A/AAAA/MX/TXT/NS/CNAME/SOA 等),透過 DoH 解析,瀏覽器本地運行保護隱私
輸入網域,選擇記錄類型,點擊「查詢」
什麼是 DNS 查詢?
DNS(Domain Name System,網域名稱系統)是網際網路的「電話簿」,負責把人類可讀的網域(如 example.com)翻譯成機器通訊用的 IP 位址。DNS 查詢就是向 DNS 伺服器請求某個網域下的指定記錄,例如 A 記錄回傳 IPv4 位址、MX 記錄回傳接收郵件的伺服器、TXT 記錄常用於 SPF/DKIM 與網域所有權驗證。本工具透過 DoH(DNS over HTTPS)協定直接在瀏覽器內完成查詢,請求由你的瀏覽器發往公共 DNS 解析服務商,不經過我們的伺服器,查詢內容和結果都留在本地,保護隱私。
使用方法
使用步驟
- 在輸入框中填寫要查詢的網域,例如 example.com
- 在「記錄類型」下拉框中選擇需要查詢的記錄類型(如 A、MX、TXT)
- 可選:切換 DoH 服務商(Cloudflare、Google 或阿里公共 DNS)
- 點擊「查詢」按鈕或按 Enter
- 在結果表格中查看名稱、類型、TTL 和記錄值
查詢說明
- TTL(生存時間)單位為秒,表示該記錄在解析器快取中的有效時長,數值越小變更生效越快。
- 若回傳狀態為 NXDOMAIN,表示該網域不存在;NOERROR 但無應答記錄,通常是該類型未設定。
- MX 記錄的值形如「10 mail.example.com」,前面的數字是優先級,越小越優先。
- TXT 記錄可能較長且包含引號,屬於正常現象,常用於 SPF、DKIM、DMARC 及網域驗證。
使用場景
技術原理
DNS 查詢在傳統上透過 UDP 協定向 53 連接埠發起:客戶端向設定的遞迴解析器發送一個包含查詢名稱和類型的 DNS 封包,解析器遞迴地向根、頂級網域、權威伺服器逐級查詢,最終把應答回傳給客戶端。這一過程定義於 RFC 1035,封包是緊湊的二進位格式,瀏覽器基於安全限制無法直接收發 UDP 53,因此網頁端 DNS 工具通常需要後端代理。 DoH(DNS over HTTPS)定義於 RFC 8484,把 DNS 封包封裝在 HTTPS 請求中傳輸,預設連接埠 443。它有兩種載荷形式:二進位的 wireformat(application/dns-message)和 JSON 格式(application/dns-json,由 Google 在 RFC 8484 之外額外提供,Cloudflare 也支援)。本工具使用 JSON 形式:瀏覽器向 `https://cloudflare-dns.com/dns-query?name=example.com&type=A` 發送帶 `Accept: application/dns-json` 標頭的 GET 請求,直接取得結構化 JSON 應答,無需後端。 回傳 JSON 中的關鍵欄位:`Status` 為 DNS RCODE(0=NOERROR,3=NXDOMAIN 網域不存在,2=SERVFAIL 伺服器故障);`Answer` 陣列每項含 `name`(記錄名)、`type`(記錄類型數字碼,如 1=A、28=AAAA、15=MX、16=TXT、2=NS、6=SOA、5=CNAME)、`TTL`(快取生存時間,秒)、`data`(記錄值)。權威應答也可能出現在 `Authority`(SOA、NS)和 `Additional` 段中。 DoH 的核心價值在於隱私與抗干擾:DNS 查詢被 HTTPS 加密,中間人無法像明文 UDP 53 那樣窺探或竄改查詢內容,也難以透過連接埠識別進行流量劫持。這也使得本工具能在純瀏覽器環境下完成查詢——流量直達 DoH 服務商,不經任何中介伺服器。
- 傳統 DNS:RFC 1035,UDP/TCP 53 連接埠,二進位封包,瀏覽器無法直接收發,需後端代理。
- DoH:RFC 8484,HTTPS 封裝 DNS,443 連接埠,加密查詢內容,抗窺探與抗劫持。
- JSON DoH:請求帶 `Accept: application/dns-json`,回傳結構化 JSON,Cloudflare 與 Google 均支援,CORS 開放,瀏覽器可直連。
- RCODE:0=NOERROR、2=SERVFAIL、3=NXDOMAIN(網域不存在)、5=REFUSED。
- 記錄類型碼:1=A、28=AAAA、5=CNAME、15=MX、16=TXT、2=NS、6=SOA、33=SRV、257=CAA。
- TTL 為快取生存時間(秒),遞迴解析器在 TTL 內直接回傳快取結果,過期後才會重新向權威伺服器查詢。
範例
查詢 example.com 的 A 記錄
網域: example.com
類型: A
狀態: NOERROR
Answer:
example.com. 300 A 93.184.216.34
# TTL 300 秒:該 IPv4 記錄將被快取 5 分鐘。查詢 gmail.com 的 MX 記錄
網域: gmail.com
類型: MX
狀態: NOERROR
Answer:
gmail.com. 3600 MX 5 gmail-smtp-in.l.google.com.
gmail.com. 3600 MX 10 alt1.gmail-smtp-in.l.google.com.
# 數字為優先級,越小越優先;郵件優先投遞到 5 對應的伺服器。查詢 example.com 的 TXT 記錄(SPF)
網域: example.com
類型: TXT
狀態: NOERROR
Answer:
example.com. 3600 TXT "v=spf1 -all"
# 該 SPF 策略表示網域不發送郵件,所有來源均被拒絕。查詢不存在的網域(NXDOMAIN)
網域: this-domain-does-not-exist-12345.com
類型: A
狀態: NXDOMAIN
Answer: (無)
# Status=3 表示該網域在 DNS 中不存在,並非伺服器故障。常見問題
DNS 查詢會洩露我的隱私嗎?
不會。查詢請求由你的瀏覽器直接發往你選擇的 DoH 服務商(Cloudflare、Google 或阿里公共 DNS),全程 HTTPS 加密,不經過本站伺服器,我們看不到你查了什麼。這相比傳統明文 UDP 53 查詢反而更安全。
為什麼不同服務商回傳的結果有時不一致?
DNS 結果會依 TTL 被各級解析器快取,不同服務商的快取狀態和刷新時機不同,因此在記錄剛變更的傳播期內可能回傳新舊不同的值。等待舊記錄的 TTL 過期後,結果會趨於一致。
NOERROR 但沒有應答記錄是什麼意思?
表示網域存在且查詢成功,但該網域沒有設定你所查類型的記錄。例如查詢某網域的 MX 記錄回傳空,通常意味著該網域不接收郵件。Authority 段一般會回傳 SOA 記錄作為否定快取的依據。
TTL 數值大小有什麼影響?
TTL(秒)決定記錄在解析器快取中的有效時長。TTL 大則全球解析快、伺服器負載低,但記錄變更後生效慢;TTL 小則變更生效快,但查詢更頻繁。準備變更 DNS 前常會先調小 TTL。
支援反向 DNS 查詢(IP 查網域)嗎?
支援。查詢 PTR 記錄時,需要把 IP 位址按反向格式輸入:例如 8.8.8.8 對應 8.8.8.8.in-addr.arpa,IPv6 則使用 ip6.arpa 後綴。回傳的 PTR 記錄即該 IP 反向解析到的網域。
為什麼瀏覽器直接存取 DoH 連結會回傳 400?
Cloudflare 的 JSON DoH 端點要求請求攜帶 Accept: application/dns-json 標頭,網址列直接存取預設發出的是 HTML Accept 標頭,因此回傳 400。這是正常現象,程式中用 fetch 自訂請求標頭即可正常呼叫。
能查詢任意頂級網域嗎?
可以。只要該網域已在 DNS 中註冊並設定了對應記錄,包括通用頂級網域(.com、.org)、國家代碼網域(.cn、.jp、.de)以及新通用頂級網域,DoH 服務商都會遞迴解析並回傳結果。