天天看点

linux之DNS基础配置

DNS:domain Name Service  监听在53/udp, 53/tcp

        C/S架构:S(bind)、C(共享)

        bind:bekerley internet name domain

FQDN:Full Qualified Domain Name完全限定域名

www.magedu.com.: FQDN      

magedu.com:域名      

主机名解析 :把一种名称转换为另一种名称的过程 ,一般指字串和数字之间的转换。      

解析库:某种存储      

        username (主机名)<--> uid(IP) 

某种存储:      

        文本文件      

        关系型数据库      

        LDAP:Lightweight Directory Access Protocol(轻量目录访问协议),监听在 389/tcp

解析:根所用户所提供一种名称,去查询解析库,以得到另一种名称      

解析的过程为,先读取hosts文件中有没有定义,如果没有去本地缓存查找,再去权威服务器缓存查找,最后向根服务器发出请求,中心服务器返回查找路径信息,再由权威服务器发起请求。知道返回请求IP。

linux之DNS基础配置

根域:root domain      

一级域:top-level domain      

二级域:公司、组织、个人使用      

主机:www      

递归:      

A --> B --> C --> D      

迭代:      

A --> B      

A --> C      

A --> D      

DNS解析过程中:主机向权威DNS服务器请求是递归,权威服务器请求解析的过程是迭代。 

DNS中的名称与对应的主机的主机名不要求是一样的。      

一个名称可以对应多个IP      

一个IP上也可以多个名称

一级域:      

组织域:.com, .org, .net, .mil, .edu, .gov, .info, .cc, .me, .tv      

国家域:.cn, .us, .uk, .jp, .tw, .hk, .iq, .ir      

反向域:.in-addr.arpa      

域:domain, 区域:zone

域:每一个域都要有正反向解析文件,是一个物理概念,域和域之间是互联的

区域:是一个域的范围,里边包含这个区域的所有主机。      

DNS正向解析:FQDN --> IP      

正向解析库      

DNS反向解析:IP --> FQDN      

反向解析库 

区域解析库:      

资源记录:rr(resource record)      

有类型的概念:用于此记录解析的属性      

SOA: Start Of Authority,主DNS服务器 起始授权记录,一个区域文件只能有一个;      

NS:Name Server ,从DNS服务器。      

MX: Mail eXchange, 邮件交换器,MX记录有优先级属性(0-99);      

A:FQDN --> IP,专用于正向解析库      

PTR: IP --> FQDN,专用于反向解析库      

AAAA:FQDN --> IPv6,专用于正向解析库      

CNAME: Canonical Name,正式名称      

解析库文件同步的过程:区域传送 (单方向传送) zone transfer      

完全区域传送:axfr      

增量区域传送: ixfr      

主从服务器之间解析库的同步是通过:周期性检查 + 通知 维护的,查询基于UDP协议,传送基于TCP协议。      

资源记录类型:      

        任何解析库文件的第一个记录的类型必须是SOA      

        格式:name [ttl] IN RRType value(IP地址)      

        name: 区域名称,通常可以简写为@      

        value: 主DNS服务器的FQDN,也可以当前区域的区域名称;      

主DNS服务器配置:

例如:@	 IN SOA ns.magedu.com. admin.magedu.com. ( 
           serial number ;解析库的版本号,例如2014080401 
           refresh time ;周期性同步的时间间隔 
           retry time ;重试的时间间隔 
           expire time ;过期时长 
           negative answer ttl ;否定答案的统一缓存时长 
            )
           

从DNS服务器配置:

NS:name server

name: 区域名称

value: DNS服务器的FQDN

例如:@ IN NS ns.magedu.com.

        注意:

        如果有多台NS服务器,每一个都必须有对应的NS记录;

        对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录;

MX:Mail eXchanger

name: 区域名称

value: 邮件服务器的FQDN

        例如:

        @ IN MX 10 mail.magedu.com.

        @ IN MX 20 mail2.magedu.com.

        注意:

        如果有多台MX服务器,每一个都必须有对应的MX记录;但各MX记录还有优先级属性

        对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录;

A: Address

        name: FQDN

        value: IP

        例如:

www.magedu.com. IN A 1.1.1.1

www.magedu.com. IN A 1.1.1.2

pop3.magedu.com. IN A 1.1.1.3 

imap.magedu.com. IN A 1.1.1.3 

CNAME: Canonical Name

        name: FQDN

        value: FQDN

        例如:

        www.magedu.com. IN A 1.1.1.5

        web.magedu.com. IN CNAME www.magedu.com.

linux之DNS基础配置

PTR: pointer

        name: 逆向的主机IP地址加后缀in-addr.arpa,例如172.16.100.7/16, 网络地址为172.16, 主机地址为100.7,其name为7.100.in-addr.arpa.

        value: FQDN

        例如:

        7.100.in-addr.arpa. IN PTR www.magedu.com.

