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

Отсылка / делегирование DNS: какой DNS отвечает; Как правильно делегировать полномочия?

Введение

Я купил домен earechnung.at с участием Hetzner и я использую свое веб-пространство в All-Inkl. Я хочу использовать серверы имен своего веб-хостинга (All-Inkl).

Зональные файлы и серверы имен

Когда я зарегистрировал домен в Hetzner, nic.at (реестр австрийских доменов) перечисляет следующие серверы имен (все принадлежащие Hetzner):

Сервер имен (имя хоста) 1: ns.second-ns.com
Сервер имен (имя хоста) 2: ns1.your-server.de
Сервер имен (имя хоста) 3: ns3.second-ns.de

Zonefile в Hetzner

Файл зоны в Hetzner теперь выглядит следующим образом:

$TTL 7200
@   IN SOA ns5.kasserver.com. office.earechnung.at. (
    2014030300   ; serial
    14400        ; refresh
    1800         ; retry
    604800       ; expire
    86400 )      ; minimum

@                        IN NS      ns6.kasserver.com.
@                        IN NS      ns5.kasserver.com.

@                        IN A       85.13.135.165
mail                     IN A       85.13.135.165
www                      IN A       85.13.135.165
w3                       IN A       85.13.135.165
ftp                      IN CNAME   www
imap                     IN CNAME   mail
pop                      IN CNAME   mail
relay                    IN CNAME   mail
smtp                     IN CNAME   mail
@                        IN MX 10   mail

Так что я хотел делегировать все серверам имен All-Inkl (ns5 / 6.kasserver.com). Поэтому я назвал их SOA и NS. Однако похоже, что Hetzner DNS напрямую отвечает на запросы.

All-Inkl Zonefile

Система администрирования All-Inkl для DNS выглядит следующим образом:

DNS-запросы

nslookup из моего клиента Windows

>nslookup -type=A -debug w3.earechnung.at.
------------
...
------------
Got answer:
    HEADER:
        opcode = QUERY, id = 2, rcode = NOERROR
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 1,  authority records = 2,  additional = 2

    QUESTIONS:
        w3.earechnung.at, type = A, class = IN
    ANSWERS:
    ->  w3.earechnung.at
        internet address = 85.13.135.165
        ttl = 4933 (1 hour 22 mins 13 secs)
    AUTHORITY RECORDS:
    ->  earechnung.at
        nameserver = ns5.kasserver.com
        ttl = 4608 (1 hour 16 mins 48 secs)
    ->  earechnung.at
        nameserver = ns6.kasserver.com
        ttl = 4608 (1 hour 16 mins 48 secs)
    ADDITIONAL RECORDS:
    ->  ns5.kasserver.com
        internet address = 85.13.128.3
        ttl = 3758 (1 hour 2 mins 38 secs)
    ->  ns6.kasserver.com
        internet address = 85.13.159.101
        ttl = 2220 (37 mins)

------------
Nicht autorisierende Antwort:
Name:    w3.earechnung.at
Address:  85.13.135.165

Онлайн-розыск

Отслеживание DNS-файла с помощью simpledns.com выводит следующее:

Отслеживание делегирования DNS для "w3.earechnung.at":

Загрузка списка корневых серверов (статические данные):
-> a.root-servers.net (198.41.0.4)
-> b.root-servers.net (192.228.79.201)
-> c.root-servers.net (192.33.4.12)
-> d.root-servers.net (128.8.10.90)
-> e.root-servers.net (192.203.230.10)
-> f.root-servers.net (192.5.5.241)
-> g.root-servers.net (192.112.36.4)
-> h.root-servers.net (128.63.2.53)
-> i.root-servers.net (192.36.148.17)
-> j.root-servers.net (192.58.128.30)
-> k.root-servers.net (193.0.14.129)
-> l.root-servers.net (199.7.83.42)
-> m.root-servers.net (202.12.27.33)
Отправка запроса на "f.root-servers.net" (192.5.5.241)
Получен реферальный ответ - DNS-серверы для "at":
-> r.ns.at (194.0.25.10)
-> d.ns.at (81.91.161.98)
-> ns9.univie.ac.at (194.0.10.100)
-> u.ns.at (195.66.241.82)
-> ns1.univie.ac.at (78.104.144.2)
-> n.ns.at (81.91.173.130)
-> j.ns.at (194.146.106.50)
-> ns2.univie.ac.at (192.92.125.2)
Отправка запроса на "n.ns.at" (81.91.173.130)
Получен реферальный ответ - DNS-серверы для "earechnung.at":
-> ns3.second-ns.de (без IP-адреса)
-> ns.second-ns.com (без IP-адреса)
-> ns1.your-server.de (без IP-адреса)
Попытка разрешить имя DNS-сервера «ns1.your-server.de» (подробности не регистрируются)
Разрешение имени DNS-сервера "ns1.your-server.de" на IP-адрес 213.133.106.251.
Отправка запроса на "ns1.your-server.de" (213.133.106.251)
Получен авторитетный (AA) ответ:
-> Ответ: A-запись для w3.earechnung.at = 85.13.135.165
-> Авторитет: NS-запись для earechnung.at = ns5.kasserver.com
-> Авторитет: NS-запись для earechnung.at = ns6.kasserver.com
Отслеживание делегирования DNS для другого доменного имени

