TXTレコードとは?SPF・DKIM・所有権確認での使い方を解説

TXTレコードとは、DNSに文字列情報を登録するためのレコードです。 Webサイトの表示先を直接決めるものではありませんが、メール認証や各種サービスの所有確認など、現在のWeb運用では重要な役割があります。

30秒でわかる結論

  • TXTレコードは、DNSに文字列情報を登録するための設定
  • 代表例はSPF・DKIM・DMARC・サービス所有確認
  • AレコードのようにWebサーバーのIPアドレスを指定するものではない
  • メール認証では、設定値を1文字でも間違えると正常に認証されないことがある
  • 同じ名前に複数のTXTレコードを使う場合があるが、サービス仕様を確認する
  • 変更後は即時反映とは限らず、DNSキャッシュによる時間差がある
  • 教科書判定では「指定された文字列を改変せず、そのまま登録」が基本

TXTレコードとは?

TXTレコードは、DNSに任意の文字列情報を登録するためのDNSレコードです。 名前のとおり「テキスト情報」を保存します。

もともとは説明文などを登録する用途もありましたが、現在ではメール認証や外部サービスのドメイン所有確認でよく使われます。

ここで伝えたいポイント

TXTレコードは「ホームページの表示先」を設定するものではありません。 Web表示にはAレコードやCNAME、メール配送にはMXレコード、認証情報にはTXTレコード、と役割を分けて考えると理解しやすくなります。

TXTレコードは何に使う?

用途 代表例 目的
メール送信元認証 SPF 送信元サーバーの正当性を示す
電子署名 DKIM メール改ざん検知・送信元確認に使う
メール認証方針 DMARC 認証失敗メールの扱いなどを示す
ドメイン所有確認 各種Webサービス そのドメインを管理していることを確認する
サービス固有設定 認証用トークンなど 外部サービスとの連携

初心者はこれでOK

TXTレコードは「サービスから指定された確認用・認証用の文字列をDNSへ登録するもの」と覚えると分かりやすいです。

TXTレコードとA・MX・CNAMEの違い

レコード 主な役割 登録するもの
A Webなどの接続先 IPv4アドレス
AAAA Webなどの接続先 IPv6アドレス
CNAME 別ホスト名への別名設定 ホスト名
MX メール配送先 メールサーバー名
TXT 認証・確認情報 文字列

Web接続先=A/CNAME、メール配送=MX、認証情報=TXT

SPFで使うTXTレコードとは

SPFは、どのメールサーバーから送信されたメールを正規の送信元として認めるかを示す仕組みです。 DNSのTXTレコードへSPF用の文字列を登録します。

SPFの例

v=spf1 include:example-mail.jp ~all

実際の値は利用するメールサービスごとに異なります。 必ず利用サービスの公式案内に記載された文字列を使ってください。

SPFは適当に複数追加しない

同一ドメインに複数のSPF設定をばらばらに登録すると、正しく評価されない場合があります。 複数の送信サービスを使う場合は、各サービスの案内に従って1つのSPF設定へまとめる必要があることがあります。

DKIMで使うTXTレコードとは

DKIMは、送信メールに電子署名を付け、受信側でその署名を確認する仕組みです。 公開鍵などの情報をDNSへ登録する際にTXTレコードが使われることがあります。

DKIMでよく出てくる考え方

「selector._domainkey.example.com」のような専用ホスト名に、サービスから指定された長い文字列をTXTレコードとして登録します。

長い文字列でも省略しない

DKIM値は長くなることがあります。 途中の文字を削る、勝手に改行する、余計な引用符を加えるなどすると認証に失敗する可能性があります。

DMARCで使うTXTレコードとは

DMARCは、SPFやDKIMの認証結果を使い、認証に失敗したメールをどう扱うかなどの方針を示す仕組みです。 通常は「_dmarc.example.com」のような名前へTXTレコードを登録します。

DMARCの例

v=DMARC1; p=none;

