8

Bonjour for Windows をインストールすると、システムのどこからでも「.local」mDNS 名を解決できます。

たとえば、「some_computer.local に ping を実行」すると、mDNSResponder.exe (Bonjour/mDNS Daemon) が応答します。

ただし、mDNS はポート 5353 で動作するため、Windows はこれらの DNS クエリを解決する方法をどのように知るのでしょうか?

mDNSResponder.exe は何らかの方法で Windows DNS リゾルバーにフックしていますか?

4

1 に答える 1

13

Bonjour for Windows では、標準の名前解決 API を使用するすべてのソフトウェアが mDNS 名を解決できます。これは、 WSCInstallNameSpaceを使用して DLL (mdnsnsp.dll) を名前空間プロバイダーとして登録することによって行います。

対応するコードはmDNSResponder ソースに含まれています(特に、mdnsNSPおよびNSPToolコンポーネントを見てください)。

于 2012-01-03T21:05:43.473 に答える