Linux搭建Dns服务器的过程
LINUX下DNS服务器的搭建
首先我们要搞清楚什么是DNS服务,DNS(domain name service)域名系统或者是域名服务,在如今网络高速膨胀的时代,每一个公司组织国家等都拥有自己的网站服务,大家知道上网是通过IP地址才能连接INTERNET的,我们所见到域名如www.js.aizhan.com,只不过是经过DNS处理之后把找到www.js.aizhan.com这个域名对应的 IP,然后开始向客户端发送数据,每一个网站都有自己对应的域名解析。
如果每一个网站都是以IP形式记忆,试想一下成千上万的网站地址你如何去记住每一个网站的IP,而像baidu,163这样这样 有特色的名字才更好的 记忆,要实现这个过程就需要一个 DNS服务器 的 帮忙。
系统环境:RedHat Enterprise 5
硬件环境:
512MB内存,128MB显存,AMD2800+,80G SATA。其实 Linux对 硬件环境要求没有 Windows那么高,以前的 X86系列机器也可以运行,
网络环境:网关:192.168.1.1,IP192.168.0.1。
软件环境:我安装Redhat的时候是全部安装,所以系统中有这个软件包:bind,如果你的机子上没有请到系统盘1上copy上下载。
bind-uitls: 包括 DNS 查询工具软件。
bind: 域名服务器软件。
redhat-config-bind: 域名服务器的 GUI配置工具。
caching-nameserver: 包含惟高速缓存服务器的配置文件。
DNS有好几种:主服务DNS,辅助DNS,高速缓存DNS。这里只讲主DNS,气体的配置都 差不多。
启动 DNS :#service named start
配置文件:
// 主配置文件
/etc/named.conf
// 根域名服务器指向文件
/var/named/chroot/var/named/named.ca
//localhost 区文件(可选)
/var/named/chroot/var/named/localhost.zone
/var/named/chroot/var/named/named.local
在 /etc/named.conf这个文件是和/var/named/chroot/etc/named.conf这个文件一样可以建立一个软连接:#ln /etc/named.conf /var/named/chroot/etc/named.conf
用于配置区文件
/var/named/chroot/var/named/name2ip.conf
/var/named/chroot/var/named/ip2name.conf
在/var/named/chroot/etc/named/下应该有一下三个配置文件:
named.ca named.local localhost.zone
现在开始编辑/etc/named.conf
# vi /etc/named.conf
// options {
pid-file
“/var/run/named/named.pid”;
forward only; // 只允许 forward
forwarders {
192.168.1.1; // 使用
hint 的 DNS
};
};
/var/run/named 的拥有者是 named
解释:
//pid-file
指的是每一个 services 的纪录自己的 PID的档案。可以用 #kill -1 PID 来从新启动。
//forwarders
设定去找那个合法的 DNS, 每个 forward 的主机之间 ip 都要用 ; 来结尾。
//forward only
这个设定可以让你的 DNS 主机仅进行forward 。
在/etc/named.conf添加正解反解字段。
正解:(即由域名到 IP)
zone “firm236.org” {
type master;
file “firm326.org.zone”;
};
zone是定义一个域名或IP,
type指定服务器类型.master主.slave辅助,
file后面是正解文件,该文件应该建立在/var/named/chroot/var/named/,是用户自己建立的。
注意那里需要使用分号";",不能个掉的
反解:
zone “0.168.192.in-addr.arpa” {
type master;
file “firm326.org.192.168.0”;
};
注意这里:“0.168.192.in-addr.arpa” 如果你的IP是192.168.0.1就这样些写,192.168.12.2就把 0换成12。
其他和上面一样,文件名可以自己随便取但是要对应。
在/etc/named.conf中写入该字段后,转到/var/named/chrot/var/named/下面建立这两个文件:
#touch firm.org.zone
#touch Linuxidc.com.192.168.0
然后开始编辑这两个文件,
#vi Linuxidc.com.zone // 注意后面有个“.”哦
$TTl 600
@ IN SOA Linuxidc.com. root.Linuxidc.com. (
20050105
28800
14400
72000
86400
)
@ IN NS Linuxidc.com.
@ IN MX 10 Linuxidc.com.
firm326 IN A 192.168.0.1
www IN CNAME js.aizhan.com.
解释:
$TTL 600
// 向外查询的资料可以记录在 DNS 的 cache 当中多久。后面的时
间为秒。这个值要适当。
@
// 这个就是 zone 定义那个东西,以上面的为例子,这里就代表
dgtraing.org
SOA (Start of Authority)
// 代表后面的设定要开始了。第一个为主机名,请特别留意那个
“ .” ,它代表一个完整的 dns 主机名。第二个是管理员的 e-
mail! 因为 @ 有了特殊的意义,所以这里用“ .” 分隔。()这个小括号包括 5 个数字,除了最后一个与 TTL 有关,其它的都与
slave 与 master 的资料同步运作有关。
//Serial :用来做 slave 与 master 同步的参考。
//Refresh :命令 slave 多久进行主动检查Serial 的值。
//Retry :命令 slave 多久进行主动更新的时间。
//Expire :如果 slave 一直无法与 master连上,那么经过多久之后,则命令 slave不再连master!
//Minimun :这个就类似 TTL 了。
# vi Linuxidc.com.192.168.0
$TTl 600
@ IN SOA Linuxidc.com root.Linuxidc.com. (
20050105
28800
14400
720000
86400
)
@ IN NS firm236.org.
1 IN PTR Linuxidc.com.
好,这样正解与反解你就搞定了!
现在在/etc/resolv.conf里面添加自己的DNS的 ip:
; generated by /sbin/dhclient-script
search Linuxidc.com
nameserver 192.168.1.8
nameserver 192.168.1.1
在/etc/hosts里面加入:
192.168.0.1 js.aizhan.com www
意思是:192.168.0.1对应的域名是js.aizhan.com,别名是 www
现在开始测试DNS服务器是否能够运行
[root@firm326 named]# service named restart
停止 named: [确定]
启动 named: [确定]
OK了,可以运行,现在测试是否能够解析域名
[root@firm326 named]# nslookup www.js.aizhan.com
Server: 192.168.0.1
Address: 192.168.1.8#53
www.js.aizhan.com canonical name = Linuxidc.com.
正解OK。
测试反解
[root@firm326 named]# nslookup 192.168.0.1
Server: 192.168.1.8
Address: 192.168.1.8#53
1.0.168.192.in-addr.arpa name = Linuxidc.com.
OK一切正常。
您的 DNS服务器配置成功
Linux搭建Dns服务器的过程想必大家都了解清楚了吧!爱站技术频道网站提供了大量的技术文章给大家阅读,需要的朋友可以随时关注起来以备不时之需。
下一篇:Linux设置APC的详细介绍