Ich habe ein sehr seltsames Problem mit meinem DNS-Server, der so eingerichtet ist, dass er Anfragen für eine bestimmte Domäne an einen anderen DNS-Server weiterleitet. Nach dem Neustart von named kann ich Hostnamen auflösen, aber nach einiger Zeit funktioniert die Weiterleitung nicht mehr. Ein weiterer Neustart hilft. Ich habe die Versionen 9.8.2 und 9.10 ausprobiert – es funktioniert genauso.
named.conf:
options {
#listen-on port 53 { 127.0.0.1; };
#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-query { any; };
allow-query-cache { any; };
allow-transfer { any; };
allow-recursion { any; };
recursion yes;
dnssec-enable no;
dnssec-validation no;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
zone "video54.local" IN {
type forward;
forwarders { 172.21.2.1; };
};
zone "idc.local" IN {
type master;
file "dynamic/idc.local.db";
allow-update { key "idc.local."; };
};
dig, wenn DNS nicht mehr aufgelöst wird:
dig @127.0.0.1 idc-git.video54.local
; <<>> DiG 9.10.0-RedHat-9.10.0-0.el6 <<>> @127.0.0.1 idc-git.video54.local
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 21317
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;idc-git.video54.local. IN A
;; AUTHORITY SECTION:
. 10374 IN SOA a.root-servers.net. nstld.verisign-grs.com. 2014072100 1800 900 604800 86400
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Jul 21 12:44:38 IDT 2014
;; MSG SIZE rcvd: 125
nochmal graben, nach Neustart:
dig @127.0.0.1 idc-git.video54.local
; <<>> DiG 9.10.0-RedHat-9.10.0-0.el6 <<>> @127.0.0.1 idc-git.video54.local
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 55990
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;idc-git.video54.local. IN A
;; ANSWER SECTION:
idc-git.video54.local. 3600 IN A 172.21.3.33
;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Jul 21 12:44:56 IDT 2014
;; MSG SIZE rcvd: 66
Können Sie mir bitte sagen, was los ist?
Danke!
Antwort1
Wenn es „fehlschlägt“, können Sie sehen, dass Sie einen SOA-Eintrag von einem echten Root-Server erhalten. Das bedeutet, dass Ihr Nameserver den üblichen Pfad verlassen und versucht hat, die Antwort im Internet zu finden.
Der Grund dafür ist, dass Ihr Forwarder (172.21.2.1) nicht schnell genug geantwortet hat und daher auf die normale Art und Weise nach der Antwort suchen musste.
Um dies zu verhindern, müssen Sie forward only
Ihrer Zonenanweisung Folgendes hinzufügen, um dieses Verhalten zu verhindern. Das Standardverhalten ist forward first
.
Dh,
zone "video54.local" IN {
type forward;
forwarders { 172.21.2.1; };
forward only;
};