学習状態はこのブラウザ内にのみ保存されます

DNS Resolver

object OS OS内(アプリケーション層との境界) レベル: intermediate / advanced

この概念が存在する機器の模型です。周りのマーカーは関係する概念 — クリックで移動

構造ビュー(Zoom の階層 §9.2)

上位: ↑ OS↑ OS

用語カード

OSの中で、アプリの名前解決要求を受けてDNSサーバーへ問い合わせる窓口(スタブリゾルバ)。

DNSリゾルバ(スタブリゾルバ)は、OSの中でアプリケーションからの名前解決要求を受け付け、設定されたDNSサーバー(フルリゾルバ)へ問い合わせる窓口です。

アプリは「getaddrinfo」のようなOSのAPIを呼ぶだけでよく、問い合わせの実務はリゾルバが担います。リゾルバはhostsファイルやローカルキャッシュを先に確認することもあります。

種別object
レイヤOS内(アプリケーション層との境界)
何をするアプリの名前解決APIを受け、hostsやキャッシュを確認し、DNSサーバーへ問い合わせて結果をアプリへ返す。
なぜ必要アプリごとにDNS問い合わせを実装させず、OSが窓口を一本化するため。
どこに存在する各端末のOS内部。ブラウザが独自のリゾルバ(DoH)を持つ場合もある。
セキュリティ参照先DNSを勝手に書き換えられると、名前解決ごと誘導される。設定の改変検知が重要。
前提知識 DNS

通信・利用の例

  • Windows/Linux/macOS の標準名前解決機能
  • getaddrinfo() が内部で呼ぶ仕組み

設定例

  • /etc/resolv.conf(Linux)や Windows のネットワーク設定にDNSが記録される

よくある誤解

  • リゾルバ自体は答えを持っておらず、DNSサーバーへ問い合わせる「窓口」である
  • ブラウザも独自にDNS問い合わせをする場合がある(DoH)

このノードへの疑問

情報の根拠(Sources)

事実の根拠は公式文書・RFC を正とし、このサイトの説明・図は独自の教材表現です(§6.8)。

依存・参照関係

Depends On(これに依存している)

  • DNS Server — 名前解決の問い合わせに応えるサーバー。端末向けのフルリゾルバと、答えを保持する権威サーバーの2役割がある。

Used By(これに依存しているもの)

  • Browser — URLを入口に、名前解決と接続をOSへ依頼し、コンテンツを描画するアプリケーション。

References(参照している定義・対象)

  • DNS — ホスト名からIPアドレスを引く(名前解決)ための、世界中に分散した階層型データベース。
  • DNS Server — 名前解決の問い合わせに応えるサーバー。端末向けのフルリゾルバと、答えを保持する権威サーバーの2役割がある。

Referenced By(参照されている)

  • OS — 通信設定の保持者であり、プロトコル処理の実行者。アプリはOSを通じて通信する。
  • Browser — URLを入口に、名前解決と接続をOSへ依頼し、コンテンツを描画するアプリケーション。

その他の関係(型付きエッジ §6.4)

  • belongsTo → OS

Runtime(実通信での登場場面)