Как обеспечить согласованность записей DNS между основными DNS-серверами?
Корневые DNS-серверы могут быть наиболее типичными первичными DNS-серверами (не доступными только для чтения). В настоящее время существует 13 IP-адресов корневых DNS-серверов; однако, учитывая технологию IP Anycast, по всему миру развернуто более 13 корневых DNS-серверов.
Если кто-то хочет обновить записи DNS для всех корневых DNS-серверов, существует ли какой-либо механизм синхронизации или репликации между всеми этими DNS-серверами?
Более сложный вопрос: если два человека хотят одновременно обновить одну и ту же запись DNS, как DNS разрешит потенциальный конфликт?
например, человекA
обновил запись DNS наr2
наa.root-servers.net.(deployed at region A)
и в то же время человекB
обновил ту же запись DNSr1
кr3
наa.root-servers.net.(deployed at region B)
; кроме того, предполагая, что существует значительная задержка в сети междуregion A
иregion B
.
Вторая проблема аналогична кластеру базы данных: существует более одного основного сервера базы данных, и эти основные серверы синхронизируют данные со всех остальных основных серверов.
1 ответ
Чтобы ответить на ваш первый вопрос: «Как зоны DNS синхронизируются между DNS-серверами TLD»
Корневые DNS-серверы и механизмы DNS TLD ОЧЕНЬ отличаются от общих DNS-серверов более низкого уровня. Короче говоря, каждый TLD будет иметь свои собственные механизмы синхронизации серверов. Они могут использовать передачу зон или иметь очень специфические сценарии для синхронизации и проверки данных зоны между всеми узлами.
И второй вопрос: «Как DNS предотвращает конфликтующие обновления».
Это обрабатывается в простом протоколе DNS за счет наличия главного DNS-сервера, который будет получать или вносить изменения в данные зоны, но остальные подчиненные DNS-серверы не будут иметь полномочий что-либо менять. Кроме того, изменения зоны отслеживаются по серийному номеру в записи SOA. Авторитетные DNS-серверы используют эту информацию, чтобы выяснить, находятся ли они «отстающими» и им необходимо получить новую копию зоны.
Поскольку на самом деле для данной зоны существует только один мастер, конфликтующие изменения практически невозможны.