С каких пор утилита хоста 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
Другие вопросы по тегам