Поиск DNS в интрасети, извлекающий неверный IP

Поиск DNS в интрасети, извлекающий неверный IP

У нас есть запись хоста на нашем сервере в /etc/hostsфайле. Итак, есть запись следующего вида:

10.74.74.76 foo

Но на той же машине, через SSH я делаю следующее:

$ host -t a foo
foo.internal.domain.com has address 10.43.55.23

Почему здесь не указан IP-адрес /etc/hosts?

решение1

hostэто (простой)DNS-поискполезность.

Любые данные в вашем /etc/hostsфайле НЕ являются DNS.

Это означает, что hostкоманда всегда будет запрашивать настроенные вами DNS-серверы и не будет учитывать типичный приоритет, который использует ваш системный преобразователь при первом запросе локальной базы данных хостов перед попыткой разрешить хост/полное доменное имя.

решение2

Команда hostпредставляет собой утилиту поиска DNS, которая всегда использует DNS в качестве преобразователя; /etc/hostsфайл — никогда.

Из страницы руководства host(1):

hostпростая утилита для выполнения DNS-поиска.

server— необязательный аргумент, представляющий собой имя или IP-адрес сервера имен, который хост должен запросить вместо сервера или серверов, перечисленных в /etc/resolv.conf.

Связанный контент