«Многоуровневые» имена сетевых ресурсов. Соответствующие имена DNS-серверов - PullRequest
0 голосов
/ 11 мая 2018

(если я понимаю), когда мое приложение желает связаться с сетевым ресурсом по IP, основные шаги, если DNS используется для разрешения (?) / Имя IP-адреса, заключаются в следующем (*).

Рассмотрим трехуровневое имя ресурса: www.goodeggs.edu

  • Локальный хост просит DNS-сервер интернет-провайдера (?) Разрешить имя в IP-адрес. Не найдено.
  • Имя ресурса читается справа налево.
  • ISP DNS-сервер спрашивает ROOT-сервер "какой сервер знает о .edu?" и получает IP-адрес сервера TLD, который знает о ".edu"
  • ISP-сервер запрашивает у сервера .edu TLD сервер, который знает о «.goodeggs.org». TLD Server возвращает провайдеру адрес сервера NAME для «.goodeggs.org».
  • Интернет-провайдер запрашивает у сервера «.goodeggs.org» адрес фактического ресурса, www.goodeggs.edu. Сервер NAME возвращает адрес ресурса на DNS-сервер ISP, который перенаправляет IP-адрес ресурса локальному хост-приложению.

В итоге:

  • ISP DNS-сервер подключается к следующим серверам в следующем порядке
  • ROOT (для .edu)
  • TLD (для goodeggs.edu)
  • NAME (для www.goodeggs.edu) << Ресурсный IP-адрес отсюда </li>

ВОПРОС!

Что если у моего имени ресурса более трех узлов, например

www.bbc.co.uk?

Являются ли серверы с именем

  • ROOT (для .uk)
  • TLD1 (для co.uk)
  • TLD2 (для .bbc.co.uk)
  • NAME (для www.bbc.co.uk) << Ресурсный IP-адрес отсюда </li>

(* Я записываю это, хотя кто-то может (будет) жаловаться (например, С.Е.), это не вопрос, я спрашиваю, верно ли мое базовое понимание DNS - или нет.)

1 Ответ

0 голосов
/ 11 мая 2018

В вашем описании есть несколько недостатков, поэтому сначала исправьте это.

Сегодня минимизация QNAME не является нормой, то есть полное имя запрашивается на каждом шаге, оно не разбивается по меткам.

Итак, вкратце:

  1. вы запрашиваете рекурсивный сервер имен
  2. , если у него есть ответ в локальном кэше, а у TTL не истек срок действия, он отвечает напрямуюдля вас конец истории
  3. если нет, он запускает рекурсивный процесс для вас: начиная с корня, он запрашивает имя;каждый авторитетный сервер имен, не являющийся уполномоченным для имени, вместо этого будет возвращать список записей NS, которые нужно запросить следующим (и это также будет все кэшироваться), и так далее, пока один сервер имен не ответит авторитетно на ваш конкретный запрос, и в этом случаерекурсивное задание сервера имен завершено, он сохраняет ответ в своем кеше и затем передает его вам.

Вы можете использовать опцию dig +trace, чтобы увидеть его, например:

$ dig +trace www.bbc.co.uk

; <<>> DiG 9.12.0 <<>> +trace www.bbc.co.uk
;; global options: +cmd
.           352520 IN NS l.root-servers.net.
.           352520 IN NS c.root-servers.net.
.           352520 IN NS d.root-servers.net.
.           352520 IN NS a.root-servers.net.
.           352520 IN NS j.root-servers.net.
.           352520 IN NS f.root-servers.net.
.           352520 IN NS h.root-servers.net.
.           352520 IN NS m.root-servers.net.
.           352520 IN NS g.root-servers.net.
.           352520 IN NS k.root-servers.net.
.           352520 IN NS e.root-servers.net.
.           352520 IN NS b.root-servers.net.
.           352520 IN NS i.root-servers.net.
.           444986 IN RRSIG NS 8 0 518400 (
                20180523050000 20180510040000 39570 .
                iCesuUeD36Re2VEdzRbmFh28kIeNo/Qpb0fi8r1/vu79
                ShjbkB1j2ySalLUYt1AgYQegkU/62/bw+G9i1hbFDGu3
                zvbr+VDxQWHX5tkeXNz0+JujJ/ITfFItTSD8LSmXyJcF
                QP6YNwNQ5f5WzBy4SiURgXCYhyOrcviIlXOa+9QuEpE+
                kGj/NZp2YNR6CMWhv0ImOgwdzZG8gF83LM6a/RLoaFG1
                6EwWBgrhZksnUzHS9Hv3MKVpIZMGnQA/QRUJMB+LyZeQ
                CcnWoAzchGTVxmTf6Wlhdj+MhuaQ656KMxbTaPrGzjfr
                vyYq6KmIrto/kS9Rc9NsaV6IA7fLqxvaIw== )
;; Received 1097 bytes from 192.168.10.229#53(192.168.10.229) in 2 ms

uk.         172800 IN NS dns1.nic.uk.
uk.         172800 IN NS dns4.nic.uk.
uk.         172800 IN NS nsa.nic.uk.
uk.         172800 IN NS nsd.nic.uk.
uk.         172800 IN NS nsc.nic.uk.
uk.         172800 IN NS nsb.nic.uk.
uk.         172800 IN NS dns3.nic.uk.
uk.         172800 IN NS dns2.nic.uk.
uk.         86400 IN DS 43876 8 2 (
                A107ED2AC1BD14D924173BC7E827A1153582072394F9
                272BA37E2353BC659603 )
