Dnsmasq domain override

balombi

Cadet 2nd Year
Registriert
Okt. 2021
Beiträge
31
Hallo zusammen,

im Webinterface der OPNsense gibt es eine Domain-Override-Funktion für Dnsmasq.

IMG_0421.jpeg


Wie lautet die Syntax, wenn ich einen Domain-Override-Eintrag direkt in der Dnsmasq-Konfigurationsdatei auf einem Pi-hole erstellen möchte ?

Durch den Domain-Override erhalte ich bei einem NS-Lookup für z.B. client1.testdomain.local die dazugehörige IP-Adresse (z.B. 192.168.0.6), obwohl der DNS-Server meines LAN's diese Domain bzw. diesen Hostnamen nicht kennt. Wenn ich jetzt allerdings ein NS-Lookup auf die IP-Adresse mache (192.168.0.6) erhalte ich nicht den Hostnamen client1 zurück, da mein DNS-Server die IP-Adresse nicht findet/kennt.

Kann ich irgendwie erreichen, dass auch die Auflösung IP-Adresse zu Hostname klappt ?


Vielen Dank für Eure Hilfe.

balombi
 
Lösung
Vielen Dank für die Tipps :).

Ich habe mittlerweile auch die Syntax herausgefunden, diese würde für das oben genannte Beispiel wie folgt lauten:

server=/testdomain.local/192.168.0.1

Für die Reverse-Abfrage wäre es dann folgender:

server=/0.168.192.in-addr.arpa/192.168.0.1
Ich nutze auch OPNsense und Pi-Hole. Dabei habe ich die festen lokalen Hostnamen/IPs in Pi-Hole im Webinterface unter "Local DNS > DNS Records" eingetragen. Damit funktioniert auch ein nslookup, um mir den Hostnamen zu einer IP auszugeben.

In dieser Einstellung in Pi-Hole findest du auch die Reihenfolge, wie Pi-Hole die DNS-Einträge berücksichtigt...

1707546939261.png
 
  • Gefällt mir
Reaktionen: GTrash81
Für die IP ist override einer Reverszone nötig.
In deinem Fall müsste der override bei Domain "6.0.168.192.in-addr.arpa." lauten und als Ziel muss "client1.testdomain.local." gesetzt werden, wenn nötig Typ "PTR".
Ich weiß nicht ob dnsmasq so etwas beherrscht, kann sein dass override nur mit Typ "A" oder "AAAA"
funktioniert.
 
Vielen Dank für die Tipps :).

Ich habe mittlerweile auch die Syntax herausgefunden, diese würde für das oben genannte Beispiel wie folgt lauten:

server=/testdomain.local/192.168.0.1

Für die Reverse-Abfrage wäre es dann folgender:

server=/0.168.192.in-addr.arpa/192.168.0.1
 
  • Gefällt mir
Reaktionen: GTrash81 und BFF
Ich hatte mich kurzgefasst, da ich am Handy getippt hatte. Mal "kurz" eine "längere" Erklärung.

Wie im Wiki-Artikel geschildert ist, wird .local für mDNS genutzt. D.h. die Geräte im Netzwerk sind nicht eingerichtet und geben sich selbst eine Adresse.

Die Grundregel bei lokalen Domains ist:
  • Hast du eine öffentliche Domain, dann verwende auch die für das lokale Subnetz.
  • Hast du keine öffentliche Domain, dann verwende eine TLD, die es nach Möglichkeit nicht öffentlich gibt. Dann musst du im DNS-Server eine SOA definieren.

    In DNSMasq machst du das mit (Domainbsp: mytld):
    Code:
    auth-server=dns.mytld
    listen-address=192.168.1.50,127.0.0.1,fd00::1234:4567:fd00:5ac,::1
    auth-zone=mytld,192.168.1.0/24
    #- Serial,Hostmaster,Refresh,Retry,Expiry -#
    auth-soa=42,ich@du.de,86400,900,86400
    domain=mytld,192.168.1.0/24,local
 
Zurück
Oben