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

Как делегировать поддомен Route53

У меня есть домен, размещенный на моем собственном линоде под bind9 У меня также есть VPC в AWS, и я хочу поддерживать поддомен DNS в Route53. Я пробовал следовать инструкциям по адресу: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/MigratingSubdomain.html

Внесены следующие изменения в мои /etc/bind9/ named.conf:

  zone "aws.starshine.org" {
      type slave;
      file "/var/lib/bind/aws.starshine.org";
      masters { 205.251.197.214;
                205.251.195.5;
                205.251.198.215;
                205.251.192.111;
        };
  };

Там были собраны IP-адреса:

 for i in "ns-1494.awsdns-58.org" "ns-773.awsdns-32.net" "ns-1751.awsdns-26.co.uk" "ns-111.awsdns-13.com"; do
     echo -en "$i\t"; dig +short "$i";
     done

... и эти имена были вставлены из вывода этой команды:

aws route53 get-hosted-zone --id /hostedzone/Z24Z8xxxxxxxIN

Если я запускаю такие команды, как: копать aws.starshine.org. @ ns-111.awsdns-13.com Я вижу запись SOA. Если я добавлю нс Я вижу записи Amazon NS. Но если я запрашиваю через обычный NDS или через свой собственный авторитетный DNS-сервер для starshine.org, я не вижу делегирования.

Вот что я получил от нескольких таких копать землю команды:

dig aws.starshine.org @ns.starshine.org.

; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> aws.starshine.org @ns.starshine.org.
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 49466
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;aws.starshine.org.             IN      A

apogee:/var/lib/bind# dig aws.starshine.org

;; ...
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 41291
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;aws.starshine.org.             IN      A

;; AUTHORITY SECTION:
starshine.org.          200     IN      SOA     ns1.starshine.org. hostmaster.starshine.org. 2014091602 2000 1000 691200 600

Я не понимаю, почему в таких случаях я получаю NXDOMAIN и SERVFAIL. Я полностью перезапустил свои серверные процессы BIND (/etc/init.d/bind9 перезапуск).

Я вижу в журналах следующее:

Nov 23 05:26:26 apogee named[1438]: zone aws.starshine.org/IN/internal-in: Transfer started.
Nov 23 05:26:27 apogee last message repeated 2 times

Итак, что я делаю не так в своей делегации? Нужно ли мне что-то активировать на стороне AWS Route53? Он показывает мне записи SOA и NS (и одну запись A, которую я добавил и которую можно просто найти.

(Установка моего resolv.conf (например, на моих узлах в VPC), чтобы указать на серверы имен AWS DNS, позволяет мне видеть субдомен, как и следовало ожидать. (Однако это нарушает все остальные DNS с сообщениями о: Статус: ОТКАЗАНО и ВНИМАНИЕ: рекурсия запрошена, но недоступна.

Я забыл упомянуть об этом в своем предыдущем посте, но у меня также были записи IN NS «приклеивать» записи к моему файлу зоны starshine.org, например:

;; GLUE for aws.starshine.org hosted in AWS:
aws.starshine.org.      IN  NS  ns-1494.awsdns-58.org.
                        IN  NS  ns-773.awsdns-32.net.
                        IN  NS  ns-1751.awsdns-26.co.uk.
                        IN  NS  ns-111.awsdns-13.com.

ns-1494.awsdns-58.org.      IN A   205.251.197.214
ns-773.awsdns-32.net.       IN A   205.251.195.5
ns-1751.awsdns-26.co.uk.    IN A   205.251.198.215
ns-111.awsdns-13.com.       IN A   205.251.192.111

Я также попытался добавить список пересылки в свой named.conf:

zone "aws.starshine.org" {
    type forward;
    forwarders { 205.251.197.214;
                 205.251.195.5;
                 205.251.198.215;
                 205.251.192.111;
        };
    };

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

Чтобы сделать делегирование для субдомена, вам нужно только создать NS записи для подпрограммы в родительской зоне.

Так что в starshine.orgфайл зоны:

aws    IN  NS    ns-1494.awsdns-58.org.
aws    IN  NS    ns-773.awsdns-32.net.
aws    IN  NS    ns-1751.awsdns-26.co.uk.
aws    IN  NS    ns-111.awsdns-13.com.

Затем вы определяете все свои записи для aws.starshine.org. зона в маршруте 53 серверов имен.

Похоже, что у меня были другие ошибки в моем файле зоны starshine.org, из-за которых мой сервер имен starshine.org выдавал мне ответы SERVFAIL. Я предполагаю, что он также давал кешированные ответы от вторичных серверов, и ошибки не были очевидны в моих журналах.

Что работало, так это установка nslint package (Debian) ... запускать его и перебирать каждую ошибку, исправляя ее, пока ошибка не исчезнет.

В этом случае делегирование работает только с «связующими» записями в моем файле зоны ... и я не пытаюсь подчинять или даже определять серверы пересылки в моем named.conf.