
DNSネガティブキャッシュは、ドメインが存在しないという情報もキャッシュに保持することで、再帰的なリクエストを減らしネットワーク負荷を軽減します。この記事では、その仕組みやRFCにおける位置づけ、運用上の利点と課題について詳しく説明します。
この記事の目次
- DNSネガティブキャッシュの定義
- DNSネガティブキャッシュのRFC
- DNSネガティブキャッシュの仕組み
- ネガティブキャッシュとポジティブキャッシュの比較
- まとめ
DNSネガティブキャッシュの定義

DNSネガティブキャッシュは、リゾルバやプロキシサーバーが DNSの要求に対する応答がない場合に利用します。この機能を利用することで、短時間の間ドメイン名が見つからないという情報を保存する。
たとえば、ユーザーが間違ったドメイン名を入力したとき、DNSリゾルバは一時的にキャッシュ情報としてその失敗を保持し、一定期間内では再度同じリクエストに応じない。これによりネットワークの効率化とパフォーマンス向上が実現される
DNSネガティブキャッシュのRFC

DNSネガティブキャッシュの実装については、主にRFC 2308で規定されています。この仕様ではドメインが存在しない場合にもキャッシュを行うことを推奨し、TTL(Time to Live)によって情報の有効期限を設定します。
RFCにより定められたTTLはネガティブ情報を保持するための基準となります。これを利用することで、再度同じ失敗リクエストが発生しても短時間でレスポンスを返すことが可能になります
DNSネガティブキャッシュの仕組み

ネガティブキャッシュは、DNSリクエストに対してサーバーから応答が得られなかった場合に作動します。この情報は通常、失敗したドメイン名と一致する形式で記録されます。
次回同様の要求があったとき、キャッシュ内のデータを参照し、一定期間内で同じような応答を与えることにより通信効率が向上します。これによりユーザー側での待機時間を短縮することが可能となる
ネガティブキャッシュとポジティブキャッシュの比較

DNSネガティブキャッシュとポジティブキャッシュは、それぞれサーバーからの応答の有無により情報の取り扱いが異なります。前者は失敗した要求に関する情報を保持し、後者は成功した解決結果を保存します。
ポジティブキャッシュでは、ドメイン名の存在とそのアドレスへの解決が成功した場合にのみ情報がキャッシュされます。これに対してネガティブキャッシュは、ドメインが見つからない失敗ケースに対応する
まとめ
DNSネガティブキャッシュにより、ネットワーク上の負荷を軽減しパフォーマンス向上を図ることが可能となる。しかし運用上注意すべき点も存在するため、適切なTTL設定と保守管理は不可欠である
※本記事はIT用語辞典の手書きドラフトです。公開前に最新情報・出典を確認のうえ加筆修正してください。

コメント