Linux中的高速缓存DNS

1.DNS 查找

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

2.DNS资源记录

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

3.DNS排错

  • 它显示来自 DNS 查找的详细信息 , 其中包括为什么查询失败
  • NOERROR : 查询成功
  • NXDOMAIN : DNS 服务器提示不存在这样的名称
  • SERVFAIL : DNS 服务器停机或 DNSSEC 响应验证失败
  • REFUSED : DNS 服务器拒绝回答 ( 也许是出于访问控制原因 )

4.dig输出的部分内容

  • 标题指出关于查询和答案的信息,其中包括响应状态和设置的任何特殊标记(aa 表示权威答案 ,等等)
  • QUESTION:提出实际的DNS查询
  • ANSWER :响应(如果有)
  • AUTHORITY:负责域/区域的名称服务器
  • ADDITIONAL:提供的其他信息,通常是关于名称服务器
  • 底部的注释指出发送查询的递归名称服务器以及获得响应所花费的时间

5.缓存DNS服务器

准备工作

在虚拟机上设置好网关以及yum源

在真机上设置好防火墙

(在虚拟机上配置网关时,如果ping不通114.114.114.114 ,检查真机防火墙是否开启,在防火墙开启的状态下输入firewall-cmd --add-masquerade,再查看虚拟机是否能ping通114)

 firewall-cmd --add-masquerade
  firewall-cmd --list-all

安装高速缓存DNS软件

yum install bind -y (安装高速缓存DNS软件)
在这里插入图片描述

systemctl start named (开启高速缓存服务)

在这里插入图片描述
vim /etc/named.conf (编辑配置文件)

13行   {any;}; 让53端口开放到所有接口上
19行   {any; }; 允许任何人来查询
20行   forwarders {114.114.114.114;};
33行   dnssec-validation no;  取消DNS安全性检测

在这里插入图片描述
在这里插入图片描述
systemctl restart named (配置好后重启服务)

检测
第一次输入dig www.baidu.com 查看延迟
在这里插入图片描述
第二次输入dig www.baidu.com查看延迟
在这里插入图片描述

在另一台虚拟机上
配置好网关:

vim /etc/resolv.conf 在其中写入:

nameserver 172.25.254.204  (刚才配置高速缓存的虚拟机的ip)

在这里插入图片描述
systemctl stop firewalld关闭防火墙

检测
在之前的虚拟机上输入dig www.taobao.com

在这里插入图片描述
在当前的虚拟机输入dig www.taobao.com查看延迟

在这里插入图片描述
可以看到配置了高速缓存后查询速度明显变快。

正向解析

1)
vim /etc/named.conf 注释主配置文件中的forwarders{ 114.114.114.114; };

2)
vim /etc/named.rfc1912.zones
写入如下图内容:
在这里插入图片描述
3)
cd /var/named/
cp -p(复制时加上权限) name.localhost westos.com.zone
在这里插入图片描述
vim westos.com.zone在文件中写入入下图内容
在这里插入图片描述

4)
systemctl restart named 重启服务

5)
检测:
dig www.westos.com
在这里插入图片描述
dig dns.westos.com

在这里插入图片描述

dig dns.westos.com在这里插入图片描述
在另一台虚拟机上检测:
vim /etc/resolv.conf
写入:namesever 172.25.254.104(刚才配置好正向解析的虚拟机ip)
dig www.westos.com
dig dns.westos.com
dig bbs.westos.com

(检测时,如果在另一台虚拟机上查询不出,可能是没有关闭两台虚拟机的防火墙)

CNAME域名转换:
vim westos.com.zone
写入:

www	CNAME	bbs.westos.com.
bbs	A	172.25.254.111

在这里插入图片描述
配置域名转换后,当查询www.westos.com时,会自动转换到bbs.westos.com

解析轮询:
vim westos.com.zone
写入:

www	A	172.25.254.111
www	A	172.25.254.100

在这里插入图片描述
配置解析轮询后,查询时会轮流显示配置好的ip

邮件接收
vim westos.com.zone
写入:

westos.com.	MX 1	mail.westos.com.
mail		A	172.25.254.200

在这里插入图片描述
可以指定由哪台主机接收邮件

反向解析

