Как я знаю, когда DNS-сервер пользователя по умолчанию не знает ответа на запрос (например, IP-адрес google.pl), он запрашивает один из корневых серверов. Предполагая, что мы запрашиваем IP-адрес google.pl (тип запроса). Мой DNS-сервер по умолчанию не знает ответа, поэтому запрашивает один из корневых серверов (например, a.root-servers.net).

  1. Как DNS-сервер по умолчанию знает IP-адреса корневых серверов. Они просто определены в конфигурационном файле сервера?
  2. На вопрос о google.pl Root Server возвращает список серверов имен pl, таких как a-dns.pl , c-dns.pl ... Как теперь DNS-сервер по умолчанию получает IP-адрес a-dns.pl? Отправляет ли он дополнительный запрос типа A в . сервер для имени a-dns.pl или просто используйте Additional records (отправьте вместе с google.pl списком NS-серверов список Authority records), которые включают IP-адрес a-dns.pl?

1 ответ1

0

Ваш DNS-сервер «по умолчанию» (он же разрешающий DNS-сервер) действительно имеет список всех корневых серверов. Он называется файлом корневых ссылок или корневой зоны и публикуется IANA (https://www.iana.org/domains/root/files). Операторы DNS-сервера должны регулярно обновлять свои файлы Root Hints, чтобы они указывали на правильные серверы имен (хотя в файле Root Hints не так много изменений). Часто файлы корневых ссылок / зон распространяются вместе с дистрибутивом DNS-сервера (RPM / deb).

Корневой сервер также выдаст клиенту запись A для a-dns.pl. Клей состоит из NS и A (или AAAA) записи. Если вы просмотрите выходные данные команды dig , то увидите, что я запрашиваю записи NS для .pl, но DNS-сервер также возвращает записи A для серверов имен .pl.

mtak@frisbee:~$ dig -t ns pl. @k.root-servers.net

; <<>> DiG 9.10.3-P4-Ubuntu <<>> -t ns pl. @k.root-servers.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40548
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 8, ADDITIONAL: 15
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;pl.                IN  NS

;; AUTHORITY SECTION:
pl.         172800  IN  NS  a-dns.pl.
pl.         172800  IN  NS  c-dns.pl.
pl.         172800  IN  NS  d-dns.pl.
pl.         172800  IN  NS  e-dns.pl.
pl.         172800  IN  NS  f-dns.pl.
pl.         172800  IN  NS  g-dns.pl.
pl.         172800  IN  NS  h-dns.pl.
pl.         172800  IN  NS  i-dns.pl.

;; ADDITIONAL SECTION:
a-dns.pl.       172800  IN  A   194.181.87.156
a-dns.pl.       172800  IN  AAAA    2001:a10:121:1::156
c-dns.pl.       172800  IN  A   93.190.128.146
c-dns.pl.       172800  IN  AAAA    2a02:38:14::146
d-dns.pl.       172800  IN  A   81.15.133.186
d-dns.pl.       172800  IN  AAAA    2a00:4120:8000:2::186
e-dns.pl.       172800  IN  A   46.28.245.82
f-dns.pl.       172800  IN  A   77.79.212.238
f-dns.pl.       172800  IN  AAAA    2001:1a68:0:17::238
g-dns.pl.       172800  IN  A   149.156.1.252
g-dns.pl.       172800  IN  AAAA    2001:6d8:1001:1::252
h-dns.pl.       172800  IN  A   194.0.1.2
h-dns.pl.       172800  IN  AAAA    2001:678:4::2
i-dns.pl.       172800  IN  A   156.154.100.15

;; Query time: 3 msec
;; SERVER: 193.0.14.129#53(193.0.14.129)
;; WHEN: Thu May 11 17:56:23 CEST 2017
;; MSG SIZE  rcvd: 487

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .