С каких пор утилита хоста linux игнорирует /etc/hosts?
Я пытался выяснить причину, по которой утилита хоста linux игнорировала мой файл / etc / hosts, пока не нашел ответ на свой вопрос здесь: файл hosts, похоже, игнорируется:
При такой конфигурации большинство приложений будут успешно работать с вашей записью из / etc / hosts. Однако хост не смотрит на /etc/nsswitch.conf. Это не случайно, так как хост - это программа поиска DNS. / etc / hosts - это не DNS, это (в основном) то, что мы использовали до того, как у нас был DNS.
Однако, насколько я понимаю, утилита не вела себя так в прежние времена.
Я уверен, что хост проверял файл / etc / hosts...
Я просто схожу с ума после очень тяжелого дня или я прав?
Если я прав, кто-нибудь знает, почему и когда они изменили это?
Я заметил это на серверах CentOS 5.6 и 6.0.
1 ответ
Это звучит как жалоба, а не вопрос.
host
делает поиск DNS и распространяется как часть bind
DNS система. Он не разрешает имя, которое может включать не только /etc/hosts и DNS, но также может включать YP, LDAP, NMB (samba) и любой другой плагин nss.
Если вы заинтересованы в "нормальном" разрешении хоста, вы можете использовать утилиту getent (которую вы не удивитесь, узнав, что она является частью coreutils вместе с libnss).
getent hosts google.com