/ etc / hostsに「127.0.0.1 localhost myhost.example.org myhost」などのエントリを含める必要がありますか?


16

さまざまなLinuxおよびFreeBSDシステムを見ると、一部のシステム/etc/hostsではホストのパブリックホスト名のエントリが含まれていますが、他のシステムではありません。

ここでのベストプラクティスは何ですか?/ etc / hostsファイルに、ホストFQDN(myhost.example.orgなど)および短いホスト名(myhostなど)のエントリを含める必要がありますか?FQDNのレコードはローカルホストをポイントする必要がありますか、それともボックスの外部IPをポイントする必要がありますか?

たとえば、多くのRHEL / ELボックスのデフォルト設定では、パブリックホスト名は次の場所に配置されません/etc/hosts

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
myhost #

もう1つの変形は、ホストの短いホスト名とFQDNも127.0.0.1を指していることです。これは最近では眉をひそめられる古い慣習であると言われましたが、多くの管理者がまだこれを行っています。

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 myhost myhost.example.org
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
myhost #    

3番目の変形は、ホストのFQDNと短いホスト名にホストの外部IPアドレスが与えられることです。この3番目のバリエーションは、DNSサーバーに対する検索を減らすため、私にとって最適なようです。

myhost # cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
74.125.239.xxx myhost myhost.example.org
myhost #  

ここでのベストプラクティスは何ですか?


2
プログラムが使用しているエイリアス(たとえば、MySQLの「好き」/「ローカルホスト」エイリアスを持つ必要がある)で要約127.0.0.1 localhost myhostすると74.125.239.xxx myhost myhost.example.org、十分であり、前述のようにDNSルックアップを保存します。「ベストプラクティス」は、「知識のある人々が使用するもの」という基準がない限りです。
LinuxDevOps 18年

回答:


12

稼働中のDNSを環境の障害点として受け入れるかどうか。システムがローカルマシンの名前を解決できない場合、一部のサービス/アプリケーションは特定の構成で失敗します。

すべての状況で実行する必要がある絶対に重要なサービスがある場合、hostsファイルにエントリを追加して、DNS解決が失敗した状況でサービスが引き続き動作できるようにすることは珍しいことではありません。

DNSを障害点として受け入れることができる場合、または壊れた解決の場合にサービスが失敗しない場合、hostsファイル内の構成エントリを回避できます。

DNSサーバーを可能な限り堅牢にすることを強くお勧めします。hostsファイルを構成する必要がある場合は、構成管理システムを使用してください。あなたは本当に手動でホストファイルに触れないでください。


13
これに追加するだけで、ほとんどの場合/etc/hosts、DNSに取って代わり、DNS障害が発生した場合のフォールバックとしては使用されません。これは私がすべきだと思う区別です。(選択することを試みません。)それはすべてで定義された順序に依存し/etc/nsswitch.confます。
アーロンコプリー14年

4
もう1つの問題は、DNSサーバーの照会が/etc/hostsファイルの照会よりもはるかに遅いことです。多くのアプリケーションは、ホスト名を1秒間に何度も繰り返し照会します。ホスト名を追加する/etc/hostsと、待ち時間が短縮され、アプリケーションが高速化されます。
ステファンLasiewski
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.