redhat7.0配置高速缓存DNS

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

UDP(用户数据报协议),是OSI(开放式系统互联)参考模型中一种无连接的传输层协议,提供面向事物的简单不可靠信息传送服务。

学习目标:配置高速缓存DNS,了解DNS的功能与用途。

DNS资源记录:DNS采用资源记录的形式存储信息。每条记录均记录具体一个类型,表明其保留的数据类型

— A : 名称至 IPv4 地址(正向记录,域名到IP)

— AAAA : 名称至 IPv6 地址

— CNAME : 名称至 "规范名称" (包含A/AAAA 记录的另一个名称)

— PTR : IPv4/IPv6地址至名称(反向记录,IP到域名)

— MX : 用于名称的邮件交换器(向何处发送其电子邮件)

— NS : 域名的名称服务器

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

DNS排错:通过显示的信息来判断和分析为什么DNS查找的信息失败。

— NOERROR : 查询成功

— NXDOMAIN : DNS 服务器提示不存在这样的名称

— SERVFAIL : DNS 服务器停机或 DNSSEC响应验证失败

— REFUSED : DNS 服务器拒绝回答(也许是出于访问控制原因)

缓存 DNS 服务器

BIND 是最广泛使用的开源名称服务器,在 RHEL 中,通过bind软件包提供,防火墙开启端口53/tcp 和 53/udp ,bind 的主配置文件是 /etc/named.conf , /var/named 目录包含名称服务器所使用的其他数据文件。

配置DNS服务器

安装 bind 软件包

        yum install bind -y

编辑 /etc/named.conf 配置文件

        listen-on port 53 { any; }; 控制 named 侦听的 IPv4 地址 ##这里是监听任何地址的53端口(any改为localhost,监听本地53端口)

        allow-query { any; }; 控制哪些客户端可以向 DNS 服务器询问信息   ##允许与任何直连的网络使用(any改为localhost,允许与本地直连的网络使用)

        dnssec-validation no;是否进行DNSSEC确认开关

重启服务

        systemctl restart named

/etc/named.conf 文件还有一些重要的参数,例:

        listen-on-v6 port 53  控制 named 侦听的 IPv6 地址

        forwarders  { IP; };   包含 DNS 查询将转发至指定名称服务器的列表。(而不是直接联系外部名称服务器,在设有防火墙的情况中很有用。)

如何配置 DNS 的正向解析

编辑配置文件 vim /etc/named.rfc1912.zones

            加入以下内容: zone "westos.com" IN {                        #指定要维护的域名

                                                    type master;                                

                                                    file "westos.com.zone";             #指定A记录文件名

                                                    allow-update { none; };

                                         };

编辑A记录文件:

        cd /var/named

        cp -p named.localhost westos.com.zone

        vim westos.com.zone

                 wKiom1d9AsWRz5CgAABWJOrJ5LM608.png-wh_50

        systemctl restart named            #重启服务

        dig hello.westos.com                 #dig 查看A记录解析情况

如何配置 DNS 的反向解析

编辑配置文件  vim /etc/named.rfc1912.zones

        加入以下内容:    zone "254.25.172.in-addr.arpa" IN {
                                                    type master;
                                                    file "westos.com.ptr";
                                                    allow-update { none; };
                                        };

        cd /var/named

        cp -p westos.com.zone westos.com.ptr

        vim westos.com.ptr

        wKioL1d9DYewQ9nwAABni4dPQbE136.png-wh_50

        systemctl restart named

        dig -x 172.25.254.100                # dig 查看反向解析情况

配置 DNS 正向解析的类型

        cd /var/named

        vim westos.com.zone

        wKioL1d9G-uB4rgOAAB47LleuAc813.png-wh_50

        systemctl restart named

        dig mx westos.com            #dig 查看 MX 解析记录

        注:CNAME(别名,此记录用于将某个别名指向到某个某个主机(A),记录上,从而无需为某个新名字解析的主机额外创建A记录)。

                MX(邮件交换器),此记录列出了负责接收发到域中的电子邮件的主机,通常用于邮件的收发。

                NS(名称服务器),此记录指定负责此DNS区域的权威服务器。

如何配置 DNS 内外网解析

