Dnsmasq, используемый в качестве сервера DNS сервера, когда это не должно быть

У меня есть сервер имен 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

Какие-либо идеи?

2
задан 5 October 2015 в 21:10
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
3
ответ дан 3 December 2019 в 10:41

Теги

Похожие вопросы