DNS and BIND基本概念梳理

DNS and BIND
    C/S:
        client:发起应用请求的程序
        server:响应请求(提供服务)的程序
            LISTEN:Socket
    DNS:传输层协议
        C/S
            UDP 53
            TCP 53
        DNS查询类型:
            递归查询:
            迭代查询:
        DNS名称查询方式:
            名称-->IP:正向解析
            IP-->名称:反向解析
                解析过程:(www.baidu.com)
                客户机---(递归)--->本地DNS服务器------>根域.------>.com------>baidu.com
                客户机域名请求解析顺序:
                    客户机--->本地hosts文件--->本地dns服务器-->...
                服务器对域名请求的处理顺序
                    DNS缓存--->本地区域解析文件--->转发器--->根域
        按查询内容分:
            正向解析:已知域名,解析地址
            反向解析:已知地址,解析域名
        域名解析记录类型:
            SOA记录:起始授权记录
            A记录:正向解析记录
            CNAME记录:别名
            PTR记录:反向解析记录
            MX记录:邮件交换记录
            NS记录:域名服务器解析记录
                优先级:0-99,数字越小越优
            资源记录的定义格式:      
                name   [TTL]   IN   RR_TYPE   value
                SOA:
                    name:当前区域的名字
                    value :有多部分组成
                        (1)当前区域的区域名称(也可以使用主DN5服务器名称)
                        (2)当前区域管理员的邮箱地址;但地址中不能使用@符号,一般使用点号来替代
                        (3)(主从服务协调属性的定义以及否定答案的TTL)
                NS:
                    name:当前区域的区域名称
                    value :当前区域的某DNS服务器的名字
                    注意: 一个区域可以有多个ns记录
                MX :
                    name:当前区域的区域名称
                    value :当前区域某邮件交换器的主机名
                    注意: MX记录可以有多个,但每个记录的value之前应该有一个数字表示其优先级
                A:
                    name :某FQDN,例如www.magedu.com
                    value :某IPv4地址
                AAAA:
                    name : FQDN
                    value: IPv6
                PTR :
                    name : IP地址,有特定格式,IP反过来写而且加特定后缀
                    value : FQND

                CNAME :
                    name : FQDN格式的别名
                    value : FQDN格式的正式名字
            注意:
                (1)TTL可以从全局维承
                (2)@表示当前区域的名称
                (3)相邻的两条记录其name相同时,后面的可省略
                (4)对于正向区域来说各MX,NS等类型的记录的value为FQDN。此FQDN应该有一个A记录
        DNS服务器分类:
            主要名称服务器
            辅助名称服务器
            根名称服务器
            高速缓存名称服务器
    BIND的安装与配置:
        BIND是DNS协议的实现,包含对域名查询和响应的所需的所有软件
        yum info 软件包 :查询相关的软件包信息
        named:bind程序运行的进程名
        程序包:
            bind-libs:被bind和bind-utls包中的程序共同用到的库文件
            bind-utls:bind客户端程序集。例如dig,host, nslookup等
            bind :提供的dns server程序、以及几个常用的测试程序
            bind-chroot:选装,让bind程序(named进程)运行于jail进程之下
        bind:
            主配置文件:/etc/named.conf,或包含其他文件
            解析库文件:/var/named目录下,一般为ZONE_NAME.zone
            注意:
                (1)-台DNS服务器可同时为多个区域提供解析
                (2)必须要有根区域解析库文件: named.ca
                (3)还应该有两个区域解析库文件: localhost和127.0.0.1的正反向解析库
                    正向: named.localhost
                    反向: named.loopback    
            rndc :953/TCP ,但默认监听于127.0.0.1地址,因此仅允许本地使用
            bind程序安装完成之后,默认即可做缓存名称服务器使用;如果没有专门负责解析的区域.直接即可启动服务
                systemctl start named.service
            主配置文件格式:
                全局配置段:
                    options{...}
                日志配置段:
                    logging{...}
                区域配置段:
                    zone{...}
                    注意:每一个配置必须以分号结尾,否则语法错误
                缓存名称服务器的配置:
                    监听能与外部主机通信的地址:...
                        学习时建议关闭dnssec
                配置文件的语法检查:
                    named-checkconf
                测试工具:
                    dig、host、nslookup等
                    dig -t A www.baidu.com:查看baidu的A记录
                    host -t NS www.baidu.com
                    nslookup进入交互模式
                    rndc命令:
                        rndc status:查看当前DNS服务器的状态
                        rndc flush:清空当前DNS服务器上的所有缓存
 

发布了43 篇原创文章 · 获赞 347 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_45331873/article/details/105386000