Linux网络服务----DNS域名解析服务

目录

  • 一、DNS系统作用及类型
    • 作用:
    • 解析分类:
    • DNS系统类型:
  • 二、BIND域名服务
    • BIND服务器端程序
    • bind配置文件
      • 主配置文件/etc/named.conf
      • 区域配置文件/etc/named.rfc1912.zones
      • 区域数据配置文件/etc/name/localhost
  • 三、DNS解析配置文件
    • 1、DNS正向解析(邮件交换,别名解析,泛域名解析)
    • 2、反向解析
    • 3、主从复制
    • 4、分离解析

一、DNS系统作用及类型

作用:

  • 维护着一个地址数据库,其中记录各种主机域名与IP地址的对应关系,以便客户查询地址。

解析分类:

  • 正向解析:根据域名查找IP地址,将指定的域名解析为对应的IP地址
  • 反向解析:根据IP地址解析域名。
  • 主从域名解析:从服务器会自动获取主服务器的dns解析记录,为了分担主域名查询的压力,提高区域数据备份。
  • 分离解析:根据不同的客户提供不同的域名解析记录,可以是不同网段的

DNS系统类型:

  • 缓存域名服务器:负责dns全局功能
    也称为DNS高速缓存服务器
    通过向其他域名服务器查询获得域名—》IP地址记录
    将域名查询结果缓存到本地,提高重复查询的速度
  • 主域名服务器:负责构建解析区域
    特定DNS区域的权威服务器,具有唯一性
    负责维护该区域内所有域名—》IP地址的映射记录
    需要自行建立所负责区域的地址数据文件
  • 从域名服务器:负责管理主机解析记录
    也称为辅助域名服务器,是对主域名服务器的热备份
    其维护的域名—》IP地址记录来源于主域名服务器
    需要从主域名服务器自动同步区域地址数据库

二、BIND域名服务

BIND服务器端程序

  • bind是dns服务应用最广泛的程序
  • 服务器端程序:
    主要执行程序:/usr/sbin/named
    默认监听端口:53
    主配置文件:/etc/named.conf
    保存DNS解析记录的数据文件位于:/var/named/

bind配置文件

主配置文件/etc/named.conf

  • 设置DNS服务器全局参数
  • 包括监听地址和端口,区域数据文件存放的目录
  • 使用option{…};的配置段
[root@localhost ~]# vim /etc/named.conf
options {
    listen-on port 53 { any; };		----ipv4 监听地址和端口 {一般更改为any}
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";		----区域数据文件的默认存放位置
       ...省略内容
        allow-query     { any; };		----允许使用本DNS服务的网段:{一般更改为any}
}

区域配置文件/etc/named.rfc1912.zones

  • 设置本服务器提供域名解析的特定DNS区域
  • 包括域名,服务器角色,数据文件名等
  • 使用zone“区域名”IN{…};的配置段
[root@localhost ~]# vim /etc/named.rfc1912.zones               ----正向解析
zone "wemz.com" IN {
        type master;		                                 ----类型,主域名服务器
        file "wemz.com.zone";		                          ----区域数据文件名
        allow-update { none; };
};

                                     ----反向解析
zone "10.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.10.arpa";
        allow-update { none; };
};

区域数据配置文件/etc/name/localhost

  • 全局TTL配置项及SOA记录
    -$TTL(Time To Live,生存时间)记录
    SOA(Start Of Authority,授权信息开始)记录
    分号“;”开始的部分表示注释信息
$TTL 1D		'有效解析记录的生存周期'
@       IN SOA  @ rname.invalid. (		'SOA标记,域名,管理邮箱'
                                        2011030502  	'更新序列号,可以是10位以内的整数'   	
                                        1D     '无效解析记录的生存周期'  
                                        1W    	'失效时间,超过改时间仍无法下载则放弃'
                                        3H )    '刷新时间,重新下载地址数据的间隔'
     
