标签:dns、bind
一、DNS介绍
1、简介
DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。例如它能够把www.baidu.com这样的域名转换为61.135.169.125这样的IP地址;没有DNS,浏览baidu.com这个网站时,就必须用61.135.169.125这么难记的数字来访问。
2、功能
每个IP地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。有了主机名,就不要死记硬背每台IP设备的IP地址,只要记住相对直观有意义的主机名就行了。这就是DNS协议所要完成的功能。
主机名到IP地址的映射有两种方式:
静态映射,每台设备上都配置主机到IP地址的映射,各设备独立维护自己的映射表,而且只供本设备使用;
动态映射,建立一套域名解析系统(DNS),只在专门的DNS服务器上配置主机到IP地址的映射,网络上需要使用主机名通信的设备,首先需要到DNS服务器查询主机所对应的IP地址。
通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。在解析域名时,可以首先采用静态域名解析的方法,如果静态域名解析不成功,再采用动态域名解析的方法。可以将一些常用的域名放入静态域名解析表中,这样可以大大提高域名解析效率。
3、域名结构
上图中的每一个方框都是域名中的一个词段,国际组织对于每一个段,整个域名的长度,以及能支持的字符集都有明确的规定。但是现在好像有很多网络并没有严格遵守这一规范。
域名在拼装时,是沿着这棵树的最底下的叶子节点往树根上走的,如:www.sina.com.cn,其实该域名的完整写法应该是:www.sina.com.cn. 注意这最后的一个“.”,图中右边的黑体字给出了每一层的含义。
在这棵树上面,挂有互联网上面的所有域名。如果域名不在这棵树上面,那么网站就不能被互联网上面的终端访问。
每一个方框是一个词段,其实还可以把每一个方框看成是一个域名解析服务器。他负责了他所有子树的解析。
4、FQDN和正反向解析
FQDN:(Fully Qualified Domain Name)完全合格域名/全称域名,是指主机名加上全路径,全路径中列出了序列中所有域成员。全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式。从全域名中包含的信息可以看出主机在域名树中的位置。DNS解析流程:首先查找本机HOSTS表,有的直接使用表中定义,没有查找网络连接中设置的DNS 服务器由他来解析。
正向解析:从主机名查询到IP和方式,称为:正解。及FQDN --> IP。
反向解析:从IP反解析到主机名的方式,称为:反解。及IP --> FQDN。
5、完整的域名查询过程
下图给出了完整的浏览器到最终的网站的访问的全流程:
用户电脑的解析器向LDNS发起域名解析请求,查询www.google.com的IP地址
在缓存没有命中的情况下,LDNS向根服务器查询www.google.com的IP地址
根告诉LDNS,我不知道www.google.com对应的IP,但是我知道你可以问com域的授权DNS,这个域归他管
LDNS向com的授权服务器问www.google.com对应的IP地址
com告诉LDNS,我不知道www.google.com对应的IP,但是我知道你可以问google.com域的授权DNS,这个域归他管
LDNS向google.com的授权服务器问www.google.com对应的IP地址
google.com查询自己的zone文件,找到了www.google.com对应的IP地址,返回给LDNS
LDNS本地缓存一份记录,把结果返回给用户电脑的解析器
在查询过程中一些名词:
客户端:互联网上提出域名查询请求的终端。
根域名服务器:在“域名树”的顶端,一次完整的域名查询请求的入口。
子域:域名树的上下层级关系,下级是上一级的子域。如:www.google.com. 是google.com. 的子域。
子域授权:上一级域名将子域的解析授予固定的服务器,这一过程为子域授权。
权威域名服务器:“域名树”中的每一级域名解析服务器都是权威域名服务器。这个概念是相对于本地域名解析服务器的。 当权威域名服务器能直接给出网址的IP地址时,可以直接充当本地域名解析服务器。
本地域名解析服务器:用于向网络客户端提供域名查询服务的域名服务器。该域名服务器接受网络客户端的查询,并向全球域名系统查询结果和缓存结果。
递归查询:客户端向本地域名解析服务器查询域名,最终能得到答案。
迭代查询:本地域名解析服务器向“域名树”通过多次查询得到正确的网址的地址。
6、资源记录(用于此记录解析的属性)
SOA:Start Of Authority,起始授权
NS:Name Server,域名服务器
A 地址: 此记录列出特定主机名的 IP 地址。这是名称解析的重要记录。
CNAME:标准名称 此记录指定标准主机名的别名。
MX邮件交换器:此记录列出了负责接收发到域中的电子邮件的主机。
NS名称服务器:此记录指定负责给定区域的名称服务器。
PTR:反向解析记录
AAAA:记录ipv6的地址
7、DNS服务器的类型
主DNS服务器 :本身提供DNS 服务,并且本身含有区域数据文件。
辅助DNS服务器:和Master一起提供DNS服务,当Master服务器上的配置信息修改的时候,会同步更新到Slave服务器上。
缓存名称服务器:没有自己的区域数据文件,只是帮助客户端向外部DNS请求查询,然后将查询的结果保存到它的缓存中。
说明:在linux系统下DNS服务的功能是通过bind软件实现的,几乎每个linux发行版都自带了这个DNS服务软件。
转发DNS服务器
8、区域传送
解析库文件同步的过程,即辅助DNS服务器从主DNS服务器或其他的辅助DNS服务器请求数据传输过程 。
完全区域传送:传送区域的所有数据,简称AXFR
增量区域传送:传送区域中改变的数据部分,简称IXFR
二、DNS资源记录
1、资源记录的格式:
name [ttl(缓存时间)] IN 资源记录类型(RRtype) Value
例子:
www 600(单位s) IN A 192.168.1.8 www.example.com. 600 IN A 192.168.1.8
2、SOA记录
格式说明
name:只能是区域名称,通常可以简写为@,例如:example.com.
value:有n个数值,最主要的是主DNS服务器的FQDN,点不可省略 。
注意:SOA必须是区域数据库文件第一条记录
例子:
@ 600 IN SOA na.magedu.com. 管理员邮箱(dnsadmin.example.com.)( 序列号(serial number) ;注释内容,十进制数据,不能超过10位,通常使用日期,例如2014031001 刷新时间(refresh time) ;即每隔多久到主服务器检查一次 重试时间(retry time) ;应该小于refresh time 过期时间(expire time) netgative answer ttl ;否定答案的ttl )
3、NS记录
格式说明
name:区域名称,通常可以简写为@
value:DNS服务器的FQDN(可以使用相对名称)
注意:如果有多台NS服务器,每一个都必须有对应的NS记录; 对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录;
例子:
@ 600 IN NS ns
4、MX记录:
格式说明
name:区域名称 ,用于标识smtp服务器。
value:邮件服务器的FQDN 和优先级,优先级为0-99.数字越小,越优先。
注意:如果有多台MX服务器,每一个都必须有对应的MX记录;但各MX记录还有优先级属性 ,对于正向解析文件来讲,每一个NS的FQDN都应该有一个A记录;
例如
@ IN MX 10 mail.example.com. @ IN MX 20 mail2.example.com.
5、A记录
格式说明
name: FQDN(可简写)
value: IP
注意:只能定义在正向区域数据文件中。
例如
www 600(单位s) IN A 1.2.3.4 www 600(单位s) IN A 1.2.3.5
说明:此种方法能做最简单的负载均衡,但是由于其负载均衡的规则为轮询,故使用前一定要注意。
www 600(单位s) IN A 1.2.3.4 ftp 600(单位s) IN A 1.2.3.4
说明:此种是将一个主机名定义多个名称。
6、AAAA记录
格式说明
name:FQDN(可简写)
value:ipv6 IP
7、CNAME记录
格式说明
name: FQDN
value: FQDN
例如
www IN A 172.16.10.10 ftp IN CNAME www
8、PTR记录
格式说明
name: 逆向的主机IP地址加后缀in-addr.arpa,例如172.16.10.10/16, 网络地址为172.16, 主机地址为10.10,其name为10.10.in-addr.arpa.(可简写)
value: FQDN
注意:只能定义在反向区域数据文件中,反向区域名称为逆向网络地址加.in.addr.arpa.后缀组成。
例如
10 IN PTR www.example.com.
三、安装使用bind
BIND(Berkeley InternetName Daemon)是现今互联网上最常使用的DNS服务器软件,使用BIND作为服务器软件的DNS服务器约占所有DNS服务器的九成。BIND现在由互联网系统协会(Internet Systems Consortium)负责开发与维护。此组织还维护一个很有名的软件DHCP。我们使用时安装软件名为bind,而进程名和用户名为named。
1、安装bind
[root@example.com ~]# yum install -y bind bind-utils
2、安装生成的配置文件
[root@example.com ~]# rpm -qc bind
/etc/logrotate.d/named /etc/named.conf #主配置文件 /etc/named.iscdlv.key /etc/named.rfc1912.zones #事先定义好的区域文件 /etc/named.root.key #实现事务签名的密钥文件 /etc/rndc.conf /etc/rndc.key /etc/sysconfig/named /var/named/named.ca /var/named/named.empty /var/named/named.localhost /var/named/named.loopback
3、dig命令说明
dig(域信息搜索器)命令是个用于询问 DNS 域名服务器的灵活的工具。他执行 DNS 搜索,显示从受请求的域名服务器返回的答复。多数 DNS 管理员利用 dig 作为DNS 问题的故障诊断,因为他灵活性好、易用、输出清楚。虽然通常情况下 dig 使用命令行参数,但他也能够按批处理模式从文档读取搜索请求。不同于早期版本,dig 的 BIND9 实现允许从命令行发出多个查询。除非被告知请求特定域名服务器,dig 将尝试 /etc/resolv.conf 中列举的任何服务器。当未指定任何命令行参数或选项时,dig 将对“.”(根)执行 NS 查询。
dig命令格式:
dig –t 资源记录类型名称@server-ip
dig –x IP @server-ip 反向解析
dig –t axfr zone 验证完全区域传送
dig –t ixfr zone 验证增量区域传输(通常需要指定序列号)
查询根节点:
[root@example.com ~]# dig -t NS . ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t NS . ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63456 ;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;. INNS ;; ANSWER SECTION: . 5333INNSa.root-servers.net. . 5333INNSm.root-servers.net. . 5333INNSb.root-servers.net. . 5333INNSj.root-servers.net. . 5333INNSc.root-servers.net. . 5333INNSf.root-servers.net. . 5333INNSg.root-servers.net. . 5333INNSi.root-servers.net. . 5333INNSl.root-servers.net. . 5333INNSd.root-servers.net. . 5333INNSh.root-servers.net. . 5333INNSe.root-servers.net. . 5333INNSk.root-servers.net. ;; Query time: 112 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Fri Oct 2 21:51:41 2015 ;; MSG SIZE rcvd: 228
4、主配置文件说明
[root@example.com ~]# cat /etc/named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // options { #全局选项 listen-on port 53 { 127.0.0.1; }; #定义监听的IP地址和端口,若注释则监听全部IP的53端口 listen-on-v6 port 53 { ::1; }; directory "/var/named"; #区域文件目录 dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; allow-query { localhost; }; #访问控制,注释该语句后即允许所有IP访问 recursion yes; dnssec-enable yes; #此三项为DNS服务安全的配置,前期学习时为避免未知的错误建议注释掉 dnssec-validation yes; dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { #定义日志 channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { #定义区域 type hint; # 主域(master)、从域(slave)、缓存域(hint)、转发域(forward) file "named.ca"; }; include "/etc/named.rfc1912.zones"; #正反向区域文件 include "/etc/named.root.key";
5、案例使用
案例要求:
DNS服务器地址:192.168.1.8
mail:192.168.1.9
www:192.168.1.10
pop:mail别名,指向mail
ftp:www别名,指向www
要求可以实现正反向解析
更改配置文件:
[root@example.com ~]# vim /etc/named.conf options { //listen-on port 53 { 127.0.0.1; }; //listen-on-v6 port 53 { ::1; }; directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; memstatistics-file "/var/named/data/named_mem_stats.txt"; //allow-query { localhost; }; recursion yes; //dnssec-enable yes; //dnssec-validation yes; //dnssec-lookaside auto; /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; managed-keys-directory "/var/named/dynamic"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; zone "example.com" IN { type master; file "example.com.zone"; }; zone "1.168.192.in-addr.arpa" IN { type master; file "192.168.1.zone"; }; include "/etc/named.rfc1912.zones"; //include "/etc/named.root.key";
说明:zone "example.com" IN正向解析段和zone "1.168.192.in-addr.arpa" IN反向解析段可以写在主配置文件中,也可以写在本地区域文件中即/etc/named.rfc1912.zones,若使用后者一定不要将主配置文件中的include "/etc/named.rfc1912.zones"; 给注释掉。在这里type类型有三种,他们分别为master、slave、hint,含义如下:
master:表示定义的主域名服务器
slave:表示定义的是辅助域名服务器
hint:表示是互联网中的根域名服务器
file用来指定存放DNS记录的文件(一般都是区域名称.zone),allow-update定义是否允许客户主机或服务器自行更新DNS记录,上面指定的这个正向区域不允许更新DNS记录。
定义区域数据文件:
[root@example.com named]# vim /var/named/example.com.zone #编辑正向解析文件 $TTL 3600 @ IN SOA dns.example.com. admin.example.com. ( 2015100301 2H 10M 7D 1D ) @ IN NS dns #若不写全会自动同步名称,若不写全不能以”.”结尾 @ IN MX 10 mail dns IN A 192.168.1.8 mail IN A 192.168.1.9 www IN A 192.168.1.10 pop IN CNAME mail ftp IN CNAME www
正向区域数据文件的格式和含义:
第一行是一个TTL设定,定义区域数据文件里面的各项记录的宏,缺少此行不影响使用,但是会出现警告信息。
第二行是一个SOA记录的设定,“@“代表相应的域名,也就是在/etc/named.rfc1912.zones,如在这里表示example.com,IN表示后面的数据使用的是Internet标准。SOA表示目前区域授权开始。每一个区域数据文件只能有一个SOA,不能重复,并且必须是所负责的zone中第一个”记录“。在SOA后面分别指定这个区域的授权主机名称和管理者的邮箱。
注:授权主机名和管理员信箱后面都要有一个”.”。由于”@”在区域数据文件中有其他含义,因此管理员邮箱地址中用”.”代替“@“符号。
接下来包含在括弧内的5组数字是作为服务器同步信息而设置的,含义如下:
第一段表示配置文件的修改版本,格式是年月日加上修改的次数,每次修改这个配置文件时都应该修改这个数值,因为当DNS进行信息同步时,会比较这个数值的值。如果这个数值比自身的数值大,就进行更新,否则忽略更新。(这个设置很重要,如果修改区域数据后没有更新该值,那么所做的更改就不会同步到其他DNS服务器)
第二段表示用来设定DNS服务器进行同步的间隔时间又称刷新时间。只通知给本区域解析库文件中定义NS记录的所有主机;
第三段表示同步更新失败之后,在进行重试的间隔时间。
第四段表示同步更新失败之后,多长时间清除对应的记录,又称过期时间
第五段表示否定的TTL值
接下来是对域名解析的具体设置,第1列表示不同的主机域名,但是省略了后面的域信息(若为空白表示与上面域名相同)。例如:”www”其实是www.example.com等。“IN“后面的指令含义说明如下:
NS:用来定义这个主机是个域名服务器,是个区域名称
MX:定义邮件服务器,这里需要定义优先级的!这里定义的交换级别为10
A:定义了一个A记录,即域名到IP的记录
CNAME:定义了域名的别名
[root@example.com named]# vim /var/named/192.168.1.zone #定义反向区域文件 $TTL 3600 @ IN SOA dns.example.com. admin.example.com. ( 2015100301 2H 10M 7D 1D ) @ IN NS dns.example.com. 8 IN PTR dns.example.com. 9 IN PTR mail.example.com. 10 IN PTR www.example.com.
分析:可以看出,反向区域文件基本结构和正向区域数据文件基本完全相同,只不过这里多出了一个PTR选项。PTR用来定义一个反向记录,也就是通过IP可以查到对应的域名信息。最后三行的第一列表示是主机的IP地址,只不过省略了网络地址部分,系统会自动补全,如8对应的是192.168.1.8。
注意:区域名称以逆向的网络地址,并以.in-addr.arpa为后缀 ,第一条必须SOA ,应该具有NS记录,但不能出现MX和A记录,较常见的为PTR记录,名称为逆向的主机名。
定义区域文件的权限关系:
[root@example.com named]# chown root.named /var/named/example.com.zone [root@example.com named]# chown root.named /var/named/192.168.1.zone [root@example.com named]# chmod 640 /var/named/example.com.zone [root@example.com named]# chmod 640 /var/named/192.168.1.zone
检查区域文件语法错误与否:
[root@example.com named]# service named configtest zone example.com/IN: loaded serial 2015100301 zone 1.168.192.in-addr.arpa/IN: loaded serial 2015100301 zone localhost.localdomain/IN: loaded serial 0 zone localhost/IN: loaded serial 0 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: loaded serial 0 zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0 zone 0.in-addr.arpa/IN: loaded serial 0 [root@example.com named]# named-checkconf #检查主配置文件语法,无信息输出说明配置成功 [root@example.com named]# named-checkzone "example.com" /var/named/example.com.zone #检查zone语法错误与否 zone example.com/IN: loaded serial 2015100301 OK
启动服务并查看监听的端口:
[root@example.com named]# service named start Generating /etc/rndc.key: [确定] 启动 named: [确定] [root@example.com named]# ss -tnlp |grep named LISTEN 0 3 192.168.1.8:53 *:* users:(("named",3439,21)) LISTEN 0 3 127.0.0.1:53 *:* users:(("named",3439,20)) LISTEN 0 128 ::1:953 :::* users:(("named",3439,23)) LISTEN 0 128 127.0.0.1:953 *:* users:(("named",3439,22))
使用dig命令对DNS正向区域解析情况进行测试:
[root@example.com named]# dig -t A www.example.com @192.168.1.8 #解析A记录 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t A www.example.com @192.168.1.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23829 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;www.example.com. IN A ;; ANSWER SECTION: www.example.com. 3600 IN A 192.168.1.10 ;; AUTHORITY SECTION: example.com. 3600 IN NS dns.example.com. ;; ADDITIONAL SECTION: dns.example.com. 3600 IN A 192.168.1.8 ;; Query time: 1 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:18:38 2015 ;; MSG SIZE rcvd: 83 [root@example.com ~]# dig -t NS example.com @192.168.1.8 #解析NS记录 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t NS example.com @192.168.1.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61028 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; QUESTION SECTION: ;example.com. IN NS ;; ANSWER SECTION: example.com. 3600 IN NS dns.example.com. ;; ADDITIONAL SECTION: dns.example.com. 3600 IN A 192.168.1.8 ;; Query time: 0 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:20:21 2015 ;; MSG SIZE rcvd: 63 [root@example.com ~]# dig -t SOA example.com @192.168.1.8 #解析SOA记录 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t SOA example.com @192.168.1.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10395 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;example.com. IN SOA ;; ANSWER SECTION: example.com. 3600 IN SOA dns.example.com. admin.example.com. 2015100301 7200 600 604800 86400 ;; AUTHORITY SECTION: example.com. 3600 IN NS dns.example.com. ;; ADDITIONAL SECTION: dns.example.com. 3600 IN A 192.168.1.8 ;; Query time: 24 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:21:01 2015 ;; MSG SIZE rcvd: 105 [root@example.com ~]# dig -t MX example.com @192.168.1.8 #解析MX记录 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t MX example.com @192.168.1.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24684 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 ;; QUESTION SECTION: ;example.com. IN MX ;; ANSWER SECTION: example.com. 3600 IN MX 10 mail.example.com. ;; AUTHORITY SECTION: example.com. 3600 IN NS dns.example.com. ;; ADDITIONAL SECTION: mail.example.com. 3600 IN A 192.168.1.9 dns.example.com. 3600 IN A 192.168.1.8 ;; Query time: 2 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:29:41 2015 ;; MSG SIZE rcvd: 100 [root@example.com ~]# dig -x 192.168.1.8 #反向区域解析 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -x 192.168.1.8 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37041 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;8.1.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 8.1.168.192.in-addr.arpa. 3600 IN PTR dns.example.com. ;; AUTHORITY SECTION: 1.168.192.in-addr.arpa. 3600 IN NS dns.example.com. ;; ADDITIONAL SECTION: dns.example.com. 3600 IN A 192.168.1.8 ;; Query time: 1 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:19:22 2015 ;; MSG SIZE rcvd: 101 [root@example.com ~]# dig -t axfr 1.168.192.in-addr.arpa #完全区域传送 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t axfr 1.168.192.in-addr.arpa ;; global options: +cmd 1.168.192.in-addr.arpa. 3600 IN SOA dns.example.com. admin.example.com. 2015100301 7200 600 604800 86400 1.168.192.in-addr.arpa. 3600 IN NS dns.example.com. 10.1.168.192.in-addr.arpa. 3600 IN PTR www.example.com. 8.1.168.192.in-addr.arpa. 3600 IN PTR dns.example.com. 9.1.168.192.in-addr.arpa. 3600 IN PTR mail.example.com. 1.168.192.in-addr.arpa. 3600 IN SOA dns.example.com. admin.example.com. 2015100301 7200 600 604800 86400 ;; Query time: 3 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:22:37 2015 ;; XFR size: 6 records (messages 1, bytes 205)
前面举例中均需要指定我们创建的DNS服务器192.168.1.8,若不想指定则可以将DNS指向本机即可。
修改本机的DNS解析主机名:
[root@example.com ~]# cat /etc/resolv.conf nameserver 192.168.1.8 nameserver 8.8.8.8 nameserver 202.102.224.68 [root@example.com ~]# dig -t axfr example.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.el6_7.4 <<>> -t axfr example.com ;; global options: +cmd example.com. 3600 IN SOA dns.example.com. admin.example.com. 2015100301 7200 600 604800 86400 example.com. 3600 IN NS dns.example.com. example.com. 3600 IN MX 10 mail.example.com. dns.example.com. 3600 IN A 192.168.1.8 ftp.example.com. 3600 IN CNAME www.example.com. mail.example.com. 3600 IN A 192.168.1.9 pop.example.com. 3600 IN CNAME mail.example.com. www.example.com. 3600 IN A 192.168.1.10 example.com. 3600 IN SOA dns.example.com. admin.example.com. 2015100301 7200 600 604800 86400 ;; Query time: 1 msec ;; SERVER: 192.168.1.8#53(192.168.1.8) ;; WHEN: Fri Oct 2 23:24:49 2015 ;; XFR size: 9 records (messages 1, bytes 234)
本文出自 “粗茶淡饭” 博客,请务必保留此出处http://cuchadanfan.blog.51cto.com/9940284/1710387
标签:dns、bind
原文地址:http://cuchadanfan.blog.51cto.com/9940284/1710387