実際には運用方針やレポート先などを含める場合があります。値は自社のメール運用・利用サービスに合わせて設定します。

DMARCは意味を理解せず厳しい設定にしない

認証失敗メールを拒否する設定を誤って適用すると、正規メールまで受信側で拒否される可能性があります。 段階的に確認しながら設定する方が安全です。

ドメイン所有確認にもTXTレコードを使う

検索・解析・メール・クラウドなどのサービスでは、「このドメインを本当に管理している人か」を確認するため、TXTレコードの追加を求めることがあります。

1.利用サービスで確認用文字列を取得
2.DNS管理画面を開く
3.TXTレコードとして指定値を登録
4.DNS反映を待つ
5.サービス側で所有確認を実行
確認が完了しても、サービス側から削除指示がない限り、TXTレコードを残す必要がある場合があります。

TXTレコードを追加する基本手順

管理画面の名称はサービスによって異なりますが、基本的な流れは共通しています。

1.DNSを管理しているサービスへログイン
2.対象ドメインを選択
3.DNSレコード追加画面を開く
4.種類でTXTを選ぶ
5.ホスト名・値・TTLを指定する
6.保存する
7.反映後に認証結果を確認する
値は自分で作らず、利用サービスが指定した文字列を正確に登録します。

「ホスト名」は何を入力する?

TXTレコード追加画面では、「ホスト名」「名前」「サブドメイン」などの入力欄があります。 ここへ何を入れるかは用途によって異なります。

用途 入力例
ルートドメインのSPF @ または空欄など
DMARC _dmarc
DKIM selector._domainkey
所有確認 サービス指定値

入力方式は管理サービスによって違う

「@」を使うサービス、空欄でルートドメインを表すサービス、完全なホスト名を入力するサービスなどがあります。 管理画面の説明と利用サービス側の手順を両方確認してください。

TTLとは?

TXTレコード追加時にTTLという項目が表示されることがあります。 TTLは、DNS情報をキャッシュしてよい時間の目安です。

初心者がサービス指定の設定を行う場合、特別な指示がなければ管理画面の初期値を使えることが多いです。

初心者はこれでOK

認証サービスからTTLの指定がある場合はその値に従い、指定がなければDNS管理サービスの標準値を使うのが基本です。

TXTレコードはすぐ反映される?

設定を保存しても、すべての環境で即座に新しい値が確認できるとは限りません。 DNSキャッシュなどにより、反映に時間差が出る場合があります。

保存直後の認証失敗だけで設定ミスと決めない

入力値が正しくても、反映前に所有確認やメール認証を実行すると失敗することがあります。 まず設定値を確認し、サービス側の案内する反映時間も考慮してください。

TXTレコードが反映されたか確認する方法

利用しているサービス側の「確認」「検証」機能で認証できるか確認します。 メール認証なら、管理画面にSPF・DKIM・DMARCの状態が表示されるサービスもあります。

確認ポイント

  • 対象ドメインが正しい
  • ホスト名が正しい
  • TXT値に抜け・余計な文字がない
  • 反映待ち時間を考慮した
  • 古い競合設定が残っていない
  • サービス側の検証結果を確認した

TXTレコードでよくある失敗

文字列を途中で変更する

指定された値に空白を加えたり、一部を省略したりすると正常に認証されない可能性があります。 コピー&ペースト後に先頭・末尾も確認します。

ホスト名の入力方法を間違える

管理画面によっては、example.comまで含める場合と含めない場合があります。 サービス側の指定とDNS管理画面の仕様を確認します。

別のDNS管理画面へ追加する

ドメイン取得会社と実際のDNS管理先が異なる場合、使われていない管理画面へ設定しても反映されません。

古いTXTレコードを削除してしまう

既存のTXTレコードがメール認証や別サービスの所有確認に使われている場合があります。 用途が分からないレコードを安易に削除しないでください。

教科書判定

TXTレコード追加では「既存値を消さず、指定値を正確に追加」が基本