DNS服务器的基本配置步奏: 

(1)首先安装bind程序包。

(2)修改主配置文件。

        1)定义区域

        /etc/named.conf

options {  
                    全局配置段;  
                    // directory "/var/named";  
                    };  
        zone "ZONE_NAME" IN {  
                    type {master|slave|hint|forward};  
                    file "mageedu.com.zone";  
                    };  
        logging {  
                    日志; 
                    };      
linux之DNS基础配置

服务脚本:/etc/rc.d/init.d/named

主配置文件:/etc/named.conf, /etc/named.rfc1912.zones

zone "localhost.localdomain" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};                                              ------------------>解析式解析为/etc/named.conf中定义的IP
zone "localhost" IN {
        type master;
        file "named.localhost";
        allow-update { none; };
};                                              ------------------->解析式解析为/etc/named.conf中定义的IP
zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};                                             -------------------->ipv6本地地址的反向解析
zone "1.0.0.127.in-addr.arpa" IN {
        type master;
        file "named.loopback";
        allow-update { none; };
};                                             --------------------->127.0.0.1的反向解析
zone "0.in-addr.arpa" IN {
        type master;
        file "named.empty";
        allow-update { none; };
};                                            ----------------------->空地址的反向解析
zone "aolens.com" IN {
        type master;
        file “/etc/named/aolens.com.zone";    -------->aolens.com.zone文件存在于directory定义的目录下/etc/named/
};                                            ------------------------>自定义的解析名      

检查name.conf文件有没有错误

name-checkconf

service named configtest

还可以检查某一块是否有错误;

linux之DNS基础配置

如果应为随机数不够而卡在这个步奏,一个是多敲键盘,另一个是改变/etc/rc.d/init.d/named文件中在

linux之DNS基础配置

service named status

linux之DNS基础配置

rndc: remote name domain controller 远程域名控制   监听在953/TCP端口。

重新载入文件rndc redoad

区域解析库文件:/var/named/zone_name.zone

我们在/etc/named.conf, /etc/named.rfc1912.zones 中配置了aolens.com.zone文件,那么便要配置此文件,没有创建,命名为aolens.com.zone

linux之DNS基础配置

并且配置此文件的属组和权限

属组要求为named

权限要求644

linux之DNS基础配置

检测配置文件是否有错

service named configtest或

named-checkconf检测完整文件

named-checkzone "aolens.com" /var/named/aolens.com.zone检测部分块

linux之DNS基础配置

service named reload重新载入    或者    rndc  reload       只有不改监听的端口就可以使用reload

linux之DNS基础配置

第一次ping www.aolens.com 没有ping通,我们发现是/etc/resolv.conf文件中IP没有指向自己,改为aolens.com指向的IP就可以了。

linux之DNS基础配置

而ping命令测试略显拙劣,我们bind-utils程序包里有一下测试工具,常用的就 dig、host、nslookup

linux之DNS基础配置

而使用这三款工具时/etc/resolv.conf中的IP指向谁都没问题。

(1)host

host -t RRType NAME [SERVER]

解析出www.aolens.com

linux之DNS基础配置

查看aolens.com的DNS服务器的域名是什么?

linux之DNS基础配置

(2)nslookup

nslookup >

server IP

set type={A|SOA|NS|MX|...}

name      例如在此例子中是www.aolens.com

linux之DNS基础配置

(3)dig

dig -t TYPE name @server 

dig -t A www.aolens.com @192.168.1.159

linux之DNS基础配置

AXFR完全区域传送

linux之DNS基础配置

我们连上网

dig -t A www.baidu.com     下边便是www.baidu.com的解析过程

linux之DNS基础配置

dig: 查询选项

+trace

+notrace

+recurse

+norecurse

反向区域:

区域名称为逆向网络地址加.in-addr.arpa做后缀

在主配置文件:/etc/named.conf, /etc/named.rfc1912.zones

添加

zone "1.168.192.in-addr.arpa." IN {
        type master;
        file "1.168.192.zone";
};      

named-checkconf检测有无语法错误

创建1.168.192.zone文件在/var/named/

内容:

$TTL 3600 
@ IN SOA ns.aolens.com. admin.aolnes.com. ( 
              2014080401 
              2H 
              10M 
              7D 
              2D ) 
      IN NS ns.aolens.com. 
159   IN PTR ns.aolens.com. 
161   IN PTR www.aolens.com      

named-checkzone "1.168.192.in-addr.arpa" /var/named/1.168.192.zone检测有无语法错误。

service named reload加载

linux之DNS基础配置

host -t PTR 192.168.1.161 192.168.1.159解析161的主机名

linux之DNS基础配置

反解成功!!!

转载于:https://blog.51cto.com/aolens/1536624

继续阅读