ここで説明する問題は、DNSとはまったく関係ない場合があります。
Windowsは、標準DNS以外のメカニズム(NetBIOSルックアップ、WINSなど)を介してWindowsホスト名をIPに解決できることを知っている必要があります。
あなたがUbuntuにSambaをインストールしたと言ったように、これはおそらく起こっていることです。すべてのWindowsマシンで、Windowsの名前をそのIPアドレスに解決することができます。SambaはUbunutにインストールされているため、Windows PCの場合、Ubuntu PCはWindows PCとして認識され、同じ解像度が可能です。
net view
Windowsで実行していること、Ubuntu PCが表示されていることを伝えるため、NetBIOS名はネットワーク上で十分に公開されているため、Windowsから機能します。
UbuntuでWindowsと同じ動作を実現するには、追加のソフトウェアをインストールして構成する必要があります。必要なのは、UbuntuがNetBIOS名をIPに変換できるようにするルックアップライブラリを追加することです。このライブラリは、libnss-winbindパッケージに含まれています。
他のUbuntuパッケージと同様に、を実行してインストールしますsudo apt-get install libnss-winbind
。ライブラリがすでにインストールされている可能性があります。dpkg -l|grep libnss-winbind
。
ライブラリをインストールしたら、/etc/nsswitch.conf
ファイルで有効にする必要があります。このファイルは、Linuxがホスト名、ユーザー名、グループ名などを解決できるソースを定義するNSS(ネームサービススイッチ)の構成ファイルです。
このファイルには、で始まる行が既にありhosts:
、おそらく次のようになります。
hosts: files dns
これにより、システムは最初に/etc/hosts
ファイルを調べ、次にホスト名を解決するために構成されたDNSを調べます。
このように変更する必要があります:
hosts: files dns wins
単語files、dns、winsの順序が重要であることに注意してください。まず、システムは解決のためにローカルファイルをチェックし、次にDNSサーバーに問い合わせ、最後に、まだ見つからない場合はNetBIOSルックアップを実行します。
これが更新されたら、正しく機能するために、winbindサービスを実行する必要もあります。これを含むパッケージはlibnss-winbindの依存関係であるため、それに沿ってインストールされています。
やるservice winbind start
、それをアクティブにします。