什麼是 DNS TXT 記錄?

TXT 記錄可讓網域管理員在 DNS 伺服器上留下注釋。

學習目標

閱讀本文後,您將能夠:

  • 瞭解 TXT 記錄的用途
  • 描述 TXT 記錄的主要用途
  • 說明 TXT 記錄如何幫助防止垃圾郵件

複製文章連結

什麼是 DNS TXT 記錄?

DNS「文字」(TXT) 記錄可讓網域管理員在網域名稱系統 (DNS) 中輸入文字。文字以一個或多個用引號引起來的字串的形式儲存。TXT 記錄最初的目的是用作存放人類可讀筆記的地方。但是,現在也可以將一些機器可讀的資料放入 TXT 記錄中。一個網域可以有許多 TXT 記錄。

TXT 記錄的範例:

example.com 記錄類型: 值: TTL
@ TXT 「這是一個很棒的網域!絕對不是垃圾郵件。」 32600

如今,DNS TXT 記錄最重要的兩個用途是垃圾郵件防護和網域擁有權驗證,儘管 TXT 記錄最初並不是為這些用途而設計的。

註冊
所有 Cloudflare 方案中均包含免費 SSL

什麼樣的資料可以進入 TXT 記錄?

原始 RFC 僅表示「文字字串」進入 TXT 記錄的「值」欄位中。這可以是管理員想要與其網域關聯的任何文字。

大多數 DNS 伺服器都會限制 TXT 記錄的大小以及可以儲存的字串數量,因此管理員無法使用 TXT 記錄儲存大量資料。

字串的長度限制為 255 個位元組,但應用程式通常並不關心字串之間的區別,而是將它們連接在一起,將多個字串視為單個字串。

在 TXT 記錄中儲存資料的「官方」格式是什麼?

1993 年,網際網路工程任務推動小組 (IETF) 定義了一種格式,用於在 TXT 記錄的「值」欄位中儲存屬性及其相應值。格式包含屬性和引號 (") 內的值,並以等號 (=) 分隔,例如:

"attribute=value"

RFC 1464 是定義此格式的 1993 年文件,包括以下範例:

host.widgets.com 記錄類型: 值:
@ TXT "printer=lpr5"

sam.widgets.com 記錄類型: 值:
@ TXT "favorite drink=orange juice"

這個定義被認為是實驗性的,在實踐中並不經常被採用。某些 DNS 管理員如果會使用 TXT 記錄,則會在 TXT 記錄中採用自己的格式。TXT 記錄也可以依據具體的方式進行格式設定,以用於下面描述的某些用途——例如,DMARC 原則必須以標準化的方式進行格式設定。

但是,TXT 記錄仍將其內容儲存在引號 ("") 內。

報告
保護 DNS 基礎結構

TXT 記錄如何協助防止垃圾郵件?

垃圾郵件發信者經常試圖偽造他們傳送電子郵件的網域。TXT 記錄是數種不同電子郵件驗證方法的關鍵元件,可協助電子郵件伺服器判斷郵件是否來自受信任的來源。

常見的電子郵件驗證方法包括網域金鑰識別郵件 (DKIM)、寄件者原則架構 (SPF) 以及基於網域的郵件驗證、報告和一致性 (DMARC)。透過設定這些記錄,網域營運者可以使垃圾郵件發信者更難偽造網域,並可以追蹤此類嘗試。

SPF 記錄:SPF TXT 記錄會列出授權從一個網域傳送電子郵件訊息的所有伺服器。

DKIM 記錄:DKIM 的運作方式是使用公用-私密金鑰組對每封電子郵件進行數位簽章。這有助於驗證電子郵件確實來自它所聲稱的網域。公用金鑰會託管在與網域相關聯的 TXT 記錄中。(進一步瞭解公用金鑰加密。)

DMARC 記錄:DMARC TXT 記錄會參照網域的 SPF 和 DKIM 原則。它應當儲存在標題 _dmarc.example.com 下。將「example.com」替換為實際網域名稱。記錄的「值」是網域的 DMARC 原則(可以在此處找到建立指南)。

TXT 記錄如何協助驗證網域擁有權?

雖然網域擁有權驗證最初並不是 TXT 記錄的功能,但某些網站管理員工具和雲端提供者已採用此方法。

系統管理員可以透過上傳包含特定資訊的新 TXT 記錄,或編輯目前的 TXT 記錄,來證明自己控制該網域。該工具或雲端提供者可以檢查 TXT 記錄並確認其已根據要求進行了變更。這有點像使用者透過開啟並點擊傳送到該電子郵件的連結來確認其電子郵件地址,證明他們擁有該地址。

進一步瞭解不同類型的 DNS 記錄