%EA%B0%80%20%EC%A0%84%EB%8B%AC%EC%9D%84%20%EC%A4%91%EC%A7%80%ED%95%A9%EB%8B%88%EB%8B%A4.%20%EB%8B%A4%EC%8B%9C%20%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94%20%EA%B2%83%EC%9D%B4%20%EB%8F%84%EC%9B%80%EC%9D%B4%20%EB%90%A9%EB%8B%88%EB%8B%A4.%20%EC%99%9C%3F.png)
특정 도메인에 대한 요청을 다른 DNS 서버로 전달하도록 설정된 DNS 서버에 매우 이상한 문제가 발생했습니다. Named를 다시 시작한 후 호스트 이름을 확인할 수 있지만 잠시 후 전달 작업이 중지됩니다. 다시 시작하면 도움이 됩니다. 버전 9.8.2와 9.10을 사용해 보았지만 동일하게 작동합니다.
명명된.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, DNS가 확인을 중지하는 경우:
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
다시 시작한 후 다시 발굴하십시오.
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
무엇이 문제인지 말씀해 주시겠어요?
감사해요!
답변1
"실패"하면 실제 루트 서버에서 SOA 레코드를 얻는 것을 볼 수 있습니다. 이는 네임 서버가 일반적인 경로로 나가서 인터넷에서 답을 찾으려고 시도했음을 의미합니다.
그 이유는 전달자(172.21.2.1)가 충분히 신속하게 응답하지 않아 일반적인 방법으로 답변을 찾는 것으로 돌아갔기 때문입니다.
이를 중지하려면 forward only
영역 설명에 추가하여 이 동작을 중지해야 합니다. 기본 동작은 입니다 forward first
.
즉,
zone "video54.local" IN {
type forward;
forwarders { 172.21.2.1; };
forward only;
};