私は自宅にある古いマシンに Ubuntu Linux サーバーをセットアップしています (これまで一度もやったことがありません)。そして、望みどおりに動作し始めています。私が行き詰まっていることの 1 つは次のとおりです。
ボックスの「名前」を IP アドレスに解決するにはどうすればいいですか? 現時点では 192.168.0.8 で問題なくアクセスできますが、アドレス バーに servername と入力しても見つかりません。これはネットワーク上の他の PC (Windows) では機能しますが、Linux サーバーでは機能しません。ボックスの名前をローカル IP に解決するには、何を構成する必要がありますか?
ありがとう。
答え1
これはリンク上記のコメントで @Anonymous が提供した回答です。この回答をコミュニティ ウィキとしてマークしました。
Ubuntu が Windows NetBIOS 名を ping できるようにする
Ubuntu は Windows 用ではなく Linux 用に設定されているため、Ubuntu が Windows ネットワークとより容易に混在して NetBIOS を使用できるようにするパッケージをインストールする必要があります。このパッケージは「winbind」と呼ばれます。
ターミナルを開き、ターミナルプロンプトに次のように入力します。
$ sudo apt-get install winbind
インストールが完了したら、Ubuntu に WINS (winbind によって提供される) を使用してホスト名を解決するように指示する必要があります。次のように入力します。
$ sudo gedit /etc/nsswitch.conf
...これにより、ファイルが Gnome エディターで開きます。
「hosts:」で始まる行までスクロールします。Ubuntu Jaunty では、次のようになります。
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
この行の末尾に「wins」という単語を追加すると、次のようになります。
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 wins
保存してエディターを終了します。
ここで、Windows ボックスの名前をもう一度 ping してみましょう。
$ ping alyx
...そして、解決しました!
自分を褒めてあげてください。
Windows が Ubuntu NetBIOS 名を ping できるようにする
これは方程式の半分にすぎません。次に、Windows が NetBIOS 名を使用して Ubuntu PC に ping を実行できるようにする必要があります。これには、Ubuntu がその要求を認識して応答する必要があります。これを行うには、サーバー デーモンを設定する必要があります。Ubuntu では、この特定のサーバー デーモンは Samba と呼ばれます。
Samba のインストールは非常に簡単です。ターミナルを開いて次のように入力します。
$ sudo apt-get install samba
これが完了すると、Ubuntu PC はホスト名のすべての NetBIOS クエリに自動的に応答するようになります。これは、Windows マシンからだけでなく、他の Ubuntu マシン (「winbind」パッケージで構成されている) からも行われます。
もう一度自分を褒めてあげてください。