Ubuntu 14.4 LTS での DNS 解決の問題

Ubuntu 14.4 LTS での DNS 解決の問題

VirtualBox を実行している Windows 8 ホスト マシンと、Ubuntu 14.4 LTS 仮想マシンを実行しているマシンがあります。

Ubuntu VM では、すべての外部サイト (例: www.google.com) の DNS にアクセスして解決でき、イントラネット サイトを名前 (例: anothermachine) で解決できます。

Windows 上で有効な anothermachine.mywindowsdomain.local などの完全修飾ドメイン名を使用すると、この名前は Ubuntu VM 内で解決できません。

このボックスは vagrant によって作成されました。

このボックスはNetworkManagerを使用しています。

pingホスト名が解決されているかどうかを確認するために使用していますping。mybox を実行すると機能しますが、ping mybox.mydomain.local を実行しても機能しません。両方のアプローチは、同じネットワーク上の他のマシンでは機能します。

解決.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 10.0.2.3

nsswitch.conf

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat

hosts:          files mdns4_minimal [NOTFOUND=return] dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

答え1

これは私には重複しているように見えますローカル ネットワークで Windows ドメインを解決できません

.local通常の DNS サーバーで試す前に、mDNS (Avahi または Bonjour) によって処理されます。mDNS は の形式で名前を解決する必要がありますがmachinename.local、取得できない場合は を返しますNOT FOUND

ここで使用しているのは、DNS を使用して解決する必要がある完全修飾ドメイン名の一部ですanothermachine.mywindowsdomain.local.localmywindowsdomain.local

  • 名前解決の優先順位リストを/etc/nsswitch.conf次のように変更します。

    hosts:          files dns mdns4_minimal [NOTFOUND=return]
    
  • それ以外の場合は、MS ドメインを別のものに変更します。例:mywindowsdomain.loc

参照: MSドメインの.localアドレスに関するLinux DNSの問題を修正

関連情報