合同会社小村ソフト
第 7 章

総合演習と全問レビュー

ケース問題 8 問で、bailiwick・entropy・NAT・DNSSEC・運用の視点をまたいで仕上げる。

ここで仕上げる

この章ではケース問題 8 問を通して、glue / entropy / NAT / AD bit / negative caching / split-horizon を横断して解きます。1 章ごとの知識ではなく、複数の章を組み合わせた視点で判断できるかを確認します。

合格の目安: ケース問題 8 問のうち 6 問以上正解できていれば、cache poisoning の防御・観測で現場の一次切り分けに十分使える状態です。

総合演習で使う視点

この章で使う見方
第 1 章「誰の cache に誰が答えを入れたか」を分ける
第 2 章in-bailiwick glue と out-of-bailiwick additional の違い
第 3 章ID / source port / question / time window の一致と entropy
第 4 章2008 の教訓と、patch / recursion control の短期対策
第 5 章DNSSEC の守備範囲と last-hop の trust 問題
第 6 章dig・ログ・negative caching / split-horizon の切り分け

総合演習 7-1 — bailiwick・entropy・DNSSEC(仕組み軸)

referral の扱い、port entropy、AD bit と last hop など、「仕組みでどこまで守れるか」をケースで確認します。

Q1. 親ゾーンの referral で NS ns1.shop.example.comA ns1.shop.example.com 192.0.2.53 が一緒に返ってきました。最も妥当な扱いはどれですか。

Q2. referral に NS ns.partner.netA ns.partner.net 198.51.100.10 が Additional で付いてきました。最も安全側の判断はどれですか。

Q3. resolver が NAT 配下にあり、外向き source port が実質 256 通りの連番に丸められています。このとき最も正しい説明はどれですか。

Q4. stub resolver が AD=1 の応答を受け取りましたが、その upstream recursive resolver も通信路も十分に信頼していません。このときの解釈として最も適切なのはどれですか。

Q5. 対象 zone が unsigned です。最も正しい説明はどれですか。

総合演習 7-2 — 運用・監視・総合方針(運用軸)

監視シグナル、cache TTL の寿命、組織方針まで「現場でどう回すか」を確認します。

Q6. ある zone に対し、短時間に大量の random な存在しないラベルへの query が続いています。cache poisoning 観点で気にする理由として最も近いものはどれですか。

Q7. patch を適用した直後なのに、同じ resolver を使う利用者があと 2 分ほど同じ誤答を見ると予想されます。最も直接の理由はどれですか。

Q8. 組織の recursive resolver に対する総合方針として最も適切なものはどれですか。

この講座の着地点

  • shared recursive resolver の cache に誤った RRset が残る と、利用者全体に同じ誤答が配られる構図を説明できる。
  • referral / final answer / glue を分け、in-bailiwick / out-of-bailiwick を意識して扱える。
  • 応答受理条件(question / ID / address / port)と、entropy と試行回数 の関係を式と数字で捉えられる。
  • DNSSEC の origin authentication / integrity / authenticated denial of existence と、confidentiality は別物であることを説明できる。
  • AD bit の意味を last hop の trust 問題 と合わせて読める。
  • トラブル時にまず dig @resolver / dig +trace / dig +dnssec で応答を観察し、negative caching や split-horizon を先に除外できる。
  • 最終的には patch・entropy・bailiwick・DNSSEC・運用監視 を組み合わせて考えられる。

次にやると定着しやすいこと

  1. 自分の管理 resolver で dig +tracedig +dnssec を実行し、referral と署名検証の出力を目で確認する。
  2. unsigned zone と signed zone を 1 件ずつ選んで ad flag の差を観察する。
  3. negative caching の TTL が残っている状況を意図的に作り、「作ったのに見えない」の典型を手で体験する。
  4. 運用側では、random label の急増や署名検証 failure のログを拾う監視があるかを確認する。