테스트 환경은 랜선은 뽑은 상태로 로컬에서만 네임서버를 동작시키고 기존의 호스트의 ip나 CNAME을 추가 삭제하는 것입니다.
</etc/named.conf 내용>
options {
//listen-on port 53 { 127.0.0.1; };
listen-on port 53 { any; };
//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-update { 192.168.0.0/24; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
//bindkeys-file "/etc/named.iscdlv.key";
//managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "test.co.kr" IN {
type master;
allow-query { any;};
allow-update {0.0.0.0/0; }; <— 192.168.0.0/24로 해봤으나 동일
file "test.co.kr.zone";
};
</var/named/chroot/var/named/test.co.kr.zone 파일 내용>
@ IN SOA ns.test.co.kr. root.test.co.kr. (
42 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D) ; minimum
IN NS ns.test.co.kr.
IN A 192.168.0.1
ns IN A 192.168.0.1
www IN A 192.168.0.2
woo IN A 192.168.0.3
입니다.
<쿼리는 정상적 에러없이 실행되는거 같으나 실제로 zone 파일이 수정되지 않습니다.>
[root@localhost etc]# nsupdate -d
> server 127.0.0.1
> zone test.co.kr.zone
> prereq nxdomain ttt.test.co.kr
> update add ttt.test.co.kr 128 IN A 192.168.0.4
> send
Sending update to 127.0.0.1#53
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: 40623
;; flags:; ZONE: 1, PREREQ: 1, UPDATE: 1, ADDITIONAL: 0
;; ZONE SECTION:
;test.co.kr.zone. IN SOA
;; PREREQUISITE SECTION:
ttt.test.co.kr. 0 NONE ANY
;; UPDATE SECTION:
ttt.test.co.kr. 128 IN A 192.168.0.4
Reply from update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOTAUTH, id: 40623
;; flags: qr ra; ZONE: 1, PREREQ: 1, UPDATE: 1, ADDITIONAL: 0
;; ZONE SECTION:
;test.co.kr.zone. IN SOA
;; PREREQUISITE SECTION:
ttt.test.co.kr. 0 NONE ANY
;; UPDATE SECTION:
ttt.test.co.kr. 128 IN A 192.168.0.4
> quit
다른 여러 자료를 봐도 딱히 틀린게 없어 보이는데 왜 동작을 하지 않을까요?
페도라환경에서 폴더나 파일의 소유권 지정도 있어서 다 해줬는데도 그렇습니다. 제발 아시는분 답변좀 주세요.
해당 쿼리 날릴시 서버쪽에서 아래 로그가 발생합니다.
client 127.0.0.1#62385: request has invalid signature: TSIG ddns: tsig verify failure (BADSIG)
[quote="wchoule":22wcvx50]해당 쿼리 날릴시 서버쪽에서 아래 로그가 발생합니다.
client 127.0.0.1#62385: request has invalid signature: TSIG ddns: tsig verify failure (BADSIG)[/quote:22wcvx50]
해당 로그로 구글 검색하니 이런 URL이 나오네요.
아래 문서 보시고 인증 문제를 해결하셔야할것 같습니다.
(테스트 용으로 인증없이 업데이트 허용하는게 있을 수도 있을것 같지만 자세한 내용은 모르겠습니다)
http://backreference.org/2010/01/24/dns-security-tsig/