Я пытаюсь использовать переадресацию зон, но только для поддоменов.
Представьте, что у вас есть VPN-сервер в домене vpn.provider.tld. Этот домен указывает на глобальный IP-адрес, доступный из Интернета и предоставляемый глобальным DNS-сервером. Внутри VPN (интрасети) есть DNS-сервер с локальным адресом (VPN_DNS_LOCAL_IP, т.е. 10.0.0.1). DNS-сервер VPN содержит записи * .vpn.provider.tld, указывающие на внутренние адреса VPN. Для т.е. host.vpn.provider.tld -> 10.0.0.2.
Моя цель - настроить рекурсор PDNS на хосте VPN для пересылки зоны vpn.provider.tld на внутренний DNS-сервер по адресу VPN_DNS_LOCAL_IP. Но когда форвард настроен как:
forward-zones=vpn.provider.tld=10.0.0.1
хост не может подключиться к серверу VPN, потому что vpn.provider.tld перенаправляется на недоступный внутренний IP-адрес VPN.
Есть ли способ перенаправить ТОЛЬКО * .vpn.provider.tld на локальный IP-адрес VPN DNS и оставить vpn.provider.tld для глобального разрешения на глобальный IP-адрес?
Хотя это сложно сделать в Рекурсоре, это легко сделать с dnsdist.
vpn.provider.tld
и передайте его своему обычному преобразователю, используя https://dnsdist.org/rules-actions.html#QNameRulevpn.provider.tld
к DNS-серверу VPN, используя https://dnsdist.org/rules-actions.html#SuffixMatchNodeRuleДля (2) makeRule
избавит вас от набора текста.