Hallo zusammen,
das Thema opnsense ist neu für mich und ich verliere mich gerade völlig dabei, folgendes zu erreichen:
- Ich habe eine opnsense als Router zwischen Kabelmodem und LAN installiert.
- Ich möchte lokale Ressourcen via lokalem DNS-Server auflösen und habe eine entsprechend DNS-Zone auf einer Synology eingerichtet. (+ Slave-Zone auf 2. Synology)
- Ich möchte einen netzwerkweiten Ad-Blocker nutzen und kann entweder Adguard Home oder Pi-Hole dazu verwenden
Bevor ich die Sense eingebaut haben, lief mein DHCP Server ebenfalls auf der Synology und hat den Clients die IP eines Ad-Blockers (Adguard-Home) als DNS-Server mitgegeben. In Adguard habe ich ein Conditional Forwaring der lokalen DNS-Domain Richtung lokalem Synology DNS eingerichtet und alles andere an einen Unbound geschickt. Somit war es möglich, lokale Namen aufzulösen und den Rest über Unbound abzufackeln.
Genau das klappt jetzt nicht mehr...
Mit der opnsense-Installation habe ich DHCP auf die sense verlagert und auch wieder die IP des Adgaurds an die Clients übermittelt. Leider wird - warum auch immer - ein IPv6 DNS Server verteilt, der auf die Sense selber zeigt. Den nutzen die Clients mit Vorrang und damit funktioniert die Auflösung der lokalen Domain und das Ad-Blocking nicht mehr, weil Adguard umgangen wird. Offenbar "reden" die Clients mit dem Unbound, der standardmäßig auf der Sense aktiv ist.
Ich bin mit nichts verheiratet und kann gern alles neu bauen, falls das so eine Sackgasse ist.... Was wäre ein gutes Design, um das "richtig" zu bauen? Ich finde etliche ähnliche Fragen, aber blicke echt nicht mehr durch bei den Antworten, zumal diese oft tiefe Kenntnisse zu opnsense voraussetzen.
Ich weiß, dass ist ein Expertenforum und ich bin auf Noob-Level unterwegs. Hoffe, man kann mir trotzdem helfen. Bitte killt mich nicht...
P.S.: Mit "nicht verheiratet" wollte ich zum Ausdruck bringen, das ich auch gerne ein gänzlich anderes Setup aufbaue, wenn es sinnvoller ist. "Grüne Wiese" ist also eine Option!
Ich kann dafür Docker-Container auf der Synology verwenden oder LXC-Container, bzw. VMs auf dem Proxmox Host einrichten, der auch auch die Opensense beheimatet. Ein Raspi 4 wäre ansonsten (als Fallback oder so) auch verfügbar.
Installiere doch adguard Home per opnsense plugin direkt auf der Maschine, wo auch opnsense läuft. Dafür musst du das Community Repo in der opnsense einrichten.
Den unbound der sense verlegst du auf den Port 53053 und trägst diesen als upstream DNS in adguard ein.
Die Ip der opnsense Maschine wird dann automatisch per dhcp verteilt und adguard lauscht auf allen interfaces auf DNS Anfragen das klappt auch mit ipv6.
Hallo,
wie heisst das adguard plugin den ? - weil als adguard finde ich das nichts in der Pluginliste.
AdGuard Home kann man direkt auf dem FreeBSD installieren, aber direkt auf der Betriebssystemshell. Als Plugin währe natürlich die saubere Lösung.
Ich würde auch gerne meine PiHoles in Rente schicken und das ganze direkt uaf der OPNSense laufen lassen, damit IPv6 funktioniert.
Hi,
du must das Repository von mimugmail hinzufügen. Schau mal da: https://www.routerperformance.net/opnsense-repo/ (https://www.routerperformance.net/opnsense-repo/)
Gruß
KH
Quote from: avanix on February 06, 2022, 02:59:21 PM
Installiere doch adguard Home per opnsense plugin direkt auf der Maschine, wo auch opnsense läuft. Dafür musst du das Community Repo in der opnsense einrichten.
Den unbound der sense verlegst du auf den Port 53053 und trägst diesen als upstream DNS in adguard ein.
Die Ip der opnsense Maschine wird dann automatisch per dhcp verteilt und adguard lauscht auf allen interfaces auf DNS Anfragen das klappt auch mit ipv6.
Hey, Danke für den Tipp. Das probiere ich aus. Ich hatte schon eine recht komplizierte Anleitung gefunden, bei der es jemand anders herum einrichtet (Client an Unbound, Unbound an Adguard Home, von da ins Netz)Dein Ansatz erscheint mir logischer/weniger komplex. Oder gibt es gute Gründe, es so rum einzurichten? Hier der Artikel.
https://forums.torguard.net/index.php?/topic/2545-opnsense-adguardhome-total-control-mode-doq/
Hallo @wegi,
https://forum.opnsense.org/index.php?topic=22162.0
in dem ersten Post ist eine kleine Anleitung. Ab "Setup for using AdGuard via the OPNsense community repo
" wird es interessant.
In dem ganzen Thread steht auch noch mehr drin, z.B. welche rules es alles benötigt um wirklich alles, auch hard coded DNS, über AdGuard und Unbound zu schicken. Habe dadurch mein Pi-Hole in Rente schicken können und habe nun alles gebündelt auf dem Router laufen.
Gruß Chris
Quote from: KHE on February 06, 2022, 09:07:05 PM
Hi,
du must das Repository von mimugmail hinzufügen. Schau mal da:
Ok, danke für die Infos, werde ich mir mal vornehmen.
Hey! Ich bin schwer begeistert, wie hilfsbereit das Forum ist. Danke an alle, die hier Tipps geben.
Ich habe gestern Nacht meine opnsense neu installiert und den DNSResolver im Setup-Wizard abgewählt. So kommt es schon mal nicht mehr zu dem ungewollten IPv6 DNS Server Eintrag über DHCP und mein bisheriger Adguard DNS auf der Synology erledigt das Conditional Forwarding für die lokale DNS Zone. Also ist zumindest der funktionale Stand vor Installation der Sense wieder gegeben.
Werde morgen Nacht das Projekt Adguard auf der Firewall angehen (diesmal sichere ich das System VORHER... :-X) Der "alte" Adguard DNS bleibt dann als Backup bestehen und wird als 2. DNS per DHCP verteilt.
Die Anleitung ist sehr gut - Danke dafür.
AdGuard läuft bereits bei mir auf der OPNSense und an den beiden PiHole kommen kaum noch Anfragen an.
Nur die Auflösung der lokalen Hostnamen will noch nicht so ganz, da muss ich nochmal nachsehen, ob ich was übersehen habe.
Bei mir funktioniert das leider auch nicht mit den Hostnamen. In meinem Fall vermute ich, dass es mit den Regeln zusammenhängt, um den ganzen Traffic an AdGuard zu erzwingen.
Ich habe bei mir die ganzen Clients händisch in AdGuard angelegt, nicht schön funktioniert aber.
Falls du es hinbekommen solltest, dokumentiere bitte deinen Weg hier im Thread. Wäre sehr daran interessiert.
Ich habe das Ganze nach ChrisChros Anleitung eingerichet. Läuft :-)
@Toxtom007: Habe einen lokalen DNS-Server (mit Reverse Lookup Zone) für die wichtigen lokalen Hostnamen eingerichtet... In Adguard werden die Namen korrekt angezeigt, wenn ich in Adguard unter "Settings" --> "DNS" --> "Private reverse DNS servers" eben diesen lokalen DNS Server eintrage. Vielleicht hilft dir das ja.
ach ja: Die Forward Auflösung klappt auch mit [/%domain%/]%ip_lokaler_dns-server% im Bereich Upstream DNS Servers
Fazit: Alles geklärt, alles läuft wie erhofft. DANKE!!!
HAllo,
ich habs auch nach der obigen Anleitung eingerichtet, inkl. Unbound und der FW-Regeln aber auch mit aktiven IPv6.
Die Anfragen zu lokalen Hostnamen werden werden von Adguard an Unbound weitergeleitet, aber der fragt den Internet-DNS an, sollte die aber selber beantworten auf Basis der DHCP-Daten.
Da muss ich heute abend noch mal in Ruhe nach sehen, derzeit hab ich keine Idee, was das sein kann oder vielleicht noch fehlt.
Auch wenn ich die Host in Adguard eintrage, funktioniert es nicht, vermuttlich auch wegen IPv6, weil ich ja statische IPv6 Adresse für die Clients habe, sondern DHCPv6.
EDIT ich hab noch ein weiteres Problem, bekomme die Laufwerke meiner NAS nicht mehr am MacBook gemountet, selbst dann nicht, wenn ich die IP eintrage.
Hab Adguard / Unbound gerade deaktiviert und Pihole wieder aktiviert, schon funktioniert es wieder.
Hallo,
ich glaube, es funktioniert nun bei mir
- AdGuard auf OPNSense
- Unbound auf OPNSense
- DHCPv4 und v6 aktiv
in unbound:
- "DHCP Leases registrieren" aktiviert
- "Statische DHCP Zuordnungen registrieren" aktiviert
- "Registriere IPv6 link-local Adressen" aktiviert
in Adguard:
- Upstream, Bootstrap und Private inverse DNS-Server auf 127.0.0.1:5353 ( unbound )
in OPNSense selber
- in DHCPv4/v6: kein DNS eingetragen
- System -> Einstellungen -> Allgemein: keine DNS eingetragen
- diverse VLAN sind eingerichtet
- DHCPv6: ::8000:0000:0000:0000 - ::ffff:ffff:ffff:ffff als DHCP-Pool
- Dyn. DNS: "Registrierung von DHCP-Clientnamen im DNS aktivieren" aktiviert, ohne weiteren Eintrag
- DHCPv4: .129 - .254 als DHCP-Pool, teilweise DHCP-Reservierung pro VLAN im Bereich .10 bis .128
- NAT-Regeln für Port 53 auf Adguard ( IPv4 + IPV6 ) sind zwar eingerichtet aber derzeit alle deaktiviert
auf meine Linux-Büchsen antwortet der IPv4 DNS mit v4-Adressen, auf meine MAC der v6-DNS aber auch mit v4-Adressen im lokalen Netz.
Mal sehen wie sich das nach Ablauf der Leasetime ändert, hab die PiHole gerade mal ausgeschaltet, mein TV hat schon gemeckert, musste den Waipu-Stick rebooten, damit der den neuen DNS bekommt.
Dann werde ich noch testen, was passiert, wenn ich die NAT-Regeln aktivieren oder ob die obsolet sind.
EDIT: also nslookup bekommt auch reservierte v4 Adressen zurück von Geräten, die derzeit offline sind, also funktioniert die Übertragung von DHCP zu Unbound
Quote from: Tuxtom007 on February 09, 2022, 05:10:02 PM
- Dyn. DNS: "Registrierung von DHCP-Clientnamen im DNS aktivieren" aktiviert, ohne weiteren Eintrag
Wo hast du das in OPNsense eingestellt?
Ich kann den Eintrag nirgends finden.
Quote from: ChrisChros on February 09, 2022, 05:36:50 PM
Wo hast du das in OPNsense eingestellt?
Ich kann den Eintrag nirgends finden.
im Service -> DHCPv6 ganz unten unter "Dynamisches DNS", muss du aufklappen
@Tuxtom007: Schön dass es bei dir jetzt raund läuft!
Frage: Du gibst den Clients also im Bereich Services->DHCP-v4 und DHCPv6 auf deinen Interfaces gar keinen DNS mit? Richtig? Macht es nicht aus Gründen der Redundanz Sinn, hier mindestens einen 2. DNS Server zu setzen?
Ich hab wieder den Fall, dass sich (zumindest unter Windows), obwohl ich ihn nirgendwo bewusst setze, ein DNS-Server-Eintrag mit der IPv6 Adresse der Opensense einnistet. Der wird immer bevorzugt, egal was ich per DHCP als 1. oder 2. DNS Server aktiv einsetze.
Hallo,
korrekt, unter DHCPv4/v6 ist kein DNS eingetragen, da der automatisch gesetzt wird auf die Adresse des Routers also der OPNSense.
Bei mir auf dem MAC ist auch unter DNS dann die korrekt IPv4 und IPv6 Adresse eingetragen.
IPv4 Adressen von lokalen System sind einwandfrei bisher, allerdings bekomme ich keine IPv6 Adressen zurück beim "nslookup -query=AAAA <host>
immer ein "Can't find <HOST>: No answer"
IPv6 ist noch so eine Sache
EDIT: noch mal ein kleines Update:
DHCPv6 scheint keine saubere Übermittlung der IP/Hostnamen an Unbound hin zu bekommen.
Ich bekomme immer nur IPv4 Adressen beim "nslookup" und eben nichts bei "nslookup -query=AAAA <host>" zurück.
Ist jetzt er mal nicht so tragisch, hauptsache die Auflösung der lokalen Hosts funktioniert wieder.
Aber dennoch werde ich das Thema mal tiefer analysieren wollen.
Wenn jemand eine Idee hat, immer her damit
Ich denke, das erklärt das Problem ganz gut: https://forum.opnsense.org/index.php?topic=22881.0 (https://forum.opnsense.org/index.php?topic=22881.0)