Поведение по умолчанию для resolv.conf и распознавателя состоит в том, чтобы использовать серверы в указанном порядке. Средство распознавания будет пытаться использовать следующий сервер имен только в том случае, если время первого сервера имен истекло. Resolv.conf страница руководство говорит:
nameserver Имя сервера IP-адрес
Интернет-адрес (в точечной записи) сервера имен, который должен запрашивать распознаватель. Может быть указано до MAXNS (в настоящее время 3, см.) Серверов имен, по одному на ключевое слово. Если имеется несколько серверов, библиотека распознавателя запрашивает их в указанном порядке.
И:
(Используемый алгоритм состоит в том, чтобы попробовать сервер имен, и, если время ожидания запроса истекло, попробуйте следующий, пока не будет исчерпан сервер имен, затем повторите попытку всех серверов имен, пока не будет выполнено максимальное количество попыток.)
Также см. Справочную страницу resolver (5) для получения дополнительной информации.
Вы можете изменить поведение распознавателя, используя rotate
запрос серверов имен в порядке круговой разбивки:
rotate устанавливает RES_ROTATE в _res.options, что вызывает циклический выбор серверов имен из числа перечисленных. Это приводит к распределению нагрузки запросов между всеми перечисленными серверами, а не к тому, чтобы все клиенты каждый раз сначала пробовали первый перечисленный сервер.
Однако nslookup будет использовать второй сервер имен, если он получает SERVFAIL
от первого сервера имен. Из справочной страницы nslookup :
[no] fail Попробуйте следующий сервер имен, если сервер имен ответит SERVFAIL или рефералом (nofail) или завершит запрос (fail) на такой ответ.
(По умолчанию = nofail)