新しいサービスからTXT追加を求められた場合、既存TXTを削除して置き換えるとは限りません。 本サイトでは、既存レコードの用途を確認し、サービス側から削除・置換指示がない限り安易に消さない判断をおすすめします。

TXTレコード変更前に確認すること

変更前チェックリスト

  • DNSの実際の管理先はどこか
  • 現在のTXTレコードを保存したか
  • 追加なのか置換なのか
  • ホスト名の形式は正しいか
  • サービス指定の値をそのまま使っているか
  • メール運用中ならSPF・DKIM・DMARCへの影響を確認したか

用途別の判断

サービス所有確認 難易度 ★★☆☆☆

指定トークンを正確に追加し、反映後に検証します。

SPF追加 難易度 ★★★★☆

既存SPFとの重複・統合が必要か確認します。

DKIM設定 難易度 ★★★☆☆

セレクタ名と長い公開鍵文字列を正確に登録します。

DMARC設定 難易度 ★★★★☆

ポリシーの意味を理解し、段階的な運用を検討します。

TXTレコード設定の判断フロー

Q1.サービスからTXT追加を求められた?
はい → 指定値を確認
Q2.DNSの管理先は分かっている?
いいえ → ネームサーバー・DNS管理先を確認
Q3.既存TXTがある?
はい → 用途を確認し、安易に削除しない
Q4.ホスト名と値を正確に入力した?
はい → 保存
Q5.保存直後に認証できない?
はい → 反映待ちと入力値を確認
「指定値を確認 → 既存設定を保存 → 正確に追加 → 反映後に検証」の順で進めます。

教科書判定|TXTレコードはどう設定すればいい?

教科書判定

サービス指定の文字列を改変せず、既存レコードを確認してから追加する

所有確認用のTXTレコードなら、指定値を正確に登録するだけで済むことが多いです。 一方、SPF・DKIM・DMARCなどメール認証では、既存設定との関係を確認する必要があります。

本サイトでは、「TXTという種類だけ見て同じ扱いをしない」「用途ごとのルールを確認してから設定する」を基本判断とします。

よくある質問

Q.TXTレコードを追加するとホームページ表示は変わりますか?

通常、TXTレコードは認証・確認情報として使うため、AレコードのようにWebサイトの接続先を直接変更するものではありません。ただしDNS全体の設定変更時は他レコードを誤って触らないよう注意してください。

Q.TXTレコードはいくつ追加できますか?

複数登録できる場合があります。ただし同じ用途ではルールがあり、特にSPFは重複設定に注意が必要です。利用サービスの案内を確認してください。

Q.TXTレコードの値に引用符は必要ですか?

DNS管理画面によって入力方法が異なります。画面側が自動的に扱う場合もあるため、利用しているDNSサービスの入力例に従ってください。

Q.設定したのに認証されないのはなぜですか?

ホスト名や値の入力ミス、別のDNS管理先へ登録している、反映待ち、既存設定との競合などが考えられます。サービス側の指定値と現在のDNS管理先から確認してください。

Q.使っていないTXTレコードは削除してもいいですか?

用途が明確に不要と確認できれば削除できますが、メール認証やサービス所有確認に使われている可能性があります。用途が分からないものは削除前に確認してください。

まとめ

この記事の結論

  • TXTレコードはDNSへ文字列情報を登録する設定
  • SPF・DKIM・DMARC・所有確認などで使われる
  • Web接続先を指定するAレコードとは役割が違う
  • 指定値は勝手に変更せず正確に登録する
  • 既存TXTレコードは用途確認なしに削除しない

結局、TXTレコードで重要なのは「文字列を登録すること」より、「その文字列が何の用途かを理解して正しい場所へ入れること」です。 サービス指定値をそのまま使い、既存設定を保存してから変更してください。

次に読むなら

TXTレコードの役割が分かったら、「DNSレコードの種類と意味」や「SPF・DKIM・DMARCとは?」を確認すると、メール認証とDNS設定の関係をさらに理解しやすくなります。