Я использую Ubuntu 10.04 Desktop, который по умолчанию поставляется с «Сетевым менеджером» (к которому я очень подозреваю). У меня проблема с разрешением зон DNS на 2 разных серверах имен.
resolv.conf:
$ cat /etc/resolv.conf
#Generated by Network Manager
search example.org
nameserver 10.0.0.20 #public nameserver, contains public.example.org
nameserver 10.0.0.30 #private nameserver, contains private.example.org
И проблема. Какой бы сервер имен ни был указан первым, разрешит:
$ ping host.public.example.org
PING host.public.example.org (10.0.0.50) 56(84) bytes of data.
Тот, кто указан вторым, не будет:
$ ping host.private.example.org
ping: unknown host host.private.example.org
Но это есть:
$ dig @10.0.0.30 host.private.example.org
...
;; ANSWER SECTION:
host.private.example.org. 3600 IN A 10.0.0.60
...
Если я изменю порядок серверов имен в /etc/resolv.conf, host.private будет доступен, а host.public - нет. Зачем? На странице руководства resolv.conf:
Если серверов несколько, библиотека распознавателя запрашивает их в указанном порядке.
Проблемы возникают не только с ping, я заметил это, когда Thunderbird не мог получать почту, потому что DNS-запись почтового сервера находится на втором из перечисленных серверов. Разве то, что я пытаюсь здесь сделать, не должно работать?
Аааа .... на самом деле так не работает. Пока первый сервер имен работает и активен, все запросы на привязку будут отправляться ему. Единственный способ попасть на второй сервер имен - это если предыдущий сервер имен в списке умер и после ДЛИТЕЛЬНОГО тайм-аута.
Чтобы решить вашу проблему, я предполагаю, что вам, возможно, придется создать конфигурацию локального кэширующего DNS-сервера и направить серверы имен для двух зон на два разных сервера. Затем ваша конфигурация преобразователя будет настроена на использование IP-адреса хоста.
Этот совет показывает, как улучшить поиск DNS с помощью нескольких серверов имен. Это полезно, если ваш основной DNS-сервер когда-либо становился недоступным по какой-либо причине.
Серверы имен перечислены в /etc/resolv.conf, по одному в каждой строке.
Листинг 1: Пример /etc/resolv.conf
сервер имен 192.168.1.1
сервер имен 10.0.0.1
Чтобы улучшить поиск DNS, добавьте несколько DNS-серверов (желательно в разных подсетях) и следующие параметры в /etc/resolv.conf:
Листинг 2: параметры /etc/resolv.conf
варианты вращаются
варианты тайм-аута: 1
Это будет использовать оба сервера имен по очереди и ждать макс. 1 секунда на ответ, прежде чем пытаться сделать следующий.
Публичный сервер имен должен ответить, что частный адрес не выходит. Если он первый и запущенный, вы получите публичный ответ. Сначала укажите частный сервер. Публичный сервер следует использовать только как запасной вариант.
Решение на стороне сервера имен - использовать раздельную конфигурацию. Это будет обслуживать частные данные в частной сети и предоставлять только общедоступные данные на общедоступной стороне. Общедоступный сервер должен предлагать рефералы (google.com и т. Д.) Только в частной сети.