Aレコードを追加したのに、まだ存在しないと返る
独自例:0秒の否定応答と、120秒のレコード追加
説明のため、アプリや端末内の追加キャッシュを除き、再帰リゾルバ一台だけを見る単純な構成を置きます。0秒時点でtest.exampleのAレコードを問い合わせ、権威DNSからNXDOMAINと、300秒のネガティブTTLが得られたとします。この.exampleの名前は説明用で、実在サービスを指しません。
120秒時点で権威DNSに正しいレコードを追加しても、再帰リゾルバには元の否定応答の期限が180秒残っています。通常のキャッシュ利用で同じ応答を返しているなら、利用者が追加済みの値をまだ受け取れないことがあります。追加の瞬間から新たに300秒を数え直す、という計算でもありません。
0秒
否定応答を取得
NXDOMAIN取得。負のTTL300秒で保持
120秒
権威側で追加
権威DNSへ追加。元のキャッシュ期限は残り180秒
300秒以降
期限と再問い合わせを確認
元の否定キャッシュは期限切れ。新しい問い合わせ結果を確認
一台の再帰リゾルバを仮定した時系列。300秒で全利用者に必ず届くという保証ではありません。
NXDOMAINとNODATAは、どちらも空欄という意味ではない
NXDOMAINは、問い合わせに対応する名前が存在しないことを表す応答です。一方、NODATAは、名前は有効でも要求した種類のレコードがない場合を指す表現です。NODATAという名前の専用RCODEがあるわけではなく、応答全体から判断します。CNAMEなどがある場合は、どの名前についての結論かも確認します。
例えば同じ名前にAレコードはあるがAAAAレコードはない、という状態はあり得ます。AAAAがないという結果だけで、その名前自体が存在しない、Aも存在しない、と結論付けるべきではありません。画面の「解決できない」という短い表示から、DNS応答の種類を推定しないようにします。
NXDOMAIN
- 名前が存在しない旨の応答
- 要求したレコード種類だけの話に縮めない
- CNAME等を含む応答は対象名も確認
NODATA
- 名前は有効、要求した種類がない
- Aは存在し、AAAAはない場合もある
- 専用RCODE名ではなく応答から判断
DNSの否定応答と、タイムアウト・SERVFAIL・Webページの404を混同しません。
負のTTLは、追加したAレコードのTTLだけでは決まらない
RFC 2308の基本では、権威側が返す否定応答のSOAに、ネガティブキャッシュの期間を伝える役割があります。その値はSOA自身のTTLとSOAのMINIMUMフィールドの小さい方に基づきます。SOAのTTLが900秒、MINIMUMが300秒なら、ここでの値は300秒です。
後から追加するAレコードのTTLを60秒にしただけでは、既に保持された元の否定応答を直ちに失効させたことにはなりません。新しい肯定応答の保存期間と、過去の否定応答の残存期間を別に考えます。実装側がより短く制限する場合もあり、設定値と観測されたTTLを区別します。
同じ端末でも、問い合わせ先が違えば結果が違う
社内ネットワークのDNS、家庭の回線のDNS、ブラウザが独自に使うDNSなど、問い合わせ先が同じとは限りません。VPN利用時や内部向けの名前解決では、見える範囲そのものが異なる場合もあります。別の回線で解決できたという結果だけで、社内の設定ミスや攻撃を断定しないようにします。
調査では、調べた名前、A・AAAA等の種類、問い合わせ先、観測時刻、応答コード、残りのTTLをそろえて記録します。権威側の応答と、普段利用しているリゾルバの応答を、許可された範囲で比較します。利用者の画面と管理画面だけを比べて、同じ場所を観測したつもりにならないことが重要です。
キャッシュを消せば必ず直る、とは限らない
端末内のキャッシュを消しても、上流の再帰リゾルバが元の応答を保持していることがあります。アプリ、OS、フォワーダなどの追加の段階も考えます。逆に、権威側の設定や委任が誤っていれば、何度問い合わせても正しいデータには変わりません。まず、どの段階で何を返しているかを確かめます。
ここでの300秒は、設定と一つのキャッシュを固定した教材上の時計です。障害時に古い応答を扱う方式や実装の方針、DNSSEC検証、複数段の構成などもあり、サービス全体の反映期限として断定しません。調査のためにDNSSEC等の保護を安易に無効化することも、この説明からは導けません。
Webの404や、接続先アプリのエラーとは分ける
学習では、何秒待つかより、誰の記録が残っているかを答える
この例で120秒時点の残りは300−120=180秒です。ただし覚えたいのは引き算だけではありません。権威DNSの現在の情報と、過去に取得されたキャッシュの情報が同時に存在し得る、という関係です。「追加したのに見えない」から「追加に失敗した」へ飛躍しない練習をしてください。
モバイル2級の問題集選びでは、用語の暗記だけでなく、どの問い合わせ・どの時点・どの応答を見ているかを確認できる解説かも判断材料になります。実務の切り分けでは変更権限と影響範囲を確認し、観測結果を残してから次の確認先を決めます。
