DNS Server, Resolver/Forwarder und andere Geschichten
-
@mike69 die müssen inzwischen nicht mehr deutsch oder europäisch per se sein ;) Außer es sind natürlich einzelne Kisten. Aber Anycast DNS Services wie Cloudflare und andere liefern die Requests auch geographisch nahe deiner Location an die entsprechende Kiste, ansonsten hätten alle die 8.8.8.8 eingetragen haben ja endlose Laufzeiten :)
Daher auch der Hinweis, das ggf. einfach mal bei euch lokal zu messen :)
-
Danke für die Hintergrundinfos dazu!
Nur leider kommen mir nun nach genauerem Hinsehen neue Fragen zum DNS-Server auf der PFSense auf.
Ich hoffe es ist okay, wenn ich hier diese Fragen los lasse.Unter Einstellungsseite "System -> Settings -> General" findet sich unter den DNS Servern folgende Funktion:
Allow DNS server list to be overridden by DHCP/PPP on WAN die per default aktiv ist, das bedeutet meinen DNS-Server, z.B. CCC mit 194.150.168.168 würde er im Fall, wenn meine Fritzbox andere Infos im DHCP-Setting hat, mit diesen dann eben ersetzen und meine Einstellung ignorieren. Habe ich das richtig verstanden?
Auch der Punkt: Disable DNS Forwarder erschließt sich mir ncoh nciht ganz.
Hiese das, dass mein DNS Resolver nicht mehr laufen würde?Hier mal meine Resolver Settings:
Und die Option "DNS Query Forwarding" ist ja auch im default aktiv.
Was genau ist nun mit dieser Option gemeint? Bedeutet das, der Resolver läuft mit dieser aktivierten Funktion ausschließlich als Forwarder und löst selbst keine DNS Anfragen mehr auf?
Macht es dann irgendeinen anderen Unterschied (etvl. Performancegründe), weshalb ich den Forwarder und nicht den Resolver im Forwarder Modus nutzen sollte?Dies ist hier meine Testfirewall zuhause mit der ich gerade alles etwas durchteste und versuch zu verstehen. Vielleicht könnt ihr mir hier etwas Licht ins dunkele Ende durchreichen.
VG, p54
-
@p54 said in Hardcoded DNS in Apps und Endgeräten:
Allow DNS server list to be overridden by DHCP/PPP on WAN die per default aktiv ist, das bedeutet meinen DNS-Server, z.B. CCC mit 194.150.168.168 würde er im Fall, wenn meine Fritzbox andere Infos im DHCP-Setting hat, mit diesen dann eben ersetzen und meine Einstellung ignorieren. Habe ich das richtig verstanden?
Korrekt, das sagt die Einstellung aus. Wenn nichts anliegt, nutze die vorgegebenen DNS Server (damit nicht gar keine da sind), wenn dir DHCP was anderes pusht, nutze diese.
Auch der Punkt: Disable DNS Forwarder erschließt sich mir ncoh nciht ganz.
Den Punkt musst du in Gänze lesen. Er bezieht sich nur auf die pfSense selbst (/etc/resolv.conf). Es geht also nur um die lokale Namensauflösung der Sense und der Dienste darauf und ob diese die angegebenen DNS Server plus den DNS Resolver nutzen können (wobei m.W. der Resolver zuerst gefragt wird) oder eben nur die angegebenen DNS Server und der Resolver nur bei direkten Anfragen an ihn (von anderen Clients) genutzt wird.
Hiese das, dass mein DNS Resolver nicht mehr laufen würde?
Nein, das hieße ;) , dass der Resolver lokal nicht mit zur DNS Auflösung herangezogen wird. Ob der Dienst läuft und wer ihn benutzt, regelst du ganz normal über den Service, was du per DHCP an Clients rausgibst und was du intern in deinem Netz zulässt und konfigurierst.
Und die Option “DNS Query Forwarding” ist ja auch im default aktiv.
Sicher dass sie das ist? IMHO ist genau diese Option nicht per default aktiv, das würde den Sinn des Resolvers nämlich ad-absurdum führen. Der Resolver soll selbst DNS Einträge auflösen und dazu den Query nicht an Upstream Server weitergeben. Schaltet man Forwarding ein, dann wird der effektive Sinn des Resolvers unterlaufen und man nutzt nur noch einen DNS Forwarder der alles nach draußen schickt. Im Prinzip - wenn du nicht pfBlocker nutzen würdest - könntest du dann den Resolver auch ausmachen und den Forwarder (dnsmasq) anmachen, der den gleichen Zweck erfüllen würde.
Macht es dann irgendeinen anderen Unterschied (etvl. Performancegründe), weshalb ich den Forwarder und nicht den Resolver im Forwarder Modus nutzen sollte?
Völlig abhängig davon was du tun möchtest. Wenn du bspw. Anfragen per DNS-over-TLS auflösen möchtest, dann braucht man den Forwarding Mode und muss das "overTLS" entsprechend konfigurieren. Dann werden alle DNS Calls an Upstream Server verschlüsselt weitergereicht -> dort aber eben aufgelöst und zurückgeliefert. Vorteil: Jemand der zwischen dir und dem Ziel-DNS sitzt kann deine DNS Abfragen nicht mehr abschnorcheln. Nachteil: Du verlässt dich auf den Anbieter (klar), würde man dort schnüffeln wollen, könnte man die wieder ablesen.
Resolving Vorteil: du verlässt dich nicht auf 2-4 DNS Server, sondern machst den Call zum Upstream (.de, .com, whatever) und lässt dir den SOA der Zieldomain geben. Nachteil: Die initiale Nachfrage dauert länger, weil du Upstream->SOA->Request durchgehst, dafür cached dann Unbound den Request so dass alles andere dann blitzschnell und ohne Transferzeit funktioniert. Sprich die Performance ist beim ersten Hit ein wenig langsamer, bei allen weiteren dafür schneller. Ich bin mir gerade nicht sicher ob Unbound im Forwarder Modus auch cached. Das ist denkbar. Nachteil dann beim Resolver: schnüffelt jemand an deinem Anschluß/deinen ISP ab, dann sieht er von deinem Anschluß eben die DNS Requests an Gott und die Welt. Dafür können zig DNS Server ausfallen, und es macht dir nichts aus, solang es nicht die primären Server der Domain sind, die du gerade auflösen willst ;)BTW: es ist heiß, wenn ich in der Hitze des Büros jetzt was verdreht hab, korrigiert mich :)
-
Hoffendlich hat @m0nji nichts dagegen, dass wir seinen Thread missbrauchen. :)
Habe mal namebench durchlaufen lassen, Google ist 199% schneller als die sense. :) Wusste es schon immer.
-
Schade das der Thread jetzt etas für die unbound Konfiguration missbraucht wird.
@JeGr kein Widerspruch
Angeblich wird auch im Forwarding Modus gecached. Werde ich mal mit namebench gegenchecken.@p54
Wenn es dir nur um Performance geht und du recht wenige Clients hast, nutze den DNS Service als Forwarder und trage 2-4 Server unter System -> General ein.
Willst du die Kontrolle darüber behalten, wer deine Anfragen beantwortet und niemanden die Möglichkeit geben deine Anfragen auszuwerten oder sie zu manipulieren, nutze den DNS Service als Resolver.Meiner Meinung nach funktioniert der Resolver Modus noch nicht so ganz wie ich es mir wünschen würde.
Man sollte selbst beim Resolver mittel "Prefetch Support" auch abgelaufene Cache Anfragen deutlich verkürzen können, da sie im Hintergrund von der pfSense erneut aufgerufen werden und damit im Cache gehalten werden. Allerdings funktioniert das in der aktuellen Version nicht sauber. Ebenfalls unschön ist, dass nach einem Router Neustart leider die Cache Tabelle wohl gelöscht wird. Nach einem Neustart und dem Namebench Test, ist meine pfSense wieder mit Abstand der langsamste DNS Server. -
@mike69 mach den Test in 10min noch mal und morgen noch einmal. Du wirst sehen, dass dein Resolver irgendwann der schnellste ist, sobald der Cache gefüllt wird/ist.
-
@m0nji said in Hardcoded DNS in Apps und Endgeräten:
Schade das der Thread jetzt etas für die unbound Konfiguration missbraucht wird.
Dann bin ich mal raus. Danke für den Tip mit den zweiten Durchlauf.
-
@mike69 und als kurzen Tipp noch, testet mal nicht nur gegen 8.8.8.8, sondern nehmt mal spaßeshalber auch 9.9.9.9 und vor allem 1.1.1.1 mit rein. Wenn schon extern und so ;)
-
@mike69 said in Hardcoded DNS in Apps und Endgeräten:
Dann bin ich mal raus. Danke für den Tip mit den zweiten Durchlauf.
Warum denn raus? Ich splitte das Thema einfach auf, sind ja beide durchaus interessant und wichtig :)
-
@jegr said in DNS Server, Resolver/Forwarder und andere Geschichten:
@mike69 und als kurzen Tipp noch, testet mal nicht nur gegen 8.8.8.8, sondern nehmt mal spaßeshalber auch 9.9.9.9 und vor allem 1.1.1.1 mit rein. Wenn schon extern und so ;)
Sorry, muss mich nebenbei um den Garten kümmern. :)
Kann ich tuten tun.
Erstmal schauen, wo ich das ändern kann. -
Hi,
nach ein paar tests mit den namebench siehts soweit gut aus, aber nur wenn ich cloudflare nehmen möchte
@jegr said in DNS Server, Resolver/Forwarder und andere Geschichten:
Warum denn raus? Ich splitte das Thema einfach auf, sind ja beide durchaus interessant und wichtig
Sorry für meine Anfragen im falschen Thema. Aber ja, interessant auf jedenfall und da kann man sich schön spielen damit.
Danke für eure Erklärung zu den anderen Unbound/ DNS Settings, jetzt wirds langsam wieder hell ;) -
Abend zusammen,
ich hätte noch eine Frage zum DNS Logging. In wie weit lässt PFSense das Logging für den DNS Server / Resolver zu?
Ich stell mich nämlich gerade an, mir nur die DNS-Anfragen anzeigen zu lassen.Hab ihr ein paar Tipps dazu wie und wo ich hier am leichtesten suchen muss, auch gern im via terminal mit clog.
Wahrscheinlich hier: /var/log/system.log mit nem grep -E “[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.53” sollte es wohl gehen.Evtl. probiere ich es morgen einfach mal aus was mir da zum Vorschein kommt. Aber auch hier würde ich mich sehr über input von euch freuen. :)
Schönen Abend. p54
-
@p54
Reicht dir das Logging im Webinterface nicht?
Loglevel stellst du im DNS Resolver unter Advanced ein.
-
Hier ein Test im Resolver Modus kurz nach einem Neustart des Routers.
Daran sieht man schön, wenn der Cache voll läuft, ist der Resolver irgendwann der Schnellste.
-
Morgen,
@m0nji said in DNS Server, Resolver/Forwarder und andere Geschichten:
Loglevel stellst du im DNS Resolver unter Advanced ein.
ja da war es auch. Na den Punkt hatte ich nicht gleich gesehen. Danke!
VG, p54
-
Seltsam. bei 10 Durchläufen liege ich zwischen 50% und 150%. zur Nummer eins reicht es nicht.
Info an @JeGr cloudflare dominiert.
-
@mike69 said in DNS Server, Resolver/Forwarder und andere Geschichten:
Info an @JeGr cloudflare dominiert.
Nunja ich will da keine Werbung machen - auch wenns ein gratis Dienst ist - aber von allen größeren kostenlosen Anbietern hat Cloudflare 2 essentielle Vorteile. Zum einen haben sie durch ihr eigenes Geschäftsfeld schon ein riesiges CDN, so dass einen Anycast DNS anzubieten ein Klacks ist (zudem machen Sie das ja für Kunden eh schon ;) ). Zum Anderen - wie es der CEO so schön sagt - sind Kundendaten für CF eher "toxisch" als "nützlich". Sie nutzen da per se schon recht wenig und lassen sich auch regelmäßig kontrollieren im Umgang damit und dass sie nichts länger speichern als es sein muss. Wenns also einen Anbieter gerade gibt, den man statt des Resolvers nutzt, dann von der Logik her einen, der die Daten nicht "haben" will, und da hat CF IMHO einen recht guten Stand.
-
sein screenshot verrät aber eigentlich, dass er im forwarding modus arbeitet. sonst wären da wohl nicht 2 replicas zu sehen.
was nun wieder die frage stellt, wie gut ist der cache im forwarding modus, wenn man nach 10 versuchen immer noch nicht der schnellste ist.
-
Guten Abend,
@m0nji said in DNS Server, Resolver/Forwarder und andere Geschichten:
sonst wären da wohl nicht 2 replicas zu sehen.
was nun wieder die frage stellt, wie gut ist der cache im forwarding modus, wenn man nach 10 versuchen immer noch nicht der schnellste ist.bin ich wohl auch, da diese Replicas zu sehen sind. Jedoch habe ich nur 5 x den Test gemacht bis ich der schnellste war.
Aber wenn bei ihm 1.1.1.1 mit 45 ms angezeigt wird, kann es denn nicht an der Anbindung oder Cache auf der HDD liegen, evtl weil defekte Speicherbereiche vorhanden sind, oder woran errechnet sich die Leistung?
Was bedeutet da jetzt eigentlich dieses Replica?
VG, p54
-
Moin.
@m0nji said in DNS Server, Resolver/Forwarder und andere Geschichten:
sein screenshot verrät aber eigentlich, dass er im forwarding modus arbeitet. sonst wären da wohl nicht 2 replicas zu sehen.
was nun wieder die frage stellt, wie gut ist der cache im forwarding modus, wenn man nach 10 versuchen immer noch nicht der schnellste ist.
Eigendlich nicht.
/tmp und /var laufen übrigens im RAM