web-dev-qa-db-ja.com

WindowsはDNSなしでホスト名をどのように解決しますか?

10ドルのハブを使用して同じLANに接続されているWindows7コンピューターとMacOSX10.6コンピューターがあります。 MacOSでは、「設定->共有」でコンピュータ名を「mymac.local」に設定しました。 Windowsコンピューターの静的IPアドレスは192.168.0.10で、Macのアドレスは192.168.0.20です。どちらも255.255.255.0のネットマスクがあり、ゲートウェイはありません。

コマンドを発行するとping mymac.local私のWindowsコンピュータから、192.168.0.20に正常にpingを実行します。ネットワークにDNSがないため、WindowsはIP 192.168.0.20が「mymac.local」に関連付けられているとどのように判断しましたか?放送ですか?どのプロトコルが使用されていますか?

4
grigoryvp

-の一部として マルチキャストDNSRFC 6762 )を使用して、。local名を解決します。 ゼロ構成ネットワーキング

5
slillibri

(古代の) [〜#〜] netbios [〜#〜] プロトコルとそのネームサービスのWindows実装を使用します [〜#〜] wins [〜#〜] 。 DNSサーバーで名前を解決できない場合は、WINSサーバーが試行されるか、サーバーが定義されていない場合は、NEBIOS呼び出しが行われます。

一部のルーターにはDNSサーバーが含まれており、各DHCPクライアントが提供する名前をそれに追加することに注意してください。ルーターがこの機能をサポートしている場合は、DNSプロトコルが実際に名前解決クエリの解決に使用されています。

8
dtech

完全を期すため、およびこの質問への将来の(再)訪問のために、Windows(私の場合はWindows 10)ホストがホスト名を解決する別の可能性があります。

Windows 10には、他のLinux/Unixと同じように、hostsファイルがあり、%windir%\system32\drivers\etcにあります。

手動または自動化の取り組みを介してそこに入力したエントリは、外部サーバーまたはプロトコルの助けを借りずに解決されます。

0
el.nicko