高速缓存dns

来源:互联网 发布:ubuntu ssh 离线安装包 编辑:程序博客网 时间:2024/06/05 22:58

一 DNS

DNS(Domain Name System,域名系统):
   安装服务
bind.x86_64 
   bind的主配置文件是
/etc/named.conf
   /var/named:包含名称服务器所使用的其他数据文件

 • DNS 区域采用资源记录的形式存储信息,每条资源记录均具有一个类型, 表明其保留的数据类型。
    – A : 名称至 IPv4地址
    – AAAA : 名称至IPv6 地址
    – CNAME : 名称至” 规范名称 “ ( 包含 A/AAAA 记录的另一个名称 )
    – PTR : IPv4/IPv6 地址至名称

    – MX : 用于名称的邮件交换器 ( 向何处发送其电子邮件 )
    – NS : 域名的名称服务器

    – SOA :” 授权起始“ , DNS 区域的信息 ( 管理信息 )

 DNS 排错:

 • 它显示来自 DNS 查找的详细信息 , 其中包括为什么查询失败 :
    – NOERROR : 查询成功

    – NXDOMAIN : DNS 服务器提示不存在这样的名称
    – SERVFAIL : DNS 服务器停机或 DNSSEC 响应验证失败
    – REFUSED : DNS 服务器拒绝回答 ( 也许是出于访问控制原因 )

 dig 输出的部分内容

 • 标题指出关于查询和答案的信息, 其中包括响应状态和设置的任何特殊标记 ( aa 表示权威答案 , 等等 )
    – QUESTION : 提出实际的 DNS 查询

    – ANSWER : 响应( 如果有 )
    – AUTHORITY : 负责域 / 区域的名称服务器

    – ADDITIONAL : 提供的其他信息 , 通常是关于名称服务器
    – 底部的注释指出发送查询的递归名称服务器以及获得响应所花费的时间

dns域名解析

dig 域名 用来解析一个域名

第一次访问一个域名的时候花费的时间会比较长,但是当你第一次解析过之后,再次解析就会减少花费时间,

dns高速缓存,作用是提高本地其他人的访问速度,

##一.安装部署dns

yum install bind.x86_64 -y (用yum search 寻找出来的)

systemctl start named (敲键盘用来生成随机密码)

systemctl enable named

systemctl stop firewalld

systemctl disable firewalld

启动named的时候要敲键盘,那样会生成/etc/rndc.key

dns的文件 /etc/resolv.com

端口是53,但是开在回环接口只是在本机内部,外部接受不到,所以当你开启服务的时候,却依然无法使用其他主机的网络服务,所以需要将这个端口开到他的网卡上去,报错的原因是你的服务不可到达,因为是开在了回环接口上。

主配置文件:/etc/named.conf

子配置文件: /etc/name.rfc1912.zones

数据目录: /var/name


二.高速缓存dns

vim /etc/named.conf

11行 listen-on port 53 {any;};后面的ip改为any ##接口在所有的网络地址打开

17行 allow-query {any;};后面localhost 改成any ##能够查询你当前dns的客户群体

18行添加: forwarders {172.25.254.250;}; ##当你的dns被询问地址却不知道的时候就会去250寻找

测试


在客户主机

vim /etc/resolv.conf

nameserver 172.25.254.100

dig www.baidu.com

三.权威dns的正向解析 ##给定一个域名,会解析出来IP

vim /etc/name.rfc1912.zone

zone "westos.com" IN {

type master;

file "westos.com.zone";

allow-update {none;};

}

cd /var/name/

cp -p named.localhost westos.com.zone

vim westos.com.zone

  1 $TTL 1D

  2 @       IN SOA  dns.westos.com. root.westos.com. (

  3                                         0       ; serial

  4                                         1D      ; refresh

  5                                         1H      ; retry

  6                                         1W      ; expire

  7                                         3H )    ; minimum

  8         NS      dns.westos.com.

  9 dns     A       172.25.254.238

 10 www     A       172.25.254.111

测试:

dig www.westos.com

四.反向解析 ##给定一个IP,给你解析出来域名

vim /etc/named.rfc1912.zones

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

type naster;

file "westos.com.ptr";

allow-update {none;};

};

