Я запускаю Debian Jessie і намагаюся налаштувати dnsmasq як кешуючий DNS-сервер. Я використав посібник, щоб придумати таке /etc/dnsmasq.conf:
listen-address=127.0.0.1
bind-interfaces
domain-needed
bogus-priv
no-hosts
dns-forward-max=150
cache-size=1000
neg-ttl=3600
resolv-file=/etc/resolv.dnsmasq
no-poll
Робити це sudo service dnsmasq restartне вдається, і воно не почнеться, скажіть мені
Mar 26 17:13:01 user dnsmasq[26743]: dnsmasq: syntax check OK.
Mar 26 17:13:01 user dnsmasq[26746]: dnsmasq: only one resolv.conf file allowed in no-poll mode.
Добре, якось дивно, що конфігурація прямо з керівництва не вдалася. Я просто видалю no-pollваріант, щоб побачити, чи працює він. Цього разу все починається чудово, але дозвіл DNS явно не працює. Відповідні файли:
/etc/resolv.conf:
nameserver 127.0.0.1
/etc/resolv.dnsmasq:
nameserver 8.8.8.8
/var/run/dnsmasq/resolv.conf:
nameserver 127.0.0.1
Третій файл, як видається, є прямим файлом dnsmasq. Так виглядає, що вона ігнорувала мою /etc/resolv.dnsmasq. Я також спробував додати рядок сервера імен до мого /etc/resolv.confта видалити resolv-fileрядок /etc/dnsmasq.conf, але він негайно заміняється на те, що ви бачите вище при виконанні sudo service dnsmasq restart.
Що відбувається з dnsmasq і чи можу я налаштувати dnsmasq як кешування DNS-сервера?
no-pollосновному каже ігнорувати resolv-file. При запуску потрібен той файл, який буде новіший, і це буде /etc/resolv.confу вашому випадку (оскільки він переписується, коли щось змінюється).
server=8.8.8.8вставити конфігурацію dnsmasq?