linux---高速缓存DNS


DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53



配置高速缓存DNS服务器

1.配置yum源
2.查找DNS服务软件

linux---高速缓存DNS

3.下载dns
linux---高速缓存DNS

4.打开dns服务(需要手动输入新的**,才会开启成功)
linux---高速缓存DNS


5.打开网络配置文件 vim/etc/resolv.conf(配置指向dns缓存  ##114.114.114.114是运营商的dns服务器ip)


##客户端上的 Stub 解析器 将查询发送至 /etc/resolv.conf 中的名称服务器,如果名称服务器对于请求的信息具有权威性 , 会将权威答案发送至客户端,否则 , 如果名称服务器在其缓存中有请求的信息 , 则会将非权威答案发送至客户端,如果缓存中没有信息 , 名称服务器将搜索权威名称服务器以查找信息 , 从根区域开始 , 按照DNS 层次结构向下搜索, 直至对于信息有具有权威性的名称服务器 , 以此为客户端获得答案。在此情况中,名称服务器将信息传递至客户端并在自己的缓存中保留一个副本 , 以备以后查找。

linux---高速缓存DNS

6.打开dns配置文件
修改listen-on port 53 { any;};
      allow-query { any; };
添加 forwarders {114.114.114.114}

linux---高速缓存DNS

7.刷新
linux---高速缓存DNS
8.测试dig www.taobao.com

linux---高速缓存DNS
linux---高速缓存DNS
对比两次dig www.taobao,com ,由于第一次DNS缓存时需要从运营商(114.114.114.114)来得到反馈,所以较慢,由于本机也是一个DNS缓存设备,自动记录保存第一次,第二次重本地获取反馈 ,速度较快。这个过程称为高速缓存DNS


正向解析(给网址解析IP)

1. vim /etc/named.rfc1912.zones (修改域名为hehe.com)
linux---高速缓存DNS

2.将named。localhost 里的内容复制到hehe.com.zone (方便实验的进行,##备份)
linux---高速缓存DNS
linux---高速缓存DNS


3.vim/hehe.com.zone
systemctl restart namde(刷新)
linux---高速缓存DNS

4 vim /etc/resolvs.conf  (修改dns缓存为172.25.254.135)
linux---高速缓存DNS

5。dig hello.hehe.com  和 dig dns.hehe.com (查看对应域名解析ip是否正确)

linux---高速缓存DNS
linux---高速缓存DNS

双解析(输入一个域名会有两个ip随机出现,这个可以有效的保证服务器的正常工作)

1. vim/hehe.com.zone 
linux---高速缓存DNS
2 systemctl restart named (刷新)
3.测试 dig www.hehe.com
linux---高速缓存DNS

反向解析 (给ip 解析域名)

1. vim /etc/named.rfc1912.zones

zone "254.25.172.in-addr.arpa" IN {

type master;

file "westos.com.ptr";
allow-update { none; };
};

linux---高速缓存DNS

2   cd /var/named/

   ls

    cp -p named.loopback westos.com.ptr(备份)


linux---高速缓存DNS

3
linux---高速缓存DNS
linux---高速缓存DNS
4.刷新

linux---高速缓存DNS

5.测试 dig -x 172.25.254.111 和 dig -x 172.25.254.222 (查看反向解析是否成功)
linux---高速缓存DNS
linux---高速缓存DNS

基于DNS的内外网解析

##内外网看到的IP不同

虚拟机当dns端口 (内网)
1. cp -p hehe.com.zone hehe.com.inter  (将hehe.con.zone的内容复制到hehe.com.inter)
ls
linux---高速缓存DNS

2.vim hehe.com.inter
linux---高速缓存DNS
##最下边%s/172.25.254/192.168.0/g (可以将其中的所有172.25.254的ip换成192.1368.0)
linux---高速缓存DNS

cat hehe.com.inter 
linux---高速缓存DNS

2. cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.inter (这一步同样是复制内容)
linux---高速缓存DNS


3.vim /etc/named.rfc1912.inter
linux---高速缓存DNS


4.vim /etc/named.conf

/*

zone "." IN {

type hint;

file "named.ca";

};

 

include "/etc/named.rfc1912.zones";

include "/etc/named.root.key";      

*/      /* 中间所有命令无效*/
linux---高速缓存DNS

view localnet {

match-clients { 172.25.254.135; };

zone "." IN {

type hint;

file "named.ca";

};

include "/etc/named.rfc1912.zones";

};

 

view view {

match-clients { any; };

zone "." IN {

type hint;

file "named.ca";

};

include "/etc/named.rfc1912.inter";

};
linux---高速缓存DNS

 
5.systemctl restart named (刷新)


6测试.dig www.hehe.com
linux---高速缓存DNS

真机作为外网

 

 

1.vim /etc/resovly.conf (设置dns缓存来与172.25.254.135)
linux---高速缓存DNS

2.测试 dig www.hehe.com (外网解析后为另一个IP)
linux---高速缓存DNS



DNS的集群 (用一个dns去分担另一个dns 的压力)


##打开另一个虚拟机和这个虚拟机共同进行DNS的缓存

打开一个新的虚拟机server,配置ip,yum源头,下载dns服务,关闭防火墙


1.vim /etc/named.conf

options {

listen-on port 53 { any; };(改称任意人都可以)

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";

allow-query     { any; };


linux---高速缓存DNS
linux---高速缓存DNS


2.vim /etc/resolv.conf


linux---高速缓存DNS

3.vim /etc/named.rfc1912.zones

 

zone "hehe.com" IN {

type slave;

masters { 172.25.254.135; };

file "slaves/hehe.com.zone";

allow-update { none; };

};

linux---高速缓存DNS

4.systemctl restart named (需要手动)

在slave主机中


1.vim /etc/named.conf

linux---高速缓存DNS

2.vim /etc/named.rfc1912.zones

zone "hehe.com" IN {

type master;

file "hehe.com.zone";

allow-update { none; };

also-notify { 172.25.254.235; };

};

linux---高速缓存DNS

3. systemctl restart named(刷新)


设置完成后在salve主机中

1.vim hehe.com.zone (修改一次ip之后,看在另一个虚拟机中是否会有同步)
linux---高速缓存DNS

在另一个虚拟机中:
linux---高速缓存DNS

在salve中:
linux---高速缓存DNS
在另一个虚拟机中:
linux---高速缓存DNS

DNS更新同步

第一个虚拟机desktop
1.vim /etc/named.rfc1912.zones
  linux---高速缓存DNS

2.systemctl restart named
chmod 770 /var/named/
ll -d /var/named/
linux---高速缓存DNS

真机中: (添加一个ip)

linux---高速缓存DNS

在另一个虚拟机desktop中测试是否同步: dig test.hehe。com
linux---高速缓存DNS

在另一个虚拟机server中测试是否同步 dig test.hehe.com
linux---高速缓存DNS

DNS的**

删除上一个实验的步骤并且还原(保证实验环境的干净)

linux---高速缓存DNS

在desktop虚拟机中(salve主机)

1. dnssec-****** -a HMAC-MD5 -b 512 -n HOST hehe (生成一个名叫hehe的**)

  ls

  cat Khehe.+157+51046.key

 cat Khehe.+157+51046.private
linux---高速缓存DNS 
2.cp /etc/rndc.key  /etc/hehe.key -p (将**的名字改为hehe)
vim /etc/hehe.key (将**的密码输入进去)
linux---高速缓存DNSlinux---高速缓存DNS

3.vim /etc/named.conf  (将**给进去生效)
linux---高速缓存DNS

4.vim /etc/named.rfc1912.zones (将**资格给172.25.254.235)
linux---高速缓存DNS

5.systemctl restart named(刷新)
6.scp Khehe.+157+51046.* [email protected]:/mnt(将**传给172.25.254.135
linux---高速缓存DNS

测试 (分别在真机中和sever虚拟机中测试)

server中可以创建
linux---高速缓存DNS
真机中(失败是因为没有**所以无法打开)
linux---高速缓存DNS