Linux服务4:DNS---高速缓存服务器

1. “DNS”—高速缓存服务器

(1)DNS应用

DNS(Domain Name System)—域名系统:是互联网的一项服务
作为将域名和IP地址相互映射的一个分布式数据库,帮助人们方便的访问互联网
DNS使用的是TCP和UDP端口53

(2)DNS应用

(1)在浏览器里面输入域名 www.baidu.com,浏览器并不知道这是谁,只有通过 dns 找到域名对应的ip我才可以正常的访问百度。
(2)DNS作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
(3)DNS的对应端口是53,53端口—dns服务器获取信息通过53端口获取,dns默认开启的端口

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


2. 实验前配置环境 & 搭建DNS

保证实验环境的纯净:rht-vmctl reset desktop
hostnamecrl set-hostname dns-server.westos.com
配置ip
在这里插入图片描述
配置yum源
在这里插入图片描述
使desktop虚拟机可以联网:真机配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试机配置:ip—172.25.60.253
在这里插入图片描述
在这里插入图片描述
搭建DNS

yum install bind -y
systemctl start named   ##敲击键盘,原因是加密设备不够,从/dev/random中获得(就是随机敲击键盘或移动鼠标)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

netstat -antlpue|grep named  ##查看named开启的接口
vim /etc/named.conf		##bind服务配置文件
 11         listen-on port 53 { any; };   ##在所有的端口中开启53
 17         allow-query     { any; };		##所有的内网主机可以访问
 18         forwarders      {114.114.114.114;};		##去114.114.114.114服务其中查找域名地址
 33         dnssec-validation no;  ##不需要认证

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:253主机
在这里插入图片描述

查询状态
NOERROR查询成功
REFUSED拒绝
SERVFAIL查询失败
NXDOMAIN世界上没有这个域名

DNS配置文件
主配置文件 /etc/named.conf
子配置文件:/etc/name.rfc1912.zones
数据目录:/var/named

DNS资源记录

DNS:区域采集资源记录的形式存储信息。每条资源记录均具有一个类型,表明其保留的数据类型
A:名称至IPv4地址
AAAA:名称至IPV6地址
CNAME:名称至“规范名称”(包含A/AAAA记录的令一个名称)
PTR:IPV4/IPV6地址至名称
MX:用于名称的邮件交换器(向何处发送其电子邮件)
NS;域名的名称服务器
SOA:“授权起始”,DNS区域的信息(管理信息)

权威dns和非权威dns

1.权威名称服务器(权威dns):直接有客户需要的答案,客户输入域名就可直接访问。存储并提供某区域 ( 整个DNS 域或 DNS 域的一部分 ) 的实际数据
2.权威名称服务器的类型包括:
Master : 包含原始区域数据,有时称作 “主要 ”名称服务器
Slave : 备份服务器 ,通过区域传送从 Master 服务器获得的区域数据的副本,有时称作 “次要 ”名称服务器.

1.非权威 / 递归名称服务器(非权威dns):里面没有客户需要的答案,但它会通过询问114.114.114.114 等权威DNS找到答案传递给用户,客户端通过其查找来自权威名称服务器的数据。
2.递归名称服务器的类型包括:
仅缓存名称服务器 : 仅用于查找 , 对于非重要数据之外的任何内容都不具有权威性.


3. dns的正向解析

