1、软件安装,命令如下:
yum install -y bind bind-utils
其中/etc/named.conf为DNS主配置文件
/usr/lib/systemd/system/named.service为DNS服务控制单元
2、编辑配置文件/etc/named.conf
要配置DNS服务器,需修改配置文件/etc/named.conf。如果不存在则创建该文件
本示例实现的功能是抢建一个域名服务器ns.oa.com,位于192.168.19.101,其他的主机
可以通过域名服务器解析到已经注册的以“oa.com”结尾的域名。配置如下:
Name.conf配置文件中的配置项非常多,部分如下:
options: 是全局服务器的配置的选项,即在options中指定的参数,对配置中的任何域都有效,
如在服务器上要配置多个域如test1.com t test2.com, 在option中指定的选项对这些都生效。
listen-on port: DNS服务实际是一监听在本机53端口的TCP服务程序。该选项用于指定域名服务的
网络接口,如监听在本机IP上或127.0.0.1.此处"any" 表示接收所有主机的连接。
directory:指定 named 从/var/named 目录下读取DNS数据文件,这个目录用户可自行指定并创建,
指定后所有的DNS数据文件都存放在此目录下,注意目录下的文件所属的组应为named,
否则,域名服务无法读取数据。
dump-file:当执行导出命令时将DNS服务器的缓存数据存储到指定的文件 中。
statistics-file:指定 named 服务的统计文件,当执行统计命令时,会将内存中的统计信息追加到该文件中。
allow-query:允许那些客户端可以访问DNS服务,此处 " any " 表示任意主机。
zone:每一个 zone就是定义一个域的相关信息及指定了named服务从哪些文件中获得DNS各个域名的
数据的文件
3、编辑DNS数据文件/var/named/oa.com.zone
该文件为DNS数据文件,可以配置每个域名指向的实际IP, 此文件可通过复制目录/var/named中的
named.localhost获得模板,配置内容如下:
其中:
TTL:表示域名缓存周期字段,指定该资源文件中的信息存放在DNS缓存服务器的时间,此处设置为3600秒,
表示超过3600秒则DNS缓存服务器重新获取该域名的信息,
@:表示本域,SOA描述了一个授权区域,如有oa.com的域名请求将到 ns.oa.com域查找,root表示接收信息
的邮箱,此处为本地的root用户。
serial:表示该区域文件的版本号,当区域文件中的数据改变时,这个数值将要改变,从服务器在一定时间以后
请求主服务器的SOA记录,并将该序列号值与缓存中的SOA记录的序列号相比较,如果数据变了,从服务器
将重新拉取主服务器的数据信息.
refresh:指定了从域名服务器将要检查主域名服务器的SOA记录的时间间隔,单位为秒。
retry:指定了从域名服务器的一个请求或一个区域刷新刷新后,从服务器重新与主服务器联系的时间间隔(s),
expire:指在指定的时间内,如果从服务器还不能联系到主服务器,从服务器将丢失所有的区域数据
Minimum:如果没有明确指定TTL的值,则minimum表示域名默认的缓存周期。
A:表示主机记录,用于将一个主机名与一个或一组IP地址相对应。
NS:一条NS记录指向一个给定区域的主域名服务器,以及包含该服务器主机名的资源记录。
CNAME:用来将一个域名和该域名的别名相关联,访问域名的别名和访问域名的原始名字将解析到同样的主机地址。
备注:默认权限可能会阻止bind 访问oa.com.zone文件,因由root用户使用命令chgrp named oa.com.zone修改文件所属的用户组;
DNS服务测试
DNS服务端部署过多后,客户端需要做一定的设置才能访问域名服务器,步骤如下:
1、配置/etc/resolv.conf
如需正确地解析域名,客户端需要设置DNS服务器地址,DNS服务器地址修改如下:
2、域名测试
域名测试可以使用ping、nslookup或dig命令,测试如下
如有上述显示则说明bbs.oa.com成功解析到192.168.19.102。