16

Я рассматривал добавление 8.8.8.8 к концу списка моего адаптера из DNS - серверов в качестве резервной копии в случае , если все терпит неудачу, когда мне пришло в голову , что я не знаю , как вторичные и третичные DNS - серверы обрабатывают.

  • При каких условиях используется следующий DNS-сервер?
  • Будет ли проверен следующий сервер, если имя не определено?
  • Могу ли я настроить свой компьютер для запроса нескольких серверов, если имя не разрешено?

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

  • Если первый DNS-сервер выходит из строя, как долго будет использоваться вторичный DNS-сервер?
  • Когда мой компьютер проверяет, работает ли основной DNS-сервер, он останавливает мой текущий DNS-запрос?
  • Как несколько DNS-серверов влияют на производительность? Если у меня в списке моего адаптера четыре DNS-сервера и три из них мертвы, будет ли он ждать три таймаута, прежде чем получить ответ?

Я не уверен, что этот вопрос зависит от конкретной ОС. Разные операционные системы относятся к этому по-разному?

Моя цель - добавить 8.8.8.8 к серверам DNS поверх того, что DHCP раздает со скриптом. Я продолжаю сталкиваться с глупыми проблемами DNS, когда мои машины заводят фиктивный / недоступный / просто нет DNS-сервер из-за ошибок в конфигурации DHCP, которые я не могу контролировать. Мне это надоело, но мне интересно, если добавление этого отказоустойчивого вызовет больше проблем, чем решит.

1 ответ1

15

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

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

Вот хороший пост, подробно описывающий поведение, а также способ настроить то, что вы просили.

Общая идея заключается в том, что по умолчанию вторичные / третичные DNS-серверы используются только последовательно, если время ожидания первичного DNS-сервера или указывает на немаршрутизируемый IP-адрес. Даже если основной DNS-сервер говорит "этот домен не разрешается", он не будет переходить к следующему серверу имен. Любой действительный ответ на запрос рассматривается как причина, по которой не следует переходить на следующий DNS-сервер в списке.

Один из возможных разумных способов настроить его так, чтобы сначала разрешались локальные адреса, но по-прежнему использовать Google DNS или OpenDNS вместо DNS-сервера вашего интернет-провайдера, - это настроить маршрутизатор или блок локальной сети (в зависимости от того, какой блок является шлюзом Интернета) и использовать 8.8.8.8 качестве основного сервера имен. Конечно, на шлюзе должен быть запущен сервер имен, и он должен быть настроен для ответа на запросы DNS для локальных имен хостов в частной подсети, но если он не может разрешить локальную подсеть, он должен немедленно подключиться к Google DNS. Это своего рода лучшее из обоих миров.

Другой способ сделать это - настроить разные серверы имен для разных сетевых интерфейсов. Windows позволяет вам делать это по умолчанию; статья в указанной выше ссылке описан способ сделать это путем настройки DNS - сервера реализации bind9 с помощью forward и forwarders директивы.

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