web-dev-qa-db-ja.com

Windows 10ビルド17134でmDNSを有効にする方法

Windows 10で.localアドレスを解決する方法を探しています。

Windows自体にもmDNSサポートが含まれていますが、これはModern APIアプリケーションでのみ使用できるようです。

これまで、アドバイスは常にAppleのBonjourをインストールすることでした。たとえば、 WindowsでmDNSを有効にする方法(7) です。残念ながら、それはもはや機能していないようです。

私の知る限り、問題はWindows独自のプロセスの1つであるDNSCacheがポート5353でリッスンしていることです。

MDNSを非モダンアプリケーションで機能させるにはどうすればよいですか?

10
Kevin Keane

質問を投稿した後、答えの分を見つけました。

解決策は、まずWindowsでmDNSを無効にすることです。これはレジストリで行う必要があります。いつものように、標準の警告が適用されます。レジストリの編集は気弱な人には向いておらず、誤って行うと、修復できないほどWindowsのインストールに損傷を与える可能性があります。

レジストリキーComputer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DNSClientに移動します。キーが存在しない場合は、作成する必要がある場合があります。

次に、値EnableMulticastをREG_DWORDとして、値0で追加します。

リブート。

次にBonjourをインストールします。このハックの後、mDNSは期待どおりに機能します。

8
Kevin Keane

Windows 10およびWindows Server 2016のドキュメントのグループポリシーホーム によると、リンクローカルマルチキャスト名前解決(LLMNR)をオフにする _DNSClient::EnableMulticast_ポリシー設定。

次の手順に従って、DNSClient :: EnableMulticastポリシー設定を有効にすると、LLMNRを無効にできます。

  1. 押す WinROpenボックスにregeditと入力し、次に[〜#〜] ok [〜#〜]をクリックします。
  2. ユーザーアカウント制御のプロンプトが表示された場合は、はいをクリックしてレジストリエディターを開きます。
  3. レジストリパスでDNSClientサブキーを見つけてクリックします。_HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\_

    1. DNSClientサブキーが存在しない場合は、_Windows NT_サブキーを右クリックして、新しいレジストリキーを作成します。
    2. Newを選択し、次にKeyを選択します
    3. DNSClientという名前を付けます。
  4. DNSClientサブキーを右クリックします。

  5. Newを選択し、次にDWORD(32-bit)Valueを選択します
  6. EnableMulticastという名前を付けます。
  7. EnableMulticastをダブルクリックして、_0_で値を編集します
  8. PCを再起動します。

このプロセスでバッチファイルを長く作成し、管理者として実行する場合:

  1. お好みのテキストエディタを使用して_enable_mdns.bat_ファイルを作成します。
  2. このスニペットをコピーして貼り付けます:
_REG ADD "HKLM\Software\Policies\Microsoft\Windows NT\DNSClient" /V "EnableMulticast" /D "0" /T REG_DWORD /F
_
  1. 保存して、管理者として実行します。
  2. ユーザーアカウント制御のプロンプトが表示された場合は、はいをクリックして_.bat_ファイルを実行します。
  3. PCを再起動します。
3
Teocci