У меня есть сервер имен DNS поля hardcoded в/etc/network/interfaces с
dns-nameservers 8.8.8.8
(Я просто должен google DNS во время тестирования, с помощью другого живого DNS.)
И затем у меня есть работа dnsmasq поля, чтобы быть кэшем DNS, но также и переписать несколько записей DNS для указания на Apache как прокси.
Теперь по некоторым причинам я не смог выяснить, что поле использует dnsmasq, поскольку это - сервер DNS каждый раз, когда dnsmasq работает, несмотря на то, что сервер имен DNS установлен также. Если у меня есть набор dnsmasq к послушать во всех интерфейсах и 127.0.0.1, все поиски просто проходят dnsmasq включая тех, которые, как предполагается, проксируются так, он просто пойман в цикле вместо проксированного. Если я использую, не используют lo и комментируют слушание на 127.0.0.1, я не получаю DNS вообще.
except-interface=lo
#listen-address=127.0.0.1
Нет никакого правила iptables или чего-либо перенаправляющего весь трафик DNS, только предоставляя доступ только к нашему диапазону IP.
Должно быть что-то, что я пропускаю, но я не могу понять это.
С отключенным dnsmasq роет, проходят набор, который DNS, с ним включил ему, проходит 127.0.0.1
Какие-либо идеи?
Сценарий запуска в Ubuntu и Debian для dnsmasq явно добавляет серверы имен в /etc/resolv.conf при запуске или завершении службы.
Чтобы предотвратить это, вам необходимо отредактировать / etc / по умолчанию / dnsmasq (не /etc/dnsmasq.conf) И добавьте строку
DNSMASQ_EXCEPT=lo
. Это предотвратит автоматическую установку dnsmasq в качестве сервера имен в resolv.conf, хотя он все равно внесет изменения, установив resolv.conf на
nameserver (your nameserver)
nameserver 127.0.0.1