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

как отравить ответы NXDOMAIN с указанным IP в djbdns

У меня работает djbdns dnscache; есть ли способ вернуть конкретный IP-адрес вместо NXDOMAIN?

Это требование настройки нашей интрасети; я знаю, что это спорный и этажерки, но это не относится к делу.

Мне удалось заставить его работать - хотя не знаю, сломается ли что-нибудь еще; пока вроде нормально.

После просмотра журналов dnscache я обнаружил, что после попытки корневых серверов разрешить nonexistent.foo он попытается разрешить nonexistent.foo.local.host (где local.host - это имя localhost). Поэтому я настроил tinydns в интерфейсе обратной связи (127.0.0.10) для обслуживания 1.2.3.4 для * .local.host. Затем я добавил ip loopback в качестве сервера для local.host в dnscache / root / servers.

Единственным недостатком этой настройки является то, что поиск foo.local.host разрешается до 1.2.3.4, но это не доставляет неудобств.

dnscache буквально означает: Кеш DNS. Если вы хотите указать A (прямое разрешение) для домена под вашим контролем, вам потребуется запустить полнофункциональный DNS, такой как BIND или djbdns.

Чтобы ответить IP-адресом при отправке ответа NXDOMAIN, вы нарушите RFC. Перезапись NXDOMAIN это противоречивая практика это не рекомендуется и обычно не поддерживается, так как нарушает RFC. Ни djbdns, ни BIND не имеют встроенной поддержки для этого.

Насколько я понимаю, в настоящее время это реализовано только в коммерческих решениях. Это включает Голые фрукты и несколько других.

Это интересный Почта из списка рассылки, где кто-то, похоже, Кейт Митчелл, технический директор ISC, заявляет, что не хочет предоставлять поддержку в BIND.

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