DNS Bind配置
参考文档:
https://www.cnblogs.com/sandshell/p/11673658.html#autoid-7-3-0
要求
- 使用内部解析
- 内部解析如果失败,使用公网解析
- dns 集群使用
环境
- 系统版本:Centos 7.3
- 192.168.112.231(主DNS)
- 192.168.112.9(从DNS)
- 192.168.112.58(测试客户端)
安装配置
安装
yum install bind bind-utils -y
服务程序的配置文件
- 主程序 /usr/sbin/named
- 主配置文件 /etc/named.conf
- 区域配置文件 /etc/named.rfc1912.zones
修改主配置文件
listen-on port 53 { 127.0.0.1; }; #IP地址修改为本机内网地址,如果要监听全部ip,可以修改为any
allow-query { localhost; }; #localhost修改为any,表示允许任何主机查询,
正向解析
- 在配置文件
/etc/named.rfc1912.zones
最下面追加如下内容(linuxkai.com是你自己的域名,当然别的名字也可以,要和下一步的名称对应即可)
zone "linuxkai.com" IN {
type master;
file "linuxkai.com.zone";
allow-update { none; };
};
- 复制
/var/named/named.localhost
为linuxkai.com.zone
cd /var/named/
cp named.localhost linuxkai.com.zone
chown root.named linuxkai.com.zone
linuxkai.com.zone
内容如下,最下面可以根据自己需求添加解析记录
$TTL 1D
@ IN SOA @ linuxkai.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns.linuxkai.com.
ns IN A 192.168.112.231
ns1 IN A 192.168.112.9
ci IN A 192.168.112.142
- 重启named
systemctl restart named
- 测试解析 修改测试机的dns,把我们自己的dns server放在最前面
# Generated by NetworkManager
nameserver 192.168.112.231
nameserver 223.6.6.6
search localdomain
使用nslookup查看解析结果
[root@test-prometheus-server ~]# nslookup ci.linuxkai.com
Server: 192.168.112.231
Address: 192.168.112.231#53
Name: ci.linuxkai.com
Address: 192.168.112.142
配置转发服务器(经测试还有些疑问,暂时放一下,往下走)
在/etc/named.conf
配置如下参数
allow-query { any; };
forwarders {114.114.114.114;180.76.76.76;};
主从复制配置(除了zone部分,其它部分参考上面的配置)
- 主配置文件
zone "linuxkai.com" IN {
type master;
file "linuxkai.com.zone";
masterfile-format text;
allow-update {none;};
allow-transfer {192.168.112.9;};
notify yes;
also-notify {192.168.112.9;};
};
- 从配置文件
zone "linuxkai.com" IN {
type slave;
masters { 192.168.112.231; };
file "linuxkai.com.zone";
masterfile-format text;
};
注:从DNS不需要配置域名解析/var/named/linuxkai.com.zone
为主域名更新后,执行修改serial +1后,在执行命令rndc reload
后,从DNS对应域名配置文件/var/named/linuxkai.com.zone就会自动同步。
3. 验证主从复制
编辑文件/var/named/lakala.com.zone
a. serial 号+1
b. 添加一条新的解析记录
cd IN A 192.168.111.65
c. 主DNS执行同步命令,如下代表成功
[root@192-168-112-231 etc]# rndc reload
server reload successful
d. 查看从的配置上已经有了新记录了
增加域名配置
a. 主配置文件添加域名区域配置
zone "chk.com" IN {
type master;
file "chk.com.zone";
masterfile-format text;
allow-update {none;};
allow-transfer {192.168.112.9;};
notify yes;
also-notify {192.168.112.9;};
};
b. 添加域名解析/var/named/chk.com.zone
[root@szxlkl01-dns-98 ~]# cat /var/named/chk.com.zone
$TTL 1D
$ORIGIN chk.com.
@ IN SOA ns.linuxkai.com. root.localhost. (
11 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ; minimum
)
@ IN NS ns1.linuxkai.com.
@ IN NS ns2.linuxkai.com.
ns1 IN A 192.168.112.231
ns2 IN A 192.168.112.9
; vuat environment
test1 IN A 192.168.111.77
c. 给文件/var/named/chk.com.zone
授权,让named
用户有读权限
chown root.named /var/named/chk.com.zone
d. 从DNS配置添加域名区域
zone "chk.com" IN {
type slave;
masters { 192.168.112.231; };
file "chk.com.zone";
masterfile-format text;
};
e. 从dns不需要配置域名解析(不需要添加文件/var/named/chk.com.zone
)
f. 主DNS机器上重启named
systemctl restart named
注:新添加域名区域配置,主从必须重启,不然配置文件不生效,无法同步