web-dev-qa-db-ja.com

スコープ付きDNSクエリとは何ですか?

Mac OS X(Mavericks)では、複数のリゾルバーが表示されますが、以下に示すように、スコープ付きDNSクエリリゾルバーとスコープなしDNSクエリリゾルバーの違いがわかりません。

$ scutil --dns
DNS configuration

resolver #1
  search domain[1] : test
  nameserver[0] : 172.31.30.10
  flags    : Request A records
  reach    : Reachable

.... <arpa stuff snipped> ...
resolver #6
  domain   : 9.e.f.ip6.arpa
  options  : mdns
  timeout  : 5
  flags    : Request A records
  order    : 300600

DNS configuration (for scoped queries) 

resolver #1
  search domain[0] : test
  nameserver[0] : 172.31.30.10
  if_index : 4 (en0)
  flags    : Scoped, Request A records
  reach    : Reachable
14
PnotNP

簡単に言えば、スコープ付きDNSクエリは、指定されたネットワークインターフェイス(イーサネットやWiFiなど)のみを使用できますが、スコープなしは、使用可能な任意のインターフェイスを使用できます。

より厳密に言えば、名前を解決したいアプリケーションは、リゾルバーに回答がキャッシュされていない場合、リクエスト(スコープ付きまたはスコープなし)をリゾルバー(通常はDNSクライアントアプリケーション)に送信します、DNS queryを特定のネームサーバーに送信します(これは1つのインターフェイスを経由するため、常に「スコープ」されます)。

あなたの例では、「スコープクエリ用」のリゾルバー#1はen0インターフェース(イーサネット)のみを使用できます。

13
mik