----M  分  H  时  W  周  D  天

  • 域名解析记录
    地址解析记录用来设置DNS区域内的域名,IP地址印社关系,包括正向解析记录和反向解析记录
    NS域名服务器(Name Server )记录
    MX 邮件交换(Mail Exchange)记录
    A 地址 (Address)记录,只用在正向解析区域中
    CNAME别名(Canonical Name)记录
@		IN		NS		ns1.bdqn.com.	----当前区域DNS服务器的
		IN		MX 10	mail.bdqn.com.    ----邮件交换记录
ns1		IN		A		65.65.656.56
www		IN		A		2.2.2.2         ----正向解析
mail	IN 		A		5.5.5.5
ftp		IN		CNAME	www              ----别名解析
*		IN 		A		3.3.3.3		 ----泛域名解析,未匹配到的主机头到到此地址
1 IN PTR www.eee.com.		'表示IP地址为192.168.192.1的主机的域名时www.eee.com'    ----反向解析
5 IN PTR mail.eee.com.		'表示IP地址为192.168.192.5的主机的域名时mail.eee.com'

三、DNS解析配置文件

1、DNS正向解析(邮件交换,别名解析,泛域名解析)

Linux网络服务----DNS域名解析服务_第1张图片
修改配置文件


vim /etc/named.conf
options {
        listen-on port 53 { any; };              ----监听地址
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };            ----允许解析dns地址

修改区域配置文件

vim /etc/named.rfc1912.zones
zone "kgc.com" IN {
        type master;
        file "kgc.com.zone";    ----指向的文件,区域数据配置文件
        allow-update { none; };
};

配置区域数据文件

cd /etc/name/
cp named.localhost kgc.com.zone    ----复制一份指向的区域数据配置文件
vim kgc.com.zone
$TTL 1D
@       IN SOA  kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      kgc.com.
        A       127.0.0.1
IN   MX 5       mail.kgc.com        ----邮件交换
mail IN A       192.168.195.88
www  IN A       192.168.195.66    ----正向解析
FTP  IN CNAME   mail      ----别名解析
*    IN A       192.168.195.77    ----泛域名解析

systemctl start named   ---开启服务

2、反向解析

主配置文件修改同上
区域配置文件

zone "195.168.192.in-addr.arpa" IN {               ----地址反着些
        type master;
        file "kgc.com.local";                ---指向的区域数据配置文件
        allow-update { none; };

区域数据配置文件

$TTL 1D
@       IN SOA  kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      kgc.com.
        A       127.0.0.1
66 IN   PTR     www.kgc.com.     ----反向解析
systemctl restart named   ---重启服务

3、主从复制

(需要两台虚拟机做主和从服务器)
主服务器:
主配置文件修改同上
区域配置文件

zone "kgc.com" IN {
        type master;               ----类型是主服务器masters
        file "kgc.com.zone";
        allow-transfer { 192.168.200.100; };     ------允许解析 从服务器transfer 和IP地址
}; 

从服务器:会复制备份一份主服务器的区域数据配置文件
区域配置文件

zone "kgc.com" IN {
        type slaves;               ----类型是主服务器slaves
        file "slaves/kgc.com.zone";
        masters { 192.168.200.20; };     ------允许解析 主服务器
}; 

4、分离解析

主配置文件修改同上
区域配置文件

view "lan" {
  match-clients { 192.168.195.88/24; };    ----解析lan局域网
  zone "kgc.com" IN {
        type master;
        file "kgc.com.lan";
};
  zone "." IN {                 ----根
        type hint;
        file "named.ca";
};
};
view "wan" {                      
  match-clients { 12.0.0.1/24; };      ---解析外网时
  zone "kgc.com" IN {
        allow-update { none; };
         file "kgc.com.wan";
};
};

vim kgc.com.lan

$TTL 1D
@       IN SOA  kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      kgc.com.
        A       192.168.195.1
www  IN A       192.168.195.88

vim kgc.com.wan

$TTL 1D
@       IN SOA  kgc.com. admin.kgc.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      kgc.com.
        A       12.0.0.1
www  IN A       12.0.0.1

systemctl restart named —重启服务

你可能感兴趣的:(linux)