cp named.loopback westos.con.pyr -p

vim westos.com.ptr

  1 $TTL 1D

  2 @       IN SOA   dns.westos.com. root.westos.com. (

  3                                         0       ; serial

  4                                         1D      ; refresh

  5                                         1H      ; retry

  6                                         1W      ; expire

  7                                         3H )    ; minimum

  8         NS      dns.westos.com.

  9 dns     A       172.25.254.138

 10 138     PTR     www.westos.com.

 

 

systemctl restart named

 

测试:

dig -x 172.25.254.138

五.dns双向解析

vim /etc/named.conf

 51 view localnet {

 52         match-clients {172.25.254.38;};

 53         zone "." IN {

 54                 type hint;

 55                 file "named.ca";

 56 };

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

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

 59 };

 60 view any {

 61         match-clients {any;};

 62         zone "." IN {

 63                 type hint;

 64                 file "named.ca";

 65 };

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

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

 68 };

cp /etc/named.rfc1912.zones /etc/named.rfc.1912.zones.inter

vim /etc/named.rfc1912.zones.inter

 24 zone "westos.com" IN {

 25         type master;

 26         file "westos.com.inter";

 27         allow-update { none; };

 28 };

 

cp -p westos.com.zone westos.com.inter

vim westos.com.inter

  1 $TTL 1D

  2 @       IN SOA  dns.westos.com. root.westos.com. (

  3                                         0       ; serial

  4                                         1D      ; refresh

  5                                         1H      ; retry

  6                                         1W      ; expire

  7                                         3H )    ; minimum

  8         NS      dns.westos.com.

  9 dns     A       1.1.1.238

 10 www     A       1.1.1.138

dns的配置文件比较特殊,注释等于全部开启。

当你在主dns进行过更改的时候如果不修改serial(对比一致性,来自westos.com.inter)的值(最大十位,超过不生效,所以一般使用年月日和第几次修改做标示,正好十位),辅助dns不会进行识别,

stat westos.com.inter 可以查看同步信息,

##六.辅助dns

dns的设定

vim /etc/named.rfc1912.zones.inter ##修改的话最好不要用最近使用过的数字,因为可能存在缓存,导致同步不成功

systemctl restart named

注意:每次更改A记录文件后必须更改serial的数值,这个数值最大十位。

辅助dns上

yum install bind -y

systemctl start named

systemctl stop firewalld

vim /etc/named.conf ##修改的内容和刚刚开始配置dns服务一样的修改,两个地方改成any

vim /etc/named.rfc1912.zones

zone "westos.com" IN {

        type slave;

        masters{172.25.254.238;};

        file "slave/westos.com.inter";

        allow-update { none; };

 };

systemctl restart named

测试

/etc/reslove.conf分别修改两个dns的地址,然后dig尝试

七.dns的远程更新

做下一个实验之前 cp -p /var/named/westos.com.inter /mnt/

vim /etc/named.rfc1912.zone.inter

zone "westos.com" IN {

        type master;

        file "westos.com.inter";

        allow-update { 172.25.254.138; };

        also-notify {172.25.254.138; };

};

 

systemctl restart named

#测试

#在远程主机中 nsupdate

#> server 172.25.254.100 #添加

#> updata add bbs.westos.com 86400 A 1.1.1.3

#> send

#> server 172.25.254.100 #删除

#> update delete bbs.westos.com

#> send

#

#基于key的

cp /etc/rndc.key /etc/westos.key -p

dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos

cat Kwestos+的密钥

vim /etc/westos.key

 key "rndc-key" {

       algorithm hmac-md5;

       secret "5eGJvqN9mw1NiYqQx3CQmA==";

};

 

vim /etc/named.conf

include "/etc/westos.key";

 

logging {

        channel default_debug {

                file "data/named.run";

                severity dynamic;

        };

};

 

vim /etc/named.rfc1912.zones.inter

zone "westos.com" IN {

        type master;

        file "westos.com.inter";

        allow-update { key westos; };

        also-notify {172.25.254.138; };

};

 

测试

scp 把公钥和私钥都考过去

在有key的主机中执行nsupdate


七、配置DDNS 

用DHCP来更新DNS服务器