DNS的安装
1、所需系统资源 安装bind-9.2.1-16.i386.rpm及caching-nameserver-7.2-7.noarch.rpm
2、 配置文件:文件名及来源 /etc/named.conf 、/var/named/named.local、/var/named/named.ca( caching-nameserver-7.2-7.noarch.rpm )
/etc/resolv.conf 系统自带
3、安装:
A、安装rpm软件包!(bind-9.2.1-16.i386.rpm、caching-nameserver-7.2-7.noarch.rpm )
B、启动服务
/etc/rc.d/init.d/named start
service named start
C、停止服务
ps ?ef |grep named #找到进程号
kill 进程号
D、检测
修改/etc/resolv.conf
Nslookup
127.0.0.1
localhost
配置文件解析
基本上, BIND 的主要配置都放在 /etc/named.conf 文件中 !但是对于 hostname IP 的对应关系,就需要由 zone 来设定了!但是这个 zone 的文件名称是在 /etc/named.conf 里面规定的!所以,请注意,每一个 zone 的名称都是可变的,但是需要在 /etc/named.conf 里面命名好!此外,最好将 zone 的文件直接放置到 BIND 的默认目录下,就是 /var/named 里面去!这样比较好管理!
配置文件实例:
/etc/named.conf是DNS的主配置文件!
[root@wljs root]#vi /etc/named.conf
options {
directory “/var/named”; //这个是在规定『正反解文件
//放置的目录』,默认目录
};
// 首先定义出 . (root) 这个 type为hint的文件内容,一般不修改
zone “.” {//定义根
type hint; //选择的 type 为 hint (. 专用)
file “named.ca”; //默认的文件名named.ca
}; //有的时候也可能是 named.root!
//在dns数据库中,named.ca文件中列出了所有根dns服务器的地址!
// /再来则是定义出 localhost 的正反解。
zone “localhost” { //这个 zone是解析localhost域名而使用!
type master; //主要的在本机的设定文件!
file “named.localhost”; //正解文件名!可以随自己高兴随便取!
};
zone "0.0.127.in-addr.arpa" {
//反解的 IP 网段!那个 in-addr.arp
//是固定的 IP 段写法!
type master;
file “named.127.0.0”;//名称任意!
};
//注意:在书写反向地址解析时,与通常书写
//的ip地址顺序相反!
// 然后定义自己域的正反解!
zone “wljs.edu.cn" {
//假设这是你想定义的域名
type master;
file "named.wljs.edu.cn";
};
zone “162.45.210.in-addr.arpa" {
type master;
file "named.210.45.162";
};
注意 :
1、Directory:这个值就是在每一个 zone 的文件放置的目录。 举例来说,在localhost 正解zone里,文件是 named.localhost 时, 那么这个文件的路径就在 /var/named/named.localhost!
2、关于 . (root) 的内容:root 最重要的就是那个 type的值为hint 啦!记得写对喔!
3、关于 localhost 的正反解: 正反解文件的名称都可以随意设定,不过,要特别留意的就是那个 zone 后的是domain name!
4、关于其它 domain 的正反解:其实与 localhost 没有什么不同的,就只是domain name 不同而已!
5、反解的写法:反解的 Zone 的写法较为特殊,它必须要将 IP 反过来写的,例如 127.0.0.0/24 这个 C 类 的网段,要写的话,则必须要反过来写成 0.0.127 这样的形式!其中需要注意的是,最后面务必要加上in-addr.arpa!不要忘记了!
配置文件named.local
Named.local存放的是localhost的正向解析,其内容如下:
[root@localhost root]# vi /var/named/named.local
$TTL 86400
@ IN SOA localhost. root.localhost. (
2002120601; Serial
28800 ; Refresh
14400 ; Retry
720000 ;Expire
86400 ) ; Minimum
@ IN NS localhost.
localhost. IN A 127.0.0.1
注释:
1、$TTL 86400 ; 这个跟清除 cache 的时间有关系!单位是秒!它定义向外查询的记录可以在 DNS 的 cache 中维持多久!这个值太大太小都不好! ttl即time to live!
2、@ 这个表示zone 定义出的那个部分!以这个文件内容为例,因为我们在 /etc/named.conf 当中就是定义出 localhost 为一个 zone 的,因此,在这里, 这个符号就代表 localhost!
3、SOA 这个是 Start of Authority 开始设定内容的意思!也就是接在后面的设定要开始了!这个在每一个zone的文件中都存在!
4、在 SOA 后面会接着两个部分,第一个为主机名称( localhost. ),请特别留意那个 localhost 后面有个小数点 (.) 这个东西很重要!他代表『一个完整的 hostname + domain name 了』! 如果没有加上 (.) 的话,那么就表示该文字『仅为 hostname ,还需要加上 domain name 』! 这里是新手最容易出现的错误!第二个为管理员的 e-mail !因为不能使用 @ (已经是特殊符号了), 所以这里也同样的以 (.) 来取代!例如上面我以 root@localhost 来做为我的 e-mail ,所以就写成了 root.localhost. ,同样的,最后面有个 (.) !
5、小刮号 ( ) 括起了五个数字,这五个数字除了minimum与 TTL 有关之外, 其它的都跟 slave 与 master 的资料同步运作有关!
Serial :这个数字仅是用来做为 master 与 slave 之间的 update 的参考数值也就是说,当 Slave 的 serial 小于 Master 时, 那么 update 才会动作!通常我们以时间来做为 Serial 的订定依据,例如 2002 年 12 月 6 日第一次设定,可以写成 『2002120601』请注意,这个数字不可超过 10 个数字。
Refresh :slave 多久进行主动更新的时间
Retry :如果到了 Refresh 的时间,但是 slave 却无法连接到 master 时, 那么在多久之后,slave 会再次的主动尝试与主机联机;
Expire :如果 slave 一直无法与 master 连接上,那么经过多久的时间之后, 则命令 slave 不要再连接 master 了!
Minimum :这个其实就是 TTL 啦!如果您没有定义 TTL ,那么 TTL 的值就以这个来设定!
6、@ IN NS localhost. ; NS 表示 name server 的意思,后面接的都是『hostname 或 FQDN』这个表示前面的 domain 是由后面的这个主机所管理的啦! 这一行的意思是说,@ ( zone ,亦即是 localhost 这个 domain ) 管理的 Name Server 为 localhost 这部主机,请注意,那个 localhost 后面一定要接 (.) 才行!为什么呢?因为如果没有加上 (.) 的话,那么主机名称将会变成 localhost.localhost ! Why ? 这是因为 BIND 预设情况中,没有写 . 的话,那么则表示该名称为 Hostname 而已,需要再加上 domain name 才行!
7、localhost. IN A 127.0.0.1
这句指定主机与ip地址的对应关系!通常以A来表示正解;由于 Name Server 为主机的名称,所以后续还要加上这个 name server 的正解的
/var/named/named.127.0.0
/var/named/named.127.0.0文件是localhost 的反解文件!
[root@localhost named]#vi named.127.0.0
#这个文件名称是在/etc/named.conf里面设定的
$TTL 600
@ IN SOA localhost. root.localhost. ( 2002120601 ; Serial
28800 ; Refresh
14400 ; Retry
720000 ; Expire
86400 ) ; Minimum;
@ IN NS localhost.
1 IN PTR localhost. ;PTR 这是反解的符号!
;ip-主机
Named.wljs.edu.cn
$TTL 86400
@ IN SOA jsj1.wljs.edu.cn. root.wljs.edu.cn. (
2004102901 ; Serial
28800 ; Refresh
14400 ; Retry
720000 ; Expire
86400 ) ; minimum
@ IN NS jsj1.wljs.edu.cn.
@ IN MX 10 jsj1.wljs.edu.cn.
jsj1 IN A 210.45.162.14
Jsj2 IN A 210.45.162.30
Jsj1 IN TXT “Red Hat Linux 9”
www IN CNAME jsj1.wljs.edu.cn.
注释:
1、MX:Mail eXchanger (MX) 的简写,指定邮件分发服务器!指定一个代理邮件分发服务器接收从internet上来的邮件!然后再由代理邮件分发服务器将邮件分发给相应的主机!
2、TXT:说明部分!
3、CNAME:指定主机别名
$TTL 86400
@ IN SOA jsj1.edu.cn. root.jsj1.edu.cn. (
2004102901 ; Serial
28800 ; Refresh
14400 ; Retry
720000 ; Expire
86400 ) ; minimum
@ IN NS jsj1.wljs.edu.cn
IN PTR jsj1.wljs.edu.cn.
30 IN PTR jsj2.wljs.edu.cn.
主dns服务器的/var/named/named.ca文件
在dns数据库中的named.ca文件提供了根DNS服务器的地址。当一个DNS的请求超过了域的代理范围时,DNS服务器会将该请求交给根DNS。在named.ca文件中包含了根名字服务器的有关信息!
这个文件通常情况下不需修改!但是对于一个好的系统管理员,应当经常更新此文件,因为此文件中的站点会随网络的变化而变化!
测 试
配置好文件后,应当测试一下:
1、启动服务:/etc/rc.d/init.d/named start
2、修改/etc/resolv.conf文件的name server为210.45.162.14
3、nslookup
jsj1.wljs.edu.cn
jsj2.wljs.edu.cn
210.45.162.14
210.45.162.30
www.czt