Назад | Перейти на главную страницу

Запросить вышестоящий авторитетный DNS для неизвестного хоста

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

Есть ли способ настроить BIND для запроса внешнего источника, если он получает запрос на хост, который ему не известен, даже если этот хост находится в домене, для которого он является полномочным?

Например, если мой домен называется: site.com

Внутренний DNS может иметь:

www.site.com    192.168.1.1
smtp.site.com   192.168.1.2
mail.site.com   192.168.1.3

Внешний DNS может иметь:

www.site.com    199.200.201.1
smtp.site.com   199.200.201.2
mail.site.com   199.200.201.3
ftp.site.com    199.200.201.4
support.site.com 199.200.201.5

Если я запрошу внутренний DNS для www.site.com, он вернет 192.168.1.1. Но если я запрошу его для ftp.site.com, я получу неизвестный хост. Есть ли способ настроить мою внутреннюю привязку для пересылки этого запроса на внешний сервер и возврата 199.200.201.4?

Или мой единственный выбор - скопировать отсутствующие хосты на мой внутренний DNS-сервер и иметь две копии одинаковых записей (одну на моем общедоступном DNS и одну на моем внутреннем DNS)?

У вас есть несколько вариантов. В файле конфигурации привязки вы можете создать зону пересылки для каждого хоста:

zone "ftp.site.com" {
  type forward;
  forward only;
  forwarders { external_dns_ip; };
};

Или в файле определения зоны:

ftp IN NS external_dns_ip

(предполагается, что ПРОИСХОЖДЕНИЕ - «site.com».)

Вместо добавления записи для каждого хоста вы также можете использовать подстановочный знак:

* IN NS external_dns_ip

но при этом все неизвестные запросы будут перенаправлены на внешний сервер имен.