一.DNS
1.DNS简绍:
应用层协议,是互联网的一项服务,用来解析地址,将域名转化为ip地址,其中分别为正面解析和反面解析,其目的就是为了方便记忆。
2.正反面解析:
- 正面解析:将域名查询ip地址
- 反面解析:将ip地址查询域名
3.查询问方法:
-
递归查找:一般客户机和本地DNS服务器之间属于递归查询,客户机向DNS服务器发出请求后,DNS服务器进行查询,并保持查询的源和目标不变,为了查询结果只需要发起一次查询。(不需要自己动手)
-
迭代查找:一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,当对方不能返回将权威结果,则一直查询,查询源不变,但查询目标一直在变,为查询结果需要发起多次查询。(需要自己手动)
4.查询原理过程
正向解析查询过程:
- ①先查本机的缓存记录
- ②查询hosts文件,有直接访问,没有去找dns。
- ③查询dns域名服务器,交给dns域名服务器处理 以上过程为递归查询:我要一个答案你直接会给我结果
- ④这个dns服务器可能是本地域名服务器,也有个缓存,如果有直接返回结果,如果没有则进行下一步
- ⑤求助根域服务器,根域服务器返回可能会知道结果的顶级域服务器让他去找顶级域服务器
- ⑥求助顶级域服务器,顶级域服务器返回可能会知道结果的二级域服务器然他去找二级域服务器
- ⑦求助二级域服务器,二级域服务器查询发现是我的主机,把查询到的ip地址返回给本地域名服务器
- ⑧本地域名服务器将结果记录到缓存,然后把域名和ip的对应关系返回给客户端
4.实现
方法一 : 本地host文件
方法二 : 安装软件服务
本地主机映射文件hosts
/etc/hosts 文件,保存主机名与IP地址的映射记录。
Linux系统:/etc/hosts
Windows系统:c/windows/system32/drivers/etc/hosts
查看 /etc/hosts 文件:
hosts 文件和DNS服务器的比较:
-
默认情况下,系统首先从hosts文件查找解析记录
-
hosts 文件的优先级高于DNS服务器,这是由 /etc/nsswitch.conf 文件规定的
-
hosts 文件只对当前的主机有效
-
hosts 文件可减少DNS查询过程,从而加快访问速度
查看/etc/nsswitch.conf 文件:
DNS软件bind
dns地址解析操作
正面解析
1.关闭防火墙
systemctl stop firewalld
setenforce 0
2.安装
yum -y install bind*
3.开启服务
systenctl start named
4.更改网络配置:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
将DNS1=192.168.47.100 改为主机主机名
把DNS2删除
5.重启网络
systemctl restart network
6.查看配置文件
rpm -qc dind
7.编写named的配置文件
vim /etc/named.conf
- 需要更改的地方
isten-on port 53 { any; };
allow-query { any; };
8.编写域名文件
vim /etc/named.rfc1912.zones
9.找到名字数据库named.localhost 复制到自定义的服务器里去
cd /var/named/
ls
cp -a named.localhost yhy.com.zone
10.重启服务
11.解析成功