本文共 2532 字,大约阅读时间需要 8 分钟。
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 、作者信息和本声明。否则将追究法律责任。 |
这是一篇实践性的文章,如果你还不知道DNS是个什么东西和bind的一些简单知识建议还是了解一下先 首先,确认系统是否装有bind # rpm -qa|grep bind 我用的就是redhatas4u3自带的bind:bind-9.2.4-2这个版本(如果没有bind的话 就去下载一个源码包吧,具体怎么安装就不在说了 这样的文档google一下,一大把) 如果是系统自带的bind是安装在/var/named/chroot下的(chroot如果不知道的话 也去google一下吧) 下面是具体操作: # cd /var/named/chroot/etc/ //进入chroot环境下的etc目录 (建议在编辑配置文件之前先备份一下已有的配置文件!!!) # vi named.conf //编辑bind的主配置文件 // // named.conf for Red Hat caching-nameserver // options { directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; /* * If there is a firewall between you and nameservers you want * to talk to, you might need to uncomment the query-source * directive below. Previous versions of BIND always asked * questions using port 53, but BIND 8.1 uses an unprivileged * port by default. */ // query-source address * port 53; }; // // a caching only nameserver config // controls { inet 127.0.0.1 allow { localhost; } keys { rndckey; }; }; acl "telecom" { 众多电信的DNS,我就不cp过来了,实在是太多了!我在写这个的时候已经是1K多条记录了 .... .... }; view "telecom" { match-clients { TELECOM; }; zone "." { type hint; file "named.ca"; }; zone "0.0.127.IN-ADDR.ARPA" { type master; file "localhost.rev"; }; zone "test.com" { type master; file "master/telecom/test.com"; }; }; view "any" { match-clients { any; }; zone "." { type hint; file "named.ca"; }; zone "0.0.127.IN-ADDR.ARPA" { type master; file "localhost.rev"; }; zone "test.com" { type master; file "master/cnc/test.com"; }; }; include "/etc/rndc.key"; //编辑完成后保存退出 # mkdir /var/named/chroot/var/named/master/ # mkdir /var/named/chroot/var/named/master/telecom # mkdir /var/named/chroot/var/named/master/cnc # vi /var/named/chroot/var/named/master/telecom/test.com $TTL 86400 @ IN SOA ns.test.com. root.ns.test.com. ( 2005062301 ; serial 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS ns.test.com. IN MX 10 mail.test.com. www IN A 电信IP //保存退出 # vi /var/named/chroot/var/named/master/cnc/test.com $TTL 86400 @ IN SOA ns.test.com. root.ns.test.com. ( 2005062301 ; serial 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS ns.test.com. IN MX 10 mail.test.com. www IN A 网通IP //保存退出 # service named start 别忘记修改/etc/resolv.conf这个文件! # dig @IP 如果在测试dns的过程中有问题的话,我们可以根据解析的报错 来分析一下: 1)如果是服务都起不来的话 检查一下配置文件named.conf (这个文件中的{}很烦!!) 2)服务启动了,但是不能正常解析的话,一般有2种情况(我只是见到过2种) Host not found: 2(SERVFAIL) 解析结果类似这种的 一般就是解析文件找不到 检查一下文件的路径,named.conf中规定的文件路径下一定要有你的解析文件 还有一种就是 3 的(具体的语句我不记得了)这种情况 就是解析文件有问题,言外之意就是named.conf的配置与解析文件已经对应上了!但是解析时没有正确解析! |