急急急------Fedora8上運行DNS的問題
named.conf 文件里有這幾行:
zone "test.com" IN {
type master;
file "test";
allow-update { none; };
};
在test文件中內容為:
$TTL 86400
test.com. IN SOA test.com. admin.test.com. (
2006061200;
10800;
3600;
604800;
38400 );
test.com. IN NS dns.test.com.
dns.test.com. IN A 192.168.5.55
www.test.com. IN A 192.168.5.80
ftp.test.com. IN A 192.168.5.21
mail.test.com. IN A 192.168.5.23
named-checkzone test test 時提示:
test:2: ignoring out-of-zone data (test.com)
test:9: ignoring out-of-zone data (test.com)
test:11: ignoring out-of-zone data (dns.test.com)
test:12: ignoring out-of-zone data (www.test.com)
test:13: ignoring out-of-zone data (ftp.test.com)
test:14: ignoring out-of-zone data (mail.test.com)
zone test/IN: has 0 SOA records
zone test/IN: has no NS records
它提示沒有SOA和NS記錄,但是我錯在哪了?我文件里也寫了呀,究竟怎麼回事嘛?請高手指點指點啊!!!!
《解決方案》
$TTL 86400
$ORIGIN test.com.
@ IN SOA test.com. admin.test.com. (
2006061200;
10800;
3600;
604800;
38400 );
@ IN NS dns.test.com.
dns IN A 192.168.5.55
www IN A 192.168.5.80
ftp IN A 192.168.5.21
mail IN A 192.168.5.23
《解決方案》
原帖由 llzqq 於 2008-6-19 18:14 發表 http://bbs.chinaunix.net/images/common/back.gif
$TTL 86400
$ORIGIN test.com.
@ IN SOA test.com. admin.test.com. (
2006061200;
10800;
3600;
604800;
38400 );
@ IN NS dns.test.com.
dns IN A 192.168.5.55
www IN A 192.168 ...
上面紅色的部分應該可以省略吧
藍色文字的部分 一般都是用的
@ IN SOA test.com. root.test.com.
這種方式吧,為什麼這裡的root變成admin 了呢
《解決方案》
上面紅色的部分應該可以省略吧
藍色文字的部分 一般都是用的
@ IN SOA test.com. root.test.com.
這種方式吧,為什麼這裡的root變成admin 了呢---->
$ORIGIN test.com. 中$ORIGIN後面跟一個域名,表示自此之後,所有不以"."結尾的名字後面都會加上這個新的起點。即以下都是解析這個域(test.com).
而在"@ IN SOA test.com. admin.test.com. "應該改為"@ IN SOA pcserver.test.com. admin.test.com. 這句中
SOA:表示授權開始
IN表示後面的數據使用的是INTERNET標準。
@則代表相應的域名,如在這裡代表test.com(你在named.conf中定義的 Zone "test.com"),即表示一個域名記錄定義的開始。而 pcserver.test.com則是這個域的主域名伺服器,而admin.test.com則是管理員的郵件地址(你一樣可以寫成root或其它的也是可以的).但你一定不能寫成"root@test.com." ,因為@在這裡表示這個域.的意思)。注意這是郵件地址中用.來代替常見的郵件地址中的@.而SOA表示授權的開始 @:
由於@已經表示了TEST.COM,所以在這裡$ORIGIN test.com.是可以省的.但你可以通過這個語句來對其它域名解析來進行起行.
$ORIGIN test.com.cn.
ABC IN A 192.168.14.90
dbc IN A 192.168.14.91
那麼,後邊面兩就不再是test.com域中的了,而是test.com.cn域中的,全域名就是abc.test.com.cn和DBC.TEST.COM.CN.
pcuserver:是指安裝DNS這台服務伺服器主機名-hostname.
[ 本帖最後由 windychan 於 2008-6-20 01:59 編輯 ]
《解決方案》
試試下面這個:
/usr/local/sbin/named-checkzone test.com test
《解決方案》
感謝 windychan 的解答,呵呵
《解決方案》
感謝各位,但是還有問題
安裝平台:Fedora 8
所用軟體:
bind-9.5.0-16.a6.fc8.i386.rpm
bind-libs-9.5.0-16.a6.fc8.i386.rpm
bind-chroot-9.5.0-16.a6.fc8.i386.rpm
bind-utils-9.5.0-16.a6.fc8.i386.rpm
/etc/resolv.conf 的內容:
# cat /etc/resolv.conf
search chn.com
nameserver 192.168.6.53
nameserver 202.203.132.1
nameserver 202.203.132.100
/var/named/chroot/etc/named.conf 文件為:
# cat /etc/named.conf
options {
listen-on port 53 { 127.0.0.1; };
directory "/var/named";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "chn.com" IN {
type master;
file "chn";
allow-update{ none; };
};
zone "6.168.192.in-addr.arpa" IN {
type master;
file "arpa";
allow-update { none; };
};
include "/etc/named.rfc1912.zones";
/var/named/chroot/var/named/chn 文件為:
# cat chn
$TTL 86400
chn.com. IN SOA dns.chn.com. admin.chn.com. (
2008050300;
10800;
3600;
38400;
86400 );
chn.com. IN NS dns.chn.com.
dns.chn.com. IN A 192.168.6.53
www.chn.com. IN A 192.168.6.80
ftp.chn.com. IN A 192.168.6.21
mail.chn.com. IN A 192.168.6.23
/var/named/chroot/var/named/arpa 文件為:
# cat arpa
$TTL 86400
6.168.192.in-addr.arpa. IN SOA dns.chn.com. amdin.chn.com. (
2008050900;
10800;
24800;
24800;
86400 );
6.168.192.in-addr.arpa. IN NS dns.chn.com.
53.6.168.192.in-addr.arpa. IN PTR dns.chn.com.
80.6.168.192.in-addr.arpa. IN PTR www.chn.com.
21.6.168.192.in-addr.arpa. IN PTR ftp.chn.com.
23.6.168.192.in-addr.arpa. IN PTR mail.chn.com.
測試各個文件:
# named-checkconf /var/named/chroot/etc/named.conf
# echo $?
0
#
檢查chn 文件:
# named-checkconf chn
chn:1: unknown option '$TTL'
chn:4: unknown option '10800'
chn:5: unknown option '3600'
chn:6: unknown option '38400'
chn:7: unknown option '86400'
chn:9: unknown option 'chn.com.'
chn:14: unexpected token near end of file
檢查arpa文件:
# named-checkconf arpa
arpa:1: unknown option '$TTL'
arpa:4: unknown option '10800'
arpa:5: unknown option '24800'
arpa:6: unknown option '24800'
arpa:7: unknown option '86400'
arpa:9: unknown option '6.168.192.in-addr.arpa.'
arpa:14: unexpected token near end of file
檢查zone:
# named-checkzone chn.com chn
zone chn.com/IN: loaded serial 2008050300
OK
# named-checkzone 6.168.192.in-addr.arpa arpa
zone 6.168.192.in-addr.arpa/IN: loaded serial 2008050900
OK
重啟服務:
# /etc/init.d/named restart
Stopping named: [ OK ]
Starting named: [ OK ]
用nslookup 測試:
# nslookup
> www.chn.com
Server: 202.203.132.1
Address: 202.203.132.1#53
Non-authoritative answer:
www.chn.com canonical name = chn.com.
Name: chn.com
Address: 146.145.114.131
> ftp.chn.com
Server: 202.203.132.1
Address: 202.203.132.1#53
Non-authoritative answer:
Name: ftp.chn.com
Address: 146.145.114.131
>
究竟怎麼回事,人都快整瘋了,尤其是named-checkconf這個,檢測系統自己帶的文件都會有類似上面的提示,是我的系統配置有問題還是什麼原因啊?
[ 本帖最後由 allinster 於 2008-6-20 16:22 編輯 ]
《解決方案》
建議用調試模式啟動NAMED進程,那裡配置錯誤一目了然:
# named -u named -gc /path/named.conf