web-dev-qa-db-ja.com

DNSサービス検出、マルチキャストDNS、Bonjourはどのように関連していますか?

用語で少し迷っています。 Bonjour を使い始めたかった。最初のステップとして、私はそれを使用する簡単な方法を見つけようとしました。そして、おそらくコマンドラインからBonjourを呼び出して、サービスを登録および検出できると思いました。

他の人にその方法を尋ねると、mDNS(MacとLinuxでは機能しますが、Windowsでは機能しません)について聞かれました。 「dns-sd」(Windowsで動作)を使用できると人々からも言われました。 「dns-sd」はmDNSの単なるエイリアスであると言われました。

だが!後で私は、DNSサービス検出とマルチキャストDNSが2つの異なるものであることを発見しました(これらは互換性があり、一緒に使用した場合に特にうまく機能しますが、互いに必要としません)。

さらに、mDNSとDNS-SDはBonjourの3つの主要コンポーネントのうちの2つであるように思えます。正しいですか? Bonjourなしで使用できますか? Windows 7にBonjourをインストールし、コマンドラインで「dns-sd」を実行できました。しかし、mDNSを実行できません。

だから、今はちょっと混乱しています。誰か、状況を少し明確にできますか?

11
Roman

ここ であなたの前の質問に答えました。

私はその答えはあなたがここで尋ねた質問をカバーしたと思いますが、念のために:

Bonjourは3つの部分で構成されています。
1。 IPv4(およびIPv6)リンクローカルアドレス指定(IPv4では169.254.0.0/16アドレス)。
2。マルチキャスト名前解決(mDNSプロトコル経由)。これにより、アドホックまたは独立したLAN上のホストは、従来のユニキャストDNSサーバーを必要とせずに、DNSクエリと応答を相互にマルチキャストすることにより、ホスト名を自動的に相互にIPアドレスにマッピングできます。
3。 DNSサービス検出。これにより、特定のタイプのサービスの名前と詳細を検出できます。ローカルネットワークでは、通常、DNSサービスの検出はmDNSでも行われますが、「ワイドエリアBonjour」を使用すると、ユニキャストDNSサーバーを介してドメイン全体のDNSサービスの検出を実際に行うことができます。

Dns-sdツールを使用すると、パート2および3に必要なすべてのクエリ/ルックアップを実行できます。これについては、他の質問に対する回答で例を示しました。

あなたの混乱の一部は、プロトコルと同じ名前のコマンドラインツールがあるという事実に起因していると思います。 mDNSはマルチキャストドメインネームサービスプロトコルの名前ですが、mDNSプロトコルクエリを送信して応答を受信するための一般的なコマンドラインツールの古い名前でもあります。 "dns-sd"は、DNSサービスの検出やマルチキャスト名前解決の検索を行うための最も一般的なコマンドラインツールの現在の名前です。これらのコマンドラインツールはどちらも、通常、「mDNSResponder」バックグラウンドプロセス/サービス/デーモンによって処理されるAPIを呼び出します。

8
Spiff