非权威答案:***找不到xxxxxx.yyy:无答案
Non-authoritative answer: *** Can't find xxxxxx.yyy: No answer
我在 CentOS 6 服务器上安装了 bind
,用于配置 DNS 区域以定义域。我的 /etc/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; };
recursion no;
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";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
zone "xxxxxx.yyy" IN {
type master;
file "xxxxxx.yyy.zone";
allow-update {none;};
};
我的区域配置文件 (/var/named/xxxxxx.yyy.zone
) 基于 TLDP 是:
$TTL 86400
@ IN SOA ns1.xxxxxx.yyy. root.xxxxxx.yyy. (
2014011001 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
@ IN NS ns1.xxxxxx.yyy.
@ IN NS ns2.xxxxxx.yyy.
ns1 IN A aaa.bbb.cc.ddd
ns2 IN A aaa.bbb.cc.ddd
我将域的名称服务器设置为 ns1.xxxxxx.yyy
和 ns2.xxxxxx.yyy
,我可以在 whois 上获取此名称服务器:
meysam@freedom:~$ whois xxxxxx.yyy
// blah blah blah
% Information related to 'xxxxxx.yyy'
domain: xxxxxx.yyy
ascii: xxxxxx.yyy
// blah blah blah
nserver: ns1.xxxxxx.yyy
nserver: ns2.xxxxxx.yyy
但是当我 ping 域时,它 return 未知主机错误:
meysam@freedom:~$ ping xxxxxx.yyy
ping: unknown host xxxxxx.yyy
nslookup
的输出也类似:
meysam@freedom:~$ nslookup xxxxxx.yyy
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
*** Can't find yyyyyy.xxx: No answer
有关更多信息,我附加了 dig
命令的输出:
meysam@freedom:~$ dig xxxxxx.yyy
; <<>> DiG 9.9.5-3ubuntu0.5-Ubuntu <<>> xxxxxx.yyy
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57346
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;xxxxxx.yyy. IN A
;; AUTHORITY SECTION:
xxxxxx.yyy. 6606 IN SOA ns1.xxxxxx.yyy. root.xxxxxx.yyy. 2014011001 3600 1800 604800 86400
;; Query time: 123 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Fri Dec 25 20:57:36 IRST 2015
;; MSG SIZE rcvd: 87
有什么问题吗?我该如何解决这个错误?
欢迎任何指导。
谢谢。
当 none 被定义为域的根时,您似乎正在查询 A 记录。
尝试在您的区域文件中添加一个。
@ IN A aaa.bbb.cc.ddd
首先,尝试检查您的地址是否以这种方式解析。 ns.awsdns.net
是您的名称服务器
nslookup mydomain.com ns.awsdns.net
如果域名是这样重新命名的,请按照以下步骤操作:
sudo mv /etc/resolv.conf /etc/resolv.conf_orig
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo vim /etc/resolv.conf
编辑并将此行放在 resolv.conf 中并退出(8.8.8.8 是 google DNS)
nameserver 8.8.8.8
最后,重启网络服务
sudo service networking restart
我在 CentOS 6 服务器上安装了 bind
,用于配置 DNS 区域以定义域。我的 /etc/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; };
recursion no;
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";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
zone "xxxxxx.yyy" IN {
type master;
file "xxxxxx.yyy.zone";
allow-update {none;};
};
我的区域配置文件 (/var/named/xxxxxx.yyy.zone
) 基于 TLDP 是:
$TTL 86400
@ IN SOA ns1.xxxxxx.yyy. root.xxxxxx.yyy. (
2014011001 ;Serial
3600 ;Refresh
1800 ;Retry
604800 ;Expire
86400 ;Minimum TTL
)
@ IN NS ns1.xxxxxx.yyy.
@ IN NS ns2.xxxxxx.yyy.
ns1 IN A aaa.bbb.cc.ddd
ns2 IN A aaa.bbb.cc.ddd
我将域的名称服务器设置为 ns1.xxxxxx.yyy
和 ns2.xxxxxx.yyy
,我可以在 whois 上获取此名称服务器:
meysam@freedom:~$ whois xxxxxx.yyy
// blah blah blah
% Information related to 'xxxxxx.yyy'
domain: xxxxxx.yyy
ascii: xxxxxx.yyy
// blah blah blah
nserver: ns1.xxxxxx.yyy
nserver: ns2.xxxxxx.yyy
但是当我 ping 域时,它 return 未知主机错误:
meysam@freedom:~$ ping xxxxxx.yyy
ping: unknown host xxxxxx.yyy
nslookup
的输出也类似:
meysam@freedom:~$ nslookup xxxxxx.yyy
Server: 127.0.1.1
Address: 127.0.1.1#53
Non-authoritative answer:
*** Can't find yyyyyy.xxx: No answer
有关更多信息,我附加了 dig
命令的输出:
meysam@freedom:~$ dig xxxxxx.yyy
; <<>> DiG 9.9.5-3ubuntu0.5-Ubuntu <<>> xxxxxx.yyy
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57346
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;xxxxxx.yyy. IN A
;; AUTHORITY SECTION:
xxxxxx.yyy. 6606 IN SOA ns1.xxxxxx.yyy. root.xxxxxx.yyy. 2014011001 3600 1800 604800 86400
;; Query time: 123 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Fri Dec 25 20:57:36 IRST 2015
;; MSG SIZE rcvd: 87
有什么问题吗?我该如何解决这个错误?
欢迎任何指导。 谢谢。
当 none 被定义为域的根时,您似乎正在查询 A 记录。
尝试在您的区域文件中添加一个。
@ IN A aaa.bbb.cc.ddd
首先,尝试检查您的地址是否以这种方式解析。 ns.awsdns.net
是您的名称服务器
nslookup mydomain.com ns.awsdns.net
如果域名是这样重新命名的,请按照以下步骤操作:
sudo mv /etc/resolv.conf /etc/resolv.conf_orig
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo vim /etc/resolv.conf
编辑并将此行放在 resolv.conf 中并退出(8.8.8.8 是 google DNS)
nameserver 8.8.8.8
最后,重启网络服务
sudo service networking restart