Domain-Name-System
同一子域的多個 TXT 欄位
我想了解同一子域的多個 TXT 記錄是否正常或可能導致問題。特別是,我們要求根域上有一個 SPF 記錄和一個 Google 域驗證記錄。
在 AWS Route 53 中,他們通過以下方式明確支持這一點:
在不同的行上輸入多個值。用引號將文本括起來。範例:“範例文本條目”“用引號將條目括起來”
這樣,單個 TXT 欄位就可以同時包含 SPF 和 Google 域驗證記錄。
另一方面,當我詢問 name.com 時,他們建議添加兩個單獨的 TXT 記錄,因為不支持 Route 53 方法。
所描述的方式是您在 Route 53 上創建多條記錄的方式。
在由換行符分隔的文本區域中輸入兩個值將導致 DNS 中出現兩條不同的記錄。這就是亞馬遜稱其為“記錄集”的原因——它是一組記錄。
邁克爾關於您的困惑來自何處是正確的。我將繼續我通常的悶悶不樂,並為那些可能通過Google搜尋發生的人回答更大的問題。
- 根據 DNS 標準,多
TXT
條記錄是完全合法的。- 實施特定標準的多個
TXT
記錄可能是非法的,但僅限於該標準的範圍內。- 鑑於需要多種標準共存並與
TXT
共享給定名稱的其他記錄很好地配合使用,因此不太可能發生衝突。這樣的要求肯定不太可能成為網際網路標準。要了解其中的區別,讓我們看一下 SPF 標準 ( RFC 7208 ) 在該主題上的說法:
Starting with the set of records that were returned by the lookup, discard records that do not begin with a version section of exactly "v=spf1". Note that the version section is terminated by either an SP character or the end of the record. As an example, a record with a version section of "v=spf10" does not match and is discarded. If the resultant record set includes no records, check_host() produces the "none" result. If the resultant record set includes more than one record, check_host() produces the "permerror" result.
簡而言之,
TXT
不符合 SPF 語法要求的記錄將被忽略。只有在多個記錄與 SPF 語法匹配的情況下才會發生錯誤。(對於那些可能想知道的人,DMARC語法具有相同的限制。)