Может ли Bind вернуть IP-адрес записи CNAME для внешнего хоста на официальном сервере?
536
John Malia
Я использую BIND 9.9.4 в конфигурации master / slave на Redhat 7.4 с chroot. Серверы установлены с "рекурсией нет;" опция в файле named.conf. У меня есть запись в одном из моих файлов зоны:
test IN CNAME server.outsidedomain.com.
Когда я запрашиваю у dns-сервера test.mydomain.com, я бы хотел, чтобы он возвращал IP-адрес server.outsidedomain.com, но не «рекурсировал» другие поиски (на самом деле у меня есть несколько записей CNAME, которые ссылаются на хосты за пределами моего домен).
Фрагмент файла зоны: (очищенный)
$TTL 3h @ IN SOA ns01.mydomain.com. admin.mydomain.com. ( 2018032007 ; serial number 2h ; refresh 1h ; retry 4d ; expire 1d ; default TTL ) @ NS ns01.mydomain.com. @ NS ns02.mydomain.com. test CNAME server.outsidedomain.com.
фрагмент named.conf: (очищенный)
options { listen-on port 53 { any; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { any; }; allow-query-cache { 1.1.1.2; }; allow-transfer { key "ns02.mydomain.com"; }; recursion no; dnssec-enable yes; dnssec-lookaside auto; dnssec-validation yes; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; pid-file "/run/named/named.pid"; session-keyfile "/run/named/session.key"; version "Unavailable"; };
Вывод nslookup: (очищенный)
# nslookup test.mydomain.com Server: 1.1.1.1 Address: ns01.mydomain.com Name: server.outsidedomain.com
копать вывод: (продезинфицировать)
dig test.mydomain.com ; <<>> DiG 9.11.3 <<>> test.mydomain.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36042 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;test.mydomain.com. IN A ;; ANSWER SECTION: test.mydomain.com. 10800 IN CNAME server.outsidedomain.com.
Я хотел бы / ожидаю увидеть: (продезинфицировать)
# nslookup test.mydomain.com Server: ns01.mydomain.com Address: 1.1.1.1 Name: server.outsidedomain.com Address: 5.5.5.5 Aliases: test.mydomain.com
Это то, что делает рекурсия. см. здесь описание того, как обрабатывается запрос CNAME в удаленной зоне: https://ns1.com/articles/comparing-alias-and-cname-records.
Frank Thomas 6 лет назад
0
Почему вы хотите, чтобы он возвращал IP-адрес для CNAME? Это противоречит принципам работы протокола DNS (если ваш сервер имен не является полномочным в зоне, где находится цель CNAME).
Patrick Mevzek 6 лет назад
0
Спасибо. Статья была полезной. Вы подтвердили, как я думал, что вещи (должны) работать. У меня есть опыт работы с DNS, и я знаю достаточно, чтобы быть опасным. Спасибо, что поделились своими знаниями!!
John Malia 6 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
1
Переключить настройки DNS для каждого пользователя Windows?
-
1
Почему я получаю медленную пропускную способность сети, когда у меня плохой DNS-сервер?
-
4
DNS случайно выходит из строя
-
-
1
Где я могу получить полные файлы зон DNS для всех доменов верхнего уровня?
-
3
Что делать, если я не могу пропинговать свой DNS?
-
3
Итальянский DNS: как избежать перезапуска firefox
-
18
Может ли интернет работать без DNS?
-
5
Есть ли способ получить полный файл зоны для домена, не связываясь с его хостом?
-
8
Должен ли я получить все доступные ДВУ для выбранного доменного имени?
-
3
Как заставить IE использовать мой файл hosts при использовании прокси-файла .pac?