マルチホーム、マルチドメインマシン用の /etc/hosts ファイルですか?

マルチホーム、マルチドメインマシン用の /etc/hosts ファイルですか?

2 つのネットワーク インターフェイスを備えたサーバー (debian) があり、複数のサービスとドメインをホストしたいと考えていますが、hosts ファイルをどのように設定すればよいのかよくわかりません。例:

eth0, bound to WAN interface 1.2.3.4:
   mail.example.com
   www.example.com
eth0:1, bound to WAN interface 1.2.3.5:
   www.other-domain.com
eth1, bound to LAN 192.168.1.123:
   some-clever-hostname

私のホスト ファイルはどのようになるべきでしょうか? (localhost、localhost.localdomain などを含む) これらのエントリの一部に DNS を使用する必要がありますか? どれですか?

ありがとう!

編集: たとえばテスト環境などで DNS サーバーを利用できない場合はどうなりますか?

答え1

入れlocalhost/etc/hostname

127.0.0.1 localhost.localdomain localhost

/etc/hosts問題ありません。マッピングは DNS で設定でき、残りは明示的に設定できます (Apache では仮想ホスト内で ServerName が設定されます)。

答え2

Linux (または Windows、あるいは TCP/IP を使用するその他のマシン) 上のマルチホーム システムとマルチドメイン システムは、まったく異なるものです。

マルチドメインシステム:

サーバー自体に必要なホスト名は 1 つだけで、Web サーバー名ではない方がはるかにうまく機能します。NAT ルーターの背後にいるかどうかに関係なく、プライベート IP アドレスではなく、サーバーを識別するパブリック IP アドレスを指す必要があります。IP アドレスが複数ある場合は、サーバーのプライマリ IP アドレスを指す必要があります。次に、DNS で解決される特定のホスト名を投稿します。大企業では、server001、server002、server003 などの番号付けシステムを使用している場合があります。

12.34.56.78 server001.mydomain.com server001
127.0.0.1 localhost.localdomain.local localhost

localhost.localdomain に .local を追加することは必須ではありませんが、マルチホーム システムを設定するための前提条件です。私は習慣的にこれを追加する傾向があります。正しく設定されていれば、他のドメインはすべて Web サーバーを通じて処理されます。Web サーバー以外では、DNS IP アドレスがサーバー (電子メールなど) を指している限り、それだけで十分です。NAT ルーターの背後にいる場合は、.local を使用して内部ホスト名を設定できます。ほとんどの場合、これは必要ありませんが、より複雑なシステムではいくつかの問題を解決できる場合があります。

12.34.56.78 server001.mydomain.com server001
10.0.0.78 server001.mydomain.local server001
127.0.0.1 localhost.localdomain.local localhost

マルチホームシステム:

これは、物理的に複数のネットワーク カードが別々のネットワークに接続されている場合です。最も一般的なのは、1 つのインターフェイスにパブリック ネットワーク、別のインターフェイスにセキュリティ保護されたプライベート ネットワークがあることです。たとえば、パブリック インターフェイスに Web サービスがあり、プライベート インターフェイスの別のサーバーにセキュリティ保護されたデータベースがある場合があります。これは、マルチホーム システムを設定しなくても機能しますが、負荷がかかった場合に大量の SYN TIMEOUT 接続をクリアします。たとえば、12.34.56.50 : 10.0.0.50 に Web サーバー (server001)、10.0.0.51 に内部データベース サーバー (server002) があるとします。両方のサーバーは、.local ディレクティブを使用して /etc/hosts で他のサーバーにマップする必要があります。

/etc/hosts サーバー001

12.34.56.50 server001.mydomain.com server001
127.0.0.1 localhost.localdomain.local localhost
10.0.0.50 server.001.mydomain.local server001
10.0.0.51 server002.mydomain.local server002

/etc/hosts サーバー002

10.0.0.1 server002.mydomain.local server002
127.0.0.1 localhost.localdomain.local localhost
10.0.0.50 server.001.mydomain.local server001

関連情報