Назад | Перейти на главную страницу

как разрешить все внешне неразрешенные DNS-запросы?

Я использую PowerDns на Linux (Debian 6).

Я хотел бы настроить сервер powerdns для разрешения всех внешне неразрешенных DNS-запросов к заданному внутреннему хосту. Это возможно? Как это делается? Я думаю, что необходимо использовать pdns-recursor, но мой файл конфигурации не работает!

Я использую mysql для бэкэнда.

Я добавляю вручную google.com, и он работает, но если я удалю запись, у меня будет «сбой сервера», root dns (или isp dns) мне не ответит.

В Debian

apt-get install pdns-recursor

вероятно предоставит то, что вы хотите. Рекурсор будет привязан к 127.0.0.1 и будет прослушивать только его по умолчанию, так что вы будете в порядке с защитой от вышеупомянутых атак с усилением DNS.

Вы также можете прочитать http://cr.yp.to/djbdns/separation.html относительно того, почему эти две функции предоставляются отдельными программами.

BIND просто делает это неправильно.

PowerDNS не предназначен для предоставления рекурсивных результатов. Он предназначен для работы только в качестве полномочного сервера для обслуживаемых им доменов. Это означает, что он будет передавать данные домена другим хостам.

Вы можете добавить модуль Recursor, но я бы рекомендовал использовать его только в интрасетях. Он может иметь соответствующую защиту, чтобы предотвратить его использование для атак с усилением DNS.

Самый простой способ решить вашу проблему - настроить /etc/resolv.conf файл для использования внешних серверов для разрешения DNS. Вы можете использовать свои серверы от своих интернет-провайдеров, Google, OpenDNS или других. Вам следует убедиться, что вы можете получить доступ к своему серверу PowerDNS по его опубликованному адресу сервера имен (который может не совпадать с адресом вашего хоста). В противном случае вам придется полагаться на ваши резервные серверы имен для локального доступа.

Это не отвечает на ваш буквальный вопрос, но, возможно, все, что вам действительно нужно, это добавить кучу записей в свой / etc / hosts файл?