要約
- root hintsファイルは起動のための経路であり、DNS権威を恒久的に宣言するものではない。
- RFC 9609は、
.のNSを問い合わせ、権威応答を通常のDNSデータとしてキャッシュし、最初の宛先が応答しなければ別の設定済みアドレスへ切り替える手順を定める。 - 設定は「どこから質問を始められるか」を示し、応答は「現在何を使うべきか」を示す。TTLは後者の有効期限を決める。
分析
空のキャッシュには循環がある。ネームサーバーを見つけるには、すでにどこかのネームサーバーを知らなければならない。root hintsは、いくつかのルートサーバー識別子に対応するアドレスを与えて循環を断つ。ただし、ファイル自体がルートゾーンなのではない。最初の問いを届けるための到達可能性にすぎない。
その問いは、ルート名.をQNAME、NSをQTYPE、INをクラスとして送られる。RFC 9609はこれをプライミングクエリと呼ぶ。設定された一つのアドレスへ送り、成功すれば現在のルートNS RRsetと、利用できるIPv4・IPv6アドレスがキャッシュに入る。ソフトウェアとともに届いた静的情報は、DNSが返した現在情報に役目を譲る。
この置換こそが目的である。RFC 9609は、設定されたアドレスを一部ルートサーバーの「そうであるとされる」アドレスとして扱う。配布時には正しくても、やがて古くなり得る。ルートサーバー識別子は1997年以来安定している一方、対応アドレスは変わることがある。
歴史的な出発点はRFC 1034のSBELTである。キャッシュから問い合わせ先を得られないとき、設定上の有用そうなサーバーを作業リストへ移す「安全ベルト」だった。安全ベルトは探索が空中へ落ちるのを防ぐが、その後の全経路を操縦するものではない。
RFC 8109は2017年にこの挙動をBCP 209として整理した。2025年のRFC 9609がそれを廃止・更新し、現在のBCPとなった。初期情報の中身、期限前更新、欠けたアドレスの回収、ルートサーバー識別子という用語、そして応答がreferralではないことを明確にした。
クエリの条件は狭い。RDは0にすべきで、EDNS0を使い、少なくとも1024オクテットを再構成できるべきである。UDPなら送信元ポートをランダムに選び、DNS Cookiesもオフパス偽装への障壁になり得る。起点を偽られれば、その後の解決全体が誤方向へ進み得るからだ。
応答はNOERRORで、AAが立ち、AnswerにルートNS RRsetを含まなければならない。問われたRRsetがAnswerにあるため、Authorityは空でなければならない。Additionalには、示されたルート識別子のAやAAAAが入る。
Additionalのアドレスをglueと呼ぶのは誤りである。子ゾーンへのreferralではなく、ルートNSへの直接回答だからだ。従ってRFC 9471が委任glueの欠落に求めるTC規則は適用されない。アドレスが一部欠けてもTCが立つとは限らない。
同じクエリを再送しても、固定順序なら同じアドレスが欠ける。リゾルバーは不足する識別子へAとAAAAを直接問い合わせる必要がある。現在のIANAスナップショットに13識別子があるからといって、全応答に13個のNSを要求してもならない。
キャッシュ後はTTLが支配する。ルートNS RRsetも通常どおり期限切れになる。期限前にprefetchしてよいが、RFC 9609は、その際には古いかもしれない設定値よりキャッシュ内の現在アドレスを使うよう勧める。学習済みの現在状態が、自らを更新できる設計である。
応答がなければ、別の設定済みアドレスへ再試行しなければならない。宛先は、実際に使えるIPv4・IPv6接続を考慮しつつランダムに選ぶべきである。冗長性は行数ではなく、失敗時に別の出発路へ移れることで成立する。
本稿で固定したIANA named.rootは、ルートゾーン版2026072901との関係を記し、13の識別子それぞれにAとAAAAを一つずつ載せている。表示TTLは3,600,000秒である。これは13台の物理サーバーを意味しない。各識別子は多数のanycastインスタンスへつながる。
セキュリティ上の残りは重い。偽のプライミング応答は、将来の問い合わせを攻撃者のサーバーへ向けられる。RFC 9609は、応答がDNSSECで保護されるまでは決定的な防止手段がないとする。後続チェーンの検証が一部の攻撃を見つけても、hintsファイルが認証済み権威になるわけではない。
プライミング後も、リゾルバーは速度測定、性能帯、集合内ランダム選択などを決める。BCPは唯一の方式を指定せず、ルートだけを特別扱いしないよう示唆する。重要なルートNSも、到達性と遅延と期限を持つDNSデータである。
この仕組みが成熟した理由は、設定をなくしたことではなく、その権限を限定したことにある。配布者は最初の問いが届くアドレスを渡す。権威サーバーが現在の答えを返す。TTLが答えを古くし、再試行が一つのアドレスへの依存を破る。ヒントの価値は、答えに置き換えられることによって保たれる。
Sources
会員向け解説
プロフィールの詳細
適切な会員レベルでログインすると、解説全文と出典メモをご覧いただけます。
Strategic Circle 限定
Strategic Circle
すべての読者に公開されています。参加してログインすると プロフィール解説 を閲覧できます。
Strategic Circle に参加Leadership Alliance 会員限定
Leadership Alliance
対象となる IP 資産の所有者・管理者向けです。ログインすると Leadership Alliance の解説を閲覧できます。
Leadership Alliance に参加
