내 DNS 서버의 경우 "dig ... @ip-address"는 작동하지만 "dig ... @domainname"은 작동하지 않습니다.

내 DNS 서버의 경우 "dig ... @ip-address"는 작동하지만 "dig ... @domainname"은 작동하지 않습니다.

최근에 서버 가상화를 시작했습니다. 그 중 하나는 Debian 7에서 BIND 9를 실행하는 DNS 서버입니다. 내 DHCP 서버는 이를 네트워크의 기본 DNS로 올바르게 발급하지만 사용하려고 하면 다음 오류가 발생합니다.dig kilraine.lan @dns.kilraine.lan

couldn't get address for 'dns.kilraine.lan': not found

.dig kilraine.lan @192.168.1.2

세부:

데비안 7에서는 BIND 9; Proxmox를 통한 가상화된 CT.

Zone 파일(개인정보를 숨길 수 있도록 이메일이 변경되었습니다.)

; BIND data file for kilraine zone
;
$TTL    604800
@       IN      SOA     kilraine.lan. myaddress.myemail.com. (
                     2014060303         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL

        IN      A       192.168.1.2
;
@       IN      NS      dns.kilraine.lan
@       IN      A       192.168.1.2

dns2    IN      A       192.168.1.1
dns     IN      A       192.168.1.2
dhcp    IN      A       192.168.1.3
main    IN     A      192.168.1.10

리버스 존 파일

;
; BIND reverse data file for kilraine.lan
;
$TTL    604800
@       IN      SOA     kilraine.lan. myaddress.myemail.com. (
                     3006201401         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      dns.
1       IN      PTR     dns2.kilraine.lan
2       IN      PTR     dns.kilraine.lan
3       IN      PTR     dhcp.kilraine.lan
10      IN      PTR     main.kilraine.lan

마지막으로 내 명명된.conf.local 파일입니다.

//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
// include "/etc/bind/zones.rfc1918";

zone "kilraine.lan" {
        type master;
        file "/etc/bind/db.kilraine.lan";
};

zone "1.168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/db.192";
};

나는 BIND 9를 여러 번 다시 시작했고 항상 "OK"를 받았습니다. 서버와 클라이언트 모두에서 dnsutils 도구 'dig'를 사용했는데 각각 다음을 반환합니다.

    ; <<>> DiG 9.8.4-rpz2+rl005.12-P1 <<>> kilraine.lan
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 46467
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;kilraine.lan.          IN  A

;; Query time: 2 msec
;; SERVER: 192.168.1.2#53(192.168.1.2)
;; WHEN: Mon Jun 30 21:53:41 2014
;; MSG SIZE  rcvd: 30

답변1

역방향 기록에서 일부 마침표가 누락되었습니다. "kilraine.lan."으로 끝나야 하며, 그 반대는 "kilraine.lan"입니다. 또한 NS 레코드는 "dns.kilraine.lan"이어야 합니다. 그 반대 "dns." 또는 "dns.kilraine.lan". 종료 기간을 중단하면 본질적으로 BIND에 영역 이름을 추가하도록 요청하는 것입니다(즉, dns.kilraine.lan.kilraine.lan으로 끝납니다).

기타 질문/의견/생각:

  • 변경 후 서비스를 다시 시작했습니까(또는 영역을 다시 로드했습니까)?
  • 확인자가 DNS 서버를 가리키고 있나요?
  • BIND가 포트 53에서 수신 대기하고 있습니까? 서버에 DNS 서비스에 대한 액세스 시도를 차단하는 호스트 방화벽이 있습니까?
  • "dig main.kilraine.lan"은 "dig @192.168.1.1 main.kilraine.com"과 다른 것을 반환합니까?
  • 서비스를 다시 시작한 후 로그 타일을 살펴보셨나요?

관련 정보