ほぼすべてのゾーンで出会うレコード
DNSレコードタイプ徹底解説:完全リファレンス
ドメインのDNSゾーンはレコードの集まりで、各レコードには意味を定義するタイプがあります。登録簿には数十種類のタイプがありますが、実際に重要なのは約10種類です。ここではその10種類のリファレンスをまとめます。
ほぼすべてのゾーンで出会うレコード
クイックリファレンス
| タイプ | 対応付け | 一般的なTTL |
|---|---|---|
A | ホスト名からIPv4へ | 3600 |
AAAA | ホスト名からIPv6へ | 3600 |
CNAME | ホスト名から別のホスト名へ | 3600 |
MX | ドメインからメールサーバーへ | 3600 |
TXT | ドメインから任意のテキストへ | 3600 |
NS | ドメインからそのネームサーバーへ | 86400 |
SOA | ゾーンのメタデータ | 86400 |
PTR | IPアドレスからホスト名へ | 3600 |
SRV | サービスからホストとポートへ | 3600 |
CAA | 証明書を発行してよい認証局 | 3600 |
A — アドレス
ホスト名をIPv4アドレスに対応付けます。最も重要なレコードです。これがなければ、何も名前解決されません。
example.com. 3600 IN A 93.184.216.34よくある間違い: 値にホスト名を入れようとすること。A レコードに指定できるのは、IPアドレスそのものだけです。詳しくはDNS Aレコードとはをご覧ください。
AAAA — IPv6アドレス
IPv6版のレコードです。A レコードの4倍のサイズであることから、この名前が付きました。
example.com. 3600 IN AAAA 2606:2800:220:1::248よくある間違い: サーバーがそのアドレスで実際に待ち受けを始める前に公開すること。デュアルスタックのクライアントはまずIPv6を試し、応答がなくて止まった後にフォールバックするため、一部の訪問者にはサイトが遅く感じられます。
CNAME — 正規名
あるホスト名を別のホスト名のエイリアスにします。リゾルバーは続いて、その指す先を調べます。
www.example.com. 3600 IN CNAME example.com.誰もがつまずく2つのルール: CNAME はドメインのルートには置けません。また、CNAME を持つ名前には、ほかのレコードを置けません。CNAMEとAレコードの違いをご覧ください。
MX — メール交換
ドメイン宛てのメールを受け付けるサーバーを示します。優先度の値があり、小さいほうが先に試されます。
example.com. 3600 IN MX 10 mail.example.com.
example.com. 3600 IN MX 20 backup.example.com.よくある間違い: IPアドレスや CNAME を指すこと。指す先は、それ自身の A/AAAA レコードを持つホスト名でなければなりません。MXレコードをご覧ください。
TXT — テキスト
任意のテキストを保持します。実際には、メール認証とドメイン所有確認に使われます。
example.com. IN TXT "v=spf1 include:_spf.google.com ~all"
_dmarc.example.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@example.com"よくある間違い: v=spf1 レコードを2つ公開すること。これは恒久的なエラーで、受信側は両者を統合してくれません。SPF、DKIM、DMARCをご覧ください。
NS — ネームサーバー
そのゾーンの権威を持つネームサーバーを宣言します。これが委任のレコードです。
example.com. 86400 IN NS ns1.example.com.
example.com. 86400 IN NS ns2.example.com.よくある間違い: ドメインが委任していないプロバイダーでレコードを編集してしまい、その編集がそもそも配信されないこと。ネームサーバーとはをご覧ください。
SOA — 権威の開始
ゾーンごとに1つだけ存在し、管理用のメタデータを保持します。プライマリネームサーバー、管理者のメールアドレス(@ をドットで表記)、シリアル番号、セカンダリサーバー向けのタイミング値です。
example.com. 86400 IN SOA ns1.example.com. admin.example.com. (
2026091201 ; serial -- must increase on every change
7200 ; refresh
3600 ; retry
1209600 ; expire
3600 ) ; minimum / negative-answer TTL知っておきたいこと: 最後の値はネガティブキャッシュTTLで、「この名前は存在しない」という答えがキャッシュされる時間です。新しく作成したレコードが、有効になっているのにしばらく存在しないように見えるのは、このためです。
PTR — ポインター
アドレスをホスト名に対応付け直します。ドメインのゾーンではなく、そのIPブロックの所有者が管理する逆引きゾーンに置かれます。
34.216.184.93.in-addr.arpa. 3600 IN PTR mail.example.com.よくある間違い: 自分のDNS管理画面で作成しようとすること。ホスティングプロバイダーに依頼する必要があります。逆引きDNSをご覧ください。
SRV — サービス
特定のサービスのホストとポートを公開します。SIP、XMPP、Minecraft、Microsoft Active Directoryなどで使われます。
_sip._tcp.example.com. 3600 IN SRV 10 60 5060 sipserver.example.com.
# | | | |
# priority | | target
# weight port知っておきたいこと: SRV は、ポートを持つ唯一の一般的なレコードタイプです。名前は常に _service._protocol.domain の形式になります。
CAA — 認証局認可
そのドメインの証明書を発行してよい認証局を列挙します。認証局は、発行の前にこれを確認することが義務づけられています。
example.com. 3600 IN CAA 0 issue "letsencrypt.org"
example.com. 3600 IN CAA 0 iodef "mailto:security@example.com"めったに触らないタイプ
ALIAS/ANAME— プロバイダー独自のもので、実際のDNSタイプではありません。ターゲットをサーバー側で解決することで、ルートでもCNAMEに似た挙動を実現します。DNSKEY、DS、RRSIG— DNSSECのレコードです。DNSSECを有効にすると自動で管理されるため、手作業で編集しないでください。NAPTR— 電話通信とENUMで使われます。HTTPS/SVCB— クライアントが接続前に接続パラメーターを知れるようにする、比較的新しいタイプです。利用が広がっており、CDNが自動で設定する場合もあります。
重要なポイント
実際の構成のほぼすべては、10種類のレコードタイプでカバーできます。DNSの問題の大半は特殊なものではなく、A レコードが間違った場所を指している、許可されていない場所に CNAME がある、ドメインが委任されていないプロバイダーで編集した、のいずれかです。
検索ツールを使えば、任意のドメインの A、AAAA、NS、CNAME、MX、TXT レコードを一度に確認できます。各タイプは独立して問い合わせられるため、あるタイプが欠けているドメインでも、残りは表示されます。
ドメインの公開DNSアドレスを調べたい場合は、Domain IP Lookupツールをお試しください。
このテーマの無料ツール
よくある質問
関連記事
再帰的なDNS検索を1ホップずつ見る
ブラウザー
example.comを要求
リゾルバー
ISP / 1.1.1.1
ルート + TLD
.comの管理元は?
権威サーバー
正式な回答
この連鎖の各ホップはそれ自体がDNS検索で、結果はその後キャッシュされます
DNSの仕組み:ドメイン名からIPアドレスまで
インターネットの電話帳を、端から端まで追跡します。ドメインを入力してから最初のパケットがサーバーに届くまでの数ミリ秒に、何が起きているのかを解説します。
ほぼすべてのゾーンで出会うレコード
DNS Aレコードとは?AAAAが必要になる場面
ドメインを実際にサーバーへ向けるレコードです。その構造、対となるAAAAレコード、サイトが最も壊れやすい4つの間違いを解説します。
ほぼすべてのゾーンで出会うレコード
CNAMEとAレコードの違いと使い分け
判断の分かれ目はただ1つ、IPアドレスを自分で管理しているか、他者が管理しているかです。誰もがつまずくルートドメインのルールも解説します。