So sieht die Meldung aus
$ dig example.com @ns1.example.net
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 41873
;; WARNING: recursion requested but not availableHäufige Ursachen
- Die Domain zeigt (NS-Einträge beim Registrar) auf einen Nameserver, der die Zone nicht hostet. Das ist eine „Lame Delegation“, typisch nach einer DNS-Migration oder einem gekündigten Hosting.
- Du hast einen rekursiven Resolver von außerhalb seines erlaubten Netzes gefragt, z. B. das Büro-DNS aus dem Internet.
- Eine Zugriffsliste (
allow-query,allow-recursion) oder eine Firewall-Regel sperrt deine Adresse. - Die Zone ist auf dem Server nicht geladen oder ließ sich nicht laden, z. B. wegen eines Syntaxfehlers.
- Zonentransfers (AXFR) zwischen Nameservern werden abgelehnt. Das ist für unbekannte Hosts normal und gewollt.
Prüfen
- Welche Nameserver nutzt die Domain?
- Antwortet jeder von ihnen für die Zone? (Namen ersetzen)
dig @ns1.example.net example.com SOA +norecurse - Der gesamte Delegationsweg
dig +trace example.com - Antwortet dein eigener Resolver?
dig example.com A +short
Lösung
- Antwortet ein autoritativer Server für deine Zone mit REFUSED, die Zone dort anlegen oder laden oder den Server aus den NS-Einträgen beim Registrar entfernen.
- Nach einem Anbieterwechsel die NS-Einträge beim Registrar nur auf den neuen Anbieter setzen und die alte Zone aktiv lassen, bis die alte TTL abgelaufen ist.
- Ist es dein eigener Resolver, deine Clients freigeben, z. B. in BIND
allow-recursion { 192.0.2.0/24; };. Rekursion nicht für das ganze Internet öffnen, sie wird für Verstärkungsangriffe missbraucht. - Auf dem Server das Log nach Fehlern beim Laden der Zone lesen (
journalctl -u namedoder-u bind9) undnamed-checkzoneauf die Zonendatei anwenden. - Vom betroffenen Client mit
digdirekt gegen den Server erneut testen.
Häufige Fragen
Was ist der Unterschied zwischen REFUSED, SERVFAIL und NXDOMAIN?
NXDOMAIN: Der Name existiert nicht. SERVFAIL: Der Server hat es versucht und ist gescheitert. REFUSED: Der Server antwortet dir gar nicht.
Warum lehnt nur einer meiner Nameserver ab?
Meist existiert die Zone auf dem einen, auf dem anderen nicht. Resolver wählen pro Anfrage einen Nameserver, der Fehler tritt also nur ab und zu auf.