「ローカル」DNS を構成するにはどうすればいいですか?

「ローカル」DNS を構成するにはどうすればいいですか?

私は自宅にある古いマシンに 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」と呼ばれます。

  1. ターミナルを開き、ターミナルプロンプトに次のように入力します。

    $ sudo apt-get install winbind
    
  2. インストールが完了したら、Ubuntu に WINS (winbind によって提供される) を使用してホスト名を解決するように指示する必要があります。次のように入力します。

    $ sudo gedit /etc/nsswitch.conf
    

    ...これにより、ファイルが Gnome エディターで開きます。

  3. 「hosts:」で始まる行までスクロールします。Ubuntu Jaunty では、次のようになります。

    hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4
    
  4. この行の末尾に「wins」という単語を追加すると、次のようになります。

    hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4 wins
    
  5. 保存してエディターを終了します。

  6. ここで、Windows ボックスの名前をもう一度 ping してみましょう。

    $ ping alyx
    

    ...そして、解決しました!

自分を褒めてあげてください。

Windows が Ubuntu NetBIOS 名を ping できるようにする

これは方程式の半分にすぎません。次に、Windows が NetBIOS 名を使用して Ubuntu PC に ping を実行できるようにする必要があります。これには、Ubuntu がその要求を認識して応答する必要があります。これを行うには、サーバー デーモンを設定する必要があります。Ubuntu では、この特定のサーバー デーモンは Samba と呼ばれます。

  1. Samba のインストールは非常に簡単です。ターミナルを開いて次のように入力します。

    $ sudo apt-get install samba
    
  2. これが完了すると、Ubuntu PC はホスト名のすべての NetBIOS クエリに自動的に応答するようになります。これは、Windows マシンからだけでなく、他の Ubuntu マシン (「winbind」パッケージで構成されている) からも行われます。

  3. もう一度自分を褒めてあげてください。

関連情報