Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Selektiver DNS Forwarder

    Scheduled Pinned Locked Moved Deutsch
    12 Posts 3 Posters 2.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • V
      viragomann
      last edited by

      Hi,

      aktiviere den DNS Forwarder und richte für die gewünschten "abartigen" Domains ganz unten am Konfig-Tab "Domain Overrides" ein. Als Angeben reichen normalerweise die gewünschte Domain und die IP des DNS-Servers, von welchem die Info geholt werden soll.

      1 Reply Last reply Reply Quote 0
      • JeGrJ
        JeGr LAYER 8 Moderator
        last edited by

        Gleiches Prinzip funktioniert übrigens unter 2.2 auch mit dem DNS Resolver. Auch hier kann ein einzelner Hostname oder eine komplette Domain an einen gezielten DNS delegiert werden. Sind mehrere DNSe dafür zuständig, dann einfach zwei Einträge mit der gleichen Domain und den verschiedenen Nameservern anlegen (egal ob Forwarder oder Resolver).

        Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

        If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

        1 Reply Last reply Reply Quote 0
        • B
          benjsing
          last edited by

          Danke für die Tipps, ich werde das gleich mal austesten.

          Hat eine der beiden Möglichkeiten irgend einen Vorteil gegenüber der anderen? Oder warum geht das doppelt?

          1 Reply Last reply Reply Quote 0
          • JeGrJ
            JeGr LAYER 8 Moderator
            last edited by

            Es ist nicht doppelt, der Forwarder und Resolver bieten leicht differenzierte Möglichkeiten. dnsmasq (forwarder) wurde aber in neuen Installationen von unbound (resolver) als default ersetzt (u.a. auch weil FreeBSD 10 per default nun mit unbound daher kommt und nicht mehr mit bind9 aktiv).

            dnsmasq ist aber wirklich nur Forwarder und Cache während Unbound ein cachender recursiver DNS Server sein kann(!), somit also wesentlich mehr use cases abdeckt.

            siehe https://en.wikipedia.org/wiki/Comparison_of_DNS_server_software

            Grüße Jens

            Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

            If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

            1 Reply Last reply Reply Quote 0
            • B
              benjsing
              last edited by

              In einem Testszenario (VM) hat dnsmasq / DNS Forwarder wunderbar funktioniert. Jetzt wo ich pfsense auf echter Hardware laufen lassen, über die das gesamte Netzwerk mit dem Internet verbunden ist, klappt das nicht mehr.

              Unter Advanced habe ich die Werte in folgendem Format eingetragen
              address=/hulu.com/155.254.13.13

              Dies funktioniert -zumindest bei GeoBlockern- nicht. Der Anbieter ist dns4me; wenn ich deren Werte lokal (Test-VM mit dnsmasq) eintrage, funktioniert auch alles. Habt Ihr eine Idee, wo der Fehler liegen könnte?

              1 Reply Last reply Reply Quote 0
              • JeGrJ
                JeGr LAYER 8 Moderator
                last edited by

                Und was soll der Eintrag genau tun? Und trägst du das nun in den Forwarder oder Resolver ein?

                Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

                If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                1 Reply Last reply Reply Quote 0
                • B
                  benjsing
                  last edited by

                  Ich reanimiere dieses Topic nun noch mal, da ich wieder ein wenig Zeit habe, mich mit der Materie zu beschäftigen.

                  Mein Anbieter stellt mir eine dnsmasq config im folgenden Format

                  address=/secure.netflix.com/155.254.63.159
                  address=/cbp-us.nccp.netflix.com/155.254.63.157
                  address=/www.netflix.com/155.254.63.150
                  address=/bivl.netflix.com/155.254.63.148
                  address=/api-eu.netflix.com/155.254.63.147
                  address=/cbp-eu.nccp.netflix.com/155.254.63.145
                  address=/api.netflix.com/155.254.63.143
                  address=/www2.netflix.com/155.254.63.142
                  address=/htmltvui-api.netflix.com/155.254.63.117
                  address=/cbp.nccp.netflix.com/155.254.63.109
                  address=/redirects-eu.nccp.netflix.com/155.254.63.107
                  address=/android.nccp.netflix.com/155.254.63.101
                  address=/playstation.nccp.netflix.com/155.254.63.100

                  oder eine hosts Datei in folgendem Format zur Verfügung

                  155.254.63.159 secure.netflix.com
                  155.254.63.157 cbp-us.nccp.netflix.com
                  155.254.63.150 www.netflix.com
                  155.254.63.148 bivl.netflix.com
                  155.254.63.147 api-eu.netflix.com
                  155.254.63.145 cbp-eu.nccp.netflix.com
                  155.254.63.143 api.netflix.com
                  155.254.63.142 www2.netflix.com
                  155.254.63.117 htmltvui-api.netflix.com

                  Dies sind nur kurze Ausschnitte, die eigentlichen Dateien sind sehr lang (und deshalb auch nur sehr schwer als Domain Overrides anzulegen).

                  Es gibt zudem eine hostfile API url, sodass sich geänderte Werte automatisiert übernehmen lassen.

                  Nun möchte ich a) diese Einstellungen nur für einzelne Geräte im Netzwerk aktivieren (solche, die Medien abspielen) und b) diese Einstellungen den Geräten "aufzwingen"; will heißen, ich kann zwar die pfSense-IP als Proxy nutzen, dies aber nicht bei allen Geräten (z.B. Chromecast). Ist es dennoch möglich, dass pfSense sämtlichen Traffic festgelegter Geräte anhand der Regeln im obigen Format umleitet?

                  Ich habe die dnsmasq config im Forwarder sowie im Resolver getestet, beides ohne Erfolg. Könnt Ihr mir sagen, was ich falsch mache bzw. gibt es einen anderen Service, der hierfür vielleicht besser geeignet ist?

                  1 Reply Last reply Reply Quote 0
                  • JeGrJ
                    JeGr LAYER 8 Moderator
                    last edited by

                    Ahoi,

                    es steht dir ja frei deine Clients nach belieben zu konfigurieren. Wenn du die Liste importierst/sonstwie in den Forwarder kloppst, kannst du den Geräten zum Aufzwingen als DNS eben die pfSense geben und allen anderen reichst du per DHCP oder manuell eben einen anderen DNS weiter.

                    Ansonsten gäbe es noch die Möglichkeit, das evtl. via OpenDNS zu machen, müsste man aber einlesen (in pfSense deren DNSe eintragen und dort in der WebUI deine Werte zu überschreiben).

                    Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

                    If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                    1 Reply Last reply Reply Quote 0
                    • B
                      benjsing
                      last edited by

                      Ich checke das einfach nicht…

                      DNS forwarder

                      • Enable DNS forwarder
                      • Register DHCP leases in DNS forwarder
                      • Static DHCP
                      • Query DNS servers sequentially
                        Listen Port 53 (leer gelassen)
                        Interfaces: All
                        Advanced: address=/secure.netflix.com/155.254.63.159
                        address=/cbp-us.nccp.netflix.com/155.254.63.157
                        (etc.)

                      Dann im DHCP server
                      DHCP Static Mappings for this interface -> entsprechendes Gerät auswählen

                      DHCP: Edit static mapping
                      DNS servers: IP von pfSense

                      Save und Apply Changes.

                      Nun sollte das bestimmte Gerät pfSense als DNS Server nehmen und über dnsmasq entsprechend mitgeteilt bekommen, dass es eben die unter Advanced angegebenen Einstellungen nehmen soll....? Zumindest am Beispiel netflix funktioniert das nicht.

                      Der Anbieter bietet alternativ noch die Möglichkeit, seine DNS Server zu nutzen. Die würde ich einfach im General Setup eintragen. Allerdings wollte ich vermeiden, dass sämtlicher Traffic über den Anbieter läuft (lieber 4.2.2.2). Die Variante hat aber zumindest in der Vergangenheit schon mal funktioniert... Oder habe ich einfach nur eine Einstellung nicht richtig aktiviert?

                      1 Reply Last reply Reply Quote 0
                      • B
                        benjsing
                        last edited by

                        Anscheinend wollte ich es einfach nur zu kompliziert ^^

                        Wenn ich im DHCP Server einfach den einzelnen Geräten die passenden DNS Server zuweise, funktioniert alles, wie es soll. In diesem Fall wird dnsmasq in pfSense gar nicht benötigt. Dadurch, dass sowieso nur bestimmte Geräte im Netzwerk überhaupt Medien abspielen und daher die speziellen DNS Server nutzen müssen, ist das als quick and dirty Lösung erstmal okay. Schöner wäre es trotzdem, wenn selbst die festgelegten Geräte ausschließlich bei Netflix, Hulu und Co. überhaupt auf diese DNS Server zurückgreifen würden. Dies klappt aber zumindest nicht via DNS forwarder mit advanced rules.

                        Da auch für alle möglichen Subdomains (siehe Beispiel im letzten Post) verschiedene Server angesprochen werden, ist es auch ziemlich mühsam, für jeden einzelnen davon per Hand Overrides zu erstellen.

                        Naja, für heute läuft das erstmal so, ich befasse mich morgen mal in Ruhe damit. Vielleicht lag es auch daran, dass ich die Verbindungen zwischendurch nicht unterbrochen hatte?? Beispiel: Mac ist via LAN verbunden, trotz mehrmaliger Änderung der DNS Server in pfSense wurden diese nicht übernommen, bis ich das Kabel einmal gezogen und wieder neu verbunden hatte (auch nicht beim Neustart von pfSense)…

                        1 Reply Last reply Reply Quote 0
                        • JeGrJ
                          JeGr LAYER 8 Moderator
                          last edited by

                          trotz mehrmaliger Änderung der DNS Server in pfSense wurden diese nicht übernommen, bis ich das Kabel einmal gezogen und wieder neu verbunden hatte (auch nicht beim Neustart von pfSense)…

                          Das würde nicht überraschen. Du startest zwar den DNS Forwarder durch, aber das Gerät selbst holt sich erst nach Ablauf des DHCP Leases neue Daten vom DHCP Server. Wenn du also dort was verändert hast um den MAC bspw. direkt einen DNS Server zu pushen, dann müsstest du schon manuell das Lease neu holen. (siehe unter Windows das übliche ipconfig /renew)

                          Muss allerdings gestehen, dass ich das Problem mit dem "Advanced" nicht ganz verstehe, bzw. warum du den Advanced Block selbst schreibst und nicht den Override Block in der GUI verwendest? Ansonsten kann man das ja recht einfach manuell testen in dem man von einem Client gegen den Forwarder der pfSense einen nslookup/dig macht und prüft, was als Ergebnis zurückkommt. Ich vermute da irgendwie einen Käfer in der Config ;) Aber das ist schwer zu debuggen wenn mans nicht selbst nachbaut :)

                          Grüße

                          Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

                          If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post
                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.