DNS服务器之配置

一、安装DNS服务器

DNS服务的安装包为bind,使用yum直接安装即可:

安装完成后,查看DNS服务相关的文件:

二、配置正向区域

1、在配置正向区域之前,先来看下主配置文件中的内容:

全局配置段

其中:

listen-on port 53:监听端口,默认是本机,即只允许本机进行DNS查询,可以使用any开放给所有用启。

direcoryt:指明正、反向解析区域的配置文件的存放路径。

dump-file、statistics-file、memstatistics-file:这三个文件为统计信息文件,可以不设置。

allow-query:定义哪些客户端可发送DNS查询请求。

recursion:开启递归查询。

logging表示定义的日志的相关信息。

zone表示区域设置,主配置文件中默认定义了根域。

include表示后面的文件是此配置文件的组成部分。

打开/etc/named.rfc1912.zone2文件,里面已经定义了许多默认的zone。

说明:我们手动添加正、反向区域时,可以直接在主配置文件(/etc/named.conf)中定义,也可以在/etc/named.rfc1912.conf文件中定义。

2、配置正向区域

1)修改主配置文件

2)添加区域记录

3)创建区域文件

格式说明: Name   [TTL]   IN     RRType    VALUE

Name:资源记录的名称。

TTL:缓存时间,可以在文件开头统一定义。

IN:固定格式。

RRType:资源记录的类型。

VALUE:资源记录所对应的值。

针对不同的资源记录,格式中各字段的内容也不尽相同:

(1)SOA

任何解析库文件的第一个库文件必须是SOA。

Name:当前区域名称,通常可以简写为@。

VALUE:通常是主DNS服务器的FQDN,也可以是当前区域的区域名称。

以上图为例,说明SOA各字段的含义:

@     IN     SOA    ns.test.com.    admin.test.com. (

serial number       ;解析库的版本号,最长不超过10位;

refresh time        ;周期性同步时长;

expire time         ;过期时长;从服务器放弃解析之前所用的时长;

negative answer ttl ;否定答案的统一缓存时长,对于没有解析到的记录的缓存时间;

)

注意:admin.test.com.是邮件地址,由于此文件中@已有特定的含义,所以使用.来代替@。

(2)NS:Name Server

Name:区域名称。

VALUE:DNS服务器的FQDN。

注意:

1、如果有多台NS服务器,每一台都必须有对应的NS记录;

2、对于正向解析文件来讲,每一个NS的FQDN都有一个A记录。

(3)MX:Mail Exchanger

Name:区域名称。

VALUE:邮件服务器的FQDN。

注意:

1、如果有多台MX服务器,每一台都必须有对应的MX记录;

2、对于正向解析文件来讲,每一MX的FQDN都有一个A记录。

(4)A:Address

Name:FQDN。

VALUE:IP。

(5)CNAME

Name:别名,新FQDN。

VALUE:原FQDN。

(6)PTR

Name:逆向的主机IP地址(不包含网络地址)加后缀.in-addr.arpa。

例如:172.16.100.7/16其name为7.100.in-addr.arpa

VALUE:FQDN。

3、启动服务

4、测试DNS服务器

下面分别使用三个工具来测试DNS服务器。

1)host

命令格式:host -t [A|NS|SOA|MX|PRT] NAME DNS服务器

2)nslookup

命令格式:

server [DNS服务器]

set type=[A|NS|SOA|MX]

<Name>

3)dig

命令格式:dig -t [A|NS|SOA|MX|AXFR] @DNS服务器

其它常用选项:

+trace:启动跟踪;

+notrace:关闭跟踪;

+recurse:启动递归;

+norecurse:关闭递归;

-x PTR:测试反向记录。

三.配置反向区域

1)添加反向区域记录

2、创建反向区域文件

3、重新加载DNS服务

4、测试DNS服务器

四、主从复制

1、网络拓扑

2、配置主、从DNS服务器

1)在主DNS服务器的配置文件中添加NS记录

        2)在从DNS服务器上安装bind。(略)