1
dns维护的域名文件
vim /etc/named.rfc1912.zones 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2
cd /var/named		##bind的数据目录
cp -p named.localhost westos.com.zone
vim westos.com.zone
	$TTL 1D  客户主机保存你A记录的时间,最大时间是1天
	@       IN SOA dns.westos.com. root.westos.com. (   				##@=westos.com   zjy.westos.org.表示由谁维护
	                                        0       ; serial   
	                                        1D      ; refresh   		##重新刷新的时间是一天
	                                        1H      ; retry    			##你访问我的时候没有地址,一个小时后再次尝试
	                                        1W      ; expire    		##文件过期的时间是13H )    ; minimum    		##最短过期时间是3小时
	        NS      dns.westos.com.
	dns     A       172.25.60.251       
	www     A       172.25.60.111   									##当你询问www是谁的时候,我回答你是111
Systemctl restart named

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3
Vim /etc/resolv.conf		##地址解析
Nameserver 172.25.60.251

在这里插入图片描述
测试:dig www.westos.com
在这里插入图片描述

4. CNAME域名重定向

外部域名 CNAME=change name 内部域名

vim westos.org.zone
$TTL 1D
	@       IN SOA dns.westos.com. zjy.westos.com. (
	                                        0       ; serial
	                                        1D      ; refresh
	                                        1H      ; retry
	                                        1W      ; expire
	                                        3H )    ; minimum
	        NS      dns.westos.com.
	dns     A       172.25.60.251
	www     CNAME   bbs.westos.com.
	bbs     A       172.25.254.111
	bbs     A       172.25.254.222
Systemctl restart named

在这里插入图片描述
测试:dig bbs.westos.com
在这里插入图片描述

5. MX邮件交换器

vim /var/named/westos.com.zone
$TTL 1D
	@       IN SOA dns.westos.com. zjy.westos.com. (
	                                        0       ; serial
	                                        1D      ; refresh
	                                        1H      ; retry
	                                        1W      ; expire
	                                        3H )    ; minimum
	        NS      dns.westos.com.
	dns     A       172.25.60.251
	www     CNAME   bbs.westos.com.
	bbs     A       172.25.254.111
	bbs     A       172.25.254.222
	westos.com.     MX 1    172.25.60.251.
systemctl restart named

在这里插入图片描述
测试:

mail root@westos.com		##编辑邮件
mailq						##查看邮件队列

在这里插入图片描述

6. PTR反向解析

反向解析:通过ip获取域名
PTR—反向解析记录

1 /etc/named.rfc1912.zones中规定dns反向解析读取的文件名,zxyos.com.ptr文件中写入dns反向解析的信息
vim /etc/named.rfc1912.zones
	zone "60.25.172.in-addr.arpa" IN {			##ip为 .254.25.60.in-addr.arpa(反向)
	        type master;
	        file "172.25.60.ptr";				##172.25.60.ptr为dns反向解析读取的文件
	        allow-update { none; };
	};

在这里插入图片描述
在这里插入图片描述

2 
Cd /var/named
cp -p named.loopback 172.25.60.ptr
Vim 172.25.60.ptr
	$TTL 1D
	@       IN SOA  dns.westos.org. zjy.westos.org. (
	                                        0       ; serial
	                                        1D      ; refresh
	                                        1H      ; retry
	                                        1W      ; expire
	                                        3H )    ; minimum
	        NS      dns.westos.org.
	dns     A       172.25.254.126
	111     PTR     www.westos.org.
Systemctl restart named

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:dig -x 172.25.60.111
在这里插入图片描述

7.双向解析

内网用户查到的是内网地址,外网用户查到的是外网地址
dns-server虚拟机:

1	设置两个网段的ip
vim /etc/sysconfig/network-scripts/ifcfg-eth0

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2 设置一台1.1.1.0网段的虚拟机
vim /etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/resolv.conf 

在这里插入图片描述

3 dns双向解析
cp -p westos.com.zone westos.com.local.zone
vim westos.org.local.zone
	@       IN SOA dns.westos.com. root.westos.com. (
	                                        0       ; serial
	                                        1D      ; refresh
	                                        1H      ; retry
	                                        1W      ; expire
	                                        3H )    ; minimum
	        NS      dns.westos.com.
	dns     A       1.1.1.251
	www     CNAME   bbs.westos.com.
	bbs     A       1.1.1.111
	bbs     A       1.1.1.222
	westos.com.     MX 1    1.1.1.251.
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.local.zones
vim /etc/named.rfc1912.local.zones
		zone "westos.com" IN {
		        type master;
		        file "westos.com.local.zone";
		        allow-update { none; };
		};
vim /etc/named.conf
	view localnet {
	        match-clients {1.1.1.0/24;};
	        zone "." IN {
	                type hint;
	                file "named.ca";
	        };
	        include "/etc/named.rfc1912.local.zones";
	};
	
	view anyclient {
	        match-clients {any;};
	        zone "." IN {
	                type hint;
	                file "named.ca";
	        };
	        include "/etc/named.rfc1912.zones";
	};
	include "/etc/named.root.key";
systemctl restart named

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:
ip—1.1.1.252 访问内网
在这里插入图片描述
ip—172.25.60.250 访问外网
在这里插入图片描述

8.辅助dns

目的:减小缓解dns服务器压力
冗余:多台机器备用保证工作的稳定性
主备:主机器损坏时,备用机器顶替其工作
集群:多台机器同时工作,辅助机分担主机工作压力

配置一台辅助dns

1
vim /etc/sysconfig/network-scripts/ifcfg-eth0
systemctl restart network
vim /etc/yum.repos.d/yum.repo
yum install bind -y
systemctl start named
systemctl stop firewalld

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2
vim /etc/named.conf
	listen-on port 53 { any; };     /*开启53端口*/
	allow-query     { any; };
	dnssec-validation no;
Vim /etc/named.rfc1912.zones
	zone "westos.com" IN {
	        	type slave;      ##辅助dns
	        	masters { 172.25.60.251;};     /*为172.25.60.251主机服务*/
	        	file "slaves/westos.com.zone";     /*读取的配置文件为 slaves目录下的westos.com.zone文件*/
	       	 allow-update { none; };
		};
vim /etc/resolv.conf
	nameserver 172.25.60.253     /*dns指向为辅助机自己*/ 	
systemctl restart named

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置主dns主机

vim /etc/named.conf 		##注释掉原来的双向解析
vim /etc/named.rfc1912.zones
	zone "westos.com" IN {
	        type master;
	        file "westos.com.zone";
	        allow-update { none;};
	        also-notify { 172.25.60.253; };
	};
systemctl restart named

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:在辅助dns中dig www.westos.org
在这里插入图片描述

9.DNS的更新

9.1 基于ip的更新
getenforce		##查看selinux的状态
setenforce 0	##如果selinux为强制状态,修改为警告状态
vim /etc/named.rfc1912.zones
	zone "westos.org" IN {
	        type master;
	        file "westos.org.zone";
	        allow-update { 172.25.254.226; };	##允许226这台主机对dns进行更新
	        also-notify { 172.25.254.226; };
	};
systemctl restart named
cp westos.com.zone /mnt/ -p		##对westos.com.zone文件进行更新
chmod g+w /var/named/			##给named组写权限

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试:
可以更新dns的主机:172.25.60.253
在这里插入图片描述
dns主机查看是否有更新
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9.2 基于密钥的更新
1
rm -fr westos.org.zone*		##删除前一个实验中生成的文件
cp -p /mnt/westos.org.zone .
systemctl restart named
2
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos
	-a 加密方式HMAC-MD5
	-b 加密长度128
	-n 加密对象HOST
cat Kwestos.+157+41898.key 
cp -p /etc/rndc.key /etc/westos.key
vim /etc/westos.key

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3
vim /etc/named.conf 
	include "/etc/westos.key";
systemctl restart named
scp Kwestos.+157+41898.* root@172.25.254.226:/mnt/

在这里插入图片描述
在这里插入图片描述

4
vim /etc/named.rfc1912.zones 
	zone "westos.com" IN {
	        type master;
	        file "westos.com.zone";
	        allow-update { key westos; };
	        also-notify { 172.25.60.253; };
	};
systemctl restart named

在这里插入图片描述
在这里插入图片描述
测试:
拥有钥匙的主机ip–172.25.60.253
在这里插入图片描述
主dns是否更新:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值