LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1017|回复: 9

难道这么多人没懂DNS的吗?

[复制链接]
发表于 2008-6-20 16:25:57 | 显示全部楼层 |阅读模式
安装平台: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 的内容:
[root@localhost named]# 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 文件为:
[root@localhost named]# 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  文件为:
[root@localhost named]# 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 文件为:
[root@localhost named]# 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.


测试各个文件:
[root@localhost named]# named-checkconf /var/named/chroot/etc/named.conf
[root@localhost named]# echo $?
0
[root@localhost named]#

检查chn 文件:
[root@localhost named]# 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文件:
[root@localhost named]# 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:
[root@localhost named]# named-checkzone chn.com chn
zone chn.com/IN: loaded serial 2008050300
OK
[root@localhost named]# named-checkzone 6.168.192.in-addr.arpa arpa
zone 6.168.192.in-addr.arpa/IN: loaded serial 2008050900
OK

重启服务:
[root@localhost named]# /etc/init.d/named restart
Stopping named:                                            [  OK  ]
Starting named:                                            [  OK  ]


用nslookup 测试:
[root@localhost named]# 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这个,检测系统自己带的文件都会有类似上面的提示,是我的系统配置有问题还是什么原因啊?
发表于 2008-6-20 22:30:03 | 显示全部楼层
  1. 2008050900;
  2. 10800;
  3. 24800;
  4. 24800;
  5. 86400 );
复制代码
这些是什么?分号能起作用么?另外你的ZONE文件里错误太多,域不一致,admin是什么?是你系统中存在的用户么?你打算用这个帐号去管理DNS?
DNS是个比较复杂的服务,需要慢慢去推敲,不能心急的。另外从你的解析来看估计resolve.conf里都没指定nameserver为你的DNS服务器地址
回复 支持 反对

使用道具 举报

发表于 2008-6-20 23:10:55 | 显示全部楼层
说句题外话,你这个标题……,让人不爽
回复 支持 反对

使用道具 举报

发表于 2008-6-21 07:23:29 | 显示全部楼层
老兄,你的chn配置文件写的不对,少了个@

