/ usr / bin / host не подбирает изменения в / etc / hosts даже после перезагрузки

У меня есть машина Ubuntu Server 12.04 ( amd64 ), на которой, когда я изменяю /etc/hosts , изменения не принимаются, даже после перезагрузки. Я использую /usr/bin/host для тестирования, но ни одна из других программ, похоже, не забирает его.

Это сервер, а nscd и dnsmasq не установлены. Кроме того, файл /etc/nsswitch.conf содержит строку:

 hosts: files dns 

так что я ожидаю, что это сработает. Я также проверил, что mtime файла изменяется с помощью редактирования и пытается запустить service networking restart (несмотря ни на что), а также resolvconf -u .

Все команды, где они выполняются с root . Машина настроена вручную в /etc/network/interfaces а не через Network Manager (она также не установлена).

В основном я хочу добиться того, что IP для нескольких хостов можно манипулировать. Причина в том, что внутри нашей сети я получаю IP-адрес, к которому у меня нет маршрута, но я могу использовать внешний IP для этой службы через HTTPS.

Что мне не хватает?

Примечание. DNS-сервер не работает локально, а строки /etc/resolv.conf в /etc/resolv.conf (и соответствующие строки в interfaces ) указывают на DNS-сервер, который дает мне неправильный IP-адрес.

Также обратите внимание: я искал в Интернете и читал «похожие вопросы», но мое дело, похоже, не охвачено.

/etc/host.conf :

 # The "order" line is only used by old versions of the C library. order hosts,bind multi on 

3 Solutions collect form web for “/ usr / bin / host не подбирает изменения в / etc / hosts даже после перезагрузки”

Команда хоста не проверяет файл hosts. С manpage:

 host is a simple utility for performing DNS lookups. 

Если вы хотите проверить поиск, соблюдая файл hosts, используйте ping или getent.

 $ tail -1 /etc/hosts 127.0.0.1 google.com $ ping -c1 google.com | head -1 PING google.com (127.0.0.1) 56(84) bytes of data. $ getent ahosts google.com 127.0.0.1 STREAM google.com 127.0.0.1 DGRAM 127.0.0.1 RAW 

Утилита host используется для поиска DNS. Он не заботится о файлах хостов или не-DNS-методах решения имени хоста. Если вы хотите увидеть, как ваша система будет разрешать имя хоста при обычных обстоятельствах (принимая во внимание nsswitch.conf), вы можете использовать getent . Утилита host должна быть зарезервирована для тестирования DNS. Вот пример:

 $ host foobar.com foobar.com has address 69.89.31.56 foobar.com mail is handled by 0 foobar.com. $ getent hosts foobar.com 10.188.14.16 foobar.com 

Такие программы, как dig , host и nslookup запрашивают только DNS . Они не запрашивают другие источники имен хостов, такие как /etc/hosts , NIS или LDAP.

В большинстве настроек самый простой способ плавного добавления имен узлов локально – запустить DNS-сервер. Запуск кеша DNS – хорошая идея в любом случае для производительности. Другими словами, тот факт, что DNS-сервер не работает локально, – это что-то, что нужно исправить, а не что-то работать.

Dnsmasq является общим выбором: он широко доступен, небольшой (он используется во многих Linux-маршрутизаторах) и легко настраивается. Dnsmasq кэширует DNS-запросы и может обслуживать дополнительные имена из файла hosts. Он также предоставляет базовый сервер DHCP, подходящий для небольших сетей, но вам не нужно использовать эту часть. Если у вас изолированная машина, запустите Dnsmasq. Если у вас есть локальная сеть, запустите Dnsmasq (или другое эквивалентное программное обеспечение, которое уже есть) на вашем маршрутизаторе. См. Раздел Как сделать машину доступной из локальной сети с использованием имени хоста для получения дополнительной информации, в том числе о том, как настроить Dnsmasq.

  • «Невозможно разрешить имя хоста» - как очистить имя хоста без перезагрузки
  • Firefox: используйте системные прокси-настройки, но где они?
  • Отсутствует 32-битная библиотека на 64-битной установке Linux
  • Как увидеть файлы монтирования в цель для iscsi?
  • Linux как производительность виртуализации хоста и клиента в Core i7?
  • Целевой каталог (/ etc) не доступен для записи текущим пользователем на недоступном
  • Как тусклый экран, даже если искусственно, ниже минимума?
  • Как установить Linode с определенным количеством inodes?
  • Проблема разрешения Xephyr
  • как заставить обновить coreutils на старом дистрибутиве?
  • Использование Atlas от scipy
  • Linux и Unix - лучшая ОС в мире.