每一台 DNS 服务器都只负责管理一个有限范围
全球根服务器节点只有13个,10个在美国,1个荷兰,1个瑞典,1个日本
一级域名:Top Level Domain: tld
三类:组织域、国家域(.cn, .ca, .hk, .tw)、反向域
最多可达到127级域名
缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控制的区域地址数据。构建缓存域名服务器,必须设置根域或指定其他DNS服务器作为解析来源。
主域名服务器:管理和维护所负责解析的域内解析库的服务器
从域名服务器:从主服务器或从服务器"复制"(区域传输)解析库副本
以 访问? www.goole.com? ?服务器
1 先看我本机的hosts文件,如果有直接访问,如果没有就去找你设置缓存dns
2 如果缓存服务器有,直接反馈结果 (递归),如果没有就需要迭代查询直接去找根域服务
3 由于根域服务器 只能解析根无法解析 www.baidu.com 但是根域服务器让你去找级域服务器
4 一级域发现自己 也解析 不了,让你去找二级域
5 二级域发现这台服务在自己的 管理范围内,直接反馈结果给 缓存服务器
6 缓存服务器 再交给 客户
7其中正向解析是根据域名查找对应的IP地址
一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)
一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器(参考前一个DNS服务器返回的结果)再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。(需要自己动手)
目的内部人员自己使用内网,使用域名访问内网
root@localhost ~]#rpm -q install bind*
未安装软件包 install
未安装软件包 bind*
[root@localhost ~]#yum install -y bind*
已加载插件:fastestmirror, langpacks
完毕!
[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
[root@localhost ~]#setenforce 0
setenforce: SELinux is disabled
[root@localhost ~]#systemctl start named
[root@localhost ~]#vim /etc/named.conf
[root@localhost ~]#rndc reload
server reload successful
[root@localhost ~]#
[root@localhost ~]#vim /etc/named.rfc1912.zones
[root@localhost ~]#cd /var/named
[root@localhost named]#ls
chroot chroot_sdb data dynamic dyndb-ldap named.ca named.empty named.localhost named.loopback slaves
[root@localhost named]#cp named.localhost ./mcb.com.zone -p
[root@localhost named]#ls
chroot chroot_sdb data dynamic dyndb-ldap kgc.com.zone mcb.com.zone named.ca named.empty named.localhost named.loopback slaves
[root@localhost named]#vim mcb.com.zone
$TTL 1D ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#有效解析记录的生存周期
@ ? in SOA benet.com. admin.benet.com. ( ? #“@"符号表示当前的DNS区域名
? ? ? ? ? ? ? ? ? ? ?0 ? ; serial ? ? ? ? ? ? ?#更新序列号,可以是10位以内的整数
? ? ? ? ? ? ? ? ? ? 1D ? ; refresh ? ? ? ? ? ? #刷新时间,重新下载地址数据的间隔
? ? ? ? ? ? ? ? ? ? 1H ? ; retry ? ? ? ? ? ? ? #重试延时,下载失败后的重试间隔
? ? ? ? ? ? ? ? ? ? 1W ? ; expire ? ? ? ? ? ? ?#失效时间,超过该时间仍无法下载则放弃#
?? ??? ??? ??? ??? ?3H) ?; minimum ? ? ? ? ? ? #无效解析记录的生存周期,
? ? ? ? NS ? ? ?benet.com. ? ? ? ? ? ? ? ? ? ? #记录当前区域的DNS服务器的名称
? ? ? ? A ? ? 192.168.80.10 ? ? ? ? ? ? ? ? ? #记录主机IP地址
IN ? MX 10 ? ?mail.benet.com. ? ? ? ? ? ?#MX为邮件交换记录,数字越大优先级越低
www ?IN A ? ? 192.168.80.10 ? ? ? ? ? ? ?#记录正向解析www.benet.com对应的IP
mail IN A ? ? 192.168.80.11 ? ? ? ? ? ? ?#MX为邮件交换记录,数字越大优先级低?
ftp ?IN CNAME ?www ? ? ? ? ? ? ? ? ? ? ? #CNAME使用别名,ftp 是www的别名
* ? ?IN A ? 192.168.80.100 ? ? ? ? ? ? ? #泛域名解析,“*"代表任意主机名
[root@localhost named]#vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost named]#systemctl restart network
network-online.target network.service
[root@localhost named]#systemctl restart network
network-online.target network.service
[root@localhost named]#systemctl restart network
network-online.target network.service
[root@localhost named]#systemctl restart network
[root@localhost named]#ping www.goole.com
PING www.goole.com (217.160.0.201) 56(84) bytes of data.
64 bytes from 217.160.0.201 (217.160.0.201): icmp_seq=1 ttl=128 time=53.3 ms
[root@localhost named]#host www.mcb.com
www.mcb.com has address 20.115.47.189
[root@localhost named]#host mcb.com
mcb.com has address 20.115.47.189
mcb.com mail is handled by 10 mx.usa.net.
mcb.com mail is handled by 50 mx.ct.mbox.net.
研究一下
[root@localhost named]#host abc.mcb.com
Host abc.mcb.com not found: 3(NXDOMAIN)
修改配置文件
#vim /etc/named.rfc1912.zones?
[root@localhost ~]#vim /etc/named.rfc1912.zones
[root@localhost ~]#
[root@localhost ~]#cd /var/named
[root@localhost named]#vim /etc/named.rfc1912.zones (核实路径变化配置文件是否变化)
[root@localhost named]#cp -p mcb.com.zone mcb1.com.zone
[root@localhost named]#chmod 640 mcb1.com.zone ;chgrp named mcb1.com.zone
[root@localhost named]#vim mcb1.com.zone
[root@localhost named]#vim /etc/named.rfc1912.zones??
?
?[root@localhost named]#vim mcb1.com.zone?
root@localhost named]#rndc reload
rndc: connect failed: 127.0.0.1#953: connection refused
总结:此实验没有成功,有时间找原因
添加从服务器(1)
[root@localhost ~]#systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
setenforce: SELinux is disabled
[root@localhost ~]#yum install bind bind-utils.x86_64 -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
[root@localhost ~]# vim /etc/named.conf
?
主:192.168.11.13
1?[root@localhost named]# vim /etc/sysconfig/network-scripts/ifcfg-ens33?
2 查看一下?[root@localhost named]# cat /etc/resolv.conf
[root@localhost ~]# vim /etc/named.rfc1912.zones
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
[root@localhost ~]# yum install bind bind-utils.x86_64 -y
已加载插件:fastestmirror, langpacks
? ② [root@localhost ~]# vim /etc/named.conf
?
③ [root@localhost ~]# ?vim /etc/named.rfc1912.zones
④ [root@localhost named]# vim mcb2.com.zone
?
?检测一下
查看一下
?
?宿舍没网,停更