目录
1.介绍
利用一种名字解析服务将名称转化成(解析)成IP地址。从而我们就可以利用名称来直接访问网络中设备 当主机IP变化时,只需要修改名称服务即可,用户仍可以通过原有的名称进行访问而不受影响。
2.名字
跟 名字
一级域名(顶级域名) 名字. 一级域名.
二级域名 名字.二级域名.一级域名.
三级域名 名字. 三级域名.二级域名.一级域名.
3.DNS服务器类型
缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,
但是没有自己控制的区域地址数据。
主域名服务器:管理和维护所负责解析的域内解析库的服务器
从域名服务器:从主服务器或从服务器"复制"(区域传输)解析库副本
4.dns查询类型和过程
1.查询类型
1.递归查询
会获得直接的结果
2.迭代查询
只有一个线索没有获得结果
2.查询过程
1.hosts 分散式的管理,每一台机器都要有一个文件
2.集中式管理,使用软件集中式管理 集中式
3.分布式 一级管一级
总结:
www.baid.com.
hosts 文件 没有
dns缓存服务器有 直接回复 没有
直接 去问 根服务器 根服务器 只能解析 主机名+.的 域名 主机名.
根服务器 是迭代查询 透露消息给你让你去找 com (一级域服务器)
去找 级域 com服务器com 服务器 只能解析主机名.com. 主机名+一级域名+根域名
一级域服务器是迭代查询 让你去找 二级域服务器中
找到二级域服务器后 迭代查询www.baidu.com 在我管理范围内 www.二级域.一级域根域
直接 告诉 dns 缓存服务器 迭代查询 完成
缓存服务器告诉 客户端,dns解析服务器会缓存结果递归查询完成
3.bind 软件
bind是应用最广泛的dns服务程序
官方站点 :https://www.isc.org/
软件名:bind
服务名称:named
主配置文件:/etc/named.conf
区域配置文件:/etc/named.rfc1912.zones
数据库文件:/var/named/随便 需要格外注意此文件的权限
dns服务器得指向自己建立的服务器
5.正向解析
根据域名查找对应的IP地址
yum install bind bind-utils -y
vim /ect/sysconfig/network-scripts/ifcfg-ens33
dns=指向自己
systemctl restart network
vim /etc/named.conf
注释两行 或者 改成any
options {
// listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory "/var/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";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
// allow-query { localhost; };
写区域配置文件
vim /etc/named.rfc1912.zones
复制 粘贴
zone "ky33.com" IN { # 自定义域名 随便
type master; # 指明 此台是主服务器
file "ky33.com.zone"; # 指明数据文件的名字, 默认是在 /var/named
};
cd /var/named
cp -a named.localhost ky33.com.zone
vim ky33.com.zone
$TTL 1D
@ IN SOA master.ky33.com. admin.ky33.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS master
master A 192.168.91.100
www A 192.168.91.88
ftp A 192.168.91.111
test CNAME www
systemctl restart named
host www.ky33.com
6.主从复制
从服务器配置
systemctl stop firewalld
setenforce 0
yum install bind bind-utils.x86_64 -y
从服务器先安装bind
vim /etc/named.conf
两段改成any
vim /etc/named.rfc1912.zones
添加从服务器的配置文件
zone "zf.com" IN {
type slave;
类型
file "slaves/zf.com.zone";
文件地址在/var/named/slaves/ 下
masters { 172.16.114.20; };
申明主服务器的地址
ls /var/named/slaves
systemctl start named
主服务器配置好后再启动
主服务器配置
[root@localhost etc]# vim /etc/named.rfc1912.zones
zone "zf.com" IN {
type master;
file "zf.com.zone";
allow-transfer { 172.16.114.10; };
#添加从服务器的地址
};
[root@localhost etc]#rndc reload
host www.zf.com
测试dns配置
主服务器
systemctl stop named
断开主服务器
再去从服务器测试dns服务是否正常
从服务
主服务器