Bitte beachte diese Vorlage, damit wir dir bestmöglich helfen können!
Beobachtetes und erwartetes Verhalten
Moin, nutze hier Pi-hole v5.18.3, FTL v5.25.2, Web Interface v5.21 und möchte u. a. paar Onlinegame-Domains blocken. Dazu nutze ich die Funktion Add domain as wildcard:
Dennoch bleiben die Domains erreichbar . Ohne Regex wird zwar erwartungsgemäß geblockt, für jede denkbare Subdomain würde das aber einen extra Eintrag bedeuten. Was mache ich hier falsch?
Wenn nichts geblockt wird, könnte das darauf hindeuten, dass noch andere Domänen im Spiel sind, oder dass im Group Management etwas nicht richtig eingestellt ist, oder dass Pi-hole umgangen wird.
Die Add domain as wildcard-Funktion funktioniert.
Ich habe die selbe Version laufen und soeben getestet. Domain und Subdomains werden wie erwartet geblockt.
Dein beobachtetes Verhalten kommt ermutlich daher, dass
der Browser via DoH den Pi-hole umgeht
oder
die Domain zuvor schon vom Browser oder System zwischengespeichert wurde (DNS Cache) und daher nicht erneut beim Pi-hole angefragt wurde.
Um sicher zu gehen, kannst du um Query Log nachschauen, welche Anfragen eingehen und wie Pi-hole diese beantwortet:
Das zusätzliche Fragezeichen in Deinem Vorschlag bedeutet, dass die vorher stehende Gruppe ein- oder mehrmals vorkommen darf. Sie ändert damit nichts an der eigentlichen Suchvorgabe.
Versuche es doch nochmal mit der automatisch erzeugten Regex, leere die DNS-Caches im Browser und vom System und schaue dann mal ins Query Log, ob Pi-hole die Anfragen bekommen und wie es geantwortet hat
@Bucking_Horn ich glaube, du hast mich hier komplett missverstanden. Ich habe nicht geschrieben, dass die Regex (\.|^)poki\.com exklusiv nur die Strings poki.com und .poki.com matcht.
Natürlich matcht es dies auch bei www.poki.com, aber nur den Teilstring .poki.com und nicht den Teilstring www. Das sieht man auch an den Einfärbungen in deinem Screenshot.
Bei meinem Vorschlag ist der Unterschied, dass auch der Teilstring vor .poki.com gematcht wird, sprich der gesamte String.
Wenn Pi-hole zum Blocken, nur einen Domain-Substring benötigt, könnte man auch einfach folgende Regex nehmen poki\.com$. Das hat dann denselben Effekt.
Da ich aber nicht weiß, was Pi-hole genau benötigt, sprich, ob eine Teilstring ausreicht oder man den gesamten String matchen muss, kann ich auch nicht sagen, ob es mit (\.|^)poki\.com grundsätzlich funktionieren sollte. Euren Aussagen nach sollte das so sein. Ändert habe nichts daran, wie die Regex arbeiten.
Und auf meine Anmerkung, dass der von Pi-hole generierte RegEx-Ausdruck sehr wohl auch diese Beispiele findet, hast Du mir die Überprüfung bei regex101 empfohlen - welche nochmals bestätigt hat, dass der RegEx-Ausdruck matcht.
Es kommt hier nur auf den RegEx-Match an.
Pi-hole wertet den regulären Ausdruck in Bezug auf die angefragte Domäne aus.
Für eine solche zu testende Domäne liefert der reguläre Ausdruck eindeutig, ob er zutrifft (match) oder nicht (no match).
Sowohl Pi-holes als auch Dein Ausdruck matchen, aber Deiner muss dafür ggf. mehr überprüfen.
Dieser Ausdruck würde auch okipoki.com matchen, und damit zuviel.
Ich glaube da haben wir aneinander vorbeigeredet bzw. ich habe mich missverständlich ausgedrückt.
Okay, danke für die Erklärung. Mich wundert nur warum dann der ursprüngliche Ausdruck nicht blockiert, der angepasste aber. Kann es sein, dass es einfach Zufall war und ein Neuanlegen der Regeln dasselbe Ergebnis gebracht hätte?
Errata: Es sollte heißen, DoH ist nicht aktiviert.
Der Hinweis von @TheME, den DNS Cache lokal zu löschen, hat's dann gebracht. Danke! Im Sinne von Homer Simpson als an mich adressiertes Wortspiel: Doh!