$TTL    86400
@ IN SOA chn.com. root.chn.com. (
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-21 15:01:21 | 显示全部楼层
多谢各位批评与指点,由于这几天一直在搞这个东西,总是搞不定,有点恼火了,所以说的话有点过,还请见谅。我的文件是参考《楚广明24小时学通Linux》的视频做的。也看了不少书,但是按照书上写的做,问题更多。比如:我用named-checkconf 去检查安装bind后系统自己带的loclhost.zone文件,都提示$TTL 等是 “无效”的符号,我实在是不知道该怎么办了。

就按我的 有 chn.com 这个域名,要提供如下服务及各个服务器对应的IP,namd.conf文件不用多说了,要求正解文件为chn  反解文件为 arpa ,

dns.chn.com     192.168.6.53
ftp.chn.com       192.168.6.21
www.chn.com  192.168.6.80

web.chn.com 是 www.chn.com 别名,

请给出这个配置的两个文件chn 和arpa
我倒想看看我的究竟错在哪里。


此外,有的教程上说resolv.conf 文件中要设置的是dns服务器的地址,对上面的来说,应该是192.168.5.53吧,
又有的教程上(就是黑客基地的视频教程)说reslov.conf文件中应该写入的是本计算机的IP,究竟哪个对???
回复 支持 反对

使用道具 举报

发表于 2008-6-22 11:09:53 | 显示全部楼层
resolve里的确是本机的ip,你的本机不是想做成dns server么,当然通常情况下192.168.5.53应该即是提供解析的主机地址,也是你本机的IP,否则,如果该主机不存在,你的解析请求由谁接收?
另外你可以参考下鸟哥私房菜服务器篇或者去CHINA IT LAB下载LINUX服务的视频.这个东西的确比较复杂,而且是几乎所有服务的根本,最好能自己弄懂,举一反三.语法错误的话,报错信息里已经说的很详细了.仔细检查检查,反解可以先不作,慢慢来>把正解搞定先》
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-22 17:37:57 | 显示全部楼层
resolve里的确是本机的ip,你的本机不是想做成dns server么,当然通常情况下192.168.5.53应该即是提供解析的主机地址,也是你本机的IP,否则,如果该主机不存在,你的解析请求由谁接收?

在《楚广明24小时学通Linux》视频教程中,提到的是:reslov.conf 文件中的地址应该是你的DNS的服务器地址,按我的配置就应该是192.168.5.53

但是在 黑客基地 的视频教程中说的是 :  reslov.conf 文件中的地址应该是当前本机的IP,我的电脑IP为192.168.1.103
你说究竟哪个是对的??
我两种情况都试过了,都不行!!!

问题在于:我用named-checkconf 来检测从网上下载来的XXXX.zone 之类的文件,仍然出现上述的错误提示,我想知道的是:
它为什么会有这个错误!!!




多谢了,我问的已经很清楚了,不过在问之前我肯定去翻了不少书,看了视频,鸟哥书的和楚广明的视频,还有黑客基地的视频教程,之所以还问,就是看了书和视频后仍然有问题,现在又让我去看书,那还不是老样子??

我觉得与其这样说,不如直接给出一个例子文件让我看看,我问的不是原理上的问题,而是实际操作的问题至于原理,看了那么多书,再笨人也应该明白了。

最后再强调一次:我是看了书和视频后搞不定才发问的,没有看书或在网上搜索一番后不会贸然发问的。我觉得“去看书”之类的不是我要的答案,如果看书搞定了还会在这发问吗??




不过仍然感谢你们的回答!!!!
回复 支持 反对

使用道具 举报

发表于 2008-6-23 18:41:32 | 显示全部楼层
192.168.5.53这台DNS主机真实存在么?存在的话当然OK,不存在的话你的DNS请求去提交给谁?你是不是想把你的主机设成DNS服务器?那么DNS服务器地址即你的主机地址。
例子文件和那些视频都一样的,给你看个最基本的DNS配置吧
named.conf
  1. // See /usr/share/doc/bind*/sample/ for example named configuration files.
  2. //
  3. // DO NOT EDIT THIS FILE - use system-config-bind or an editor
  4. // to create named.conf - edits to this file will be lost on
  5. // caching-nameserver package upgrade.
  6. //
  7. options {
  8. //        listen-on port 53 { 127.0.0.1; };
  9. //        listen-on-v6 port 53 { ::1; };
  10.         directory         "/var/named";
  11.         dump-file         "/var/named/data/cache_dump.db";
  12.         statistics-file "/var/named/data/named_stats.txt";
  13.         memstatistics-file "/var/named/data/named_mem_stats.txt";
  14. //        query-source    port 53;       
  15. //        query-source-v6 port 53;
  16. //        allow-query     { localhost; };
  17.         allow-query        { 192.168.1.0/24; };
  18. };
  19.         include "/etc/named.rfc1912.zones";
  20. zone "tom.com" {
  21.         type master;
  22.         file "tom.com.zone";
复制代码
tom的正解zone文件
  1. $TTL 86400       
  2. @ IN SOA @ root (
  3.                         42
  4.                         10800
  5.                         3600
  6.                         640800
  7.                         21600 )
  8. tom.com.         IN NS ns.tom.com.
  9. tom.com.         IN A 192.168.0.110
  10. ns.tom.com. IN A 192.168.0.110
  11. www        IN A  192.168.0.120
  12. ftp        IN CNAME  www.tom.com.
复制代码
另外对搭建服务器真的有兴趣并且想深入的话可以加51169255这个QQ群.我是晚上一般都在线
回复 支持 反对

使用道具 举报

发表于 2008-6-23 18:46:06 | 显示全部楼层
51169255
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-6-24 22:10:58 | 显示全部楼层
多谢了,问题已经解决了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表