3)修改从DNS服务器的区域定义配置文件。

4)重新启动服务

5)验证

由于CentOS不允许查看从服务器的区域配置文件,所以只能通过日志来了解同步情况。

上图为从服务器的日志信息,其信息表明区域传送成功。

在DNS主目录中已经可以看到自动同步过来的区域文件,此时就可以使用从DNS服务器进行域名解析了。

五、子域授权

1、网络拓扑

2、修改主配置文件/etc/named.conf

3、在父DNS服务器的区域中添加子服务顺的信息

4、配置子域的区域定义文件

5、创建区域配置文件

6、重新加载服务

两台DNS服务器都要重新加载服务配置。

7、测试

使用父域的DNS服务器可以解析到子域的域名记录。

六、转发器

在上面的实例中,可以能过父域解析到子域的记录,那么通过子域能否解析到父域上的记录?如下图所示:

结果是解析不到的,不过我们可以通过配置转发器把test.com域的请求发送到父域DNS服务器上。

转发器的配置有两种方式:

1)配置转发区域,指明将哪个区域的请求转发到指定的服务器进行解析,如下图所示:

2)在/etc/named.conf的全局配置中指定转发,这样会把所有本地无法解析的请求都发送给指定服务器,如下图所示:

解释:

forward {only|first}

only:表示只要对指定的服务器发起递归查询,如果依然查询不到就认为请求资源无效。

first:对指定服务发起查询无果后,会继续从根服务进行的迭代查询。

七、DNS视图

1、网络拓扑

2、定义视图并创建区域文件

上图中共定义了三个视图,分别为inter、outer、other。每个视图都为特定的客户端提供解析服务,inter专门为192.168.253.0/24网络内的主机提供解析;outer专门为192.168.2.0/24网络内的主机提供解析;其它的主机全部由other视图提供服务。

每个视图中定义的相同的正向区域test.com,但是它们的区域配置文件又各不相同,如下图所示:

这些不同的配置文件保证同样的域名能够解析出不同的IP地址。

3、重新启动服务

4、验证

分别使用3台客户端解析www.test.com,得到了不同的IP地址,如下图所示:

使用view的注意事项:

1、  通常只为内网客户端提供递归功能,提供根区域等,将所有的zone全都放到view中。

2、  通常只为外网客户端提供本机所负责的区域,在view中只定义本地的zone。 

八、DNS访问控制和ACL

1、访问控制

allow-tranfer {}:允许向哪些服务器进行区域传送。

allow-query {}:接受哪些客户端发起的查询请求。

allow-update {}:是否允许动态更新A记录和PTR记录。

allow-recursion {}:允许哪些客户端进行递归查询。

recursion yes|no;:是否允许递归查询。

2、ACL

1)CentOS内置了一些ACL范围:

none:没有任何对象。

any:所有对象。

localhost:本机。

localnet:本机所在网络。

2)自定义acl:

格式:

acl ACL_NAME{

ip;

network;

};

例如:

acl test {

192.168.253.0/24;

10.0.0.0/16;

};

allow-recursion { test; };  允许ACL中定义的主机可以递归。

注意:acl通常定义在主配置文件中的option的前面。

时间: 2024-10-04 23:23:32

DNS服务器之配置的相关文章

DNS服务器之简单配置(一)

名词解释: 域名: 域名是域名系统名字空间中,从当前节点到根节点的路径上所有节点标记的点分顺序连接. 域: 域是指域名系统名字空间中的一个子集,也就是树形结构名字空间中的一颗子树.这个子树根节点的域名就是该域的名字, 域的级别: 顶级域(TLD, Top Level Domain)是指域名系统名字空间中根节点下最顶层的域.顶级域也称一级域,顶级域的下级就是二级域,二级域的下级就是三级域,以此类推.每个域都是其上级域的子域.最早的顶级域名,也是现在说的国际域名,按照用途分为的7个大类: .com:

