SPFおよびDKIM TXTレコードには引用符が必要ですか?


16

私は今数時間探していましたが、複数の情報源が異なることを言っています。

https://support.wordfly.com/hc/en-us/articles/204767474-How-do-we-publish-DKIM-and-SPF-in-our-DNS- States https: //stackoverflow.com/a/9784925/1293725読み取りの引用符は、これらのTXTレコードに含める必要があります。

これらはソースのほんの一部の例ですが、他にもたくさんあります。

それで、これらのレコードは引用符を含むべきですか?


2
それは本当にあなたのシステム/セットアップに依存します。例えば。wordflyでは、Webフォームに値を入力していると思います。フォームで引用符を使用すると、本当に混乱する可能性があります。そのため、プロセスが引用符を想定し、DNSに引用符を使用して値を入力する可能性があります。
closetnoc 2015年

2
@closetnocは正しいです。引用符を使用するかどうかは、それらを入力するために使用するサイト/ツールに関係している可能性があります。
シャーウィンフライト2015年

おかげで、最初に引用符を含めて試して、システムがエラーをスローするかどうかを確認します。TXTレコードのスペースが各単語を個別の文字列として処理することをソースが示しているため、混乱を招きました。これがSPFおよびDKIMの意図された動作であるかどうかはわかりませんでした。しかし、今では1つの文字列として扱う必要があることを理解しています。
Neograph734 2015年

1
見積もりがあり、DNSを新しいプロバイダー(Azure DNS)に移動したところ、SPFが機能しなくなりました。引用符を削除し、すべてが再び機能しました。したがって、プロバイダーによって異なります。必ずレコードを確認してください。通常、SPFレコードを作成するエンティティには、これを行うためのツール/ボタンがあります。
nmit026 2017

回答:


13

(未加工の)DNSゾーンファイルでは、TXTレコードにスペースが含まれている場合、レコードの値を二重引用符で囲む必要があります(SPFおよびDKIMレコードでよくあることです)。それ以外の場合、スペースはDNSゾーンファイルの区切り文字です。

RFC 1305は、ゾーンの細かい値を引用する方法を定義しています。TXTリソースレコードに関して:

3.3.14。TXT RDATA形式

+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
/                   TXT-DATA                    /
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

どこ:

TXT-DATA 1つ以上<character-string>

[20ページ]

<character-string>は、1つまたは2つの方法で表現されます。内部スペースのない連続した文字のセットとして、または "で始まり"で終わる文字列として。"で区切られた文字列内では、\(バックスラッシュ)を使用して引用する必要がある"自体を除いて、任意の文字を使用できます。

[35ページ]


ただし、コメントで述べたように、DNSレコードを編集するために別のツールを使用することがよくあります(WHMではこのオプションが提供されていますが、通常はDNSゾーンファイルを直接編集することはありません)。この他のツールはおそらく、引用符と、レコードを有効にするために必要な追加のエスケープを処理します。エディター/ツールを使用して値を送信するときに手動で値を引用符で囲むと、これらの追加の引用符がエスケープされ、TXTレコード値の一部になる可能性があります。

ちなみに、DNSルックアップを実行すると、解析または引用符で囲まれていない文字列値が表示されます。

詳細リファレンス:
https : //en.wikipedia.org/wiki/TXT_Record
https://tools.ietf.org/html/rfc1464


はい、コメントを読んだ後、レジストラのサイトでもマニュアルを見つけました。レコードは引用符なしで入力する必要があると述べました(以前に引用符を付けてオンライン検証者が有効であるとマークしたので、おそらく私の場合は両方の方法で機能しました) )。レジストラの推奨フォーマットに切り替えました。助けてくれてありがとう!
Neograph734 2015年

はい、CloudFlareのも引用符についての具体的なノートがあるsupport.cloudflare.com/hc/en-us/articles/...
lkraav

TXT値にスペースが含まれている場合は、二重引用符で囲む必要があります」というこの規則はどこにありますか?いいルールのようですが、誰のルールですか?RFC 1464やあなたが言及したWikipediaの記事ではそれについて何も見つかりません。(RFC 1464では、内部の二重引用符のエスケープについて言及していますが、それは異なります。)
Garret Wilson

1
ああ、私はエスケープのこの種を伝えることができる最善のように定義されているされたRFC 1035については、セクション3.3で<character-string>生産し、後のセクション3.3.14にそれがあることを指定TXTレコードが持っている<character-string>データとして、したがって、引用符で囲む必要があります。(HINFOレコードについても、これについては言及されています。)
Garret Wilson

はい、RFC 1305はこれが定義されている場所のようです。WHMで未加工のDNSゾーンを編集すると、実際には「RFC 1035に記述されている引用とエスケープの規則に従う必要がある」というプロンプトが表示されます。回答を更新します。ありがとう。
MrWhite
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.