階層と委任 — ゾーンで責任を分ける
ドメインとゾーンを分けて考え、委任・zone cut・glue が何のためにあるかを実例で整理する。
「shop は別チームに任せたい」から始める
第 1 章では、DNS の正規データを持つのは権威サーバだと整理しました。では、世界中の名前の正規データを誰か 1 人が持っているのでしょうか。もちろん違います。この章のテーマは、その責任がどう分割されているかです。
具体的な場面で考えます。あなたの会社が example.com を運用していて、EC サイト shop.example.com は別チーム(あるいは外部ベンダー)が管理することになりました。shop 配下のレコードを毎回あなた経由で変更するのは非効率です。そこで shop.example.com 以下の管理権限ごと相手に渡す — これが委任(delegation)です。
ここで用語を 2 つ、はっきり区別します。
example.com と言えば、その下の名前すべてを含む「木のまとまり」を指します。委任していなければ、shop.example.com のレコードは example.com ゾーンの中にただの 1 行として置かれます。委任した瞬間、そこに zone cut(ゾーンの切れ目)が生まれ、親ゾーンと子ゾーンに責任が分かれます。ドメインの木はひと続きのままなのに、管理の地図には国境線が引かれる — この二重構造が、DNS で最初に混乱しやすいポイントです。
root から TLD、各組織のゾーンへと、委任の連鎖で責任が分かれていきます。名前の木の形と、責任の境界(zone cut)は別のレイヤーです。
小問 2-1 — 名前空間と責任範囲を分けて考える
ドメインとゾーンを同一視しないこと。この章の核心はそこにあります。
Q6. ドメインとゾーンの関係として最も正しい説明はどれですか。
ドメインは「名前の木」のまとまり、ゾーンは「誰が正規データを管理するか」のまとまりです。委任がなければ 1 つのゾーンが部分木全体をカバーしますが、委任すると zone cut で責任が分かれます。
Q7. example.com を親が持ち、shop.example.com と eu.shop.example.com がそれぞれ別の NS 群に委任されているとします。権威管理の単位として数えると、ゾーンはいくつありますか。
example.com ゾーン、shop.example.com ゾーン、eu.shop.example.com ゾーンの 3 つです。ドメインの木としてはひと続きでも、委任のたびに責任範囲=ゾーンが 1 つ増えます。
zone cut の両側には何が置かれるか
委任はレコードで表現されます。zone cut の親側・子側にそれぞれ決まったものが置かれ、再帰リゾルバはそれを頼りに境界を越えます。
- 親ゾーン側 — 子ゾーンの権威サーバ群を示す NS を置きます。必要なら、その NS 名の IP アドレスである glue も添えます。
- 子ゾーン側 — 自分の apex に、ゾーンの開始を示す SOA と、自分自身の NS を置きます。
- 再帰リゾルバ — 親から referral(NS への案内)を受け取り、子の権威サーバへ進みます。
| 要素 | 役割 | 実務で見る場面 |
|---|---|---|
| SOA | ゾーンの開始点。serial や各種タイマーの基準 | 「どこからがこのゾーンの責任範囲か」を確かめるとき |
| NS | そのゾーンを配る権威サーバ群の名前 | 委任先の確認。親側と子側の NS が食い違うと事故のもと |
| glue | 委任先 NS 名の IP アドレス(親側に置く補助情報) | NS 名が子ゾーンの内側にあるとき |
小問 2-2 — 委任の境界に置かれるもの
SOA / NS / glue の役割が曖昧だと、第 6 章の dig +trace で道に迷います。
Q8. shop.example.com の権威サーバ名が ns1.shop.example.com のように子ゾーンの内側にあるとき、親ゾーンに glue が必要になる理由はどれですか。
「子ゾーンに聞くには ns1.shop.example.com の IP が要る。しかしその IP を知っているのは子ゾーン自身」という循環に陥ります。親が glue(NS 名の IP アドレス)を添えることで、再帰リゾルバは最初の一歩を踏み出せます。
Q9. 委任された子ゾーンの apex(ゾーンの頂点となる名前)に、通常まず置かれるレコードとしてあてはまらないものはどれですか。
子ゾーンの apex には、ゾーンの開始を示す SOA と権威サーバ群を示す NS が必ず置かれます(MX なども共存できます)。一方 CNAME は「この名前は別名」という宣言なので、SOA / NS と同居できず、apex には置けません。詳しくは第 4 章で扱います。
glue — 鶏と卵を断ち切る「最初の足場」
委任には 1 つだけ、論理パズルのような問題が潜んでいます。shop.example.com の権威サーバ名が ns1.shop.example.com だったとしましょう。再帰リゾルバの立場で考えると:
- shop.example.com ゾーンのことは
ns1.shop.example.comに聞けばよい、と親から案内された。 - では
ns1.shop.example.comの IP は? — それは shop.example.com ゾーンの中のデータだ。 - shop.example.com ゾーンに聞くには
ns1.shop.example.comの IP が要る。振り出しに戻る。
この循環を断ち切るために、親ゾーンが NS 名の IP アドレスを補助情報として添えます。これが glue(糊)です。親と子の間を糊付けして、最初の一歩を可能にする — 名前のとおりの役割です。NS 名が子ゾーンの外(例: ns1.dns-vendor.net)にあれば循環は起きないので、glue は不要です。
実務の注意: レジストラの管理画面、クラウド DNS のコンソール、社内の DNS サーバ — 設定 UI が複数あると「どこで設定したか」に意識が引っ張られます。トラブル時に見るべきはUI の場所ではなく、いまこの名前に対して権威を持つのはどのゾーンか、その NS はどこを向いているかです。
小問 2-3 — 委任点でバトンはどう渡るか
委任済みの名前について、親ゾーンが何を返すかを確認します。
Q10. shop.example.com は別ゾーンに委任済みとします。親ゾーン example.com の権威サーバに api.shop.example.com A を聞いたとき、最も起こりやすい返し方はどれですか。
委任点から先は子ゾーンの責任範囲です。親は最終答えを持たないので、「その先はこの NS 群に聞いてください」という referral を返します。存在しない(NXDOMAIN)のではなく、担当が違うだけ — この区別が重要です。
この章で持ち帰ること
- ドメインは名前空間、ゾーンは責任範囲。委任のたびにゾーンが増える
- 委任点には zone cut が生まれ、親は最終答えではなく referral を返す
- glue は循環参照を断ち切る最初の足場。NS 名が子ゾーンの内側にあるときだけ必要
次章では、この階層を再帰リゾルバが実際にどう辿るのかを、シミュレータで一歩ずつ観察します。