一. 高速缓存DNS的概念及其建立意义
1.DNS的含义:
Domain Name System,域名系统。万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户方便的访问网络,主要负责把域名和IP地址的互换,DNS运行于TCP|UDP的53端口上
2.什么是高速缓存DNS
DNS服务器可以高速缓存从其它DNS服务器接收到的DNS记录,也可以在DNS客户服务中进行高速缓存,将其作为DNS客户端保存在最近的查询过程中得到的信息高速缓存的方法。
3.高速缓存DNS的作用:
当一个主机第一次访问一个网页的时候,该主机DNS服务器以从远处的服务器拿到数据,并进行高速缓存;这样在主机或者其他主机进行下一次访问的时候,可以直接从该主机的高速缓存中直接获取,这样的方式叫做高速缓存。
二.配置高速缓存
1.实验环境的搭建
(1)网络的配置
- 将真机连上wifi,然后ping 114.114.114.114 网络可以通
- 编辑虚拟机的网络配置文件,并且添加网关为真机ip
vim /etc/sysconfig/network-scripts/ifcfg-eth0
systemctl restart network ##重启网络
- 在真机上:真机为路由器
sysctl -a | grep ip_forward ##查看内核路由功能
net.ipv4.ip_forward = 1 则说明内核路由功能开启 |
systemctl start firewalld ##打开防火墙
firewall-cmd --list-all ##查看火墙装态
firewall-cmd --add-masquerade ##伪装火墙
- 在虚拟机上ping 114.114.114.114能通则说明网络配置成功
(2)yum源的配置
注:首先要准备一个rhel7.0的镜像为rhel-server-7.0-x86_64-dvd.iso然后再搭建共享yum源
- 再真机上搭建共享yum源:
yum源的共享:
cd /var/www/html
mkdir file
mount /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso file
- 在虚拟机上配置yum源文件
文件编辑内容为:
2.设置虚拟机为高速缓存机DNS
(1)在虚拟机中下载dns
yum install bind -y
(2)设置虚拟机火墙
systemctl stop firewalld
systemctl disable firewalld
(3)开启dns服务
systemctl start named
注:开启服务时,因为系统本身的加密字符不够而服务无法正常开启,可以在虚拟机中敲击键盘,并且只有在服务开启后才可以看到/etc/rndc.key文件
3.在测试端(真机)配置相应的解析文件
vim /etc/resolv.conf
在测试端:dig www.baidu.com
显示没有服务可以到达,是因为模拟的高速缓存的dns服务器的51端口指向的不是dns服务器的ip
在高速缓存服务端:
netstat -antlupe | grep named
4.配置服务端的服务器文件并且检测
rpm -qc bind ##查看服务的配置文件
vim /etc/named.conf ##编辑服务的配置文件
文件的原始内容如下:
listen-on port 53 { 127.0.0.1; }; | 监听端口53在127.0.0.1上 |
---|---|
allow-query { localhost; }; | 允许进行dns查询的客户的地址 |
-
(1)设定端口对所有人打开
检测:
会出现以下报错
-
(2)允许所有人连接
systemctl restart named 每次配置服务文件完了都要重启网络
检测:
会出现SERVFAIL的报错 -
添加forwards
名词 | 解释 |
---|---|
forwarders { 114.114.114.114; }; | 设置将dns请求转发到哪个服务区 |
将dnssec关掉:
测试:
在真机上:
第二次dig:
在另一台虚拟机上测试:
首先在真机上:
在编辑该测试虚拟机配置文件:
vim /etc/resolv.conf
dig www.taobao.com
发现几乎直接就可以dig到。