Я прочитал эту статью о раздельном DNS: http://www.isaserver.org/tutorials/You_Need_to_Create_a_Split_DNS.html. Думаю, я понимаю эту концепцию, но для настройки оптимального решения, предложенного в статье, мне нужно управлять DNS-серверами «снаружи» (чего я не могу в моем случае).
Мой сценарий таков: один внутренний домен называется corp.local. Одно общественное достояние под названием corp.com. У меня есть сайт по адресу www.corp.com, который фактически указывает на опубликованный сервер в домене corp.local. Я также хотел бы опубликовать этот веб-сервер для внутренних клиентов (клиенты в домене corp.local), без перехода на внешний IP и обратно. Поэтому я просто настраиваю новую зону на DNS-сервере для внутренних клиентов (corp.local) используют под названием corp.comи добавьте запись для www.corp.com, на этот раз указывающий на внутренний IP-адрес.
К моей проблеме: У меня есть много других записей на внешнем веб-сервере, которые следует оставить как есть. Я знаю, что могу просто скопировать и поддерживать два DNS-сервера, но в идеале мне бы хотелось этого:
Случай 1
Случай 2
На самом деле в случае 2 происходит то, что внутренний DNS-сервер считает себя авторитетным для зоны corp.com (что в некотором роде и есть), и если он не находит запись для someother.corp.com, он отвечает клиенту. с отрицательным ответом.
Надеюсь, я ясно дал понять, с нетерпением жду вашего вклада! Заранее спасибо! Кроме того, я использую домен Windows с DNS-серверами Windows (Windows Server 2008).
Это небольшая хитрость - я сделал это только с помощью bind, но он работает.
Создать новый зона называется www.corp.com
затем создайте и @ record для зоны, которая будет внутренним IP-адресом вашего сайта.
Это заставит DNS-сервер думать, что он является авторитетным для «зоны». www.corp.com
и возвращать @ запись, когда люди запрашивают www.corp.com
. Он передаст остальную часть * .corp.com вашим обычным общедоступным DNS-серверам для рекурсивного поиска и вернет внешний IP-адрес.
Если вы используете Несвязанный в качестве рекурсивного сервера вы можете заставить его отвечать на конкретные локальные данные, используя local-zone
и local-data
директивы и перенаправить любые неизвестные записи на внешний сервер.
local-zone: corp.com. transparent
local-data: "www.corp.com. IN A www.xxx.yyy.zzz"
Страница руководства находится по адресу http://www.unbound.net/documentation/unbound.conf.html