内网DNS服务基础配置
主要文件:
- /etc/resolv.conf
- /etc/named.conf #主配置文件
- /etc/named.rfc1912.zones #区域数据库
- /var/named/named.localhost #创建记录文件
- /usr/share/doc/bind/sample/ #软件链接目录
/etc/named.conf解析:
listen-on port 53 { 127.0.0.1; }; #指定IPv4监听端口和IP
listen-on-v6 port 53 { ::1; }; #指定IPv6监听的端口和IP
directory "/var/named"; # 指定 named 数据文件目录
dump-file "/var/named/data/cache_dump.db"; #设置域名缓存数据库文件位置
statistics-file "/var/named/data/named_stats.txt"; #设置状态统计文件的位置
memstatistics-file "/var/named/data/named_mem_stats.txt"; # 设置服务器输出的内存使用统计信息
allow-query { localhost; }; # 设置允许 DNS 查询的客户端地址
recursion yes; #设置递归查询
dnssec-enable yes; #设置是否启用 DNSSEC 支持来验证 DNS 数据的有效性
dnssec-validation yes; #设置是否启用 DNSSEC 确认
bindkeys-file "/etc/named.iscdlv.key"; #设置内置信任的秘钥文件
managed-keys-directory "/var/named/dynamic"; # 指定目录中的文件存储位置,跟踪管理 DNSSEC 秘钥
logging { #配置定义bind服务的调试日志消息
channel default_debug { #定义日志输出方式
file "data/named.run"; #输出到纯文本文件
severity dynamic; #消息的严重性等级
};
};
消息的严重性等级为:critical(严重)、error(错误)、warning(警告)、notice(通知)、info(信息)、debug[level](调试[级别])、dynamic(信息)等,一般设置为info
zone "." IN { #使用zone关键字来定义一个区域,一个zone关键字定义一个区域
type hint; #type类型有三种
file "named.ca"; #file用来指定存放DNS记录的数据库文件
allow-update { none; }; #是否允许客户主机或服务器自行更新DNS记录
};
type类型有三种:分别是master(主域名服务器)、slave(辅助域名服务器)、hint(互联网中的根域名服务器)
- /etc/named.rfc1912.zones解析:
- hint #根区域
- master #指主服务器
- salave #辅助区域
/var/named/named.localhost解析:
常见的设置:
SOA记录:
SOA记录:
SOA 记录设定,@ 代表相应域名,即 named.conf 中设定的 zone
IN 表示后面使用的数据使用的是 Internet 标准
SOA 全称“Start Of Authority”,表示目前区域授权开始,每个区域数据文件只能有一个 SOA,且必须是所负责区域的第一个记录
SOA 后面指定了这个区域的授权主机名称和管理者邮箱
授权主机名和管理者邮箱后面都要有一个“.”
授权主机名必须能在 DNS 设置中找到一个 A 记录
“@”在区域数据文件中有特殊含义,管理员邮箱中的“@”用“.”代替
常见参数设置:
NS:用来定义这个主机是个域名服务器
MX:定义一个邮件交换器
A:定义一个 A 记录,即域名到 IP 的记录
CNAME:定义域名的别名
PTR:定义反向记录,即通过 IP 查找对应域名信息
/etc/resolv.conf文件:
- nameserver # 定义 DNS 服务器 IP 地址
- domain # 定义本地域名
- search # 定义域名的搜索列表
- sortlist #对返回的域名进行排序
实验操作:
第一步:yum -y install bind* #安装bind服务
第二步: vim /etc/named.conf #打开主配置文件
修改47,55行,修改如下
第三步:cd /var/named/ #进入此目录
第四步:cp -a named.localhost gdit.com.zone #这里注意后缀,他不像debian那样使用db,centos使用zone
第五步: vim gdit.com.name
第六步:vim /etc/named.rfc1912.zones #打开数据库调用文件
第七步:vim /etc/resolv.conf
...
nameserver 127.0.0.1
...
第八步:systemctl stop firewalld
第九步:setenforce 0
第十步:systemctl restart named #重启bind服务
client测试即可:
nslookup www.gdit.com