Hallo zusammen,
das ist jetzt keine spezifische OPNsense Frage, aber es ist bestimmt ein Netzwerktechniker hier, der sich im Detail auskennt.
Mein Netz ist wie folgt aufgebaut
WAN / Internet
:
:
:
.-----+-----.
| Modem |
'-----+-----'
|
WAN | PPPoe- + DHCPv6-Einwahl
|
.-----+------.
| OPNsense +
'-----+------'
|
| Netz 1 .----------------------.
|----------------+ Name: Infrastruktur | - Hier auch Pihole drunter
| 192.168.10.1 '----------------------'
|
|
|
| Netz 2 .----------------------.
|----------------+ Name: Services | - Services die lokal und aus dem Internet erreichbar sein sollen
| 192.168.20.1 '----------------------'
| IPv6 (LLA + GUA)
|
|
| Netz 3 .----------------------.
|----------------+ Name: User | - Lokale Nutzer
| 192.168.30.1 '----------------------'
| IPv6 (LLA + GUA)
|
|
|---> Noch viele andere Netze
|
Da ich eine Internet-Adresse bei Hetzner gekauft habe, möchte ich diese im DNS Namenssystem gerne verwenden. Nennen wir diese einmal AlexanderB.de.
Fragen:
1. Kann ich, wenn lokal nach Domain gefragt wird, diese angeben?
also dass ich zu OPNsense unter Infrastruktur (oder auch den anderen Gatewayadressen) z.B. mit opnsense.alexanderb.de komme.
Und zum OpenMediavault was z.B. auf der 192.168.20.20 liegt unter Services liegt unter omv.alexanderb.de
Ist das die Standardvorgehensweise wenn man eine Domain besitzt?
Oder sollte man noch eine Subdomain hinzufügen um eine Trennung der Verbindung von außerhalb und innerhalb zu haben?
Also omv.home.AlexanderB.de -> für Verbindungen aus dem lokalen Netz
Und omv.AlexanderB.de -> für Verbindungen aus dem Internet?
Geht das, macht das Sinn? Aus Gründen der Sicherheit und Trennung?
Wie geht man da richtig vor und gibts das überhaupt was ich mir da ausgedacht habe?
Die Internetseite, von einem lokalen Wordpress-Server (192.168.20.47), soll dann mit der subdomain www.alexanderb.de erreichbar sein.
2. Wie trage ich reine IPv6 Adressen in mein lokales DNS ein? Die per SLAAC bezogene GUA ändert sich ja. Muss ich dann lokal nur die LLA eintragen und global mit DynDNS diese Adresse an Hetzner ins DNS weitergeben, damit Hetzner diese dann richtig global auflösen kann?
Dann habe ich zwei DNS Register, eins lokal im pihole und eins bei Hetzner für global. Ist das der richtige Weg, oder geht das besser?
3. Kann ich meinen pihole (192.168.10.68), allen Teilnehmern so als DNS mitteilen, oder ist der Standardweg, dass man das Gateway mitteilt und dieses leitet die Anfragen an pihole weiter?
4. Wird es Port-Konflikte geben, wenn ich Unbound in der OPNsense als Upstreamserver dem pihole mitteile? Wie konfiguriert man die Ports dann richtig?
5. Und vor allem wie geht das dann mit IPv6? mDNS hatte ich am Rande mal gehört.
6. Verstehen dann alle Dienste, wie z.B. SMB das DNS? Also reicht es dann den Namen vom OpenMediaVault-Server einzutragen?
7. Vielleicht etwas Off-Topic, aber wie erreiche ich es, dass mein Handy den Weg ins Internet über meinen pihole zu Hause macht? Sodass ich mobil auch meine Blocklisten und meine DNS Einträge, sowie mein lokales Netz erreichen kann?
Ich weiß, VPN ist dann auch notwendig und das muss ich noch angehen. Das bedeutet, das ganze DNS System muss auch unter VPN Bedingungen funktionieren.
Die Erreichbarkeit von extern, soll nur mit IPv6 ermöglicht werden, da das die einfachste Variante ohne zusätzliche Dienste ist. IPv4 ist bei mir hinter CG-NAT.
1. An sich ist es Sache Deiner Clients, wie sie nach nicht-vollqualifizierten Namen fragen. Sie können eine oder mehrere "Search Domains" an den übergebenen Namen anhängen. Das kann man im Client konfigurieren oder per DHCP übergeben. Ob Du Deinen Namensraum in Subdomains (z.B. pro VLAN / Zone) unterteilst, ist Geschmackssache.
2. Bei dynamischen Präfixen ist das schwierig. Es gibt vier Möglichkeiten:
a. Du kannst ULAs zusätzlich zu den GUAs nur für den internen Traffic nutzen - allerdings werden ULAs bei der Auflösung niedriger priorisiert als IPv4, also ist das nicht so ideal.
b. Du kannst eine Art NAT66 nutzen, bei der Du intern einen "eigentlich unbenutzten" IPv6-Präfix verwendest, und den auf die echten GUAs 1:1 zu mappen. Das ist aber ein dirty trick.
c. Du kannst mittels DynDNS alle diejenigen Clients im DNS eintragen, die Du per DNS erreichbar machen willst (das sind vielleicht gar nicht alle). Geht, ist aber aufwendig. BTW: Man kann die Eintragungen die OpnSense übernehmen lassen, weil der DynDNS-Client (dynamische) Interface-Präfixe mit einem bekannten EUI-64 Suffix verbinden kann.
d. Du verwendest intern nur IPv4, um Geräte addressierbar zu machen - das funktioniert dank NAT, weil die internen RFC1918-IPs ja konstant bleiben. Nur für bestimmte Clients, die von außen erreichbar gemacht werden sollen, verwendest Du Methode c oder besser, Du verwendest einen Reverse Proxy, der dann auch IPv4/IPv6 wandelt und verschlüsselt.
Das letzte ist i.W. der Ansatz, der hier erläutert wird: https://forum.opnsense.org/index.php?topic=45822.0 - BTW: Nicht alle Clients können überhaupt IPv6, weshalb ich im gesamten internen Netz Dual-Stack mache.
3. Ebenfalls Geschmackssache, aber wenn nur Deine OpnSense den Upstream kennt, kannst Du das zentral umswitchen bei Bedarf - wenn Du den alternativen DNS per DHCP mitteilst, musst Du auf den Renew warten (abgesehen davon gibt es ja auch statisch konfigurierte Clients).
4. Ich würde es eher umgekehrt machen und dem Unbound den Pi-Hole als Upstream nennen. Wen der als Upstream nutzt (z.B. Cloudflare o.ä.), oder ob er selbst auflöst (weiß nicht, ob Pi-Hole das kann), ist seine Sache. Natürlich darfst Du die DNS-Pakete nicht in einer Endlosschleife herumschicken.
5. Normalerweise gar nicht, denn DNS-Server können IPv4 und IPv6 auflösen. Wie der Server selbst erreicht wird, ist egal. Und per SLAAC wird nur mittels einer Extension (RDNSS), die nicht alle Clients verstehen, überhaupt der DNS-Server verteilt. Eigentlich war das nur per DHCPv6 vorgesehen.
6. Windows zaubert mit DNS sein eigenes Ding. Ich trage in der smb.conf einfach die Namen des Hosts ein, dann wird das per Broadcast bekannt gemacht. Ich habe noch nie einen SMB-Share über VLAN-Grenzen genutzt, im Zweifel müsste man das per IP (\\192.168.x.y) machen.
7. VPN of your choice, z.B. Wireguard Road Warrior Setup, siehe Dokumentation. Damit ist Dein VPN-Client ja "wie zuhause".