リソースレコード
2023-02-12 (日) 11:41:48
リソースレコード †
- 権威サーバで保持するゾーンの情報
- ドメイン名、タイプ、クラスの組み合わせで構成される
リソースレコードのフォーマット †
ドメイン名 TTL クラス タイプ データ
- ドメイン名は絶対ドメイン名(末尾に"."(ルート)を付ける)
- TTL、クラスは省略可能
- 同じドメイン名のリソースレコードが複数ある場合、2行目以降はドメイン名を省略可能
リソースレコードの構成 †
TTL †
- Time To Live
- フルリゾルバがキャッシュに保持する時間(単位:秒)
- ゾーンの管理者が指定する
クラス †
- ネットワークの種類
- 通常は"IN" しか使われないが、特殊な用途で"IN" 以外が使われることもある
IN †
- インターネットを表す
タイプ †
- 情報の種類
SOA †
- プライマリDNSサーバのドメイン名。
- 権威ドメイン。ゾーン権限を持っているDNSサーバを指定するレコード。
- Zone Apexに必ず設定する。
- フォーマット
ドメイン名 TTL IN SOA MNAME RNAME SERIAL REFRESH RETRY EXPIRE MINIMUM
- MNAME
- プライマリサーバのホスト名
- RNAME
- ゾーンの管理者のメールアドレス
- メールアドレスの"@"は"."に置き換えて表記する
- SERIAL
- ゾーンデータのシリアル番号
- ゾーン転送でセカンダリサーバがプライマリサーバに新しいゾーンデータがあるかどうかを判断する際に使われる
- REFRESH
- セカンダリサーバが自発的にゾーンデータの更新を試みるまでの時間(単位:秒)
- プライマリサーバからのDNS NOTIFY の通知を待たずに行われる
- RETRY
- ゾーンデータの更新が失敗した場合に、再度ゾーンデータの更新を試みるまでの時間(単位:秒)
- EXPIRE
- ゾーンデータの更新が失敗した場合に、保持しているゾーンデータを期限切れにするまでの時間(単位:秒)
- 期限切れになると、セカンダリサーバは問い合わせに対して保持するゾーンデータを応答しなくなる
- MINIMUM
- フルリゾルバがネガティブキャッシュを保持する時間(単位:秒)
- SOAリソースレコードのTTLの時間の方が短い場合は、SOAリソースレコードのTTLの方が有効になる
- MNAME
NS †
- ドメインのゾーンを管理する権威サーバのホスト名を設定するレコード
- ドメイン自身(子)のゾーンと親のゾーンの両方に設定する
- 権威サーバが複数ある場合は、権威サーバ分のレコードを設定する
- 設定するレコードの順番はDNSの動作に影響しない
- Zone Apexに必ず設定する。
- フォーマット
ドメイン名 TTL IN NS 権威サーバのホスト名
A †
- ドメイン名に対応するIPアドレス(IPv4)
- ドメイン名とIPアドレス(IPv4)を紐づけるレコード。
- 1つのドメイン名に対して複数のIPアドレスがある場合は、IPアドレス分のレコードを設定する
- フォーマット
ドメイン名 TTL IN A IPアドレス(IPv4)
AAAA †
- クワッドエー
- ドメイン名に対応するIPアドレス(IPv6)
- ドメイン名とIPアドレス(IPv6)を紐づけるレコード。
- 1つのドメイン名に対して複数のIPアドレスがある場合は、IPアドレス分のレコードを設定する
- フォーマット
ドメイン名 TTL IN AAAA IPアドレス(IPv6)
MX †
- Mail Exchange
- メールサーバのホスト名
- メールサーバ(メールアドレスで利用するドメイン名)を指定するレコード
- MXレコードが設定されていない場合、メールはAレコードで指定したIPアドレスに送られる。
- メールを明示的に受信しない(Null MX)ことを設定することができる。(プリファレンス値:0、メールサーバ名:.)
- 1つのドメイン名に対して複数のメールサーバがある場合は、メールサーバ分のレコードを設定する
- フォーマット
ドメイン名 TTL IN MX 優先度 ホスト名
- 優先度
- 複数のメールサーバがある場合の優先度を数値で設定する
- 値が小さい方を優先する
- 優先度
CNAME †
- ドメイン名の正式名を指定するレコード
- ホスト名に別名を付ける場合に使われる
- CDNなどの外部のサービスを自分のドメイン名で利用する際に使われることがある
- 同じゾーンの別のドメイン名を指定することもできる
- エイリアス
- フルリゾルバが問い合わせをしたドメイン名にCNAMEレコードが設定されていると、CNAMEレコードに設定されている正式名に対して再度名前解決を行い、その結果を応答する
- CNAMEレコードを設定したドメイン名に対して、他のリソースレコードを設定することができない(設定した場合は動作保障されない)
- 1つのドメイン名に対して複数のCNAMEレコードを設定することができない
- Zone Apexは、CNAMEを設定することができない。
- フォーマット
ドメイン名 TTL IN CNAME 正式名
TXT †
- ドメイン名に対して任意のテキスト情報を設定するレコード
- 送信ドメイン認証で使われる
- フォーマット
ドメイン名 TTL IN TXT 任意の文字列 ドメイン名 TTL IN TXT "任意の文字列"
PTR †
- Pointer record
- ドメイン名の別名逆引き
- IPアドレスからドメイン名を逆引きするためのレコード。
- フォーマット
逆引き用のドメイン名 TTL IN PTR ドメイン名
OPT †
- EDNS0に関する情報など
CAA †
- サーバ証明書の発行を承認した認証局のコモンネームを指定するレコード
- 第三者による不正な証明書の発行や誤発行を防止する
HTTPS †
- Webサーバの情報を設定する
DNSKEY †
RRSIG †
- DNSSECのデジタル署名で生成した署名を設定するレコード
- フォーマット
ドメイン名 TTL IN RRSIG タイプ アルゴリズム ラベル オリジナルTTL 有効期間終了時刻 有効期間開始時刻 鍵タグ 署名者 署名
DS †
- DNSSECの公開鍵(DNSKEYリソースレコード)を元に生成したハッシュ値を設定するレコード
- DSリソースレコードは親ゾーンの秘密鍵で署名され、親ゾーンに登録する
- 署名はRRSIGリソースレコード(タイプ:DS)で登録する
- フォーマット
ドメイン名 TTL IN DS 鍵タグ アルゴリズム ダイジェストタイプ ダイジェスト([[ハッシュ]]値)
SVCB †
関連用語(リソースレコード) †
- リソースレコードセット
- RRset
- 1つのドメイン名に対してクラスとタイプが同じリソースレコードの設定のこと
- データのみ異なるリソースレコードが複数、またはリソースレコードが1つの場合もリソースレコードセットとして扱われる
- グルーレコード
- 任意元の権威サーバに設定する任意先の権威サーバのNSレコードに対応するA/AAAAレコードのこと
- フルリゾルバが任意先の権威サーバに名前解決を依頼する為には、任意先の権威サーバを知る必要があるのでそのためのもの