uk.         86400 IN RRSIG DS 8 1 86400 (
                20180524050000 20180511040000 39570 .
                YisP01VEWwakIJeUgDGu+JkWdbEe6DHYwvboX9ngd95e
                rbZb3EeDU3ieS8x+qcGWpmXtwLnec2A2aoBvXTZjLdP3
                a01mIdOSzlBLXJz6ejXKRyc1/a7DkxxtzCZTa89JVbGy
                lIwgCxS/CXdo2A3M+sc7YGBd14XgTu0l1Z1ZZMm9ZWF3
                W3gjdKDiGMKFRolZbxyhUwacIhaxIOFsgkHfKiGyONe1
                Qx8O1kIy0NhMKOYcw05183tTO4zd1w1UJRidr1jyVwFl
                i+UhL5nVsXOwh1HaeiiIMwLLXVeP2d5ISaO/2dA4KEhZ
                wC3KPlJvl3gF8e7fiEs6OrbYgCmvZ7o3VQ== )
;; Received 797 bytes from 198.41.0.4#53(a.root-servers.net) in 139 ms

bbc.co.uk.      172800 IN NS ns4.bbc.net.uk.
bbc.co.uk.      172800 IN NS ns3.bbc.net.uk.
bbc.co.uk.      172800 IN NS ns3.bbc.co.uk.
bbc.co.uk.      172800 IN NS ns4.bbc.co.uk.
G9F1KIIHM8M9VHJK7LRVETBQCEOGJIQP.co.uk. 10800 IN NSEC3 1 1 0 - (
                G9HKV8PHGJ1NMH94L9RMIQM0J64UCIPK
                NS SOA RRSIG DNSKEY NSEC3PARAM
                TYPE65534 )
G9F1KIIHM8M9VHJK7LRVETBQCEOGJIQP.co.uk. 10800 IN RRSIG NSEC3 8 3 10800 (
                20180614141322 20180510140235 33621 co.uk.
                j1bmaifCFfs1u84HWglaeTxZLTAd4b+a7Lr/1+JwrrcB
                7TlQhEPkbgTIaLUUkySPJfxY+tdkfaRFrzbheLgXbE+u
                qSOmuHxhuhHSFsDhaYfEbSCaWB/J+7JKgQOSHbhVnF0m
                rD7DMDKbYTcalNNB0VlTdhiSumd0oGyqohugqvw= )
TP2SFUK8GL59V3TCVHK2DBGOD4LP2VPK.co.uk. 10800 IN NSEC3 1 1 0 - (
                TP40D2GKG41E62VT49B179FKD8QU8D56
                NS DS RRSIG )
TP2SFUK8GL59V3TCVHK2DBGOD4LP2VPK.co.uk. 10800 IN RRSIG NSEC3 8 3 10800 (
                20180610203629 20180506202704 33621 co.uk.
                AdiIoWpWjQuUGMqLvWbKidEGsw86ZUTgJFZjeO6qfYKr
                MlbkII+8dm6kp2EZsMRuzRcP6/pUYDK0rn99Rmx5JRsj
                ISLeyDG4kM2/eDMxfObZEe1zZSxIxoZmRzV6ZWJ3QIFt
                9zFT2hq7eLQfHJKzZ8unzsl8r2l6xrncSUsNZxs= )
;; Received 733 bytes from 156.154.102.3#53(nsc.nic.uk) in 74 ms

www.bbc.co.uk.      300 IN CNAME www.bbc.net.uk.
;; Received 68 bytes from 156.154.65.17#53(ns4.bbc.net.uk) in 73 ms

Вы видите, какие именно серверы имен запрашиваются, начиная с корня, и из ответов, сначала только NS записей, связывающих авторитетные серверы имен с одного «уровня» на другой (игнорируйте записи RRSIG и NSEC3, но производитеособенно внимательно следите за строками ;; Received, чтобы точно определить, какой сервер имён ответил на что) и, наконец, ответ.

У вас есть онлайн-инструменты для устранения неполадок, которые предоставят вам ту же информацию с красивыми изображениями с блоками и стрелками, дляпример: http://dnsviz.net/d/www.bbc.co.uk/WvW_7Q/dnssec/ (немного сложнее из-за финала CNAME)

So проблема не совсем в количестве точек.Разрез зоны не обязательно происходит в каждой точке.Например, gouv.fr и fr находятся в одной и той же зоне, отсечение зоны отсутствует, официальные серверы имен для gouv.fr такие же, как для fr.Это выбор дизайна.

TLD - это свободный термин.Часто это синоним самого правого ярлыка, но это не всегда так.В прошлом вы могли регистрировать только .co.uk доменных имен, регистрация непосредственно под .uk была невозможна.В этом случае вы могли бы сказать, что .co.uk был TLD.Есть много реестров, все еще работающих с подобластями подобного рода.У вас также есть дела с несколькими различными регистрами на разных уровнях: например, вы можете зарегистрировать домены под .com и под .uk.com, оба обрабатываются разными «реестрами» (они могут говорить о деловой стороне этого, но яЯ сосредоточен только на технической стороне, иллюстрируя, что DNS подобен дереву, технически все может происходить на одном узле, независимо от его глубины).Тогда вы можете сказать, что .uk.com - это SLD для Домена второго уровня (Имя) .Однако другие реестры могут быть на третьем уровне и т. Д. (Например, в прошлом .US было очень глубоким, по крайней мере, 4 или 5 уровней, по крайней мере, для кодирования штата США, затем округа, затем типа школыи т. д. вы можете увидеть много примеров на https://en.wikipedia.org/wiki/.us)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...