Перейти к содержимому

DNS-сервер слияния

1

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

Серверы и другие хосты находятся на моем home.netдомене

Все идет нормально.

Теперь мне нужно подключиться через VPN к клиентскому сайту ( customer.net), у которого очень похожие настройки (они не используют dnsmasq, но сетевой эффект тот же).

Я настроил небольшую (виртуальную) машину, выполняющую роль переадресации маршрутизатора (с NAT) из локальной сети на tunустройство IPSec, и добавил несколько статических маршрутов к (2) хостам, которым требуется видеть customer.net; Я сделал это вручную, а не проталкивал маршруты через dnsmasq.

Также это, кажется, работает без проблем.

Теперь у меня есть последняя проблема, которую я не знаю, как решить:

Я могу получить доступ к машинам в customer.netличном адресном пространстве, указав только IP-адрес, разрешение DNS недоступно сdns.customer.net

Как я могу получить доступ dns.customer.net без потери связи с dns.home.net?

ПРИМЕЧАНИЕ . Я могу изменить home.netнастройки (я бы предпочел ограничить изменения только несколькими задействованными хостами), но я не могу контролироватьcustomer.net

Ситуация, которую я хотел бы иметь:

  • *.home.net адреса должны быть разрешены dnsmasq
  • Маршрутизируемые адреса в Интернете должны быть разрешены через dnsmasqпрокси-сервер DNS моего провайдера.
  • *.customer.netадреса должны быть разрешены с помощью dns.customer.net(я могу получить доступ к этому хосту через не маршрутизируемый IP-адрес), возможно, не проходя через мойdnsmasq

Это вообще возможно? Если так, то как?

321 просмотр
ZioByte спросил 9 лет назад
Z 198

1 ответ

0
Принятый ответ

После небольшого расследования я узнал, что dnsmasqмогу делать то, что мне нужно.

Вот выдержка из стандартной документации ( настройка Dnsmasq ):

Использование специальных серверов.

Dnsmasq имеет возможность направлять DNS-запросы для определенных доменов к конкретным вышестоящим серверам имен. Эта функция была добавлена ​​для использования с VPN, но она носит общий характер. Сценарий таков: у вас есть стандартное интернет-соединение через интернет-провайдера, и dnsmasq настроен для пересылки запросов на серверы имен интернет-провайдера, затем вы делаете VPN-соединение в сети вашей компании, предоставляя доступ к хостам внутри брандмауэра компании. У вас есть доступ, но так как многие внутренние хосты не видны в общедоступном Интернете, ваша компания не публикует их в общедоступном DNS, и вы не можете получить их IP-адрес от серверов имен ISP. Решение состоит в том, чтобы использовать сервер имен компаний для частных доменов внутри компании, и dnsmasq позволяет это. Предполагая, что внутренние машины компании находятся в домене internal.myco. com и сервер имен компаний находится по адресу 192.168.10.1, тогда параметр server = / internal.myco.com / 192.168.10.1 направит все запросы во внутреннем домене на правильный сервер имен. Вы можете указать более одного домена в каждой опции сервера. Если существует более одного сервера имен, просто укажите столько параметров сервера, сколько необходимо для их определения.

В конце я добавил DNS «специальный сервер» и дополнительные статические маршруты в свой основной dnsmasq (на моем брандмауэре), и все будет работать по мере необходимости, как только виртуальная машина VPN будет запущена.

Фактические строки, добавленные в мой dnsmasq.conf:

server=/customer.net/192.168.20.253 dhcp-option=121,192.168.2.0/24,192.168.7.11,192.168.20.0/24,192.168.7.11 

Я надеюсь, что это помогает кому-то сократить погоню.

ZioByte ответил 9 лет назад
Z 198