
Я хочу использовать bind9 для перехвата зоны, например "qq.com", моя конфигурация зоны такая
zone "qq.com" IN {
type master;
file "db.qq.com";
forwarders { 119.29.29.29; 8.8.8.8; };
};
и мой файл базы данных
[root@cenotstest named]# cat db.qq.com
$TTL 1800
@ IN SOA ns1.qq.com. my.example.com. (
20210409 ;
3H ;
15M ;
1W ;
1D ) ;
IN NS ns1.qq.com.
ns1 IN A 183.36.112.46
a IN A 1.1.1.1
При разрешении a.qq.com я могу получить правильный ответ, как показано ниже
[root@cenotstest named]# nslookup a.qq.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: a.qq.com
Address: 1.1.1.1
Но для других доменов, таких как «mail.qq.com» или «www.qq.com» (возможно, есть много других доменов, о которых я не знаю). Я просто хочу пересылать эти неизвестные мне домены на серверы имен, настроенные в пересылке, например, 8.8.8.8 по умолчанию.
Но теперь переадресация в зоне "qq.com" не работает. Поддерживает ли это bind9?
решение1
Если домен не соответствует ни одной записи в моей конфигурации, dnsmasq может прочитать nameserver из /etc/resolv.conf как пересылающий сервер по умолчанию для разрешения домена. Так что я думаю, что bind9 также может поддерживать эту функцию.
Насколько мне известно, это на самом деле уникальная особенностьdnsmasq.
Обычные DNS-серверы, такие как ISC Bind, являются либо рекурсивными, либо авторитетными. Когда они авторитетны для (под-)домена, они содержат полную правду для этого (под-)домена, и их данные зоны содержат все записи ресурсов, которые существуют для домена (хотя NS
записи могут использоваться для делегирования поддоменов другим серверам имен). Когда авторитетный сервер имен запрашивается на запись, о которой он не знает и которая не делегирована, то, насколько это касается его, эта запись не существует. Конец истории.
Вы можете попробовать делегировать все несуществующие записи (используя подстановочный знак DNS), создав файл зоны:
db.qq.com
$TTL 1800
@ IN SOA ns1.qq.com. my.example.com. (
20210409 ;
3H ;
15M ;
1W ;
1D ) ;
IN NS ns1.qq.com.
ns1 IN A 183.36.112.46
a IN A 1.1.1.1
the.original.authoritative.nameserver.for.qq.com. IN A 10.9.8.7
* IN NS the.original.authoritative.nameserver.for.qq.com.