У меня есть локальное доменное имя "SomeName"и Интернет-домен"AnotherName.dyndns.org"чей IP-адрес может измениться в любое время (он использует динамический DNS). Я хочу разрешить"SomeName"к"AnotherName.dyndns.org"IP. Другими словами, если"AnotherName.dyndns.org"указывает на 1.2.3.4, хочу"SomeName"чтобы указать на тот же IP-адрес, а именно на 1.2.3.4.
Есть ли какой-нибудь простой и понятный способ добиться этого? Мне не удалось найти такой вариант для DNSMasq или BIND. Я полагаю, можно было бы написать сценарий, который получает IP-адрес домена и перезаписывает файл конфигурации, а затем перезагружает DNS-сервер, но это было бы ужасно.
Зачем мне это нужно? Проще говоря, я хочу настроить сервер и клиент Bacula. Сервер должен разрешить "SomeName"на локальный IP-адрес (статический, здесь нет проблем), а клиент должен преобразовать его в общедоступный IP-адрес (динамический, а именно"AnotherName.dyndns.org").
Если я правильно понимаю, вам нужна DNS-запись CNAME:
DNS-запись CNAME выглядит так:
<an alias> CNAME <a canonical name>
например:
somename CNAME domain.dyndns.org
Если domain.dyndns.org динамически разрешается в IP-адрес, у вас есть то, что вы хотите.
Как насчет добавления "AnotherName.dyndns.org" в качестве суффикса домена для разрешения DNS на клиенте?
Насколько я понимаю, вы ищете конфигурацию раздельного DNS. Он также называется представлениями на языке BIND. Таким образом, вы создадите два представления Private (локальный) и Public (Интернет) и создадите список ACL, соответствующий вашему исходному IP-адресу, из которого будет поступать запрос, на котором он предоставит вам любой IP-адрес, который вы хотите предоставить клиенту. например, если ваш запрос поступает с частного IP-адреса 192.168.100.x, тогда DNS выдаст вам "SomeName" 1.2.3.4, а если запрос поступает из общедоступного домена, он даст вам "SomeName" 202.67.29.x
Взгляните сюда. Надеюсь, этот ответ удовлетворит вашу потребность. http://www.shorewall.net/SplitDNS.html