Я собираюсь начать это с быстрого, да, это похоже на многие другие вопросы, но у меня есть очень конкретный вопрос, связанный с настройкой bind9, который, похоже, не был рассмотрен в другом месте.
Это моя ситуация:
Я хотел бы иметь способ разрешить несколько записей DNS для разработчиков, не вмешиваясь в наши общедоступные записи DNS.
В общем, это мой план:
Итак, это будет работать так; У меня есть куча записей dev dns, например.
* .dev.mysite1.com -> ip vpn * .dev.mysite2.com -> ip vpn
Однако, поскольку на клиентских машинах определены две записи DNS, они будут связывать запрос, а запросы для www.mysite1.com и т. Д. Будут разрешены на обычный (общедоступный) DNS-сервер.
Итак, вопрос:
Как настроить привязку, чтобы она разрешала поддомен (например, dev.mysite.com), но не разрешала другие поддомены (например, www.mysite.com)?
Это, вероятно, тривиально, но после установки привязки и создания файла зоны кажется, что что-то не работает?
Как должен выглядеть мой файл named.conf.local / файл конкретной зоны для разрешения конкретного поддомена, но не всего домена?
-
Изменить: да, я видел Переопределение некоторых записей DNS в BIND для внутренних сетей, но я как бы надеялся, что есть способ сделать это легко с помощью bind ...
Строго говоря, это не ответ на ваш вопрос (настройка привязки), но, возможно, все же решение вашей проблемы.
Я не знаю, о скольких программистах и машинах для разработки вы говорите, но было бы очень целесообразно включить все машины разработчиков в соответствующие хост-файлы на клиентах программиста.
Вам нужно делегировать разработчика и сделать серверы имен авторитетными.
На site1.com:
dev.site1.com. NS ns1.dev.site1.com.
dev.site1.com. NS ns2.dev.site1.com.
ns1.dev.site1.com. A 10.0.0.1
ns2.dev.site1.com. A 10.0.0.2
На ns1 / ns2.dev.site1.com:
@ SOA ns1.dev.site1.com. hostmaster.site1.com ( 2011050802 3H 1H 1W 10M )
dev.site1.com. NS ns1.dev.site1.com.
dev.site1.com. NS ns2.dev.site1.com.
ns1.dev.site1.com. A 10.0.0.1
ns2.dev.site1.com. A 10.0.0.2
Использование двух записей DNS на ваших клиентах не сработает. Если они запрашивают первый сервер, и он возвращает, что не может найти запись, они не будут пытаться вторым сервером, а вместо этого потерпят неудачу.
Обычный способ обойти это - отправить запись DNS для вашего внутреннего сервера через DHCP, когда ваши пользователи подключаются к VPN. Затем этот сервер должен быть настроен как авторитетный для dev.mysite1.com и / или dev.mysite2.com и быть рекурсивным или перенаправлять на ваш основной DNS-сервер для каждого другого запроса.