1

Так что я погуглил и не могу найти ничего, связанного с этим. Очевидно, это должно произойти, хотя. Я не могу представить организации, которые не имеют избыточных главных серверов. Общий подход, который я нашел в Google, состоит в том, чтобы сделать избыточными подчиненные серверы, но это не учитывает тот факт, что в случае сбоя главного устройства подчиненный работает так долго только корректно.

У меня есть набор DNS-серверов в моей лабораторной сети. Один ведущий, два ведомых, два рекурсивных сервера.

Мастер выполняет передачу файлов зоны на подчиненные устройства и скрыт. Он не принимает запросы и не допускает рекурсию, разработанную в соответствии с лучшими практическими документами, которые я нашел в Интернете.

Подчиненные устройства допускают запросы от рекурсивных серверов, для которых пересылки установлены на DNS моего провайдера, и локальные ведомые устройства (для разрешения виртуальных сетей и т.д. Во внутренней сети).

Я планирую настроить другой главный сервер для обеспечения высокой доступности,

Как мне сделать это с BIND? Я знаю, что могу установить masters { server1; server2; }; в конфигурации для рабов, но как мне иметь двух мастеров?

  1. Если в файлах зон возникают конфликты между двумя мастерами, кто имеет преимущество при передаче рабам?
  2. Как определить отказоустойчивость? Если Master1 терпит неудачу рабов автоматически попытается второй IP , указанный в поле masters правильно? Так что мне не нужно ничего настраивать для автоматического переключения при сбое?

РЕДАКТИРОВАТЬ: Вот изображение моей текущей настройки: (Я хотел бы добавить еще один главный сервер)

1 ответ1

1

В случае двойного мастера, каждый ведет себя независимо, вы хотите, чтобы зоны были синхронизированы.

Нет мастера, который имеет приоритет. Родительские DNS-серверы обычно (и, как ожидается, будут) рандомизируют / поворачивают порядок, в котором представлены серверы имен для зон, и клиентское программное обеспечение обычно запрашивает это в порядке их получения. (Это может быть не так в некоторых угловых случаях - я предполагаю, что родительский объект контролируется и / или маршрутизацией можно управлять в сочетании с CDN / многоадресным трафиком)

Для этого вы просто настраиваете каждый сервер как мастер, и у вас нет линии "мастеров". Я использую скрипт, чтобы выдавать идентичные обновления мастерам.

Вам не нужно настраивать аварийное переключение. DNS-клиенты будут последовательно пытаться использовать серверы имен, если они не получат ответ. Тем не менее, это далеко от идеала, чтобы полагаться на клиентов, поскольку это очень заметно замедляет время ответа DNS, когда первый сервер не отвечает. Более длинные TTL на записях SOA могут частично смягчить это.

Таким образом, ни один мастер не имеет приоритета, они обрабатываются одинаково, хотя вы, возможно, сможете взвешивать это поведение с разными значениями ttls для записи SOA и разных серийных номеров - но я бы посоветовал против этого, так как это может вызвать проблемы. Я никогда не пробовал, поэтому я говорю теоретически, основываясь на понимании, которое я получил, изучая это 20 лет назад, и последующем практическом опыте работы с двумя главными серверами.

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