实验文档2:自定义正解域


欢迎加入王导的VIP学习qq群:==>932194668<==


自定义区域配置文件

自定义区域的配置范例如下:

1
2
3
4
5
zone "host.com" IN {
type master;
file "host.com.zone";
allow-update { 10.4.7.11;10.4.7.12; };
};

这里自定义了一个host.com的主机域,可以放在/etc/named.rfc1912.zones文件中,也可以放置在自定义的文件中,在/etc/named.conf里include进来

主机域

  • 主机域和业务域无关,且建议分开
  • 主机域其实是一个假域,也就是说,主机域其实是不能解析到互联网上的,它只对局域网(内网)提供服务

自定义区域数据库文件

  • 一般而言是文本文件,且只包含资源记录宏定义注释
  • 需在自定义区域配置文件中指定存放路径,可以绝对路径或相对路径(相对于/var/named目录)
  • 注意文件的属性(属主、属组及权限)

配置范例

1
2
3
4
5
6
7
8
9
10
11
12
13
$ORIGIN .
$TTL 600 ; 10 minutes
host.com IN SOA ns1.host.com. dnsadmin.host.com. (
2018121601 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS ns1.host.com.
$ORIGIN host.com.
$TTL 60 ; 1 minute
ns1 A 10.4.7.11

资源记录(Resource Record)

资源记录格式

1
name [ttl(缓存时间)] IN 资源记录类型(RRtype)  Value

常用资源记录类型(RR-type)

SOA记录

SOA: 起始授权,只能有一条

  • name:只能是区域名称,通常可以简写为@,例如:od.com.
  • value:有n个数值,最主要的是主DNS服务器的FQDN,点不可省略

注意:SOA必须是区域数据库文件第一条记录

例子:

1
2
3
4
5
6
7
@ 600 IN SOA  dns.host.com. 管理员邮箱(dnsadmin.host.com.)(
序列号(serial number) ;注释内容,十进制数据,不能超过10位,通常使用日期时间戳,例如2018121601
刷新时间(refresh time) ;即每隔多久到主服务器检查一次
重试时间(retry time) ;应该小于refresh time
过期时间(expire time);当辅助DNS服务器无法联系上主DNS服务器时,辅助DNS服务器可以在多长时间内认为其缓存是有效的,并供用户查询。
netgative answer ttl ;非权威应答的ttl,缓存DNS服务器可以缓存记录多长时间

NS记录

NS:可以有多条,每一个NS记录,必须对应一个A记录

  • name:区域名称,通常可以简写为@
  • value:DNS服务器的FQDN(可以使用相对名称)

    例子:

    1
    @ 600 IN NS ns1

A记录

A:只能定义在正向区域数据库文件中(ipv4->FQDN)

  • name:FQDN(可以使用相对名称)
  • value:IP

    例子:

    1
    2
    www  600(单位s) IN A 10.4.7.11
    www 600(单位s) IN A 10.4.7.12

可以做轮询

MX记录

MX:邮件交换记录,可以有多个(用的不多)

  • name:区域名称,用于标识smtp服务器
  • value:包含优先级和FQDN
  • 优先级:0-99,数字越小,级别越高,

    例子:

    1
    2
    @ 600 IN MX 10 mail
    @ 600 IN MX 20 smtp

CNAME记录

CNAME:canonical name,别名(FQDN->FQDN)

  • name :FQDN
  • value :FQDN

    例子:

    1
    eshop IN CNAME www

宏定义

  • $ORIGIN .
  • $TTL 60

注释

区域数据库文件中使用;(分号)来进行注释

实战正解主机域配置

在/etc/named.rfc1912.zones文件内最下,添加以下内容

1
2
3
4
5
zone "host.com" IN {
type master;
file "host.com.zone";
allow-update { 10.4.7.11;10.4.7.12; };
};

在/var/named下创建host.com.zone文件,写入以下内容

/var/named/host.com.zone
1
2
3
4
5
6
7
8
9
10
11
12
13
$TTL 600	; 10 minutes
@ IN SOA dns.host.com. 87527941.qq.com. (
2018121601 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS dns.host.com.
$ORIGIN host.com.
$TTL 60 ; 1 minute
HDSS7-11 A 10.4.7.11
dns A 10.4.7.11

三种配置方式:

  • 用宏定义$ORIGIN . 下面用host.com
  • 不用宏定义,下面用@
  • 不用宏定义,下面用host.com.

检查配置并生效

检查自定义区域配置

1
2
3
#named-checkzone host.com. /var/named/host.com.zone
zone host.com/IN: loaded serial 2018121601
OK

检查主配置文件

1
#named-checkconf

重启named服务

1
#systemctl restart named

检查该正解域是否生效

配置主机名

1
2
# hostnamectl set-hostname hdss7-11.host.com
# logout

开启第二台虚机,配置好DNS后验证解析

维护正解域(增、删、改、查)

增加一条资源记录

/var/named/host.com.zone
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$TTL 600	; 10 minutes
@ IN SOA dns.host.com. 87527941.qq.com. (
2018121602 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS dns.host.com.
$ORIGIN host.com.
$TTL 60 ; 1 minute
HDSS7-11 A 10.4.7.11
HDSS7-12 A 10.4.7.12
dns A 10.4.7.11

增加一个HDSS7-12.host.com的A记录解析,并验证

修改一条资源记录

10.4.7.12这台主机增加一个辅助ip

1
# ip addr add 10.4.7.13/24 dev eth0

修改DNS服务器上的区域数据库文件

/var/named/host.com.zone
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$TTL 600	; 10 minutes
@ IN SOA dns.host.com. 87527941.qq.com. (
2018121603 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS dns.host.com.
$ORIGIN host.com.
$TTL 60 ; 1 minute
HDSS7-11 A 10.4.7.11
HDSS7-12 A 10.4.7.13
dns A 10.4.7.11

修改HDSS7-12.host.com的A记录解析,指向新增的辅助ip10.4.7.13
检查:

1
2
3
4
5
6
7
8
9
ping HDSS7-12.host.com
ING hdss7-12.host.com (10.4.7.13) 56(84) bytes of data.
64 bytes from 10.4.7.13 (10.4.7.13): icmp_seq=1 ttl=64 time=0.318 ms
64 bytes from 10.4.7.13 (10.4.7.13): icmp_seq=2 ttl=64 time=0.206 ms
64 bytes from 10.4.7.13 (10.4.7.13): icmp_seq=3 ttl=64 time=0.391 ms
^C
--- hdss7-12.host.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 0.206/0.305/0.391/0.076 ms

删除一条资源记录

/var/named/host.com.zone
1
2
3
4
5
6
7
8
9
10
11
12
13
$TTL 600	; 10 minutes
@ IN SOA ns1.host.com. dnsadmin.host.com. (
2018121604 ; serial
10800 ; refresh (3 hours)
900 ; retry (15 minutes)
604800 ; expire (1 week)
86400 ; minimum (1 day)
)
NS ns1.host.com.
$ORIGIN host.com.
$TTL 60 ; 1 minute
ns1 A 10.4.7.11
HDSS7-11 A 10.4.7.11

删除HDSS7-12.host.com的A记录解析,并验证

查询记录

坚持原创技术分享,您的支持将鼓励我继续创作!