3、DNS服务器功能(正向、反向解析)
实验目的:
建立gr.org域的主名称服务器。解析:
名称 IP 用途
ns.gr.org 192.168.170.3 名称服务器
www.gr.org 192.168. 170.3 正规名
bbs.gr.org 192.168. 170.3 别名
mail.gr.org 192.168. 170.4 邮件服务器
下面蓝色的字体都为解释,不用写;红色字母为命令
正向解析:域名解析为IP地址
一、创建 gr.org域名(正向区域)
cat >> /etc/named.conf (在原文件后面附加信息,
或者直接vi /etc/named.conf ,修改该文件,在最后一行之前插入)
zone "gr.org" IN { //( 定义gr.org区域,域名为gr.org )
type master; //( 区域的类型为主域名,辅助域类型是slaves )
file "gr.org.db"; //( 区域数据库文件的文件名,记录区域的相关记录)
allow-update { none; }; //( 允许此IP或客户端进行更新 )
};
vi /etc/named.conf (查看如下,对照有没错)
二、创建 正向区域数据库文件 /var/named/gr.org.db
cat > /var/named/gr.org.db
$TTL 86400 // 服务的TTL值,即生命周期,单位为秒,故为一天的存活期
@ IN SOA ns.gr.org. root.gr.org.( // 设置区域的起始授权记录(SOA),
//其中@表示域名(gr.org), ns.gr.org.表示起始授权机构,即DNS服务器
//的IP地址, root.gr.org. 表示管理员邮箱为:root@gr.org )
20140308 ;serial //序列号,内容发生更改时加1,用于辅助域名服务器更新
8H ;refresh //每8小时刷新记录,而辅助域名服务器发出更新请求
4M ;retry //辅助域名服务器联系主域名服务器失败时,每隔4分钟重发
//更新请求
1W ;expiry //若辅助域名服务器1周内无法联系主域名服务器,记录失效
1D ) ;minimum //TTL的最小值,1天
@ IN NS ns.gr.org. //域名服务器记录(NS),对应的主机为域名
@ IN MX 10 mail.gr.org. //邮件交换记录(MX)
bbs IN CNAME www.gr.org. //别名记录(CNAME),bbs.gr.org为www.gr.org的别名
ns IN A 192.168.170.3 //主机记录(A)将域名解析为IP地址
www IN A 192.168.170.3
mail IN A 192.168.170.4
vi /var/named/gr.org.db(查看如下,对照有没错,也可以这样创建)
注意下面的有颜色开头的行都要顶格写,否则会出错,不识别。
到这里就配置好了,重启或启动BIND服务,让其生效就行。又因为/etc/init.d/named 为BIND服务的启动、停止脚本,故重启或启动named。
三、重启或启动BIND服务
先查看named是否已启动:
[root@www root]# ps -ax | grep named
3496 ? S 0:01 [named] (这个说明启动了)
5054 pts/0 S 0:00 grep named
如果同上面启动了,就 rndc reload (重启服务)
因为用 service named start 或者 service named restart
都是提示 named 已经在运行
如果没有就直接 service named start (启动服务)
四、在客户端设置 域名服务器的地址
在本机或者其他机器(只要能ping通),设置刚才域名服务器的地址
[root@www root]# vi /etc/resolv.conf
search localdomain
nameserver 192.168.170.3
如果是Windows客户端测试,先禁用本地连接(因为是连接虚拟机里面的,不让其访问互联网的),设置VMNet8(这里要看你的DNS服务器处于那个子网来决定)的DNS为192.168.170.3。如下图:
五、 开始测试正向解析
nslookup -sil mail.gr.org
nslookup -sil ns.gr.org
nslookup -sil www.gr.org
nslookup -sil bbs.gr.org
(测试这几个就可以了)
Linux端(本机)
Linux端(192.168.155.3远程端)
(注意如果出错,提示;; connection timed out; no servers could be reached
就可能是gate的防火墙的拦截,去gate输入 service iptables stop 关闭防火墙
再试下nslookup -sil bbs.gr.org
)
Windows端
cmd,打开命令行,输入 ping bbs.gr.org
至此正向解析完成,下面开始反向解析
六、反向解析:(IP地址解析为域名)
1、创建 192.168.170.0/24反向区域域名(注意里面的IP反写)
cat >> /etc/named.conf
zone "170.168.192.in-addr.arpa" IN{
type master;
file "170.168.192.db";
};
或者[root@www root]# vi /etc/named.conf(方便查看对错)
2、创建 反向区域数据库文件 /var/named/170.168.192.db
[root@www root]# cat > /var/named/170.168.192.db
$TTL 86400
@ IN SOA ns.gr.org. root.gr.org.(
20140308 ;serial
8H ;refresh
4M ;retry
1W ;expiry
1D ) ;minimum
IN NS ns.gr.org.
3 IN PTR ns.gr.org.
3 IN PTR www.gr.org.
4 IN PTR mail.gr.org.
(这里表示指针记录(PTR),将IP地址解析成域名。如 192.168.170.4 解析为 mail.gr.org. )
3、重启或启动BIND服务
因为之前已经启动了,所以 rndc reload 重启BIND服务就行
[root@www root]# rndc reload
没提示就成功了
4、在客户端设置 域名服务器的地址
参考上面的 四、在客户端设置 域名服务器的地址
其实上面都做了
5、开始测试反向解析
nslookup -sil 192.168.170.3
nslookup -sil 192.168.170.4
(测试这几个就可以了)
Linux端(本机)
Linux端(192.168.155.3远程端)
(注意如果出错,提示;; connection timed out; no servers could be reached
就可能是gate的防火墙的拦截,去gate输入 service iptables stop 关闭防火墙)