实验环境:centos 7
程序版本:bind-9.9.4-29.el7.x86_64
安装方法:yum install -y bind (base仓库):
端口:
TCP53:负责主从服务器的数据复制传输
UDP53:负责解析
主配置文件:/etc/named.conf
区域配置文件存放目录:/var/named/
从服务器的区域配置文件存放目录:/var/named/slaves
主服务器:192.168.1.12
从服务器:192.168.1.13
主从配置:
~]# cp -p /etc/named.conf /etc/named.conf.bak
~]# vi /etc/named.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| options {
listen-on port 53 { localhost; }; #哪些主机可以访问解析
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 { any; }; #允许哪些主机请求查询
recursion yes; #递归查找
dnssec-enable no; #DNS加密
dnssec-validation no; #DNS加密高级算法
zone "wwe.com" IN { #正向区域
type master; #主(master),从(slave),转发(forward),根(hint)
file "wwe.com.zone"; #区域文件名称
allow-transfer { 192.168.1.13; }; #定义传输白名单
};
zone "1.168.192.in-addr.arpa" IN { #反向区域
type master;
file "arpa-wwe.zone";
allow-transfer { 192.168.1.13; }; #定义传输白名单
};
|
正向解析区域文件:
SOA:起始授权机构,定义DNS区域中的权威服务器
NS:定义DNS区域正在提供DNS服务的主机
A记录:主机记录(正向区域)
MX:邮件交换记录。如果有多个,在MX记录后应有一个0-99的值,表示此服务器的优先级,值越小优先级越高
*:泛域名
CNAME:别名
~]# cp /var/named/named.localhost /var/named/wwe.com.zone
~]# vi /var/named/wwe.com.zone 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| $TTL 1D
@ IN SOA s1.wwe.com. admin.wwe.com. ( SOA后写主DNS服务器名字
2017001 ; serial 序列号,最大10位
1D ; refresh 刷新时间
1H ; retry 重试时间
1W ; expire 过期时间
3H ) ; minimum 否定答案的TTL值
NS s1.wwe.com.
NS s2.wwe.com.
s1 A 192.168.1.12
s2 A 192.168.1.13
www A 192.168.1.12
@ MX 10 mx1
MX 20 mx2
mx1 A 192.168.1.14
mx2 A 192.168.1.15
ftp CNAME www
* A 192.168.1.12
|
检查]# named-checkzone wwe.com.zone /var/named/wwe.com.zone #文件名 文件路径
注意:com后面都有点
注意:修改区域文件的属主和主组为named
admin后面的点是@的意思,因@有特殊含义,故用点代替
D(day)
H(hour)
W(week)
M(minute)
/etc/resolv.conf
反向解析区域文件:
]# vi /var/named/arpa-wwe.zone
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| $TTL 1D
@ IN SOA s1.wwe.com. admin.wwe.com. (
2017001 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS s1.wwe.com.
NS s2.wwe.com.
12 PTR s1
13 PTR s2
12 PTR www
14 MX 10 mx1
15 MX 20 mx2
|
启动服务
从服务器配置
1
2
3
4
5
6
7
8
9
10
11
12
| zone "wwe.com" IN {
type slave; #类型:从服务器
masters { 192.168.1.12; }; #定义主服务器地址,括号内前后空一格
masterfile-format text; #不写可能会出现乱码问题
file "slaves/wwe.com.zone"; #文件存放位置,文件名要与主服务器一样
};
zone "1.168.192.in-addr.arpa" IN {
type slave;
masters { 192.168.1.12; };
masterfile-format text;
file "slaves/arpa-wwe.zone";
};
|
启动服务
查看/var/named/slaves/目录下有没有生成区域配置文件
安装bind-utils程序包,使用dig命令可检查服务是否可用
~]# dig ftp.wwe.com @192.168.1.12
注意:在使用的客户端上修改文件 /etc/resolv.conf
添加DNS服务器,也就是我们上面设置的DNS主服务器
nameserver 192.168.1.12
子域授权和转发
为了方便公司部门管理运营,每个部门需要独立的域名服务器,这就要在父域下分配子域,比如,运维部的子域ops.wwe.com,而子域需要父域授权
父域:主机192.168.1.12 wwe.com
子域:主机10.1.12.100 ops.wwe.com
编辑父域的区域文件:
~]# vi /var/named/wwe.com.zone 添加俩条记录
1
2
| NS son.ops.wwe.com.
son.ops A 10.1.12.100
|
配置子域的DNS:
]# vi /etc/named.conf
1
2
3
4
5
6
7
8
9
10
| zone "ops.wwe.com" IN {
type master;
file "ops.wwe.com.zone";
};
zone "wwe.com" IN {
type forward;
forward only;
forwarders { 192.168.1.12; };
};
|
生成区域文件:
]# vi /var/named/ops.wwe.com.zone
1
2
3
4
5
6
7
8
9
10
11
| $TTL 86400 ; 1 day
@ IN SOA son.ops.wwe.com. admin.ops.wwe.com. (
2011002 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
@ NS son.ops.wwe.com.
son A 10.1.12.100
www A 10.1.12.12
|
DNS智能解析(基于视图)
~]# vi /etc/named.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| acl innet { 192.168.1.0/24; }; #来源IP指定
acl another { ! 192.168.1.0/24; }; #反选,上面指定的IP网段外的IP
view "lan" { #定义内网的名字
match-client { "innet"; }; #匹配这个IP网段才使用下面的zone
zone "." IN {
type hint;
file "named.ca";
};
zone "wwe.com" IN {
type master;
file "wwe.com.zone";
allow-transfer { 192.168.1.13; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "arpa-wwe.zone";
allow-transfer { 192.168.1.13; };
};
};
view "wan" { #定义外网的名字
match-client { "another"; }; #同上,匹配acl定义的这个网段
zone "." IN {
type hint;
file "named.ca";
};
zone "wwe.com" IN {
type master;
file "wwe.com.zone.new"; #区域文件要与上面不一样
allow-transfer { 192.168.1.13; };
};
};
|
配置view "wan"中定义的区域配置文件wwe.com.zone.new文件
]# vi /var/named/wwe.com.zone.new
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| $TTL 1D
@ IN SOA s1.wwe.com. admin.wwe.com. (
2011002 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS s1.wwe.com.
NS s2.wwe.com.
NS son.ops.wwe.com.
s1 A 192.168.100.12
s2 A 192.168.100.13
son.ops A 10.1.12.100
www A 192.168.100.12
@ MX 10 mx1
MX 20 mx2
mx1 A 192.168.100.14
mx2 A 192.168.100.15
web CNAME www
* A 192.168.100.15
|
|