DNS服务器的配置

DNS,全称Domain Name System,即域名解析系统。DNS帮助用户在互联网上寻找路径。在互联网上的每一个计算机都拥有一个唯一的地址,称作IP地址(即互联网协议地址)。由于IP地址(为一串数字)不方便记忆,DNS允许用户使用一串常见的字母(即域名)取代。

DNS的作用:简单的说就是将名称如(http://www.sina.com.cnwww.baidu.com等)解析到对应的合法的ip地址上。

Hosts文件

1.               /etc/hosts  linux

2.               C:\WINDOWS\system32\drivers\etc\hosts  window

也能将域名-----ip的解析,,不过只适用于小型网络。。。

所以大型的网络要用DNS来解析。。。

1.DNS层次结构

   在DNS中采用分层结构,包括根域、顶级域、二级域及主机名称。域名空间的层次结构类似一个倒置的树,其中根作为最高级别,大树枝处于下一级别,树叶处于最低级别。。如下图:

根域13服务器11在美国,1台在日本 ,1台在欧洲。。

FQDN Fully Qualified Domain Name ,完全合格的域名。)有主机名和(DNS后缀)共同组成。。。主机名是FQDN最左端的部分。。。

2. DNS查询过程

①  Pc 发出请求 【名称】

② Pc先看自己的缓存,如果有就用,

③ Pc缓存上没有,就把请求发给DNS服务器,服务器看自己的缓存,有就发给客户机

以上三步为递归查询。如下图的(15

迭代查询时在DNS服务器之间

迭代就是你的当前DNS服务器替你去查询,然后把查询的结果返回给你的主机。如下图的(234)过程。          

所以DNS的查询过程是递归+迭代的方式

3. DNS服务器分类

①  主dns服务器     原始记录

②  辅助dns服务器   记录副本 【不能删除 改变】

③  caching-only服务器   只做缓存

④  存根服务器   

4. DNS资源记录类型(RR

① SOA :起始授权记录   包括【主dns服务器   管理员邮箱  刷新策略】的设置

② NS :  名称服务器  记录该区域的授权服务器

③ A  : 地址记录   把GQDN映射到ip地址

④ MX: 邮件交换    指上一个邮件服务器

⑤ CNAME  别名   

⑥ PTR  反向地址   把ip映射到GQDN地址

还有SRVTXTKEYNXT SIG等 

5.  DNS服务器的实现

window             dns服务 (在添加和删除windows组件中安装)

linux               bind   powerdns  mydns  动态域名  mydns-ng

Bind Berkeley Internet Name Domain)市场占有率为70%左右,所以我们就安装bind服务来实现DNS服务

6.BIND的安装

安装包有:

 1.bind   主程序即服务器端软件

 2.bind-chroot  安全 【产生额外目录】

 3.caching-nameserver  产生dns的主配置文档的样例文件,实现缓存服务器

rm  -ivh  安装包

yum  -y install  包名

DNS 运行在53端口上 其中 tcp 53 用来区域文件同步  udp 53 用来监听请求查询

主要安装目录

1.dns服务器目录         /var/named/chroot/

2.主配置文档目录         /var/named/chroot/etc

3.区域文件目录           /var/named/chroot/var/named

/var/named/chroot/etc/下有一个名为named.caching-nameserver.conf的样例文件,首先使用命令复制为named.conf    

cp -p named.caching-nameserver.conf named.conf      一定要加-p参数

关于named.conf详解

----------------

 14 options {

 15         listen-on port 53 { 127.0.0.1; };   监听DNS查询请求的本机ip地址及端口

 16         listen-on-v6 port 53 { ::1; };       15行功能一样只适用ipv6 

 17         directory       "/var/named";    指定区域文件路径(相对)

 18         dump-file       "/var/named/data/cache_dump.db"; 当执行rndc dumpdb命令时,DNS服务器存放数据库文件路径

 19         statistics-file "/var/named/data/named_stats.txt"; 当执行rndc stats命令时,服务器会将统计信息追加到的文件路径名

 20         memstatistics-file "/var/named/data/named_mem_stats.txt"; DNS服务器输出的内存使用统计文件路径名

 21 

 22         // Those options should be used carefully because they disable port

 23         // randomization

 24         // query-source    port 53;  指定客户端在提交DNS查询时必须使用的源端口   

 25         // query-source-v6 port 53;   ipv6适用

 26 

 27         allow-query     { localhost; }; 指定接受DNS查询请求的客户端

 28         allow-query-cache { localhost; };

 29 };

 30 logging {

 31         channel default_debug {

 32                 file "data/named.run";

 33                 severity dynamic;

 34         };

 35 };

 36 view localhost_resolver {

 37         match-clients      { localhost; };  指定提交DNS客户端的源ip地址范围

 38         match-destinations { localhost; };    指定提交DNS客户端的目标ip地址范围

 39         recursion yes;                    允许递归查询

 40         include "/etc/named.rfc1912.zones";    指定主配置文件(相对)

 41 }; 

还用一个重要的选项 forwarders  指定转发服务器

在主配置文件中可以有多个view

7.测试命令及检测工具

 nslookup   

 dig  linux

 host  linux

 语法检测工具

 检测主配置文档   named-checkconf   主配置文档的路径以及名字

 区域文件的检测工具   named-checkzone  域名    区域文件路径名字

 日志  /var/log/message

8实例

a.主要区域配置

b.辅助区域配置过程(降低DNS服务器的工作负载,提供一般时间的冗余)

c.委派、授权、转发区域的配置

(请下载附件)