linux里自己安装DNS配置 的步奏和理解

来源:互联网 发布:南京 网络问政 编辑:程序博客网 时间:2024/05/17 04:51

****************************************************zc****************DNS*************************************************


[shell]# rpm -qa |grep bind

 一下是我安装好检测的信息

{

[root@localhostsbin]# rpm -qa |grep bind
bind-chroot-9.3.6-20.P1.el5_8.6
ypbind-1.19-12.el5
bind-9.3.6-20.P1.el5_8.6
bind-utils-9.3.6-20.P1.el5_8.6
bind-libs-9.3.6-20.P1.el5_8.6

}

执行命令后未返回任何信息,那么当前系统未安装 Bind DNS,那么接下来执行命令:

[shell]#yum install bind*

[shell]#yum install caching-nameserver

yum install caching-nameserver

若安装了 caching-nameserver,则域名配置文件存放在/var/named/chroot/var/named/ 下

安装完成后就需要痛苦的配置过程了(其实这样就更安全了 因为bind9之前的不稳定,所以。。)

1.安装后 通过 cd /etc   进入这个目录下后  查查有没有 如图1这几个文件软连接:(这是安装时自动默认的)

2.这个时候去去/var/named/chroot/etc/ 下  cp -p named.cacheing-nameserver.conf name.conf   因为  这几个文件是自己手动创建的(至于有人问为什么要建立软连接,因为这样稳定性更好,安全,就像上面说的bind9之前不稳定)

vim name.conf  如图:

把你对应的文件 改成我全红框这样的就行了, 至于问什么后边说。

3.这个时候 我们要去配置区域文件  (去/etc/named.rfc1912.zones 或者/var/named/chroot/etc/named.rfc1912.zones   他的软连接 改那个都一样

vim /etc/named.rfc1912.zones  

通过这个文件里原来的这个(这个是一对,localhost.zone的是正向解析,named.local是反向解析,名字可以随便写,但是后缀不能随便写注意)

通过这个再在下面写一对

“80.168.192”这个是我本地的   你的ip要是192.168.1.37的话就是“1.168.192”

这个图片 第三行 dns1  多了一个数字“1”(不好意思)

:wq

4.这个时候该生成dns.zone 和dns.local 文件了  因为没有现成的所以还是cp 两个

cd /var/named/chroot/var/named 目录下

cp -p localhost.zone  dns.zone    正向解析文件

cp -p named.local  dns.local    返向解析文件

这个时候 该ln -s 了

ln -s /var/named/chroot/var/named/dns.zon /var/named/dns.zone

ln -s /var/named/chroot/var/named/dns.local /var/named/dns.local

vim /var/named/dns.zone

{举个列子 解释上面的信息

$TTL        86400         ; 这个是DNS的清除CACHE的时间,大小的设定要根据自己的要求设置

@         IN         SOA          localhost.        root.localhost.  (
                         20060101           ;serial       这个是master与slave 的同步有关
                 28800                 ; refresh   定义出slave多久主动去检查master的serial值
                         14400                 ;retry        定义如果salve没有连上master dns主机后多久重试
                         72000                ;expire       定义如果到这个值后,salve仍然没有连上master dns主机,则放弃连接!
                         86400  )             ;minimum  这个是定义ttl值,如果没有定义ttl则会默认取这个值

}

:wq

把你复制的那个文件 改成这样的就行了   (正向解析文件 )


这个是反向解析文件  ( 这个137  就是你定义的这个域名的ip的最后一位,因为 前三位 在配置区域文件的时候已经写了“80.168.192”)

:wq

然后这些配置好了以后  还有一个配置文件要修改   vim /etc/resolv.conf

{

1.nameserver 表明DNS服务器的IP地址。可以有很多行的nameserver,每一个带一个IP地址。在查询时就按nameserver在本文件中的顺序进行,且只有当第一个nameserver没有反应时才查询下面的nameserver。
2.domain   声明主机的域名。很多程序用到它,如邮件系统;当为没有域名的主机进行DNS查询时,也要用到。如果没有域名,主机名将被使用,删除所有在第一个点( .)前面的内容。
3.search   它的多个参数指明域名查询顺序。当要查询没有域名的主机,主机将在由search声明的域中分别查找。domain和search不能共存;如果同时存在,后面出现的将会被使用。
4.sortlist  允许将得到域名结果进行特定的排序。它的参数为网络/掩码对,允许任意的排列顺序。

}

把你的文件改成这样的就行了  这个ip  根据你自己的定

   通过这个命令(


/sbin/ifconfig eth0:1 192.168.80.140 broadcast 192.168.80.255 netmask 255.255.255.0 up

/sbin/ifconfig eth0:2 192.168.80.141 broadcast 192.168.80.255 netmask 255.255.255.0 up

/sbin/ifconfig eth0:3 192.168.80.142 broadcast 192.168.80.255 netmask 255.255.255.0 up

/sbin/ifconfig eth0:4 192.168.80.143 broadcast 192.168.80.255 netmask 255.255.255.0 up

/sbin/ifconfig eth0:5 192.168.80.137 broadcast 192.168.80.255 netmask 255.255.255.0 up


这样的话就可以在一个机子上模拟多个ip了

然后:

然后:测试正向解析

然后:反向解析



通过浏览器测试  DNS  

保存后

测试一下 前提是   你的nginx.conf  文件里 必须有  www.dns.test  这个server 配置   (下面这个是我的)

/usr/local/nginx/sbin/nginx -t

/usr/local/nginx/sbin/nginx -s reload

如果要想刷新 DNS 的缓存的话  执行 /etc/rc.d/init.d/nscd stop |start|restart

**然后就是DNS  轮询 很简单。。。。

如图:

这样就行了 ,因为如果设置的缓存时间太大的话   会一时看不到效果。



最后给大家转载xie连接  参考 因为你的安装的时候可能不太顺利出现一些我可能安装的时候没有遇到的错误

http://www.linuxidc.com/Linux/2007-09/7645.htm

http://liuyonglei.blog.51cto.com/501877/148592/

http://wenku.baidu.com/view/f3646cff04a1b0717fd5dd8c.html

http://dreamfire.blog.51cto.com/418026/165730/

好了  就这些。下班了。撤。。。。