Linux实践工程师学习笔记二十六

DNS服务器
安装BIND
1.去http://www.isc.org下载最新版本,如bind-9.3.2.tar.gz
2.编译安装
#tar zxvf bind-9.3.2.tar.gz
#cd bind-9.3.2
#./configure --sysconfdir=/etc             配置文件放在/etc
#make
#make install
rpm包安装,程序放在/usr/sbin目录下,默认编译安装程序放在/usr/local目录下,编译安装需手工创建主配置文件
#vi /etc/named.conf
编译时,注意大括号前后需有空格,光盘有一个叫caching-nameserver的软件包,装完后会自动复制一份默认的一些配置文件。这里我们都是手工创建
option {
              directory “/var/named”;         指定服务器工作目录
};
zone “.” {                                          根区,服务器必须知道如何查找根,因为这里没有根服务器的数据库。                  type hint;                             所以定义为hint,链接到根的数据库,并指定链拉文件
              file “name.ca”;
};
 
#mkdir /var/named
named.ca用来保存根域服务器的地址,但现在不知道根域服务器地址到底是多少。下面演示如何查找根服务器地址产生named.ca文件:
首先我们找一个可用的DNS IP,利用此DNS查找根地址。
#echo “nameserver 192.58.128.30” > /etc/resolv.conf
#dig -t NS .           (dig是一个挖掘DNS记录的工具)
       -t 指定类型为NS,即查找根DNS记录,查找后的结果:左边是根的域,右边是根服务器的主机名
#dig -t NS . > /var/named/named.ca
有了根服务器后,这台DNS服务器就可启动了。
 
用RNDC控制服务器
1.产生rndc控制文件
#rndc-confgen >/etc/rndc.conf
#tail +13 /etc/rndc.conf >>/etc/named.conf
将配置文件13行起到结尾的内容追加到named.conf
2.启动named服务器,监视/var/log/messages
#named
#tail /var/log/messages
如有错误,根据提示解决,例如RPM包安装可能会提示无法打开/var/run/named/named.pid
可以用root用户删除/var/run/named目录,再重建一个。
3.测试rndc和解析效果
#rndc status
#echo “nameserver 127.0.0.1” > /etc/resolv.conf
第一次解析主机后将信息存入缓存,以后再解析时就很快,只要有了根区就可以查到整个互联网。
 
host,dig都是通过DNS查询,对于一台服务器来说,我们自己的应用环境总有一台叫localhost的主机,默认情况下localhost的主机总是在hosts文件定义,为取代hosts文件,需要把localhost加进DNS服务器,任何一台有网络的主机都 会有一个回环设备地址,回环设备地址没有相应的主机名,很多服务都 会起不来。
添加localhost域
#vi /etc/named.conf 添加
zone “localhost” {                              区名叫localhost
                     type master;                  表示这是主域服务器,数据库是自己维护的,不需要其他人管理
                     file “named.local”;         数据库文件(区文件)位置
};
编缉/var/named/named.local
@ 1D IN SOA            localhost. root (
                                          2006081201编号更新一次自己加1,当发生改变时,会通知其他域名服务器更新数据库
                                          1H                 多少时间刷新其他DNS的数据库记录
                                          15M               主向从DNS服务器发送信息出现错误,会隔15分钟再重试
                                          1W                如果重试还有错,一星期后过期
                                          1D )               缓存保存时间,默认为1天
              IN   NS          @                         指定这个域的DNS服务器
              IN   A            127.0.0.1               指定DNS服务器的IP地址
 
在这个文件里必须指定这个文件所服务的域的范围,到底为哪个域服务,第一个字段,一般是域名或主机名,@表示当前的域名,就是前面zone后面的那句”localhost”,localhost将作为一个变量传递给named.local文件
第二个字段,表示域类型,IN为互联网类型
第三个字段,记录类型,任何区文件里都有一条SOA记录。还有其他记录类型,如NS域名服务器,A地址,接着后面是当前域的域名和管理者信息,管理者信息是一个邮箱地址,上面使用了缩写,全写应该是root.localhost.
注意不能用@,因为前面说过了,这是表示当前域名,并且最后是以点结束。
小括号前后要有空格,小括号包括的是整个域的管理信息。
localhost. IN NS localhost.           表示localhost. 域的DNS服务器为localhost
localhost. IN A 127.0.0.1              表示localhost主机IP地址为127.0.0.1
主机名,域名要以点结尾,表示结束。相同记录可省略某个字段
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值