BIND域名服务基础



一、DNS系统的作用及类型

1.解析类型

A.正向解析

根据主机名称(域名)查找对应的IP地址

B.方向解析

根据IP地址查找对应的主机域名

2.DNS类型

A.缓存域名服务器

  • 通过向其他域名服务器查询获得域名--IP地址记录
  • 将域名查询结果缓存到本地
  • 自己没有独立、自主的域名解析数据

B.主域名服务器

  • 特定DNS区域的官方服务器,具有唯一性
  • 具有自主控制权

C.从域名服务器

与主域名服务器提供完全相同的DNS解析服务,通常用于DNS服务器的热备份。

  • 从域名服务器解析结果来自于主域名服务器

二、BIND的安装和控制

1.安装BIND软件

bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 提供了域名服务的主要程序及相关主件

bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 为BIND提供一个伪装目录(将/var/named/chroot/文件夹作为BIND的根目录),以提高安全性

bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 提供了bind,bind-utils需要使用的函数库

bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm 提供了对DNS服务器测试工具程序,如nslookup等。

[root@bourn Packages]# rpm -qa | grep bind
bind-libs-9.8.2-0.17.rc1.el6_4.6.x86_64
bind-chroot-9.8.2-0.17.rc1.el6_4.6.x86_64
bind-9.8.2-0.17.rc1.el6_4.6.x86_64
bind-utils-9.8.2-0.17.rc1.el6_4.6.x86_64
[root@bourn Packages]#

2.BIND服务控制

[root@bourn Packages]# service named status
rndc: neither /etc/rndc.conf nor /etc/rndc.key was found
named is stopped
[root@bourn Packages]#

三、BIND服务的配置文件

1.主配置文件

[root@bourn Packages]# vi /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)
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; };//允许使用本DNS服务的地址
        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";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

2.区域数据配置文件

zone "." IN {
        type hint;
        file "named.ca";
};
  • 在named.conf配置文件中的区域设置部分,主要是由“zone “DNS域” IN {};”的形式出现的,有多少个区域就设置多少个zone配置
  • 每个zone区域都是可选的(包括根域、回环域、反向域),具体根据实际需要而定,zone配置部分的“IN”关键字表示“Internet”的意思,通常可以省略
  • type关键字用于设置该区域的类型,可设置为以下值:

    • hint表示根域
    • master表示主域
    • slave表示从域等
  • file关键字用于指定该区域对应的数据文件名,如果没有指定绝对路径,则该文件默认位于全局配置中“directory”关键字指定的目录中,文件名由管理员自行定义

  • 根域的数据文件文件名一般使用“named.ca”或者“named.root”,

A.正向、反向

zone "benet.com" IN {
    type master; 
    file "benet.com.zone"; 
    allow-transfer  { 173.16.16.2; };//设置允许下载该区域解析记录的从域名服务的地址
    allow-update    { none; }; 
};//允许动态更新哪些客户机地址,none表示全部禁止
#对173.16.16.0/24网段的反向解析区域
zone "16.16.173.in-addr.arpa" IN {
    type master;
    file "173.16.16.arpa";
};

倒序网络地址:in-addr.arpa

B.全局TTL配置项及SOA记录

$TTL    86400                     ; 有效地址解析记录的默认缓存时间
@  IN  SOA  benet.com.  admin.benet.com.  (
        2009021901        ;更新序列号
        3H            ;刷新时间
        15M            ;重试延时
        1W            ;失效时间
        1D           ;无效地址解析记录的默认缓存时间
)
  • $TTL(Time To Live,生存时间)记录
  • SOA(Start Of Authority,授权信息开始)记录

C.域名解析记录

@    IN    NS    ns1.benet.com.
    IN    MX  10  mail.benet.com.
ns1    IN    A     173.16.16.1
mail        IN    A     173.16.16.1
www        IN    A     173.16.16.1
ftp         IN    CNAME     www
  • NS域名服务器(Name Server)记录
NS记录以及NS记录对应服务器主机的A记录通常必需有的,A记录作为正向地址解析记录,是DNS服务器区域数据文件中数量最多的配置行
  • MX邮件交换(Mail Exchange)记录
MX记录用于指定该区域内邮件服务器的地址,如果没有邮件服务器,可以省略MX配置记录行
  • A地址(Address)记录,只用在正向解析的区域数据文件中
  • CNAME别名(Canonical Name)记录
CNAME用于为同一个域名设置不同的名称,其对应的IP地址是相同的
  • NS、MX记录行首的“@”符号可以省略(默认继承SOA记录行首的@信息),但是必须保留一个空格或者制表位

反向解析

1    IN        PTR        www.benet.com. 
4    IN        PTR        study.benet.com.

上面“4”,若在16.16.173.in-addr.arpa反向区域数据文件中,则对应为173.16.16.4的IP地址

  • PTR指针(Point)记录,只用在反向解析的区域数据文件中
  • 配置反向解析记录时,只需要指定IP地址中的主机地址部分即可,网络地址部分不用写

D.负载均衡

基于域名解析的负载均衡

  • 同一域名对应到多个IP地址
movie        IN        A        173.16.16.11
movie        IN        A        173.16.16.12
movie        IN        A        173.16.16.13

DNS轮询负载均衡对于访问量较大的网络服务非常有用,通常这些服务会由多个不同IP地址的服务器共同承担(服务内容互为镜像)

E.泛域名解析

*        IN        A        173.16.16.173
  • 找不到精确对应的A记录时,使用“*”进行匹配

  • 泛域名解析相当于特定DNS域内的默认解析记录,通常对应到该域的主站点的IP地址,这样即使用户将FQDN中的主机名部分写错了,仍然可以找到该域的主站点

G.子域授权

将DNS子区域内主机地址的解析记录,授权给子域的域名服务器进行维护和解析

cn        IN        A        173.16.16.2
        IN        NS        ns.jv.net.cn.
ns.jv.net.cn.    IN        A        173.16.16.2

3.检查配置文件

A.named-checkconf

named-checkconf [主配置文件]

[root@localhost ~]# cd  /var/named/chroot/etc/
[root@localhost etc]# named-checkconf named.conf

B.named-checkzone

named-checkzone <域名> <区域数据文件>

[root@localhost ~]# cd /var/named/chroot/var/named/
[root@localhost named]# named-checkzone benet.com benet.com.zone
zone benet.com/IN: loaded serial 2009
OK

results matching ""

    No results matching ""