Ich habe meine Bind9-Konfiguration:
acl allowed {
192.168.12.0/24;
10.10.0.0/24;
};
options {
listen-on port 53 { 127.0.0.1; 192.168.12.90; 10.10.0.21; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-notify { localnets; };
allow-query { none; };
allow-recursion { allowed; };
allow-query-cache { allowed; };
allow-transfer { 192.168.12.117; };
allow-update { none; };
blackhole { none; };
forward only;
forwarders {
192.168.12.4;
};
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
Mit dieser Konfiguration habe ich es Clients erlaubt, rekursive Abfragen zu stellen, die Bind durch Weiterleitung an einen anderen DNS-Server auflösen soll. Ich führe eine Ablaufverfolgung durch:
dig @192.168.12.90 wikipedia.org +trace
Get: Es wird eine lange Ablaufverfolgung ausgegeben, die unten Folgendes enthält:
wikipedia.org. 600 IN A 91.198.174.192
;; Received 86 bytes from 208.80.154.238#53(ns0.wikimedia.org) in 140 ms
Es ist offensichtlich, dass der lokale DNS-Server rekursive Abfragen von den Stammservern bis hinunter zu ns0.wikimedia durchführt, um die Auflösung vorzunehmen, obwohl ihm befohlen wurde, nur Abfragen weiterzuleiten (forward only;
Richtlinie).
Wie könnte man bei der reinen Weiterleitung bleiben, ohne dem DNS-Server rekursive Abfragen zu gestatten?
Danke.
Antwort1
Laut dig
Handbuch:
+[keine]Spur- Schaltet die Verfolgung des Delegationspfads von den Stamm-Nameservern für den gesuchten Namen ein und aus. Die Verfolgung ist standardmäßig deaktiviert. Wenn die Verfolgung aktiviert ist,dig führt iterative Abfragen durch, um den gesuchten Namen aufzulösen. Es folgt den Verweisen von den Stammservern und zeigt die Antwort von jedem Server an, der zum Auflösen der Suche verwendet wurde.
Um zu überprüfen, ob Ihr Server rekursive Abfragen unterstützt oder nicht, führen Sie einfach Folgendes aus:
#dig @192.168.12.90 wikipedia.org
und prüfen Sie, ob das RA-Bit (Recursion Available) im Antwortheader gesetzt ist.
zB für Google DNS-Server
#dig @8.8.8.8 wikipedia.org
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1