linux下DNS服务器之视图和轮询

案例4 视图  viwer 拓扑图: 1.查看帮助 [[email protected] ~]# vim /usr/share/doc/bind-9.8.2/sample/etc/named.conf [[email protected] ~]# cd /var/named/chroot/etc 2.[[email protected] etc]# vim named.conf 添加视图: 36 view    "lan-view" 37 { 38 zone "."

DNS服务器之主从复制和子域转发(二)

主从复制: DNS服务器类型: 主服务器:区域解析库手动创建 从服务器:区域解析库不能手动创建和修改,要从主服务器同步而来 从服务器从主服务器上拉取区域解析库用完全区域传送AXFR和不完全区域传送IXFR 完全区域传送是在从DNS服务器第一次从主服务器同步是用完全区域传送AXFR 1.配置主从DNS服务器需要时间同步 crontab: */3 * * * * /usr/sbin/ntpdate  172.16.0.1 &> /dev/null 每3分钟从时间服务器同步一次时间 2.从服务器B

DNS服务的配置与验证

DNS服务的配置与验证 一.DNS的用途    DNS服务器(Domain Name System)即域名解析服务器,因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串.通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析).DNS协议运行在UDP协议之上,使用端口号53. 二.DNS服务的安装 检查是否已安装bind软件 三.DNS的配置 基于案例的配置: 案例说明: 服务器IP:     192.

CentOS下dns服务器之授权

dns授权 dns授权分为两步 1]父域dns对子域dns实现授权, 2]子域对父域 1.改变根提示,把父域dns视为根 2.转发器 dns服务器的搭建请看dns服务器搭建 一.修改父域实现对子域的授权 修改dns服务器配置文件注释最后一行 [[email protected] chroot]# vim etc/named.conf options { listen-on port 53 { any; }; listen-on-v6 port 53 { ::1; }; directory    

DNS服务器之二:从服务器的实现

DNS从服务的搭建 一.安装  [[email protected]~]# yum install bind 二.修改主配置文件  [[email protected]~]# cat /etc/named.conf 将以下三行注释掉 //               listen-on port 53 { 127.0.0.1; }; //               listen-on-v6 port 53 { ::1; }; //               allow-query     {

DNS服务器之子域授权

一.子域授权 在一个较大的生产环境中,一般还需要在公司内分多个部门,这些部门负责的域是整个公司所负责的域的子域,这时公司内除了需要主从DNS服务器彼此之间互相协调提供服务之外,还需要为每个子域授权并让各个子域分别管理各自部门的主机,以减轻公司所在域的系统管理员的负担,这就是子域授权. 假设公司内有两个部门,分别是dev和ops,对于itab.com这个域来说,需要分别为dev.itab.com和ops.itab.com这两个子域授权,而在这两个子域下还分别管理www.dev.itab.com和w

DNS服务器之bind

bind早期是有伯克利维护,后来交给了ISC进行维护,官方站点www.isc.org 在linux主机上提供可供选择的域名解析机制,在/etc/nssswitch.conf文件提供了域名解析的平台,里面可以定义多重解析域名的方法以及本主机采用优先采用哪种域名解析方法. hosts:      files dns 其中files表示优先使用本地hosts文件来解析域名 dns表示其次使用dns服务来解析域名,这两者的顺序即表示他们使用时的优先级 而在/usr/lib64目录下有以下三口库文件可以实

Kubernetes DNS 服务安装配置

Kubernetes的DNS服务是基于SkyDNS实现的,同时又需要和API Server紧密沟通,它的基本工作方式是通过API Server监视服务创建,一旦有新的服务创建就通知SkyDNS创建一条域名解析记录.沟通API Server和SkyDNS的工作都是由Kube2Sky完成的,Kube2sky和Skydns都需要使用ETCD实现共享配置和服务发现.以下是ETCD的架构图,它清晰地阐明了 Kubernetes实现DNS的方式. 关于Skydns和Kube2sky是在本地安装还是以Pod的