Вопросы

Мои вопросы сейчас:

  1. Есть ли лучший способ для этого сценария (домен с хостером A, веб-пространство с хостом B)?
    1. Следует ли отдавать SOA на DNS Hetzner или all-inkl?
    2. Стоит ли менять сервер имен прямо на сайте nic.at?
    3. Насколько я понимаю, я не предоставил связующую запись (запись A) для ns5 и ns6.kasserver.com. Нужен ли он мне или это делается автоматически?
  2. Что, если я захочу использовать что-то вроде CloudFlare? Как лучше всего работает делегирование между Hetzner, All-Inkl и Cloudflare?
  3. Какой сервер действительно отвечает на запрос?
    1. Если я запрошу w3.earechnung.at, который вводится на обоих DNS-серверах, мне кажется, что Hetzners ns1.your-server.de отвечает авторитетным ответом и заявляет, что ns5.kasserver.com является авторитетным). Я прав?
    2. Если я запрошу ай.earechnung.at, который зарегистрирован только на DNS-сервере All-Inkls, я получаю что-то вроде ai.earechnung.at. wurde von UnKnown nicht gefunden: Несуществующий домен или сервер не может найти ai.earechnung.at: NXDOMAIN
  4. Думаю, я делегировал весь сайт на DNS-сервер all-inkl. Это правильно или есть способ лучше? Нужно ли мне настраивать каждый субдомен на сервере all-inkl?

Исследовательская работа

Я также посмотрел на следующие вопросы, но не нашел ответа (или, по крайней мере, не понял):

Во-первых, позвольте мне поздравить вас с тем, что я считаю хорошо написанным, ясным и хорошо проработанным вопросом, а также с тем, что вы не редактировали доменное имя; последнее очень помогает при ответе.

Позвольте мне затронуть основной вопрос, если можно: whois указывает на другой набор серверов имен, чем те, которые вы настроили как авторитетные:

[me@risby ~]$ whois earechnung.at
[Querying whois.nic.at]
[...]
domain:         earechnung.at
registrant:     MAT8777331-NICAT
admin-c:        AT8777330-NICAT
tech-c:         MH536567-NICAT
nserver:        ns1.your-server.de
nserver:        ns3.second-ns.de
nserver:        ns.second-ns.com
changed:        20121004 15:29:23
source:         AT-DOM

Обратите внимание на три перечисленных сервера. Я открыто признаю, что у вас есть эти серверы, настроенные для обслуживания записей NS, которые указывают запрос в другом месте, но вы также они должны быть настроены с данными для ответа на авторитетный запрос, и их сервер считает себя авторитетным для зоны и, следовательно, может законно возвращать авторитетные отрицательные ответы для RR, о которых он не знает. В этом случае правильнее всего вернуться к регистратору, которым, как мне кажется, в данном случае является Hetzner, и изменить записи сервера имен не на их DNS-сервере, а на их сервере регистрации - устройстве, которое заполняет whois для .at. - вернуть два ваших новых сервера ns5.kasserver.com. и ns6.kasserver.com.

Бизнес по обслуживанию набора NS-записей для делегирования подзоны работает отлично, когда он используется для этого: делегировать подзону той, которая была отслежена, текущему набору серверов имен. Используя их больше как HTTP 301 перенаправление необычно и, как вы обнаружили, может работать некорректно.

Что касается наилучшей практики, совершенно нормально использовать одного провайдера для регистрации, а другого - для предоставления DNS. Тем не менее, эти две задачи часто настолько тесно связаны, что некоторые регистраторы не могут справиться с наличием зарегистрированной зоны на каких-либо DNS-серверах, кроме своих собственных. Если Hetzner является одним из таких, вам нужно будет перенести регистрацию домена к другому регистратору.