在desktop主机上添加一块网卡,配置 IP 为192.168.0.100

        cp -p /etc/named.rfc1912.zones  /etc/named.inter.zones

        vim /etc/named.inter.zones

              加入以下内容: zone "westos.com" IN {                       

                                                    type master;                                

                                                    file "westos.com.inter";       

                                                    allow-update { none; };

                                         };

        vim /etc/named.conf

        wKioL1d9KcKBzbwwAADT4zC5OCI661.png-wh_50

        cd /var/named

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

        vim westos.com.inter

        wKioL1d9KlDQR0xPAAB9yBM6cys984.png-wh_50

        systemctl restart named

        用 dig 命令查看解析情况

        以下操作在客户端 server 主机上进行

        vim /etc/resolv.conf

        加入以下内容: nameserver 172.25.254.100

        用 dig 命令查看外网解析情况

如何配置 DNS 文件同步

       在desktop上执行以下操作:

        vim /etc/named.rfc1912.zones

        wKioL1d92x_DMZnRAAA3AmG7aws778.png-wh_50

        systemctl restart named

        在server上执行以下操作:

        yum install bind -y

        systemctl start named

        vim /etc/named.conf

        wKiom1d929zTRcD1AAFZbVWyEGU698.png-wh_50

        vim /etc/named.rfc1912.zones

        wKioL1d93D_xR1b1AAA3go_kkxA955.png-wh_50

        systemctl restart named

        cd /var/named/slaves

        ls

        生成westos.com.zone文件,文件内容和desktop主机上的一样

        在desktop主机上修改westos.com.zone配置文件

        wKiom1d99ArSXrPXAABgH17gaFk483.png-wh_50

        systemctl restart named

        dig bbs.westos.com         ##dig解析出来的IP 为修改后的IP

        在servcer主机上进行解析,显示的内容为原来的内容,因为在服务端上修改DNS客户端不能进行同步,这样的缺点就是客户端不能实时的对服务器的信息进行同步,造成信息的不正确性。

如何解决DNS服务端和客户端数据同步的问题

        在desktop 主机上进行如下操作:

        vim /etc/named.rfc1912.zones

        

wKioL1d9-GfhmI4rAABEX02Ake0495.png-wh_50

        在配置文件中加入 also-notify { 172.25.254.200; }; 这个参数

        vim /var/named/westos.com.zone

        wKiom1d9-QfxxKaCAABncOhhxsM809.png-wh_50

        systemctl restart named

        dig bbs.westos.com        #dig 查看解析的IP为172.25.254.123

        在客户端server上,

        dig bbs.westos.com            #dig 查看解析的IP 为 172.25.254.123

如何配置DNS可以实现通过客户端同步服务器的信息

        在desktop 服务器上编辑配置文件

        vim /etc/named.rfc1912.zones

        wKiom1d-BGWSBdbEAABKKyqTGv8427.png-wh_50

        systemctl restart named

        chmod g+w /var/named

        参数allow-update { 172.25.254.200; };    #通过IP为172.25.254.200 的客户端可以进行文件的更新

        在server客户端上执行以下操作:

        wKiom1d-BS_QYACRAAAutAJDa-I707.png-wh_50

        dig redhat.westos.com         #查看解析情况

        这样做的安全级别不高,因为任何客户端都可以对服务端进行数据的更新,我们需要通过加密的方式进行更新,只有拥有密钥的客户端才可以对服务器的数据进行更新,解决安全的问题。

        在desktop服务器上进行如下操作:

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

        cd /mnt/

        dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos        ##此命令生成私钥

        wKiom1d-clvC0ugkAABLD68J5E8811.png-wh_50

        vim /etc/westos.key

        wKiom1d-cwDh0NiJAAAtA3Qulnk385.png-wh_50

        vim /etc/named.conf

        在第43行加上 include "/etc/westos.key";

        vim /etc/named.rfc1912.zones

        wKiom1d-dAbgorSnAABE-IjViro468.png-wh_50

        systemctl restart named

        scp Kwestos.+157+14602.* [email protected]:/mnt/        #将密钥给IP为200的客户端

        在server客户端上

        nsupdate -k Kwestos.+157+14602.private        #进行数据更新

        

        



    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章