Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

TXTレコード(ティーエックスティーレコード)とは | 意味や読み方など丁寧でわかりやすい用語解説

TXTレコード(ティーエックスティーレコード)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

テキストレコード (テキストレコード)

英語表記

TXT record (ティーエックスティーレコード)

用語解説

TXTレコードとは、DNS(Domain Name System)が管理するさまざまな情報の一つで、特定のドメインに関連付けられたテキスト情報を格納するためのレコードタイプである。その名の通り、自由な形式のテキスト文字列を記述できる点が特徴で、以前はドメイン管理者向けのメモやコメントとして利用されることもあったが、現代においては特定のプロトコルやサービスの認証、設定情報を伝達するために不可欠な役割を担っている。ウェブサイトのアドレスを教えるAレコードやメールサーバーの場所を示すMXレコードのように、直接的な通信経路を定義するわけではないが、インターネットの健全な運用、特にメールの信頼性やドメインのセキュリティを確保する上で非常に重要な役割を果たしている。

TXTレコードの具体的な利用目的は多岐にわたる。最も代表的な用途の一つが、電子メールのなりすまし対策であるSPF(Sender Policy Framework)レコードの登録である。SPFは、あるドメインからメールを送信することを許可されているメールサーバーのIPアドレスやホスト名をTXTレコードとして公開することで、受信側のメールサーバーが送信元IPアドレスの正当性を確認できるようにする仕組みである。例えば、「v=spf1 include:_spf.example.com ~all」といった記述をドメインのTXTレコードに設定することで、example.comドメインからのメールは、_spf.example.comで定義されたサーバーからのみ送信されるべきであり、それ以外のサーバーからのメールは疑わしい、といったポリシーを表明できる。これにより、悪意のある第三者がドメインを詐称してメールを送信することを防ぎ、スパムメールやフィッシング詐欺の被害を軽減する効果がある。

次に重要なのが、DKIM(DomainKeys Identified Mail)における公開鍵の格納である。DKIMもまたメールの認証技術の一つで、送信されるメールに電子署名を付与し、受信側がその署名を検証することで、メールの内容が送信途中で改ざんされていないこと、そしてメールが正当な送信元から送られたものであることを確認する。この検証には公開鍵が必要となるが、その公開鍵の情報がTXTレコードとして公開される。具体的には、「セレクタ._domainkey.example.com」のような特定のサブドメインに対して、DKIMの公開鍵情報を記載したTXTレコードを設定する。受信側はメールヘッダにあるセレクタ名とドメイン名から、対応するTXTレコードを参照し、公開鍵を取得して署名を検証する。

さらに、SPFとDKIMのポリシーを統合し、メール受信時の処理方法を指示するのがDMARC(Domain-based Message Authentication, Reporting & Conformance)である。DMARCもまたTXTレコードを利用する。ドメインのTXTレコードにDMARCポリシーを記述することで、SPFやDKIMの認証に失敗したメールをどのように扱うべきか(拒否、隔離、許可)や、認証結果のレポートをどこに送信するかなどを、受信側のメールサーバーに指示できる。これにより、メールのなりすましに対する防御をさらに強化し、メール配信の信頼性を向上させる。

上記以外にも、TXTレコードは様々なドメイン認証やサービス連携に用いられる。例えば、Google WorkspaceやMicrosoft 365のようなクラウドサービスを利用開始する際、そのドメインが利用者の所有物であることを確認するために、サービス側から指定された特定の文字列をTXTレコードに登録するよう求められることがある。これは、TXTレコードの記述内容がドメイン所有者によってのみ変更可能であることを利用した認証方法である。また、SSL/TLS証明書を発行する際にも、ドメインの所有権を確認するためにTXTレコードが利用される場合がある。これにより、証明書が誤った相手に発行されることを防ぐ。

TXTレコードの記述形式は、一般的には「ホスト名(またはサブドメイン名) IN TXT "値"」という形になる。ここで「値」は、サービスや用途に応じて特定の書式に従ったテキスト文字列である。例えば、SPFであれば「v=spf1 ...」から始まる文字列、DKIMであれば公開鍵情報を含む文字列、ドメイン認証であればランダムな英数字列などが該当する。一つのドメイン(またはホスト名)に対して複数のTXTレコードを設定することも可能であり、また一つのTXTレコードの「値」の中に、複数の文字列(string)を連結して記述することもできる。ただし、TXTレコードの値には最大文字数(通常は255文字、または複数の文字列を連結した場合はより多く)の制限があること、そして改行などの特殊文字は直接含められない点に注意が必要である。設定を行う際には、各サービスが提供する公式ドキュメントを詳細に確認し、正確な文字列をコピーペーストして適用することが、トラブルを避ける上で最も重要である。誤った設定は、メールが届かなくなる、ドメイン認証が失敗する、といった重大な問題を引き起こす可能性があるため、細心の注意を払う必要がある。

関連コンテンツ