1)
vim /etc/named.rfc1912.zones
写入如下图内容:
在这里插入图片描述
2)
cp -p named.loopback 172.25.254.ptr
vim 172.25.254.ptr
写入如下图内容:
在这里插入图片描述

3)
systemctl restart named 重启服务

4)
测试:
dig -x 172.25.254.100
在这里插入图片描述
dig -x 172.25.254.111
在这里插入图片描述

双向解析

1)
cp -p westos.com.zone westos.com.inters
vim westos.com.inters 把里面的172改成192
在这里插入图片描述
2)
cp named.rfc1912.zones named.rfc1912.inters
vim named.rfc1912.inters
写入:
在这里插入图片描述

3)
vim /etc/named.conf
写入:
在这里插入图片描述
在这里插入图片描述
4)
systemctl restart named

5)
测试:
在服务端本身测试:dig www.westos.com
在这里插入图片描述
解析出192表示内网

在另一台虚拟机测试:dig www.westos.com
在这里插入图片描述
解析出172表示外网

主从集群

打开另一台虚拟机server当作辅助DNS,配置好网络以及yum源

注意:

  • 配置yum源时,当写gpgcheck=1时,需要在写一行gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG表示在安装软件时进行一个校验
  • 以真机为yum源安装软件时,关闭真机防火墙,安装好后,打开防火墙,输入firewall-cmd --add-masquerade设置好防火墙

在server上安装好bind软件后,vim /etc/named.conf编辑好主配置文件。

1)
主DNS:
vim /etc/name.rfc1912.zones
写入:
also-notify {172.25.254.204;};
在这里插入图片描述
systemctl restart named 重启服务

2)
辅助DNS
systemctl stop firewalld 关闭防火墙

vim /etc/resolve.conf
写入:nameserver 172.25.254.204(辅助DNS ip)
在这里插入图片描述
vim /etc/name.rfc1912.zones
写入如下图内容:
在这里插入图片描述

systemctl restart named 重启服务

3)
测验:
改变主DNS里的信息后,重启服务,辅助DNS也改变
在这里插入图片描述
在这里插入图片描述

DNS的远程更新

1)
主DNS
vim /etc/named.rfc1913.zone
写入如下图内容:
在这里插入图片描述
chmod 770 /var/named更改权限

systemctl restart named重启服务

2)
辅助DNS
如果getenforce为 enforcing状态
getsebool -a | grep named
在这里插入图片描述
setsebool -P named_write_master_zones on
在这里插入图片描述
输入命令nsupdate进行远程更新

在这里插入图片描述
更新成功

在这里插入图片描述

DNS基于key的远程更新

1)

主DNS
dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos
在这里插入图片描述
cp -p /etc/rndc.key /etc/westos.key
cat Kwestos.+157.17390.key
在这里插入图片描述
vim westos.key
写入:
在这里插入图片描述
vim /etc/name.conf
写入:
include "/etc/westos.key";
在这里插入图片描述

vim /etc/named.rfc1912.zones
写入:
allow-update {key westos;};
在这里插入图片描述
systemctl restart named重启服务

2)

测试:
辅助DNS
没有key:
不能进行更新;
在这里插入图片描述

scp root@172.25.254.104:/var/named/Kwestos* /mnt/ 传输钥匙

在这里插入图片描述
传输好钥匙后进行测试:
在这里插入图片描述
更新成功

在这里插入图片描述
(注意,进行远程更新时,如果两台虚拟机时间不一致,需要进行时间同步)

DDNS 动态域名解析(花生壳)

主DNS
vim /etc/dhcp/dhcpd.conf 配置dhcp配置文件
加入如下图内容:

在这里插入图片描述
在这里插入图片描述systemctl restart dhcpd 重启服务

辅助DNS
vim /etc/resolv.conf
写入:
nameserver 172.25.254.104 (主DNS ip)
在这里插入图片描述
设置主机名为news.westos.com
(注意:主DNS中不能有news这个域名的解析)

更改ip为dhcp模式

systemctl restart network重启网络服务
ifconfig查看ip
在这里插入图片描述

测试:
1)
输入dig news.westos.com
在这里插入图片描述
显示解析出当前辅助DNS的ip
2)

在主DNS中更改dhcp配置文件中ip的范围,
在这里插入图片描述

使辅助DNS的ip变化

在这里插入图片描述
dig news.westos.com 解析变化为当前ip

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值