DNSレコードとは、権威DNSゾーンファイルに保存される指示であり、インターネットトラフィックを誘導し、ホスト名をIPアドレスに関連付け、電子メールを宛先のメールサーバーへルーティングする役割を果たします。DNS管理が初めての方は、まず当社のガイド「 「DNSレコードとは何か」」に関するガイドから始めてみてください。
各DNSレコードタイプは、ホスト名の解決からメッセージ送信者の認証に至るまで、特定のネットワーク機能を果たしています。以下のクイックリファレンスガイドでは、本番環境でよく見かける12種類の代表的なDNSレコードタイプについて解説しています。
PowerDMARCでDNSレコードをシンプルに! [原文のまま]
DNSレコードの種類
以下の表は、Webルーティング、メール交換、およびインフラストラクチャのセキュリティにおいて使用される12種類の主要なDNSレコードの種類をまとめたものです。
| レコードタイプ | 何をするのか | 値の例 |
|---|---|---|
| A | ホスト名をIPv4アドレスにマップします。 | 192.0.2.1 |
| AAAA | ホスト名をIPv6アドレスにマップします。 | 2001:0db8:85a3:0000:0000:8a2e:0370:7334 |
| CNAME | あるドメインまたはサブドメインを別のホスト名にエイリアス設定する | mail.example.com CNAME ghs.googlehosted.com. |
| MX | 受信ドメインのメールを宛先のメールサーバーに転送する | 10 aspmx.l.google.com. |
| TXT | 主に電子メールのセキュリティを目的として、任意のテキストデータを保存します | v=spf1 include:_spf.google.com ~all |
| NS | ゾーンの権威ネームサーバーを指定します | ns1.nameserver.com. |
| ソア | 管理および運用ゾーンのデータを宣言する | ns1.example.com. admin.example.com. 2026101001 7200 3600 1209600 3600 |
| PTR | IPアドレスをホスト名に変換します(リバースDNS) | mail.example.com. |
| SRV | 特定のサービスに対応するホスト名とポート番号を特定します | 0 5 5060 sipserver.example.com. |
| CAA | SSL証明書を発行できる認証局を制限します | 0 件の「letsencrypt.org」に関する問題 |
| DNSKEY | DNSSECリソースレコードセットの署名に使用される公開鍵を保存します | 257 3 13 oJM...xyz== |
| DS | DNSSECにおいて、子ゾーンのキーを親ゾーンに紐づける | 2371 13 2 4f2...9a1 |
記録
ある Aレコード (Aレコード)は、ドメイン名またはサブドメインをIPv4アドレスに関連付けます。ユーザーがブラウザにWebアドレスを入力すると、再帰的リゾルバーはAレコードを照会して、そのサイトをホストしているWebサーバーの位置を特定します。
例
example.com. 3600 IN A 192.0.2.1
AAAAレコード
AAAAレコード(クワッドAレコード)はAレコードと同様に機能しますが、ホスト名を32ビットのIPv4アドレスではなく、128ビットのIPv6アドレスにマッピングします。利用可能なIPv4アドレスのグローバルプールが枯渇しているため、現代のネットワークでは、IPv6対応のインターネットプロバイダを利用する訪問者に対するデュアルスタックルーティングをサポートするために、標準のAレコードと併せてAAAAレコードが導入されています。
例
example.com. 3600 IN AAAA 2001:0db8:85a3:0000:0000:8a2e:0370:7334
CNAMEレコード
A CNAMEレコード (Canonical Nameレコード)は、あるドメイン名をIPアドレスではなく、別の正規ドメイン名へ指し示すエイリアスを作成します。リゾルバーがCNAMEレコードを検出すると、ターゲットのドメイン名を使用して検索プロセスを再開します。CNAMEレコードは、ゾーンのルート(アペックス)において他のレコードと共存することはできません。
例
blog.example.com. 3600 IN CNAME webhost.example.net.
MXレコード
An MXレコード (Mail Exchangerレコード)は、送信側のメール転送エージェントに対し、特定のドメイン宛ての受信メールをどこに配信すべきかを指示します。MXレコードには、メールホスト名とともに優先順位を示す番号が必ず含まれており、数値が小さいほど優先度が高くなります。これは、 受信メールの処理を担当するメールサーバーを を特定するDNSレコードの種類です。
例
example.com. 3600 IN MX 10 aspmx.l.google.com.
TXTレコード
A TXTレコード (テキストレコード)は、ドメインに機械可読なテキスト属性を付与するものです。当初は人間が読めるメモを格納するために作成されましたが、現在では主に、ドメイン検証トークンや電子メール認証フレームワークの伝達手段として機能しています。SPF、DKIM、DMARCがTXTレコードをどのように利用しているかについては、以下の専用セクションをご覧ください。
例
example.com. 3600 IN TXT “google-site-verification=rXOxyZounnZ…”
NSレコード
An NSレコード (ネームサーバーレコード)は、ドメインまたは委任されたサブゾーンの確定的なDNSレコードを管理する権限のあるDNSサーバーを示します。すべてのドメインには、高可用性を維持し、ドメイン解決の障害を防ぐために、地理的に分散したネームサーバーを指す、少なくとも2つの正常に機能するNSレコードが必要です。
例
example.com. 86400 IN NS ns1.powerdns-cloud.com.
SOAレコード
SOAレコード(Start of Authorityレコード)は、すべてのDNSゾーンの最上位に配置される必須のレコードです。このレコードには、プライマリマスターネームサーバー、技術管理者の連絡先メールアドレス、ゾーンのシリアル番号、およびキャッシュやセカンダリゾーン転送を制御する運用タイマーなど、ゾーンに関する中核的な管理メタデータが記述されています。
SOAレコードで定義されるタイマーには、リフレッシュ間隔(セカンダリサーバーがマスターに更新情報を問い合わせる頻度)、再試行間隔(転送の試行に失敗した後の待機時間)、有効期限(マスターに到達できない状態が続いた場合に、セカンダリサーバーが古いゾーンデータを破棄するタイミング)、および最小TTL(リゾルバーがNXDOMAINなどのネガティブロックアップ応答をキャッシュする期間を制御するもの)が含まれます。
例
example.com. 86400 IN SOA ns1.example.com. hostmaster.example.com. (
2026101001 ; シリアル番号
7200 ; リフレッシュ (2時間)
3600 ; リトライ (1時間)
1209600 ; 有効期限 (2週間)
3600 ) ; 最小TTL (1時間)
当社の SOAレコード検索 ツールを使用して、ドメインのSOAパラメータを確認できます。
PTRレコード
PTRレコード(ポインタレコード)は、Aレコードとは逆の役割を果たし、 逆DNS 解決を通じて、IPアドレスを関連するホスト名へと逆引きします。PTRレコードは、専用の逆引きゾーン(in-addr.arpa (IPv4用)および ip6.arpa)内に設定され、ドメイン登録機関ではなく、IPアドレス空間の所有者によって管理されます。 )内に設定され、ドメイン登録業者ではなく、IPアドレスの所有者によって管理されます。
受信メールサーバーは、送信メール転送エージェントの接続元IPアドレスに対して、定期的に逆DNSチェックを実行します。送信元IPアドレスに、送信者のフォワードホスト名と一致するPTRレコードがない場合、企業のスパムフィルターや主要なウェブメールプロバイダーは、その受信メッセージを拒否することがよくあります。当社の PTRレコード検索 ツールで、逆DNSゾーンのエントリを確認できます。
例
1.2.0.192.in-addr.arpa. 3600 IN PTR mail.example.com.
SRVレコード
SRVレコード(サービスレコード)は、特定のアプリケーションサービスを提供するサーバーの場所、プロトコル、ポート番号、優先度、および重みを定義します。ネットワーククライアントは、標準ポートを前提とするのではなく、SRVレコードを照会することで、SIP(VoIP)、LDAPディレクトリサービス、XMPPメッセージングなどのプロトコルに対するカスタム接続パラメータを特定します。
SRVレコードの構造は、アンダースコアで始まるサービス名とプロトコルから始まります(例: _sip._tcp.example.comなど)、その後に負荷分散のための優先度と重み値、宛先ポート番号、およびサービスを提供するターゲットホスト名が続きます。
例
_sip._tcp.example.com. 3600 IN SRV 10 60 5060 bigbox.example.com.
CAAの記録
A CAAレコード (認証局認可レコード)により、ドメイン所有者は、自身のドメインおよびサブドメインに対して公開SSL/TLS証明書を発行する権限を持つ認証局(CA)を指定することができます。エンジニアがSSL証明書を申請する際、準拠したCAは、発行を完了する前にドメインのCAAレコードを確認する必要があります。
CAAレコードを公開することで、組織を不正または詐欺的な証明書の発行から保護し、悪意のあるCAが侵害された場合のリスクを軽減できます。このレコードには、発行者フラグとプロパティタグ(発行、 issuewild、または iodef (セキュリティ違反インシデントの報告用)および承認済みのCA識別子。当社の CAAチェッカーで評価できます。
例
example.com. 3600 IN CAA 0 issue “letsencrypt.org”
DNSSECレコード(DNSKEY、DS)
ドメインネームシステムセキュリティ拡張 (DNSSEC)は、DNSレコードに暗号署名を付与することで、リゾルバーをDNSスプーフィング、キャッシュポイズニング、および中間者攻撃から保護します。DNSSECは、DNSKEYとDSという2つの重要なレコードに依存しています。
DNSKEYレコードは、子ゾーン内に公開署名鍵を格納します。権威サーバーは、個々のレコードセットに署名するためのゾーン署名鍵(ZSK)と、ゾーン鍵自体に署名するための鍵署名鍵(KSK)を公開します。DSレコード(Delegation Signer)は、子ゾーンの鍵署名鍵の暗号ハッシュを保持しており、親ゾーン(例: .com や .orgなど)に直接公開されます。リゾルバーは、この暗号的な信頼の連鎖をルートDNSゾーンまで遡など)に直接公開されます。リゾルバーは、この暗号的な信頼の連鎖をルートDNSゾーンまで遡り、クエリの応答が転送中に改ざんされていないことを検証します。当社の DNSSECチェッカーで、署名設定を確認してください。
DNSKEY の例:
example.com. 3600 IN DNSKEY 257 3 13 oJM7nE…9yZ==
DSの例:
example.com. 3600 IN DS 2371 13 2 4f2e9a18…cb02
メール認証レコード:SPF、DKIM、DMARC
よく誤解されがちな点として、SPF、DKIM、DMARC、BIMI、MTA-STSを独立したDNSレコードタイプとして扱ってしまうことが挙げられます。DNSプロトコルの仕様において、これらは独自のリソースレコードタイプではありません。これらは、 TXTレコード (または、ホスト型DKIMセレクタの場合はCNAMEレコード)として公開された標準化された設定ポリシーであり、指定されたホスト名やサブドメインにホストされています。
リモートのメールサーバーが、あなたのドメインから送信されたと主張するメッセージを受信すると、これらのテキスト文字列を照合して、送信者が正当な権限を持っているかどうか、メッセージ本文が転送中に改ざんされていないかどうか、および検証に失敗した場合にどのような処理を行うべきかを確認します:
| プロトコル | レコードタイプ | ホスト名 | 値の例 |
|---|---|---|---|
| SPF | TXT | example.com | v=spf1 include:_spf.google.com ~all |
| DKIM | TXT/CNAME | selector1._domainkey.example.com | v=spf1 include:_spf.google.com ~all |
| DMARC | TXT | _dmarc.example.com | v=DMARC1; p=reject; rua=mailto:[email protected] |
| BIMI | TXT | default._bimi.example.com | v=BIMI1; l=https://example.com/logo.svg; a=... |
| MTA-STS | TXT | _mta-sts.example.com | v=STSv1; id=20261010T000000Z |
これらの認証ポリシーは標準的なTXTエントリに記述されるため、入力ミスや構文の誤りがあると、メールの配信に直ちに影響が出る可能性があります。当社の無料サービス ドメインアナライザー でドメインを分析し、SPF、DKIM、DMARCレコードの構文が正しく、ドメインのなりすましから保護されていることを確認してください。
各DNSレコードタイプの検索方法
Webベースのツールやコマンドラインユーティリティを使用すれば、任意のドメインに対して公開されているDNSレコードを確認することができます。
世界中の再帰的リゾルバーを対象とした迅速な評価を行うには、当社の無料の DNSレコード検索 ツールをご利用ください。ソフトウェアのインストールは不要で、A、AAAA、MX、CNAME、TXT、NS、SOA、PTRレコードを取得できます。
ターミナルからトラブルシューティングを行いたい場合は:
- macOS および Linux の場合: 次のコマンドを使用してください dig を使用して、特定のレコードタイプを照会します:
example.com の MX レコードを検索
- Windowsの場合: 次のコマンドを使用します nslookup を使用し、クエリの種類を指定します:
nslookup -type=MX example.com
応答を評価する際は、TTL(Time to Live)の値に注意してください。DNSレコードを最近更新した場合、再帰的リゾルバーは、そのTTLが切れるまで、以前のキャッシュされたエントリを返し続けます。当社の DNS伝播チェッカーを使用して、リージョン間の更新の進捗状況を監視できます。
各DNSレコードの種類が重要な理由
DNSレコードは、あらゆるインターネット取引の基盤となるマップを提供します。レコードが適切に設定されていれば、ブラウザはウェブサイトを瞬時に解決し、メールゲートウェイはメッセージをスムーズにルーティングし、暗号化ヘッダーは正当な送信者を検証します。
DNSレコードの設定に誤りがあったり、レコードが存在しなかったり、廃止されたインフラストラクチャを指していたりすると、重要なサービスは即座に停止してしまいます:
- 誤りや欠落がある A/AAAA レコードがあると、ウェブサイトが利用できなくなります。
- 設定ミスが生じた MX レコードの設定ミスにより、受信したメールが差出人にバウンスされてしまいます。
- 欠落している、または無効な TXT 認証レコードが欠落しているか無効な場合、マーケティングメールやトランザクションメールがスパムとして判定されてしまいます。
- ダングリング CNAME が、使用されなくなったサードパーティのホストを指している場合、ドメインが悪意のあるサブドメイン乗っ取りの危険にさらされます。
ゾーンレコードを適切に管理し、確立された DNSセキュリティのベストプラクティス を遵守することで、中核となるデジタルインフラストラクチャの可用性とパフォーマンスを維持し、傍受攻撃から保護することができます。
まとめ
DNSレコードの種類を理解することは、ドメイン管理、Webパフォーマンス、およびメールセキュリティを担当するすべての人にとって不可欠です。AレコードやAAAAレコードによるホスト名の変換から、TXTエントリによるメールの暗号化信頼関係の確立に至るまで、各レコードの種類にはそれぞれ固有の役割があります。DNSゾーンファイルを定期的に監査することで、ネットワークサービスを円滑に稼働させると同時に、なりすましやダングリングレコードの脆弱性からブランドを保護することができます。
よくあるご質問
DNSレコードの種類はいくつありますか?
インターネット番号割り当て機関(IANA)は、数十種類の公式DNSリソースレコードタイプのレジストリを管理しています。その多くは歴史的なもの、実験的なもの、あるいは廃止されたものですが、実稼働中のドメインでは、日常的なWebルーティング、メール配信、およびドメインのセキュリティのために、約12~15種類の標準レコードタイプからなる中核となるセットに大きく依存しています。
最も一般的なDNSレコードの種類は何ですか?
Aレコードは、インターネット上で最も一般的かつ基本的なDNSレコードの種類です。ウェブ上でホストされているほぼすべてのドメイン名には、人間が読み取れるドメイン名やサブドメインを、アクセス可能なIPv4アドレスに紐付けるために、少なくとも1つのAレコードが必要です。
メールを利用するには、どのようなDNSレコードの種類が必要ですか?
メールを確実に送受信するには、メールサーバーを指すMXレコード、そのメールサーバーのホストに対する有効なAレコードまたはAAAAレコード、およびリバースDNS検証用の対応するPTRレコードが必要です。さらに、SPFおよびDMARC用に設定されたTXTレコードに加え、DKIM用のTXTレコードまたはCNAMEレコードも必要です。
AレコードとCNAMEレコードの違いは何ですか?
Aレコードは、ホスト名を物理的なIPv4アドレスに直接関連付けます(例:example.com を 192.0.2.1)。CNAMEレコードは、エイリアスホスト名を別の正規ドメイン名に関連付けます(例:blog.example.com を webhost.example.net)。ルックアップの流れやアペックスの制限について比較するには、当社のガイド「 AレコードとCNAMEの比較」をご参照ください。
DNSレコードの変更が反映されるまで、どのくらいかかりますか?
DNSの変更が全世界に反映されるまでには、数分から最大48時間かかります。更新の速度は、既存レコードに設定されたTTL(Time to Live)によって異なります。TTLは、中間リゾルバーが、権威ネームサーバーに新しいコピーを問い合わせるまで、その応答をどのくらいの期間保持できるかを指定するものです。