Добрый день!
Пришла задача на основе bind9 сделать белый список доменов и все что в него не попадает, перенаправлять на страницу где будет написано «Доступ запрещен» и прочие пояснения.
Для самих белых доменов я пытался использовать forward, допустим:
zone "google.com" IN {
type forward;
forwarders { 8.8.8.8; };
};
zone "." IN {
type master;
file "redirect";
};
$TTL 300
@ IN SOA ns.example.com. hostmaster.example.com. 0 0 0 0 0
@ IN NS ns.example.com.
*. IN A 10.10.10.10
На сервере так же есть локальные зоны, по ним все работает корректно, ответы приходят с правильными адресами. Но создать около 4к локальных файлов для зон белых доменов и постоянно поддерживать их в актуальном состоянии я не представляю возможным, можно попробовать написать парсер, но это будет костыль, да и невозможно будет вытаскивать абсолютно все записи по доменам.
Насчет почему должен использоваться только bind. Среди локальных зон, которые используются нами для предоставления внутренних сервисов и услуг, есть много доменов, которые работают по принципу Split DNS.
В общем, нужна ваша помощь в реализации этой задачи, буду очень признателен за помощь.