目录
安装DNS服务
前言:
为自己网搭建一台主DNS服务器,使得自己网用户能够通过域名访问自己网内的所有服务器
搭建主域名服务器,下面案例假设所负责的DNS域为你的名字全拼.com,要求为以下服务提供正向解析,
工具:RHEL/CentOS 虚拟机一台
步骤1:新建文件并挂载
我这里新建文件名为1830226 ,并挂载
步骤2: 安装 bind
yum方法安装bind,使用安装命令: yum install bind -y
配置DNS服务
步骤1: 配置DNS服务器IP地址
我这里配置DNS服务器网卡的IP地址为192.168.2.26
步骤2:编辑全局配置文件
编辑全局配置文件——vi/etc/named.conf
修改其中2个地方(见下页红色下划线处)
步骤3:配置区域
配置区域——/etc/named.rfc1912.zones
vi /etc/named.rfc1912.zones
在文件named.rfc1912.zones
尾部增加以下部分:
zone “你的中文名的全拼.com” IN { //指明要增加的DNS域的名称
type master; //指明增加的为DNS的主要区域
file “你的中文名的全拼.com.zone”; // 设置该主要区域的区域配置文件名,该文件用于实现正向域名解析
allow-update { none; }; //设置该DNS不允许动态更新
};
zone “bh. 168.192.in-addr.arpa" IN { //指明该区域为反向查找区域
type master; //指明该反向查找区域为主要区域
file “bh. 168.192.in-addr.arpa .zone"; //设置该反向查找区域的区域配置文件名
allow-update { none; }; //设置该DNS不允许动态更新
};
使用 `named-checkconf `命令检查全局配置文件!
步骤4:编辑正向解析区域文件
# cp -p /var/named/named.localhost /var/named/你的中文名的全拼.com.zone
# vi /var/named/你的中文名的全拼.com.zone
$TTL 1D
@ IN SOA 你的中文名的全拼.com. root.你的中文名的全拼.com (
学号 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.你的中文名的全拼.com.
@ IN MX 5 mail.你的中文名的全拼.com.
dns IN A 192.168.bh.xh
www IN A 192.168.bh.xh+1
mail IN A 192.168.bh.xh+2
常用的资源记录类型
㈠ 正向解析文件的格式:
数据库文件的每一行都由一条资源记录组成,每个资源记录通常包含五项,格式如下:
Domain [Time to live] Class Record type Record data
各项的含义如下:
`域名(Domain)`:该资源记录对应的域,通常用来作为域名查询时的关键字。@表示当前区域的名称;相邻两条记录的domain相同时,后一条的可省略。
`存活期(TTL)`:存活期过后,该记录不再有效。可从全局继承。
`类别(Class)`: 该项说明网络类型。目前大部分的资源记录都采用“IN”,表明Internet,该域的缺省值为“IN”。
`记录类型(Record type)`:该项说明资源记录的类型,常用的资源记录类型如下表所示。
`记录数据(Record data)`:该资源记录相关的数据,通常由记录类型决定。对于正向区域来说,各MX,NS等类型记录的数据为FQDN,此FQDN应该有一个A记录
**各行的含义:**
① `$TTL 86400`
从BIND 4.2开始,需要在区域文件的最前面加一条$TTL指令,用来设置资源记录在其它服务器中的默认缓存时间,时间单位为秒。86400秒即为1天,也可等价表达为$TTL 1D。
② `@ 1D IN SOA @ root (`
`@`——代表当前的域;也就是 你的中文名的全拼.com
`1D`——代表1天(day),`3H`代表3小时(hour),`15M`代表15分钟(minute),`1W`代表1周(week);
`IN`——代表地址类别;
`SOA`—— 授权起始(Start Of Authority),定义了一个域的全局特性,必须是出现在zone文件中的第一个资源记录,而且一个zone文件中必须只有一个SOA资源记录。SOA后应填写该域主服务器的FQDN,之后是服务器管理员的E-mail地址,E-mail的“@”符号用小数点代替,在E-mail地址的最后,也要附加一个小数点。
③ 接下来括号中的值,是一些`主从配置参数`:
分号为注释符;
`serial`行前面的值——代表该区域文件的版本号或序列号。用于辅域名服务器判断主域名服务的 master file是否更新,所以如果有辅域名服务器,在每次修改 master file后就应该修改这个序列号,以便辅域名服务器更新这个域的 master file.
`refresh`行前面的值——代表更新的时间周期。此处设置为3H
`retry`行前面的值——代表在更新出现通信故障时的重试时间。此处设置为15M,即15分钟。
`expire`行前面的值——代表重新执行更新动作后仍然无法完成更新任务而终止更新的时间。
生存时间:指定当域名服务器询问某个域名和其IP地址后,在域名服务器上放置的时间。
`minimum`行前面的值——代表客户域名查询的记录,在域名服务器上放置的时间,即设置记录的缓存时间。定义这个域在其他域名服务器的cache 里的有效期,过了这个时间其他的域名服务器就会到这里来重新查询相关的信息
其中语句`“IN MX 10 mail. 你的中文名的全拼.com”` 用于为你的中文名的全拼.com域定义一条邮件地址交换记录(MX),10代表优先级,数字越小,优先级越高。当定义了两个或多个MX记录时,优先级高的服务器,将首先获得发来的邮件,只有定义了域的MX记录后,邮件服务器才能收到该域的邮件,以后域名mail. 你的中文名的全拼.com就可作为邮件服务器的SMTP和POP3服务器的地址来使用。
⑤ `1D IN NS @`
用于添加一条NS(名称服务器)记录,用于指定权威的名称服务器。即该语句用于指定域名服务器,NS之后应放置当前域名服务器的名称。
⑥ `1D IN A 127.0.0.1`
用于添加一条A(Address)记录,即地址记录。用于指定一个名称所对应的IP地址。该条记录的含义就是将localhost解析为127.0.0.1
步骤5:编辑反向解析数据库文件
[root@www ~]# cp -p /var/named/named.loopback /var/named/1.168.192.in-addr.arpa.zone
[root@www ~]# vim /var/named/1.168.192.in-addr.arpa.zone
$TTL 1D
@ IN SOA 1.168.192.in-addr.arpa. root.你的中文名的全拼.com (
学号 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns.你的中文名的全拼.com.
@ IN MX 5 mail.你的中文名的全拼.com.
学号 IN PTR dns.你的中文名的全拼.com.
学号+2 IN PTR mail.你的中文名的全拼.com.
学号+1 IN PTR www.你的中文名的全拼.com.
步骤6:检查区域配置文件
使用 named-checkzone
命令检查区域配置文件
步骤7:防火墙配置
步骤8:启动进程,域名解析服务
启动named守护进程,(chgrp)开始域名解析服务
并用命令service named start (restart)
步骤9:客户端测试
客户端测试:将DNS服务器指向域名服务器的IP地址→使用