NEWS
[Gelöst] Viele DNS-Anfragen
-
Hallo,
ich habe festgestellt, dass der ioBroker ca. 3500 DNS-Anfragen pro Minute sendet.
Das scheint mir ein bischen viel.Oder ist das normal?
Wenn ich den ioBroker abschalte (iob stop) hört das auf, außerdem läuft der aktuell exklusiv auf dem Raspi.
Ist das die Summe der Adapter oder ist das ein einzelner, der da Streß macht?
Danke für Info!
-
@andreas-5 wenn du siehst das da so viele Anfragen raus gehen, siehst du dann nicht auch wohin sie gehen?
Diese Information dürfte Wesentlich sein um Heraus zu finden woher das kommt.
-
@jey-cee sagte in Viele DNS-Anfragen:
@andreas-5 wenn du siehst das da so viele Anfragen raus gehen, siehst du dann nicht auch wohin sie gehen?
Diese Information dürfte Wesentlich sein um Heraus zu finden woher das kommt.
Nein, bisher sehe ich nur am Pi-Hole, dass es so viele DNS-Anfragen gibt.
Da ich Pi-Hole gerade erst aufgesetzt habe, als Ad-Blocker halt, habe ich mich noch nicht damit beschäftigt, wie ich denn jetzt mehr Informationen dazu bekomme, wozu diese Anfragen da sind.
Die können ja sowohl für intern, als auch extern sein. -
aber du kannst doch herausfinden, wer da was so oft fragt
der große auschlag war z.b ein dsl ausfall
wenn du aber weißt, dass es der iob ist, dann stoppe doch mal ein paar instanzen oder auch mal die javascript instanz
wie sieht den dein pihole dashboard aus ?
-
das ist einfach
iobroker taucht bei dir ja wahrscheinlich in der tabelle top clients auf
dem dashboard auf.
dann klickst du einfach auf den namen und dann kommt das query log gefiltert
nach diesem clientdie auswertung meines querylogs für den iobroker der letzten 30 tage ergab:
andere anfragen des clients aus meinen skripten, welche ich kannte hab ich schon einmal ausgefiltert.
das grundproblem ist, das node selbst kein dns-caching macht und daher jede https-addresse immer aufgelöst wird. browser hingegen fragen nur immer wieder mal ab.
https://httptoolkit.tech/blog/configuring-nodejs-dns/für eigene skripte könnte man das optimieren, in dem man bspw eine bibliothek nimmt, welche das chaching schon mitbringt
https://www.npmjs.com/package/axios-cached-dns-resolve
die request bibliothek hat leider keine möglichkeit das mit zu aktivieren
https://github.com/psf/requests/issues/1453es gibt auch noch für systemd-systeme die möglichkeit einen lokalen dns cache zu aktivieren.
https://geekflare.com/linux-server-local-dns-caching/
allerdings habe ich das nicht getestetbei caching spart man sich pro externer dns-abfrage ca 10-50ms. das fällt bei nicht zeitkritischen abfragen, welche nicht sehr häufig vorkommen nicht sehr ins gewicht.
bei externen abfragen kann man das umgehen, in dem man direkt die ip-adresse angibt, welche ja nicht mehr aufgelöst werden muss.
netzinterne abfragen erfolgen meist unterhalb 1ms. da muss man mE gar nix machen.das was jetzt hier kommt gehört eigentlich zum link bei request, aber das forum fügt es halt am ende ein.
-
wer eigene auswertungen machen möchte, kann sich von pihole
das querylog in csv exportieren lassen. Allerdings können diese sehr groß werdenhier der export befehl, ausgeführt im pihole verzeichnis, eingegrenzt für eine bestimmte ipadresse für die letzten 30 tage
sqlite3 pihole-FTL.db -header -csv "Select * from queries where client = \"192.168.1.85\" and timestamp > strftime('%s','now','-30 days');" > data.csv
-
@liv-in-sky sagte in Viele DNS-Anfragen:
wenn du aber weißt, dass es der iob ist, dann stoppe doch mal ein paar instanzen oder auch mal die javascript instanz
Das es der ioBroker ist, habe ich schon festgestellt. Wenn ich ioBroker stoppe, hört das auf.
Instanzen zu stoppen ist der nächste Schritt. Da werde ich schon etwas finden, wenn es nicht einfach die Summe aller Instanzen ist. -
@oliverio sagte in Viele DNS-Anfragen:
das ist einfach
Sehr ausführliche Antwort, danke, da werde ich mich dann die nächsten Tage einmal durchwühlen.
Bei Pi-Hole stehe ich noch ganz am Anfang, aber wie ich sehe, bietet es mir eine Menge Möglichkeiten. -
@oliverio sagte in Viele DNS-Anfragen:
das ist einfach
iobroker taucht bei dir ja wahrscheinlich in der tabelle top clients auf
dem dashboard auf.
dann klickst du einfach auf den namen und dann kommt das query log gefiltert
nach diesem clientWenn ich da auf den Client klicke, wird zwar die Seite mit dem Querylog angezeigt und es erscheint eine Weile lang "Processing ...", danach bekomme ich aber eine Fehlermeldung "An unknown error occurred while loading the data".
Bei anderen Clients funktioniert das.
Bei den Top Clients hat der ioBroker 516392 Requests stehen, der nächste Client 1956, der Dritte 1556 und der nächste ist schon dreistellig.
Wie ich schon schrieb, ist das Pi-Hole noch ganz frisch und ich muss mich ein bischen damit beschäftigen.Ich habe aber inzwischen einmal alle Adapter, inkl. Web und Admin abgeschaltet gehabt, da war es dann ca. 1/3 der DNS-Anfragen.
Ich forsche weiter. -
ich hatte ja oben geschrieben, das javascript/node generell viel dns erzeugt-
das war mir bis dahin auch ubekannt.beim fehler zur anzeige der daten des clients in pihole:
da kannst du mal unter long-term data schauen und eine kürzere zeitspanne wählen und dann deinen client wählen.
die meisten anfragen dürften sich ja täglich wiederholen.
da kannst du auch schon eine Verteilung sehen.wie ich oben geschrieben habe
grundsätzlich ist die hohe zahl von dns abfragen kein problem.
eher ein schönheitsproblem. lösen könntest du es höchstens für eigene skripte
oder über einen lokalen resolver, der cached, aber keine ahnung wie das im zusammenspiel mit pihile läuft -
@oliverio sagte in Viele DNS-Anfragen:
da kannst du mal unter long-term data schauen und eine kürzere zeitspanne wählen und dann deinen client wählen.
die meisten anfragen dürften sich ja täglich wiederholen.
da kannst du auch schon eine Verteilung sehen.Ok, da bekomme ich eine Anzeige, die mich gerade auch nicht schlauer macht, da da nur A und AAAA als Hinweis steht.
Aber da hatte ich auch keine Hoffnung, dass ich da mehr herausbekomme, weil es ja "nur" DNS-Anfragen sind.wie ich oben geschrieben habe
grundsätzlich ist die hohe zahl von dns abfragen kein problem.Habe ich auch nicht so gesehen, nur ist der ioBroker der einzige Teilnehmer im Netz, der so viele Anfragen sendet.
Deshalb war ja auch meine Frage am Anfang, ob das normal ist und die ist jetzt, denke ich, beantwortet. Darum setze ich den Thread jetzt auf "gelöst". (Oder "Beantwortet"? War ja eine Frage.)