저는 Bind9 네임서버를 설정하고 모든 사람이 어떤 목적으로든 업데이트할 수 있는 개인(내부) 하위 도메인을 만들었습니다. 설정은 매우 간단하고 일반적으로 작동하지만 업데이트가 적용되기까지 최대 몇 분의 지연이 있습니다. 즉, RR을 서버에서 검색할 수 있습니다.
왜 이런 일이 발생하며 속도를 높이는 방법은 무엇입니까?
내 설정
dnsmasq
다음 구성을 실행하는 서버는 단 하나뿐입니다 .
no-poll
server=/my.fq.doma.in/127.0.0.1#5353
no-dhcp-interface=eth0,eth1,eth2,eth3
bind-interfaces
그리고 bind9
다음 구성의 네임서버(관련성이 있고 필수라고 생각되는 것만 넣었습니다):
options {
directory "/var/cache/bind";
dnssec-validation no;
dnssec-enable no;
auth-nxdomain no; # conform to RFC1035
listen-on port 5353 { 127.0.0.1; }
}
key "notsecretkey" {
algorithm hmac-md5;
secret "up_up_and_away/foobar==";
};
zone "my.fq.doma.in." {
type master;
file "/var/lib/bind/db.ZONE.mydomain";
allow-update { key notsecretkey; };
};
예
수정하고 NS RR 및 A RR을 추가했습니다.
root@dnshome:/tmp# rndc freeze my.fq.doma.in
root@dnshome:/tmp# rndc thaw my.fq.doma.in
A zone reload and thaw was started.
Check the logs to see the result.
root@dnshome:/tmp# cat /var/lib/bind/db.ZONE.mydomain
$ORIGIN .
$TTL 604800 ; 1 week
my.fq.doma.in IN SOA mydomainns.ourdoma.in. dnsmaster .ourdoma.in. (
2015033109 ; serial
604800 ; refresh (1 week)
86400 ; retry (1 day)
2419200 ; expire (4 weeks)
604800 ; minimum (1 week)
)
NS ns.my.fq.doma.in.
$ORIGIN my.fq.doma.in.
mail A 10.30.1.4
$TTL 600 ; 10 minutes
test A 2.3.4.5
abc NS ns.abc # <----- my changes
$ORIGIN abc.my.fq.doma.in. # <----- written to
ns A 172.16.1.5 # <----- the zonefile
보시다시피, freeze
및 다음 thaw
의 마지막 세 줄은 영역 파일에 기록된 변경 사항입니다.
아직,
root@dnshome:/tmp# nslookup -port=5353 ns.abc.my.fq.doma.in 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
** server can't find ns.abc.my.fq.doma.in: NXDOMAIN
화면의 영역 파일을 읽고 오류를 검색하고 감지기에서 오타가 있는지 확인했습니다. 아무것도 못찾아서 다시 검색해봤는데
root@dnshome:/tmp# nslookup -port=5353 ns.abc.my.fq.doma.in. 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
** server can't find ns.abc.my.fq.doma.in: NXDOMAIN
수납은 충분합니다. 나는 내가 추가하는 다른 RR을 계속 시도합니다.
root@dnshome:/tmp# nslookup -port=5353 -type=NS abc.my.fq.doma.in. 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
Non-authoritative answer:
abc.my.fq.doma.in nameserver = ns.abc.my.fq.doma.in.
Authoritative answers can be found from:
ns.abc.my.fq.doma.in internet address = 172.16.1.5
하지만 여전히
root@dnshome:/tmp# nslookup -port=5353 ns.abc.my.fq.doma.in. 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
** server can't find ns.abc.my.fq.doma.in: NXDOMAIN
그래서 나는 또 다른 오래된 RR을 시험해 보았습니다.
root@dnshome:/tmp# nslookup -port=5353 ns.my.fq.doma.in. 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
Name: ns.my.fq.doma.in
Address: 10.30.1.4
이게 효과가 있어서 다시 해봤는데
root@dnshome:/tmp# nslookup -port=5353 ns.abc.my.fq.doma.in. 127.0.0.1
Server: 127.0.0.1
Address: 127.0.0.1#5353
Non-authoritative answer:
Name: ns.abc.my.fq.doma.in
Address: 172.16.1.5
보라, 그것은 효과가 있었다.
나는 이 기계에서 작업하는 유일한 사람이고 이 예에 표시된 것 외에는 다른 작업을 수행하지 않습니다. 분명히 내 설정에 일종의 지연이 있는데 그 이유와 이를 제거하는 방법을 알아야 합니다.