DNS资源记录类型(RR)
| 序号 | 类型 | 作用 | 备注 |
| --- | ----- | ----------------------------------- | ------ |
| 1 | A | 一个域名与IP对应关系 | |
| 2 | NS | 一个区域有哪些DNS服务器负责解析 | |
| 3 | SOA | 一个区域内多个DNS服务器中哪个是主服务器 | |
| 4 | MX | 邮件投递记录 | |
| 5 | CNAME | 别名记录 | |
| 6 | SVR | 说明一个服务器能够提供的服务 | 微软AD |
| 7 | PTR | A记录的逆向记录,把IP地址解析为域名 | |
服务器IP:192.168.37.110
```
# 检查是否安装DNS组件包
[root@localhost ~]# rpm -qa |grep bind
# 搜索yum源对应安装包
[root@localhost ~]# yum search bind
# 执行安装
[root@localhost ~]# yum install -y bind.x86_64
# 配置named.conf
[root@localhost ~]# vi /etc/named.conf
将listen-on port 53 { 127.0.0.1; };修改为listen-on port 53 { 127.0.0.1; any; };表示监听所有
将allow-query { localhost; };修改为allow-query { localhost; any; };
# 执行语法检测
[root@localhost ~]# named-checkconf /etc/named.conf
# 添加开机自启
systemctl enable named
```
## 配置正向区域
```
# 修改配置文件,添加正向区域文件声明
[root@localhost ~]# vi /etc/named.rfc1912.zones
添加
zone "hellopasswd.com" IN {
type master;
file "hellopasswd.com.zx";
allow-update { none; };
};
// 修改zone解析的域和file定义正向解析文件名
# 检查配置文件语法
[root@localhost ~]# named-checkconf /etc/named.rfc1912.zones
# 创建正向解析文件
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp -a named.localhost hellopasswd.com.zx
# 编辑正向解析配置文件
[root@localhost named]# vi hellopasswd.com.zx
修改@ IN SOA @ rname.invalid. (为管理员的邮箱地址@ IN SOA @ root.hellopasswd.com. (
// 这里的@用.代替
在末尾添加需要解析的域名
www IN A 192.168.37.110
cw IN CNAME www
ftp IN CNAME www
kq IN CNAME www
# 检查正向解析配置文件语法
[root@localhost named]# named-checkzone hellopasswd.com /var/named/hellopasswd.com.zx
# 修改文件权限或用户组
chgrp named /var/named/hellopasswd.com.zx
# 重启服务
[root@localhost named]# systemctl restart named
```
## 配置反向区域
```
# 修改配置文件,添加反向区域文件声明
[root@localhost ~]# vi /etc/named.rfc1912.zones
添加
zone "31.168.192.in-addr.arpa" IN {
type master;
file "hellopasswd.com.fx";
allow-update { none; };
};
# 检查配置文件语法
[root@localhost ~]# named-checkconf /etc/named.rfc1912.zones
# 创建反向解析文件
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp -a hellopasswd.com.zx hellopasswd.com.fx
# 编辑反向解析配置文件
[root@localhost named]# vi hellopasswd.com.fx
删除正向解析的内容
添加
110 IN PTR www
//PTR表示反向解析记录
//注意,这里不需要修改管理员邮箱
# 检查反向解析配置文件语法
[root@localhost named]# named-checkzone 31.168.192.in-addr.arpa /var/named/hellopasswd.com.fx
# 重启服务
[root@localhost named]# systemctl restart named
```
## 配置防火墙
```
# 放行端口
[root@localhost ~]# firewall-cmd --permanent --add-port=53/udp
[root@localhost ~]# firewall-cmd --permanent --add-port=53/tcp
//客户机与服务器是使用UDP协议,而DNS服务器与服务器之间使用的是TCP协议
# 放行DNS对应服务
[root@localhost ~]# firewall-cmd --permanent --add-service=dns
# 加载防火墙
[root@localhost ~]# firewall-cmd --reload
# 检查安全上下文
[root@localhost ~]# ls -Z /var/named/
# 若检测不通过,则需要执行
semanage fcontext -a -t named_conf_t /etc/named.conf
restorecon -RFvv /etc/named.conf
```
## 测试DNS解析
```
# 修改DNS客户机配置文件
[root@localhost named]# vi /etc/resolv.conf
修改nameserver 192.168.37.110
# 安装DNS检测工具
[root@localhost ~]# yum install -y bind-utils
# 检测是否正常使用DNS服务器
nslookup www.hellopasswd.com
nslookup 192.168.37.110
```