我试图设置我的第一个BIND9 DNS服务器为一个小的本地networking,似乎无法得到它的工作。 我想创build一个max.app的“本地”域
据我可以告诉命名正在运行,但似乎没有服务我的域名logging?
service named start
返回OK,恶魔在启动时运行。
如果我尝试并ping通mac1我得到:未知的主机mac1
如果我尝试ping mac1.max.app,我得到:unknown host mac1
当我尝试nslookup时,我得到:
nslookup max.app Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: max.app Address: 67.192.47.244
正如你所看到的,我没有从我的本地绑定服务(192.168.100.10)
我的/etc/resolv.conf文件如下所示:
# Generated by NetworkManager search max.app nameserver 192.168.100.10 nameserver 8.8.8.8 nameserver 8.8.4.4
我的/etc/named.conf文件如下所示:
acl local-network { 192.168.100.0/24; }; options { listen-on port 53 { 127.0.0.1; 192.168.100.10; }; 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 { local-network; }; recursion yes; query-source address * port 53; dnssec-enable yes; dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "max.app" IN { type master; file "max.app.zone"; allow-update { none; }; }; zone "100.168.192.in-addr.arpa" IN { type master; file "max.app.rr.zone"; allow-update { none; }; };
我的/var/named/max.app.zone文件如下所示:
$ORIGIN max.app. $TTL 86400 @ IN SOA dns1.max.app. email.gmail.com. ( 2001062501 ; serial 21600 ; refresh after 6 hours 3600 ; retry after 1 hour 604800 ; expire after 1 week 86400 ) ; minimum TTL of 1 day IN NS dns1.max.app. dns1 IN A 192.168.100.10 CentOS1 IN A 192.168.100.15 CentOS2 IN A 192.168.100.25 mac1 IN A 192.168.100.50 mac2 IN A 192.168.100.55 mac3 IN A 192.168.100.60 www IN CNAME CentOS1
我的/var/named/max.app.rr.zone文件如下所示:
$ORIGIN 100.168.192.in-addr.arpa. $TTL 86400 @ IN SOA dns1.max.app. email.gmail.com. ( 2001062501 ; serial 21600 ; refresh after 6 hours 3600 ; retry after 1 hour 604800 ; expire after 1 week 86400 ) ; minimum TTL of 1 day IN NS dns1.max.app. 10 IN PTR dns1.max.app. 15 IN PTR CentOS1.max.app. 20 IN PTR CentOS2.max.app. 50 IN PTR mac1.max.app. 55 IN PTR mac1.max.app. 60 IN PTR mac1.max.app.
服务命名状态返回:
version: 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 CPUs found: 2 worker threads: 2 number of zones: 15 debug level: 0 xfers running: 0 xfers deferred: 0 soa queries in progress: 0 query logging is OFF recursive clients: 0/0/1000 tcp clients: 0/100 server is up and running named (pid 1121) is running.
这个“15个区域”似乎有点奇怪? 当我只在named.conf中定义了1个区域时
更新7/14 5:45 PM CST
好吧,我已经按照下面的build议,但事情似乎并不想工作。
添加到/ etc / sysconfig / iptables中
-A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 53 -j ACCEPT
dig @ 192.168.100.10 mac1.max.app a回报:
; <<>> DiG 9.6.0-APPLE-P2 <<>> @192.168.100.10 mac1.max.app a ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48036 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;mac1.max.app. IN A ;; ANSWER SECTION: mac1.max.app. 86400 IN A 192.168.100.15 ;; AUTHORITY SECTION: max.app. 86400 IN NS dns1.max.app. ;; ADDITIONAL SECTION: dns1.max.app. 86400 IN A 192.168.100.10 ;; Query time: 8 msec ;; SERVER: 192.168.100.10#53(192.168.100.10) ;; WHEN: Thu Jul 14 17:30:53 2011 ;; MSG SIZE rcvd: 85
dig @ 192.168.100.10 mac1.max.app ns返回
; << >> DiG 9.6.0-APPLE-P2 << >> @ 192.168.100.10 mac1.max.app ns; (find1个服务器);; 全局选项:+ cmd ;; 得到答案:;; – >> HEADER << – 操作码:QUERY,状态:NOERROR,ID:28099 ;; 旗帜:qr aa rd ra; QUERY:1,答案:0,AUTHORITY:1,ADDITIONAL:0
;; 问题部分:; mac1.max.app。 在NS
;; 授权部分:max.app。 86400在SOA dns1.max.app。 email.gmail.com。 2001062501 21600 3600 604800 86400
;; 查询时间:8毫秒;; SERVER:192.168.100.10#53(192.168.100.10);; 时间:Thu Jul 14 17:18:23 2011 ;; 味精大小rcvd:94
nslookup显示名字是在端口53上列出
tcp 0 0 dns1:53 *:* LISTEN 2880/named tcp 0 0 localhost.localdomain:53 *:* LISTEN 2880/named
一些build议:
从resolv.conf删除两个google名称服务器。 你的域名服务器失败了,但是你没有得到太多有用的信息,因为nslookup正在进入下一个域名服务器。
如果使用nslookup请使用dig 。 dig的状态响应有助于排除故障。
dig @192.168.100.10 mac1.max.app. a dig @192.168.100.10 max.app. ns
确保你检查你的日志,看看你的区域是否真的加载。
检查netstat以确保named正在监听相应接口的端口53。
你的named被configuration为在127.0.0.1和::1上侦听,但你的主机上的resolve.conf在192.168.100.10上询问尝试改变你的listen-on指令为
listen-on { 127.0.0.1; 192.168.100.10; };
另外检查你的防火墙是否允许53端口连接。我在/etc/sysconfig/iptables有以下几行来做到这一点
-A RH-Firewall-1-INPUT -p udp -m udp --dport 53 -j ACCEPT -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 53 -j ACCEPT