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

Заставить BIND использовать DHCP DNS в качестве резервного

Я запускаю BIND локально на своей машине OS X, чтобы включить подстановочные знаки Apache vhosts, что требует установки DNS-сервера для всех сетевых интерфейсов на 127.0.0.1.

Это отлично работает, но означает, что когда я нахожусь в сети, которая использует внутренний DNS-сервер для маршрутизации специальных (например, .companyname) URL-адресов на сервер в сети, поиск не выполняется.

Я попытался добавить 127.0.0.1 и DNS-сервер, предоставленный DHCP, но это тоже не сработало.

Есть ли способ заставить BIND использовать DNS-сервер DHCP для запросов, которые он не может разрешить локально?

Вы можете настроить forwarders на который BIND будет пересылать все запросы, которые он не может разрешить самостоятельно. Однако BIND - это всегда может разрешить любое имя для домена, для которого это authoritative. Если вы настраиваете запись с подстановочными знаками *.example.com, вы не можете заставить BIND разрешить foo.example.com с другого DNS-сервера. Вам нужно будет настроить эти записи в зоне, размещенной вашим экземпляром BIND.

Bind не предназначен для этого варианта использования. Он был разработан для работы на сервере, где один и тот же системный администратор настраивает его и DHCP-сервер. Он не был предназначен для передвижения.

Вы можете составить сценарий, чтобы изменить forwarders в Bind каждый раз, когда ваша аренда DHCP обновлялась, но я не мог рекомендовать это. Вы столкнетесь с проблемами кеширования, когда ваш .company домены кэшируются как NXDOMAIN когда они не должны быть или кешированы как настоящие IP-адреса, когда они не должны быть.

Может быть специализированный сервер кэширования / разрешения mame, который имеет встроенную функциональность, но Bind - не так.