
Bei mir läuft unter anderem ein Router dnsmasq
mit Standard-Setup, so dass ich einen DNS-Proxy plus zusätzliche lokale Server bekomme und außerdem Namensauflösung für alle Rechner, deren IP-Adresse über dnsmasq
DHCP-Server verwaltet wird.
Server und andere Hosts befinden sich in meiner home.net
Domain
So weit, ist es gut.
Jetzt muss ich mich über VPN mit einer Kundensite ( customer.net
) verbinden, die über ein sehr ähnliches Setup verfügt (sie verwenden nicht dnsmasq, aber der Nettoeffekt ist derselbe).
Ich habe eine kleine (virtuelle) Maschine eingerichtet, die als Router-Weiterleitung (mit NAT) vom lokalen Netzwerk zum IPSec- tun
Gerät fungiert, und habe ein paar statische Routen zu den (2) Hosts hinzugefügt, die customer.net sehen müssen. Ich habe dies manuell gemacht, anstatt die Routen durch dnsmasq zu leiten.
Auch dies scheint problemlos zu funktionieren.
Nun habe ich noch ein letztes Problem, bei dem ich keine Lösung weiß:
Ich kann auf Maschinen im customer.net
privaten Adressraum nur über die Angabe der IP-Adresse zugreifen, es ist keine DNS-Auflösung verfügbar vondns.customer.net
Wie kann ich darauf zugreifen?dns.customer.net
ohneVerbindung verloren mit dns.home.net
?
NOTIZ: Ich kann mein Setup ändern home.net
(ich würde es vorziehen, Änderungen auf die wenigen tatsächlich beteiligten Hosts zu beschränken), aber ich habe keine Kontrolle übercustomer.net
Die Situation, die ich gerne hätte, ist:
*.home.net
Adressen sollten aufgelöst werden durchdnsmasq
dnsmasq
Über das Internet routbare Adressen sollten durch Proxying des DNS meines Internetdienstanbieters aufgelöst werden .*.customer.net
Adressen sollten aufgelöst werden durchdns.customer.net
(Ich kann diesen Host über seine nicht routbare IP erreichen), möglicherweise ohne den Umweg über meinednsmasq
Ist das überhaupt möglich? Und wenn ja, wie?
Antwort1
Nach einigen Nachforschungen habe ich herausgefunden, dnsmasq
dass es das kann, was ich brauche.
Hier ein Auszug aus der Standarddokumentation (Dnsmasq-Einrichtung):
Verwendung spezieller Server.
Dnsmasq kann DNS-Anfragen für bestimmte Domänen an bestimmte Upstream-Nameserver weiterleiten. Diese Funktion wurde für die Verwendung mit VPNs hinzugefügt, ist aber völlig allgemein. Das Szenario ist folgendes: Sie haben eine Standard-Internetverbindung über einen ISP und dnsmasq ist so konfiguriert, dass Anfragen an die Nameserver des ISPs weitergeleitet werden. Anschließend stellen Sie eine VPN-Verbindung zum Netzwerk Ihres Unternehmens her und ermöglichen den Zugriff auf Hosts innerhalb der Firewall des Unternehmens. Sie haben Zugriff, aber da viele der internen Hosts im öffentlichen Internet nicht sichtbar sind, veröffentlicht Ihr Unternehmen sie nicht im öffentlichen DNS und Sie können ihre IP-Adresse nicht von den Nameservern des ISPs abrufen. Die Lösung besteht darin, die Nameserver des Unternehmens für private Domänen innerhalb des Unternehmens zu verwenden, und dnsmasq ermöglicht dies. Angenommen, alle internen Firmencomputer befinden sich in der Domäne internal.myco.com und der Nameserver des Unternehmens ist 192.168.10.1, dann leitet die Option server=/internal.myco.com/192.168.10.1 alle Anfragen in der internen Domäne an den richtigen Nameserver weiter. Sie können in jeder Serveroption mehr als eine Domäne angeben. Wenn mehr als ein Nameserver vorhanden ist, geben Sie einfach so viele Serveroptionen an, wie nötig sind, um sie alle anzugeben.
Am Ende habe ich sowohl einen DNS-„Spezialserver“ als auch zusätzliche statische Routen zu meinem Haupt-Dnsmasq (auf meiner Firewall) hinzugefügt und alles funktioniert wie gewünscht, sobald die virtuelle VPN-Maschine einsatzbereit ist.
Tatsächlich zu meiner dnsmasq.conf hinzugefügte Zeilen sind:
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
Ich hoffe, das hilft jemandem, die Sache auf den Punkt zu bringen.