Seit einiger Zeit versuche ich mich daran, einen Raspberry als DNS-Server standalone im LAN bereit zu stellen. Also ein DNS-Server (DNSMasq) hinter dem für DHCP zuständigen Router. Das klappt auch so weit, dass alle DNS-Anfragen brav über den Pi laufen, allerdings klappte die lokale Namensauflösung nicht.

Ich gebe nach einigen Wochen nun auf und verkünde gesenkten Kopfes, ich musste statische IP-Adressen vergeben. Auf Superuser habe ich in einem alten Beitrag gelesen, was ich nicht wahr haben wollte aber für aktuell halte:

I don’t have a lot of experience with DNSMasq, but briefly reviewing the documentation - I could be wrong but it seems DNSMasq local DNS resolution works only with it’s integrated DHCP server.

Das End vom Lied sind nun statische IPs vom Router für ‘wichtige’ Hosts und die Erweiterung der /etc/hosts-File auf dem Raspberry. Ich muss gestehen, dass Netzwerk nicht meine größte Stärke ist und auch bin ich überzeugt davon, dass ich etwas übersehen oder nicht verstanden habe.

Dazu meine Frage an Euch: geht das überhaupt oder ist die Idee von grundauf Quatsch, wenn ich den DHCP extern belassen möchte?

___

/etc/dnsmasq.conf
// Never forward plain names (without a dot or domain part)
domain-needed
// Never forward addresses in the non-routed address spaces.
bogus-priv

auth-zone=192.168.X.0/24
auth-server=192.168.X.Y

server=/X.168.192.in-addr.arpa/192.168.X.Y
// dnsforge.de
server=176.9.93.198
server=176.9.1.117
// Frei-Funk München
server=5.1.66.255
server=185.150.99.255
// Quad9 Schweiz
server=9.9.9.9
//Cloudflare
server=1.1.1.1
listen-address=127.0.0.1
listen-address=192.168.X.Y
no-dhcp-interface=eth0
bind-interfaces
expand-hosts
cache-size=5000

  • elmicha@feddit.de
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    Wenn Du den DHCP-Server so einstellen kannst, dass er den DNS-Server auf dem Pi verkündet, sollte es gehen. Allerdings kann der DHCP-Server dann nicht automatisch Hostnamen auf dem DNS-Server eintragen. D.h. Du müsstest alle lokalen Namen auf dem DNS-Server manuell eintragen. Oder Du stellst den DNS-Server auf dem Pi so ein, dass er den DNS-Server des DHCP-Servers als Upstream nimmt.

    • Critical Silence@feddit.deOP
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      Ich schätze, der Router kann das nicht. Die Namensauflösung schlug auch ohne Raspberry fehl, ich nehme an, der macht DHCP und leitet alle DNS-Anfragen an den Gateway(=DNS-Server bzw. Endgerät vom ISP) weiter.

      Du müsstest alle lokalen Namen auf dem DNS-Server manuell eintragen

      Mit der Lösung, statische Adressen zu vergeben und diese im Pi einzutragen, klappt alles. Allerdings fühlt es sich schwer nach “Quick and dirty” und somit unbefriedigend an

  • saga@lemmy.world
    link
    fedilink
    Deutsch
    arrow-up
    2
    ·
    1 year ago

    AFAIK muss man den DNS mit Informationen füttern. Dieser scannt nicht das Nerzwerk nach Clients und trägt dann den entsprechenden Namen ein. Deswegen sind DHCP und DNS immer eng miteinander verknüpft, weil der DHCP dann dem DNS sagt, welche IP er an wen vergeben hat.

    Hier hat jemand das Ganze mit arp-scan gelöst DHCP with dnsmasq, Docker, and arp-scan