インフラ用語集へ戻る

その他 / DNSSEC

DSレコードとは

Delegation Signer record。親ゾーンに登録し、子ゾーンのDNSSEC署名鍵を信頼するためのDNSレコードです。

用語集内のカードを見る

詳細な図解

親ゾーンから子ゾーンへ信頼を渡す流れ
親ゾーン委任先を示す
DSレコードkey tag/digestで鍵を参照
子ゾーンDNSKEYDNSKEYと照合
検証結果一致すれば信頼チェーン成立
  • DSは親ゾーン側に登録する
  • digest typeとalgorithmを控える
  • 古いDSの削除順序に注意

この記事で学べること

DSレコードを、定義だけで終わらせず、現場で出てくる場面、確認材料、見落としやすい点、関連語とのつながりまで順に確認できます。

  1. DSレコードがDNSSECで担う役割
  2. どこで問題になりやすいか
  3. 確認手順と証跡
  4. よくある誤解
  5. 運用での注意点

DSレコードがDNSSECで担う役割

DSレコード(Delegation Signer record)は、親ゾーンに置かれ、子ゾーンのDNSKEYを信頼してよいことを示すDNSSECの橋渡しです。たとえばexample.jpの署名を有効にする場合、.jp側に子ゾーンの鍵情報の要約を登録し、利用者側のリゾルバが信頼の連鎖をたどれるようにします。

DSレコードが正しければ、親から子へ信頼がつながります。逆に値が古い、登録先が違う、鍵更新の順序を誤ると、権威DNSでは値が返っているのにDNSSEC検証リゾルバだけ名前解決に失敗するという厄介な障害になります。

どこで問題になりやすいか

DSレコードは、DNSSECの新規有効化、レジストラ移管、権威DNSサービスの移行、KSKロールオーバーで特に重要です。通常のAレコード変更と違い、親ゾーン側の登録が絡むため、DNS管理画面だけを見て完結しません。

変更作業では、子ゾーンのDNSKEY、親ゾーンのDS、検証リゾルバからの応答を分けて確認します。DNSSECを使わないリゾルバでは成功しても、検証するリゾルバではSERVFAILになることがあるためです。

確認手順と証跡

確認では、key tag、algorithm、digest type、digestが子ゾーンのDNSKEYから計算した値と一致しているかを見ます。Linux環境ではdigでDS、DNSKEY、RRSIGを確認し、外部のDNSSEC検証結果も併用します。

  • 親ゾーンに登録されたDSレコードの値を保存する。
  • 子ゾーンのDNSKEYとRRSIGを同じ時刻で取得する。
  • 変更前後で検証リゾルバの応答とSERVFAIL有無を記録する。

よくある誤解

DSレコードは子ゾーンに置くものではなく、親ゾーンに置く委任側の情報です。また、DNSKEYを更新した瞬間に古いDSを消すと、キャッシュや反映待ちの間に信頼の連鎖が切れます。

もう一つの誤解は、DNSSECは証明書の代わりになるという見方です。DSレコードはDNS応答の真正性を支えるもので、HTTPSのサーバー証明書やTLSの検証とは役割が違います。

運用での注意点

DSレコードを扱う作業では、親ゾーン側の反映時間、TTL、ロールオーバー手順、切り戻し条件を事前に書いておきます。特にドメイン移管では、新旧レジストラと新旧DNS事業者の責任境界が混ざりやすいため、誰が親ゾーンのDSを更新するのかを明確にします。

関連語としてDNSSEC、DNSKEY、権威DNSを一緒に確認すると、署名、委任、検証のどこで失敗しているかを説明しやすくなります。

関連語

同じ主要カテゴリの用語

同じ主要カテゴリの別用語なし

その他の学習順

同じ主要カテゴリの用語をまとめて確認できます。現在の用語を起点に、前後の用語へ進むと文脈を保ったまま読み進められます。

InfraEngKit内の関連機能