Przeglądając różne systemy Linux i FreeBSD, zauważyłem, że w niektórych systemach /etc/hosts
zawiera wpis dotyczący publicznej nazwy hosta, ale nie w innych systemach.
Jaka jest tutaj najlepsza praktyka? Czy mój plik / etc / hosts powinien zawierać wpis dla nazwy FQDN hosta (np. Myhost.example.org) i krótkiej nazwy hosta (np. Myhost)? Czy rekord FQDN powinien wskazywać na hosta lokalnego, czy powinien wskazywać na zewnętrzny adres IP urządzenia?
Na przykład domyślna konfiguracja wielu skrzynek RHEL / EL nie umieszcza publicznej nazwy hosta w /etc/hosts
:
myhost # cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
myhost #
Drugi wariant polega na tym, że krótka nazwa hosta i nazwa FQDN hosta również wskazują na 127.0.0.1. Powiedziano mi, że jest to starsza praktyka, która jest obecnie źle oceniana, ale wielu administratorów nadal to robi.
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 #
Trzeci wariant polega na tym, że nazwa FQDN hosta i krótka nazwa hosta otrzymują zewnętrzny adres IP hosta. Ten trzeci wariant wydaje mi się optymalny, ponieważ ogranicza liczbę wyszukiwań względem serwerów 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 #
Jaka jest tutaj najlepsza praktyka?
źródło
127.0.0.1 localhost myhost
powinno wystarczyć i,74.125.239.xxx myhost myhost.example.org
jak powiedziałeś, zapisuje wyszukiwanie DNS. „Najlepsza praktyka”, chyba że istnieje norma, to „to, czego używają kompetentni ludzie”.Odpowiedzi:
Czy chcesz zaakceptować działający DNS jako punkt awarii w swoim środowisku, czy nie. Niektóre usługi / aplikacje ulegną awarii w niektórych konfiguracjach, jeśli system nie będzie mógł rozpoznać nazwy komputera lokalnego.
Jeśli masz absolutnie krytyczną usługę, która musi być uruchomiona we wszystkich sytuacjach, nie jest niczym niezwykłym dodanie wpisu w pliku hosts, aby usługa mogła nadal działać w sytuacji, gdy rozpoznawanie DNS kończy się niepowodzeniem.
Jeśli możesz zaakceptować DNS jako punkt awarii lub jeśli twoje usługi nie zawiodą w przypadku zepsutego rozwiązania, można uniknąć wpisów konfiguracji w pliku hosts.
Zdecydowanie sugeruję, aby Twoje serwery DNS były tak solidne, jak to możliwe, a jeśli musisz skonfigurować plik hosts, użyj do tego systemu zarządzania konfiguracją. Naprawdę powinieneś unikać ręcznego unikania dotykania pliku hosts.
źródło
/etc/hosts
zastąpi DNS, a nie będzie używany jako rezerwowy w przypadku awarii DNS. To jest rozróżnienie, które moim zdaniem należy wprowadzić. (Nie próbuje nit-pick.) Wszystko zależy od kolejności zdefiniowanej w/etc/nsswitch.conf
./etc/hosts
pliku. Wiele aplikacji wielokrotnie sprawdza swoją nazwę hosta, wiele razy na sekundę. Dodanie nazwy hosta w celu/etc/hosts
zmniejszenia opóźnień i przyspieszenia działania aplikacji.